@charset "UTF-8";
@import url("//fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("//fonts.googleapis.com/css?family=Lato:300");
@import url("//fonts.googleapis.com/css?family=Lato:300i");
@import url("//fonts.googleapis.com/css?family=Lato:400");
@import url("//fonts.googleapis.com/css?family=Lato:400i");
@import url("//fonts.googleapis.com/css?family=Lato:700");
@import url("//fonts.googleapis.com/css?family=Lato:700i");
@import url("//fonts.googleapis.com/css?family=Noto+Sans:400");
@import url("//fonts.googleapis.com/css?family=Noto+Sans:400i");
@import url("//fonts.googleapis.com/css?family=Noto+Sans:700");
@import url("//fonts.googleapis.com/css?family=Noto+Sans:700i");

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
hr,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  display: block
}

body {
  line-height: 1
}

ol,
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote:after,
blockquote:before {
  content: "";
  content: none
}

q:after,
q:before {
  content: "";
  content: none
}

abbr {
  text-decoration: none
}

mark {
  background: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

caption,
th {
  text-align: left
}

img {
  vertical-align: top
}

hr {
  height: 0
}

html {
  font-size: 62.5%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: scroll
}

*,
:after,
:before {
  -webkit-box-sizing: inherit;
  box-sizing: inherit
}

body {
  min-width: 1080px;
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Verdana, sans-serif;
  color: #333;
  letter-spacing: 0.1em;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh
}

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%
}

[lang=en] body {
  font-family: "Noto Sans", Helvetica, Arial, sans-serif
}

a {
  color: #438bc5;
  text-decoration: none
}

a:visited {
  text-decoration: none
}

a:hover {
  text-decoration: underline
}

a:active {
  text-decoration: underline
}

a[href^="mailto:"],
a[href^=http] {
  word-break: break-all
}

@media screen and (min-width:46.0625em) {
  .pc-hide {
    display: none !important
  }
}

button,
input,
select,
textarea {
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Verdana, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 24px;
  line-height: 2.4rem
}

button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
  background: #f2f2f2;
  color: #ccc;
  opacity: 1
}

button {
  border: none;
  cursor: pointer
}

::-moz-placeholder {
  color: #ccc;
  opacity: 1;
  font-weight: 300
}

:-ms-input-placeholder {
  color: #ccc;
  font-weight: 300
}

::-webkit-input-placeholder {
  color: #ccc;
  font-weight: 300
}

:-moz-placeholder-shown {
  color: #ccc;
  font-weight: 300
}

:-ms-input-placeholder {
  color: #ccc;
  font-weight: 300
}

:placeholder-shown {
  color: #ccc;
  font-weight: 300
}

strong {
  font-weight: bold
}

hr {
  border-top: 1px solid #cccccc
}

@media screen and (max-width:46em) {
  body {
    min-width: 0;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22.75px;
    line-height: 2.275rem
  }

  a {
    text-decoration: none
  }

  a:visited {
    text-decoration: none
  }

  a:hover {
    text-decoration: none
  }

  a:active {
    text-decoration: none
  }

  .sp-hide {
    display: none !important
  }

  button,
  input {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem
  }

  input[type=email]::-webkit-input-placeholder,
  input[type=password]::-webkit-input-placeholder,
  input[type=tel]::-webkit-input-placeholder,
  input[type=text]::-webkit-input-placeholder,
  input[type=url]::-webkit-input-placeholder {
    line-height: 1.5
  }
}

.clearfix:after {
  content: "";
  clear: both;
  display: block
}

.align-left {
  text-align: left
}

.align-center {
  text-align: center
}

.align-right {
  text-align: right
}

.is-bold {
  font-weight: bold
}

.kerning {
  margin-left: -0.4em;
  margin-right: -0.4em
}

a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 11px;
  height: 9px;
  margin-left: 4px;
  margin-right: 4px;
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.icon-external:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 11px;
  height: 9px;
  margin-left: 4px;
  margin-right: 4px;
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.icon-pdf:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-pdf.svg) no-repeat
}

.icon-xls:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-xls.svg) no-repeat
}

.icon-zip:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 19px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-zip.svg) no-repeat
}

.icon-movie:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-movie.svg) no-repeat
}

.pdf-info {
  font-size: 10px;
  font-size: 1rem;
  line-height: 17.5px;
  line-height: 1.75rem;
  font-weight: normal;
  display: inline-block;
  white-space: nowrap;
  color: #333
}

.pdf-info:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-pdf.svg) no-repeat;
  margin-right: 5px
}

.file-info {
  font-size: 10px;
  font-size: 1rem;
  line-height: 17.5px;
  line-height: 1.75rem;
  font-weight: normal;
  display: inline-block;
  white-space: nowrap;
  margin-left: 6px;
  color: #333
}

.file-info.is-pdf {
  margin-left: 0
}

.file-info.is-pdf:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-pdf.svg) no-repeat;
  margin-right: 5px
}

.file-info.is-pdf:only-child {
  white-space: normal
}

.file-info.is-xls {
  margin-left: 0
}

.file-info.is-xls:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-xls.svg) no-repeat;
  margin-right: 5px
}

.file-info.is-xls:only-child {
  white-space: normal
}

.file-info.is-zip {
  margin-left: 0
}

.file-info.is-zip:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 19px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-zip.svg) no-repeat;
  margin-right: 5px
}

.file-info.is-zip:only-child {
  white-space: normal
}

.file-info.is-movie {
  margin-left: 0
}

.file-info.is-movie:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 13px;
  height: 16px;
  margin-left: 8px;
  background: url(/assets/img/common/icon-link-movie.svg) no-repeat;
  margin-right: 5px
}

.file-info.is-movie:only-child {
  white-space: normal
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a,
.link-arrow,
.link-arrow-back,
.link-arrow-gray,
.link-arrow-white {
  display: inline-block;
  text-indent: -11px;
  padding-left: 11px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a .file-info,
.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a .pdf-info,
.link-arrow-back .file-info,
.link-arrow-back .pdf-info,
.link-arrow-gray .file-info,
.link-arrow-gray .pdf-info,
.link-arrow-white .file-info,
.link-arrow-white .pdf-info,
.link-arrow .file-info,
.link-arrow .pdf-info {
  padding-left: 11px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a,
.link-circle,
.link-circle-back,
.link-circle-white {
  display: inline-block;
  text-indent: -21px;
  padding-left: 21px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a .file-info,
.component-overlayMenu .overlayMenu-menu nav>ul>li>a .pdf-info,
.link-circle-back .file-info,
.link-circle-back .pdf-info,
.link-circle-white .file-info,
.link-circle-white .pdf-info,
.link-circle .file-info,
.link-circle .pdf-info {
  padding-left: 21px
}

.link-arrow:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .link-arrow:before {
    top: -1px
  }
}

.link-arrow-white:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .link-arrow-white:before {
    top: -1px
  }
}

.link-arrow-white:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.link-arrow-gray:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .link-arrow-gray:before {
    top: -1px
  }
}

.link-arrow-gray:before {
  background: url(/assets/img/common/icon-link-arrow-gray.svg) no-repeat
}

.link-arrow-back:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .link-arrow-back:before {
    top: -1px
  }
}

.link-arrow-back:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.link-circle:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.link-circle-white:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.link-circle-white:before {
  background: url(/assets/img/common/icon-link-circle-white.svg) no-repeat
}

.link-circle-back:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.link-circle-back:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.link-anchor:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-anchor.svg) no-repeat
}

@media screen and (max-width:46em) {
  .link-anchor:before {
    top: -1px
  }
}

.icon-mail:before,
.icon-rss:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  height: 10px;
  margin-right: 6px
}

.icon-rss:before {
  width: 10px;
  background: url(/assets/img/common/icon-rss.svg) no-repeat
}

.icon-mail:before {
  width: 12px;
  background: url(/assets/img/common/icon-mail.svg) no-repeat
}

.hover-opacity {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease
}

.hover-opacity:hover {
  opacity: 0.8
}

.headline--lv1 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 30px;
  line-height: 3rem;
  margin-bottom: 20px
}

.headline--lv1 span {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  display: block
}

.headline--lv2,
.headline--lv2-2 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 34px;
  line-height: 3.4rem;
  color: #4065a2;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 0.15em
}

.headline--lv2-2:after,
.headline--lv2:after {
  content: "";
  width: 40px;
  height: 2px;
  display: block;
  position: relative;
  left: 50%;
  top: 18px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #4065a2
}

.headline--lv2 span,
.headline--lv2-2 span {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-weight: normal
}

.headline--lv2 b,
.headline--lv2-2 b {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 26px;
  line-height: 2.6rem;
  display: inline-block;
  margin-top: 10px
}

.headline--lv2-2 {
  color: #fff;
  margin-bottom: 35px
}

.headline--lv2-2:after {
  top: 14px;
  background: #fff
}

.headline--lv2-2.with-icon:before {
  content: "";
  width: 80px;
  height: 80px;
  display: block;
  border-radius: 50%;
  margin: 0 auto 15px;
  background: #fff center no-repeat;
  background-size: cover
}

.headline--lv3,
.headline--lv3-2 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem;
  font-weight: bold;
  color: #4065a2;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d6d6d6
}

.headline--lv3 span,
.headline--lv3-2 span {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-weight: normal
}

.headline--lv3 .label,
.headline--lv3-2 .label {
  background: #4065a2;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  display: inline-block;
  padding: 2px 15px;
  margin: 5px 20px 5px 0
}

.headline--lv3 .label-s,
.headline--lv3-2 .label-s {
  background: #4065a2;
  color: #fff;
  font-weight: normal;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  display: inline-block;
  padding: 3px 12px 4px;
  margin-bottom: 6px
}

.headline--lv3-2 {
  padding-bottom: 0;
  border-bottom: none;
  margin-bottom: 15px
}

.headline--lv4,
.headline--lv4-2,
.headline--lv4-3 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  line-height: 2.8rem;
  font-weight: bold;
  margin-bottom: 10px
}

.headline--lv4 span,
.headline--lv4-2 span,
.headline--lv4-3 span {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-weight: normal
}

.headline--lv4-2 {
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d6d6d6
}

.headline--lv4-3 {
  color: #4065a2
}

.headline--lv5 {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 26.25px;
  line-height: 2.625rem;
  font-weight: bold;
  margin-bottom: 10px
}

.headline--lv5 span {
  font-weight: normal
}

.headline--lv6 {
  font-weight: bold;
  margin-top: 10px;
  margin-bottom: 10px;
  color: #4065a2
}

.btn {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: rgba(51, 51, 51, 0);
  border: 1px solid #333;
  color: #333;
  display: inline-block;
  text-decoration: none;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 18px;
  line-height: 1.8rem;
  min-width: 140px;
  padding: 12px 25px 12px;
  text-align: center
}

.btn:hover {
  background: #333333;
  color: #fff;
  text-decoration: none
}

.btn:active {
  text-decoration: none
}

.btn.more {
  font-style: italic;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 14px;
  line-height: 1.4rem;
  padding: 9px 25px 11px
}

.btn.w-full {
  min-width: 0;
  width: 100%
}

.btn.w-auto {
  min-width: 0;
  width: auto
}

.btn+.btn,
.btn+.btn-white {
  margin-left: 30px
}

.btn:not(.more):not(.no-arrow):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .btn:not(.more):not(.no-arrow):before {
    top: -1px
  }
}

.btn:not(.more):not(.no-arrow):before {
  background: url(/assets/img/common/icon-link-arrow-gray.svg) no-repeat
}

.btn:not(.more):not(.no-arrow):hover:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.btn:hover .pdf-info,
.btn:hover .size-info {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  color: #fff
}

.btn:hover[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

.btn-white {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: rgba(255, 255, 255, 0);
  border: 1px solid #fff;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 18px;
  line-height: 1.8rem;
  min-width: 140px;
  padding: 12px 25px 12px;
  text-align: center
}

.btn-white:hover {
  background: white;
  color: #333;
  text-decoration: none
}

.btn-white:active {
  text-decoration: none
}

.btn-white.more {
  font-style: italic;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 14px;
  line-height: 1.4rem;
  padding: 9px 25px 11px
}

.btn-white.w-full {
  min-width: 0;
  width: 100%
}

.btn-white.w-auto {
  min-width: 0;
  width: auto
}

.btn-white+.btn,
.btn-white+.btn-white {
  margin-left: 30px
}

.btn-white:not(.more):not(.no-arrow):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .btn-white:not(.more):not(.no-arrow):before {
    top: -1px
  }
}

.btn-white:not(.more):not(.no-arrow):before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.btn-white:not(.more):not(.no-arrow):hover:before {
  background: url(/assets/img/common/icon-link-arrow-gray.svg) no-repeat
}

.btn-white[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

.btn-white:hover[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.btn-color {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #4065a2;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  min-width: 80px;
  padding: 16px 30px 17px;
  text-align: center
}

.btn-color:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .btn-color:before {
    top: -1px
  }
}

.btn-color:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.btn-color.no-arrow:before {
  display: none
}

.btn-color:hover {
  background: #4770b4;
  text-decoration: none
}

.btn-color:active {
  text-decoration: none
}

.btn-color[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat;
  margin-right: 0
}

.btn-color.disabled {
  opacity: 0.3
}

.btn-color.disabled:hover {
  background: #4065a2;
  text-decoration: none
}

@media screen and (max-width:46em) {
  .btn-color {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    padding: 12px 20px 13px
  }
}

.btn-color.w-full {
  min-width: 0;
  width: 100%
}

.btn-color.w-auto {
  min-width: 0;
  width: auto
}

.btn-color+.btn-color,
.btn-color+.btn-color-gray,
.btn-color+.btn-color-red {
  margin-left: 30px
}

.btn-color-red {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #d84d4d;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  min-width: 80px;
  padding: 16px 30px 17px;
  text-align: center
}

.btn-color-red:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .btn-color-red:before {
    top: -1px
  }
}

.btn-color-red:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.btn-color-red.no-arrow:before {
  display: none
}

.btn-color-red:hover {
  background: #dd6262;
  text-decoration: none
}

.btn-color-red:active {
  text-decoration: none
}

.btn-color-red[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat;
  margin-right: 0
}

.btn-color-red.disabled {
  opacity: 0.3
}

.btn-color-red.disabled:hover {
  background: #d84d4d;
  text-decoration: none
}

@media screen and (max-width:46em) {
  .btn-color-red {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    padding: 12px 20px 13px
  }
}

.btn-color-red.w-full {
  min-width: 0;
  width: 100%
}

.btn-color-red.w-auto {
  min-width: 0;
  width: auto
}

.btn-color-red+.btn-color,
.btn-color-red+.btn-color-gray,
.btn-color-red+.btn-color-red {
  margin-left: 30px
}

.btn-color-gray {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #aaa;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  min-width: 80px;
  padding: 16px 30px 17px;
  text-align: center
}

.btn-color-gray:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .btn-color-gray:before {
    top: -1px
  }
}

.btn-color-gray:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.btn-color-gray.no-arrow:before {
  display: none
}

.btn-color-gray:hover {
  background: #b7b7b7;
  text-decoration: none
}

.btn-color-gray:active {
  text-decoration: none
}

.btn-color-gray[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat;
  margin-right: 0
}

.btn-color-gray.disabled {
  opacity: 0.3
}

.btn-color-gray.disabled:hover {
  background: #aaa;
  text-decoration: none
}

@media screen and (max-width:46em) {
  .btn-color-gray {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    padding: 12px 20px 13px
  }
}

.btn-color-gray.w-full {
  min-width: 0;
  width: 100%
}

.btn-color-gray.w-auto {
  min-width: 0;
  width: auto
}

.btn-color-gray+.btn-color,
.btn-color-gray+.btn-color-gray,
.btn-color-gray+.btn-color-red {
  margin-left: 30px
}

.mod-paragraph+.mod-paragraph,
.mod-paragraph+p,
p+.mod-paragraph,
p+p {
  margin-top: 1.75em
}

.mod-ul {
  padding-bottom: 5px
}

.mod-ul li {
  margin-left: 20px;
  position: relative
}

.mod-ul li:not(:first-child) {
  margin-top: 5px
}

.mod-ul li:before {
  content: "・";
  position: absolute;
  left: -18px;
  top: 0
}

.mod-ol {
  padding-bottom: 5px
}

.mod-ol li {
  list-style: decimal;
  margin-left: 20px
}

.mod-ol li:not(:first-child) {
  margin-top: 5px
}

.mod-ol-brackets {
  padding-bottom: 5px
}

.mod-ol-brackets li {
  list-style-position: inside;
  counter-increment: cnt;
  padding-left: 3em;
  position: relative
}

.mod-ol-brackets li:not(:first-child) {
  margin-top: 5px
}

.mod-ol-brackets li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0
}

.mod-dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.mod-dl dt {
  margin-right: 1.5em;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto
}

.mod-dl.type-col {
  display: block
}

.mod-dl.type-col dt {
  margin-right: 0;
  margin-bottom: 10px
}

.mod-list {
  padding-bottom: 5px
}

.mod-list li:not(:first-child) {
  margin-top: 5px
}

.mod-lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 26.25px;
  line-height: 2.625rem;
  text-align: center;
  margin-bottom: 60px
}

.headline--lv2+.mod-lead,
.headline--lv2-2+.mod-lead {
  margin-top: -10px
}

.mod-caption {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 16px;
  line-height: 1.6rem;
  margin-top: 10px
}

.mod-caption:not(:last-child) {
  margin-bottom: 10px
}

.mod-caption.indent {
  text-indent: -1em;
  padding-left: 1em
}

p:not(.mod-caption)+.mod-caption {
  margin-top: 20px
}

.mod-caption p.mod-caption+p.mod-caption {
  margin-top: 0
}

.mod-asof {
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 16px;
  line-height: 1.6rem
}

.mod-attention {
  color: #d84d4d
}

.mod-label-text {
  font-size: 10px;
  font-size: 1rem;
  line-height: 10px;
  line-height: 1rem;
  color: #4065a2;
  border: 1px solid #4065a2;
  margin-left: 8px;
  padding: 0 6px;
  letter-spacing: normal;
  white-space: nowrap
}

.mod-label-text.is-attention {
  color: #d84d4d;
  border-color: #d84d4d;
  letter-spacing: 0.1em
}

.mod-ruby-after rt {
  display: inline-block;
  margin-left: 5px;
  font-size: 75%
}

.mod-ruby-after rt:before {
  content: "（"
}

.mod-ruby-after rt:after {
  content: "）"
}

.mod-sub,
.mod-sup {
  height: 0;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
  font-size: 75%
}

.mod-sup {
  bottom: 0.75ex
}

.mod-sign {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem;
  text-align: right
}

.mod-sign b {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 45.5px;
  line-height: 4.55rem
}

[lang=en] .mod-sign b {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 38.5px;
  line-height: 3.85rem
}

.mod-biography ul li {
  margin-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.mod-biography ul li span {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 8em;
  flex: 0 0 8em;
  margin-right: 10px
}

[lang=en] .mod-biography ul li span {
  font-style: italic;
  padding-left: 4px
}

.mod-checkicon {
  position: relative;
  font-size: 0;
  text-indent: -9999px;
  display: inline-block;
  width: 17px
}

.mod-checkicon:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border-radius: 50%;
  left: 0;
  top: 0;
  width: 17px;
  height: 17px;
  background: #4065a2
}

.mod-checkicon:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  left: 6px;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.mod-bgBox {
  background: #f4f4f4;
  padding: 30px;
  margin: 30px 0;
  width: 100%
}

.mod-bgBox.is-reduce {
  padding: 15px 20px
}

.mod-bgBox.is-blue {
  background: #f5f7fb
}

.mod-bgBox.is-white {
  background: transparent
}

.mod-bgBox:first-child {
  margin-top: 0
}

.mod-bgBox:last-child {
  margin-bottom: 0
}

.mod-borderBox {
  border: 3px solid #d6d6d6;
  padding: 30px;
  margin: 30px 0;
  width: 100%
}

.mod-borderBox.is-reduce {
  padding: 15px 20px
}

.mod-borderBox.is-attention {
  border-color: #d84d4d
}

.mod-borderBox:first-child {
  margin-top: 0
}

.mod-borderBox:last-child {
  margin-bottom: 0
}

img.is-border {
  border: 1px solid #d6d6d6
}

.mod-image {
  text-align: center
}

.mod-image img {
  max-width: 100%
}

.mod-image.align-left {
  text-align: left
}

.mod-image.align-right {
  text-align: right
}

.mod-image-block {
  padding: 30px;
  -webkit-box-shadow: inset 0 0 0 1px #d6d6d6;
  box-shadow: inset 0 0 0 1px #d6d6d6
}

.mod-figure img {
  width: 100%;
  max-width: 100%
}

.mod-figure figcaption {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 18px;
  line-height: 1.8rem;
  margin-top: 8px;
  letter-spacing: 0.075em
}

.mod-figure figcaption .link-arrow {
  text-indent: 0;
  padding-left: 0
}

.mod-figure.is-border .image {
  position: relative
}

.mod-figure.is-border .image:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: inset 0 0 0 1px #d6d6d6;
  box-shadow: inset 0 0 0 1px #d6d6d6
}

.mod-card {
  background: #fff;
  text-align: left;
  height: 100%
}

.section:not(.bg) .inner .mod-card {
  background: #f4f4f4
}

.l-grid--tile .mod-card {
  height: auto;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.l-grid--tile .mod-card a {
  height: auto;
  width: 100%
}

.mod-card .title {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 22px;
  line-height: 2.2rem;
  margin-bottom: 6px;
  font-weight: bold;
  text-indent: -21px;
  padding-left: 21px
}

.mod-card .title:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.mod-card .title:only-child {
  margin-bottom: 0
}

.mod-card .title.icon-outline:before {
  width: 14px;
  height: 16px;
  background: url(/assets/img/common/icon-megamenu-outline.svg) no-repeat;
  background-size: 14px 16px
}

.mod-card .headline--lv3,
.mod-card .headline--lv3-2 {
  margin-bottom: 15px;
  line-height: 2.4rem;
  text-indent: -21px;
  padding-left: 21px
}

.mod-card .headline--lv3-2:before,
.mod-card .headline--lv3:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.mod-card .headline--lv3-2:last-child,
.mod-card .headline--lv3:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0
}

.mod-card .headline--lv3.icon-outline:before,
.mod-card .icon-outline.headline--lv3-2:before {
  width: 14px;
  height: 16px;
  background: url(/assets/img/common/icon-megamenu-outline.svg) no-repeat;
  background-size: 14px 16px
}

.mod-card .headline--lv3-2 {
  margin-bottom: 10px;
  line-height: 2.4rem
}

.mod-card .headline--lv3-2:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0
}

.mod-card .headline--lv5 {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.mod-card p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.mod-card .links {
  margin-top: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.mod-card dl.links dt {
  display: inline-block;
  background: #4065a2;
  color: #fff;
  padding: 3px 15px 4px;
  margin-bottom: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  border-radius: 3px
}

.mod-card figure .image {
  overflow: hidden
}

.mod-card figure .image img {
  width: 100%;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  -webkit-backface-visibility: hidden
}

.mod-card figure .image.is-border {
  position: relative
}

.mod-card figure .image.is-border:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: inset 0 0 0 1px #d6d6d6;
  box-shadow: inset 0 0 0 1px #d6d6d6
}

.mod-card figure .image.is-border-bottom {
  position: relative
}

.mod-card figure .image.is-border-bottom:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #d6d6d6
}

.mod-card figure figcaption {
  padding: 15px 20px 18px
}

.mod-card .text {
  padding: 18px 20px 18px
}

.mod-card>a {
  color: #333;
  position: relative;
  display: block;
  height: 100%
}

.mod-card>a:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}

.mod-card>a:hover {
  text-decoration: none
}

.mod-card>a:hover figure .image img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.mod-card>a:hover:before {
  -webkit-box-shadow: inset 0 0 0 2px #4065a2;
  box-shadow: inset 0 0 0 2px #4065a2
}

.mod-card>a:active {
  text-decoration: none
}

.mod-card>a.is-current:before {
  -webkit-box-shadow: inset 0 0 0 2px #4065a2;
  box-shadow: inset 0 0 0 2px #4065a2
}

.mod-card>a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  display: none
}

.mod-card>a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]) figcaption .title:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 11px;
  height: 9px;
  margin-left: 4px;
  margin-right: 4px;
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.mod-card.type-thumb figure {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start
}

.mod-card.type-thumb figure .image {
  width: 100px;
  height: 100px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100px;
  flex: 0 0 100px;
  margin: 15px 0 15px 15px
}

.mod-card.type-thumb figure .image.portrait {
  height: 125px
}

.mod-card.type-thumb figure figcaption {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.mod-card.type-thumb.align-middle figure {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.mod-card.type-icon>a:hover figure .image img {
  -webkit-transform: none;
  transform: none
}

.mod-card.type-icon figure {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.mod-card.type-icon figure .image {
  width: 50px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50px;
  flex: 0 0 50px;
  margin: 15px 0 15px 15px
}

.mod-card.type-icon figure figcaption {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.mod-card.type-icon.align-middle figure {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media (-ms-high-contrast:none) {

  ::-ms-backdrop,
  .mod-card.type-thumb figure figcaption {
    -ms-flex: auto;
    flex: auto
  }
}

@media (-ms-high-contrast:none) {

  ::-ms-backdrop,
  .mod-card.type-icon figure figcaption {
    -ms-flex: auto;
    flex: auto
  }
}

.mod-blockLink a {
  display: block;
  text-align: center;
  color: #333;
  background: #fff;
  border: 4px solid #d6d6d6;
  padding: 18px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 22px;
  line-height: 2.2rem;
  font-weight: bold
}

.mod-blockLink a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.mod-blockLink a:before {
  top: -2px
}

.mod-blockLink a:hover {
  text-decoration: none;
  color: #438bc5
}

.mod-blockLink a:active {
  text-decoration: none
}

[class*=mod-column-].gap-20 {
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px
}

[class*=mod-column-].gap-40 {
  -webkit-column-gap: 40px;
  -moz-column-gap: 40px;
  column-gap: 40px
}

[class*=mod-column-] dl,
[class*=mod-column-] li {
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid
}

.mod-column-2 {
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2
}

.mod-column-3 {
  -webkit-columns: 3;
  -moz-columns: 3;
  columns: 3
}

.mod-column-4 {
  -webkit-columns: 4;
  -moz-columns: 4;
  columns: 4
}

.mod-youtube iframe {
  display: block;
  margin: 0 auto
}

.css-form {
  display: none
}

.mod-radio {
  padding-left: 28px;
  cursor: pointer;
  -webkit-transition: all 0.5s 0s ease;
  transition: all 0.5s 0s ease;
  position: relative;
  display: inline-block;
  margin: 13px 40px 13px 0;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 15px;
  line-height: 1.5rem
}

.mod-radio:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border: 1px solid #d6d6d6;
  background: #fff;
  border-radius: 100%;
  left: 0;
  margin-top: -10px;
  width: 20px;
  height: 20px
}

.mod-radio:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border-radius: 100%;
  background: #4065a2;
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  left: 5px;
  margin-top: -5px;
  width: 10px;
  height: 10px
}

input[type=radio]:checked+.mod-radio {
  color: #4065a2
}

input[type=radio]:checked+.mod-radio:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}

.mod-check {
  padding-left: 28px;
  cursor: pointer;
  -webkit-transition: all 0.5s 0s ease;
  transition: all 0.5s 0s ease;
  position: relative;
  display: inline-block;
  margin: 13px 40px 13px 0;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 15px;
  line-height: 1.5rem
}

.mod-check:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border: 1px solid #d6d6d6;
  background: #fff;
  border-radius: 2px;
  left: 0;
  margin-top: -10px;
  width: 20px;
  height: 20px
}

.mod-check:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  left: 6px;
  margin-top: -9px;
  width: 7px;
  height: 14px;
  border-right: 2px solid #4065a2;
  border-bottom: 2px solid #4065a2;
  -webkit-transform: translateY(4px) scale(0) rotate(45deg);
  transform: translateY(4px) scale(0) rotate(45deg)
}

input[type=checkbox]:checked+.mod-check {
  color: #4065a2
}

input[type=checkbox]:checked+.mod-check:after {
  opacity: 1;
  -webkit-transform: translateY(0) scale(1) rotate(45deg);
  transform: translateY(0) scale(1) rotate(45deg)
}

input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #d6d6d6;
  border-radius: 4px;
  padding: 9px 10px;
  margin-right: 10px;
  width: 100%;
  vertical-align: middle
}

input[type=email]:last-child,
input[type=number]:last-child,
input[type=password]:last-child,
input[type=tel]:last-child,
input[type=text]:last-child,
input[type=url]:last-child {
  margin-right: 0
}

input[type=email].short,
input[type=number].short,
input[type=password].short,
input[type=tel].short,
input[type=text].short,
input[type=url].short {
  width: 100px
}

input[type=email].middle,
input[type=number].middle,
input[type=password].middle,
input[type=tel].middle,
input[type=text].middle,
input[type=url].middle {
  width: 200px
}

input[type=email].long,
input[type=number].long,
input[type=password].long,
input[type=tel].long,
input[type=text].long,
input[type=url].long {
  width: 400px
}

input[type=email].is-error,
input[type=number].is-error,
input[type=password].is-error,
input[type=tel].is-error,
input[type=text].is-error,
input[type=url].is-error {
  border-color: #e68c8c;
  background: #fef9f9
}

input[type=submit] {
  border: 0;
  border-radius: 0;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #d6d6d6;
  border-radius: 4px;
  padding: 9px 10px;
  width: 100%;
  height: 160px
}

textarea.is-error {
  border-color: #e68c8c;
  background: #fef9f9
}

.css-form-select {
  position: relative;
  margin-right: 10px;
  display: inline-block
}

.css-form-select:after,
.css-form-select:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 8px;
  height: 1px;
  background: #4065a2
}

.css-form-select:before {
  right: 15.5px;
  -webkit-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: translateY(2.4px) rotate(45deg);
  transform: translateY(2.4px) rotate(45deg)
}

.css-form-select:after {
  right: 8px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: translateY(2.4px) rotate(-45deg);
  transform: translateY(2.4px) rotate(-45deg)
}

.css-form-select.is-open:before {
  -webkit-transform: translateY(-2.4px) rotate(-45deg);
  transform: translateY(-2.4px) rotate(-45deg)
}

.css-form-select.is-open:after {
  right: 8px;
  -webkit-transform: translateY(-2.4px) rotate(45deg);
  transform: translateY(-2.4px) rotate(45deg)
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #d6d6d6;
  background: #fff;
  border-radius: 4px;
  padding: 9px 40px 9px 15px;
  cursor: pointer
}

select.is-error {
  border-color: #e68c8c;
  background: #fef9f9
}

select::-ms-expand {
  display: none
}

.mod-tabs .tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  margin-bottom: 40px
}

.mod-tabs .tabs.w-fixed {
  width: 1000px;
  margin: 60px auto 0
}

.mod-tabs .tabs.center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.mod-tabs .tabs li {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative
}

.mod-tabs .tabs li:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 100%;
  height: 0;
  background: #4065a2;
  position: absolute;
  left: 0;
  bottom: -1px
}

.mod-tabs .tabs li a {
  height: 100%;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  display: block;
  padding: 15px 38px 16px;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 22px;
  line-height: 2.2rem;
  font-weight: 500;
  color: #333
}

.mod-tabs .tabs li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .mod-tabs .tabs li a:before {
    top: -1px
  }
}

@media screen and (min-width:46.0625em) {
  .mod-tabs .tabs li a:before {
    margin-right: 10px;
    width: 5px;
    height: 9px;
    background-size: 5px 9px
  }
}

.mod-tabs .tabs li a:hover {
  text-decoration: none;
  color: #4065a2
}

.mod-tabs .tabs li a:active {
  text-decoration: none
}

.mod-tabs .tabs li.is-active:before {
  height: 3px
}

.mod-tabs .tabs li.is-active a {
  color: #4065a2
}

.mod-tabs .tabs.size-s li a {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  padding: 15px 16px 16px
}

.mod-tabs .tab-contents {
  display: none
}

.mod-tabs .tab-contents.is-active {
  display: block
}

.mod-accordion {
  cursor: pointer;
  position: relative;
  color: #438bc5;
  display: inline-block;
  padding-right: 25px
}

.mod-accordion:after,
.mod-accordion:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 6px;
  height: 1px;
  background: #4065a2
}

.mod-accordion:before {
  right: 11.5px;
  -webkit-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: translateY(1.8px) rotate(45deg);
  transform: translateY(1.8px) rotate(45deg)
}

.mod-accordion:after {
  right: 6px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: translateY(1.8px) rotate(-45deg);
  transform: translateY(1.8px) rotate(-45deg)
}

.mod-accordion.is-open:before {
  -webkit-transform: translateY(-1.8px) rotate(-45deg);
  transform: translateY(-1.8px) rotate(-45deg)
}

.mod-accordion.is-open:after {
  right: 6px;
  -webkit-transform: translateY(-1.8px) rotate(45deg);
  transform: translateY(-1.8px) rotate(45deg)
}

.mod-accordion.arrow-left {
  padding-right: 0;
  padding-left: 20px
}

.mod-accordion.arrow-left:before {
  right: auto;
  left: 1px
}

.mod-accordion.arrow-left:after {
  right: auto;
  left: 7px
}

.mod-accordion.default-open+.mod-accordion-contents {
  display: block
}

.mod-accordion-contents {
  display: none
}

@media screen and (min-width:46.0625em) {
  .mod-sp-accordion-contents {
    display: block !important;
    height: auto !important
  }
}

.list-fade-enter-active,
.list-fade-leave-active {
  -webkit-transition: all 0.3s;
  transition: all 0.3s
}

.list-fade-enter,
.list-fade-leave-to {
  opacity: 0
}

@media screen and (max-width:46em) {
  .sp-align-left {
    text-align: left
  }

  .sp-align-center {
    text-align: center
  }

  .sp-align-right {
    text-align: right
  }

  .headline--lv1 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 22px;
    line-height: 2.2rem
  }

  [lang=en] .headline--lv1 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 20px;
    line-height: 2rem
  }

  .headline--lv1 span {
    font-size: 10px;
    font-size: 1rem;
    line-height: 14px;
    line-height: 1.4rem;
    display: block
  }

  .headline--lv2,
  .headline--lv2-2 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 28px;
    line-height: 2.8rem;
    margin-bottom: 50px
  }

  .headline--lv2-2:after,
  .headline--lv2:after {
    width: 30px;
    height: 1px;
    top: 12px
  }

  .headline--lv2 span,
  .headline--lv2-2 span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .headline--lv2 b,
  .headline--lv2-2 b {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 22px;
    line-height: 2.2rem
  }

  .headline--lv2-2 {
    margin-bottom: 22px
  }

  .headline--lv2-2:after {
    top: 10px
  }

  .headline--lv2-2.with-icon:before {
    width: 40px;
    height: 40px;
    margin: 0 auto 10px
  }

  .headline--lv3,
  .headline--lv3-2 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 22px;
    line-height: 2.2rem;
    margin-bottom: 15px;
    padding-bottom: 10px
  }

  .headline--lv3 span,
  .headline--lv3-2 span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .headline--lv3 .label,
  .headline--lv3-2 .label {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem;
    padding: 1px 10px;
    margin-right: 12px;
    margin-bottom: 5px
  }

  .headline--lv3-2 {
    padding-bottom: 0;
    margin-bottom: 12px;
    border-bottom: none
  }

  .headline--lv3-2.sp-headline--lv3 {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d6d6d6
  }

  .headline--lv4,
  .headline--lv4-2,
  .headline--lv4-3 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    margin-bottom: 5px
  }

  .headline--lv4 span,
  .headline--lv4-2 span,
  .headline--lv4-3 span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .headline--lv5 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    margin-bottom: 5px
  }

  .btn {
    margin: 5px
  }

  .btn+.btn,
  .btn+.btn-white {
    margin-left: 5px
  }

  .btn-white {
    margin: 5px
  }

  .btn-white+.btn,
  .btn-white+.btn-white {
    margin-left: 5px
  }

  .btn-color {
    margin: 5px
  }

  .btn-color+.btn-color,
  .btn-color+.btn-color-gray,
  .btn-color+.btn-color-red {
    margin-left: 5px
  }

  .btn-color-red {
    margin: 5px
  }

  .btn-color-red+.btn-color,
  .btn-color-red+.btn-color-gray,
  .btn-color-red+.btn-color-red {
    margin-left: 5px
  }

  .btn-color-gray {
    margin: 5px
  }

  .btn-color-gray+.btn-color,
  .btn-color-gray+.btn-color-gray,
  .btn-color-gray+.btn-color-red {
    margin-left: 5px
  }

  .mod-dl dt {
    margin-right: 1em
  }

  .mod-dl.sp-col {
    display: block
  }

  .mod-dl.sp-col dt {
    margin-right: 0;
    margin-bottom: 5px
  }

  .mod-dl.type-col dt {
    margin-right: 0;
    margin-bottom: 5px
  }

  .mod-lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22.75px;
    line-height: 2.275rem;
    margin-bottom: 35px
  }

  .headline--lv2+.mod-lead,
  .headline--lv2-2+.mod-lead {
    margin-top: -20px
  }

  .mod-caption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 15px;
    line-height: 1.5rem
  }

  .mod-asof {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 19.25px;
    line-height: 1.925rem
  }

  .mod-sign {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .mod-sign b {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 31.5px;
    line-height: 3.15rem
  }

  .mod-biography ul li {
    margin-bottom: 10px;
    display: block
  }

  .mod-biography ul li span {
    display: block;
    margin-right: 0
  }

  [lang=en] .mod-biography ul li span {
    padding-left: 3px;
    font-weight: bold
  }

  .mod-checkicon:after {
    margin-top: -6px
  }

  .mod-bgBox {
    padding: 15px;
    margin: 20px 0
  }

  .mod-borderBox {
    padding: 15px;
    margin: 20px 0
  }

  .mod-image-block {
    padding: 20px
  }

  .mod-figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 19.25px;
    line-height: 1.925rem;
    margin-top: 8px
  }

  .mod-card .title {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 22px;
    line-height: 2.2rem
  }

  .mod-card .title:before {
    top: -1px
  }

  .mod-card figure figcaption {
    padding: 14px 15px 15px
  }

  .mod-card .text {
    padding: 15px 15px 15px
  }

  .mod-card.type-thumb figure .image {
    width: 70px;
    height: 70px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 70px;
    flex: 0 0 70px
  }

  .mod-card.type-thumb figure .image.portrait {
    height: 88px
  }

  .mod-card.type-thumb figure .image.portrait+figcaption .headline--lv3-2 {
    min-height: 88px
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2 {
    min-height: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 0;
    text-indent: 0
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2:before {
    display: none
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2 a,
  .mod-card.type-thumb figure figcaption .headline--lv3-2 strong {
    line-height: 2.4rem;
    text-indent: -21px;
    padding-left: 21px
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2 a:before,
  .mod-card.type-thumb figure figcaption .headline--lv3-2 strong:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
    width: 14px;
    height: 14px;
    margin-right: 7px;
    background: url(/assets/img/common/icon-link-circle.svg) no-repeat
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2+.links,
  .mod-card.type-thumb figure figcaption .headline--lv3-2+.links+p,
  .mod-card.type-thumb figure figcaption .headline--lv3-2+p,
  .mod-card.type-thumb figure figcaption .headline--lv3-2+p+.links {
    margin-left: -85px
  }

  .mod-card.type-thumb figure figcaption .headline--lv3-2.icon-outline a:before,
  .mod-card.type-thumb figure figcaption .headline--lv3-2.icon-outline strong:before {
    width: 14px;
    height: 16px;
    background: url(/assets/img/common/icon-megamenu-outline.svg) no-repeat;
    background-size: 14px 16px
  }

  .mod-card.type-thumb.align-middle figure {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }

  .mod-blockLink a {
    padding: 12px 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 17px;
    line-height: 1.7rem
  }

  .mod-column-2 {
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1
  }

  .mod-column-3 {
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1
  }

  .mod-column-4 {
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1
  }

  .mod-youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%
  }

  .mod-youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important
  }

  input[type=email],
  input[type=number],
  input[type=password],
  input[type=tel],
  input[type=text],
  input[type=url] {
    margin-right: 7px
  }

  input[type=email].short,
  input[type=number].short,
  input[type=password].short,
  input[type=tel].short,
  input[type=text].short,
  input[type=url].short {
    width: 100%
  }

  input[type=email].middle,
  input[type=number].middle,
  input[type=password].middle,
  input[type=tel].middle,
  input[type=text].middle,
  input[type=url].middle {
    width: 100%
  }

  input[type=email].long,
  input[type=number].long,
  input[type=password].long,
  input[type=tel].long,
  input[type=text].long,
  input[type=url].long {
    width: 100%
  }

  .css-form-select {
    width: 100%
  }

  select {
    width: 100%
  }

  .mod-tabs .tabs {
    border-bottom: none
  }

  .mod-tabs .tabs.w-fixed {
    width: auto;
    margin: 15px 15px 0
  }

  .mod-tabs .tabs.center {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }

  .mod-tabs .tabs li {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    border-bottom: 1px solid #d6d6d6
  }

  .mod-tabs .tabs li a {
    padding: 15px 15px 15px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 20px;
    line-height: 2rem
  }

  .mod-tabs .tabs.size-s li a {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 17px;
    line-height: 1.7rem;
    padding: 15px 15px 15px
  }

  .mod-sp-accordion {
    cursor: pointer;
    position: relative;
    color: #438bc5;
    display: block;
    padding-right: 25px
  }

  .mod-sp-accordion:after,
  .mod-sp-accordion:before {
    -webkit-transition: all 0.2s 0s ease;
    transition: all 0.2s 0s ease;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #4065a2
  }

  .mod-sp-accordion:before {
    right: 19.5px;
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: translateY(3px) rotate(45deg);
    transform: translateY(3px) rotate(45deg)
  }

  .mod-sp-accordion:after {
    right: 10px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: translateY(3px) rotate(-45deg);
    transform: translateY(3px) rotate(-45deg)
  }

  .mod-sp-accordion.is-open:before {
    -webkit-transform: translateY(-3px) rotate(-45deg);
    transform: translateY(-3px) rotate(-45deg)
  }

  .mod-sp-accordion.is-open:after {
    right: 10px;
    -webkit-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg)
  }

  .mod-sp-accordion.is-open+.mod-accordion-contents {
    display: block
  }

  .mod-sp-accordion-contents {
    display: none
  }
}

.l-grid-wrap {
  overflow: hidden
}

.l-grid-wrap [class*=" l-grid"],
.l-grid-wrap [class^=l-grid] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: -40px
}

.l-grid-wrap [class*=" l-grid"] [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"] [class^=l-col],
.l-grid-wrap [class^=l-grid] [class*=" l-col"],
.l-grid-wrap [class^=l-grid] [class^=l-col] {
  padding-left: 20px;
  padding-right: 20px;
  margin-bottom: 40px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.l-grid-wrap [class*=" l-grid"] [class*=" l-col"][class*="--top"],
.l-grid-wrap [class*=" l-grid"] [class^=l-col][class*="--top"],
.l-grid-wrap [class^=l-grid] [class*=" l-col"][class*="--top"],
.l-grid-wrap [class^=l-grid] [class^=l-col][class*="--top"] {
  -ms-flex-item-align: start;
  align-self: flex-start
}

.l-grid-wrap [class*=" l-grid"] [class*=" l-col"][class*="--middle"],
.l-grid-wrap [class*=" l-grid"] [class^=l-col][class*="--middle"],
.l-grid-wrap [class^=l-grid] [class*=" l-col"][class*="--middle"],
.l-grid-wrap [class^=l-grid] [class^=l-col][class*="--middle"] {
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.l-grid-wrap [class*=" l-grid"] [class*=" l-col"][class*="--bottom"],
.l-grid-wrap [class*=" l-grid"] [class^=l-col][class*="--bottom"],
.l-grid-wrap [class^=l-grid] [class*=" l-col"][class*="--bottom"],
.l-grid-wrap [class^=l-grid] [class^=l-col][class*="--bottom"] {
  -ms-flex-item-align: end;
  align-self: flex-end
}

.l-grid-wrap [class*=" l-grid"] .col-auto,
.l-grid-wrap [class^=l-grid] .col-auto {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto
}

.l-grid-wrap [class*=" l-grid"] .push-0,
.l-grid-wrap [class^=l-grid] .push-0 {
  margin-left: 0
}

.l-grid-wrap [class*=" l-grid"] .col-1-1,
.l-grid-wrap [class^=l-grid] .col-1-1 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-2,
.l-grid-wrap [class^=l-grid] .col-1-2 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-1-2,
.l-grid-wrap [class^=l-grid] .push-1-2 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-2-2,
.l-grid-wrap [class^=l-grid] .col-2-2 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-2-2,
.l-grid-wrap [class^=l-grid] .push-2-2 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-3,
.l-grid-wrap [class^=l-grid] .col-1-3 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.3333333333%;
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-1-3,
.l-grid-wrap [class^=l-grid] .push-1-3 {
  margin-left: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-2-3,
.l-grid-wrap [class^=l-grid] .col-2-3 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.6666666667%;
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-2-3,
.l-grid-wrap [class^=l-grid] .push-2-3 {
  margin-left: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-3-3,
.l-grid-wrap [class^=l-grid] .col-3-3 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-3-3,
.l-grid-wrap [class^=l-grid] .push-3-3 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-4,
.l-grid-wrap [class^=l-grid] .col-1-4 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%
}

.l-grid-wrap [class*=" l-grid"] .push-1-4,
.l-grid-wrap [class^=l-grid] .push-1-4 {
  margin-left: 25%
}

.l-grid-wrap [class*=" l-grid"] .col-2-4,
.l-grid-wrap [class^=l-grid] .col-2-4 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-2-4,
.l-grid-wrap [class^=l-grid] .push-2-4 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-3-4,
.l-grid-wrap [class^=l-grid] .col-3-4 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%
}

.l-grid-wrap [class*=" l-grid"] .push-3-4,
.l-grid-wrap [class^=l-grid] .push-3-4 {
  margin-left: 75%
}

.l-grid-wrap [class*=" l-grid"] .col-4-4,
.l-grid-wrap [class^=l-grid] .col-4-4 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-4-4,
.l-grid-wrap [class^=l-grid] .push-4-4 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-5,
.l-grid-wrap [class^=l-grid] .col-1-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  width: 20%;
  max-width: 20%
}

.l-grid-wrap [class*=" l-grid"] .push-1-5,
.l-grid-wrap [class^=l-grid] .push-1-5 {
  margin-left: 20%
}

.l-grid-wrap [class*=" l-grid"] .col-2-5,
.l-grid-wrap [class^=l-grid] .col-2-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 40%;
  flex: 0 0 40%;
  width: 40%;
  max-width: 40%
}

.l-grid-wrap [class*=" l-grid"] .push-2-5,
.l-grid-wrap [class^=l-grid] .push-2-5 {
  margin-left: 40%
}

.l-grid-wrap [class*=" l-grid"] .col-3-5,
.l-grid-wrap [class^=l-grid] .col-3-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 60%;
  flex: 0 0 60%;
  width: 60%;
  max-width: 60%
}

.l-grid-wrap [class*=" l-grid"] .push-3-5,
.l-grid-wrap [class^=l-grid] .push-3-5 {
  margin-left: 60%
}

.l-grid-wrap [class*=" l-grid"] .col-4-5,
.l-grid-wrap [class^=l-grid] .col-4-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 80%;
  flex: 0 0 80%;
  width: 80%;
  max-width: 80%
}

.l-grid-wrap [class*=" l-grid"] .push-4-5,
.l-grid-wrap [class^=l-grid] .push-4-5 {
  margin-left: 80%
}

.l-grid-wrap [class*=" l-grid"] .col-5-5,
.l-grid-wrap [class^=l-grid] .col-5-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-5-5,
.l-grid-wrap [class^=l-grid] .push-5-5 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-6,
.l-grid-wrap [class^=l-grid] .col-1-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.6666666667%;
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-1-6,
.l-grid-wrap [class^=l-grid] .push-1-6 {
  margin-left: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-2-6,
.l-grid-wrap [class^=l-grid] .col-2-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.3333333333%;
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-2-6,
.l-grid-wrap [class^=l-grid] .push-2-6 {
  margin-left: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-3-6,
.l-grid-wrap [class^=l-grid] .col-3-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-3-6,
.l-grid-wrap [class^=l-grid] .push-3-6 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-4-6,
.l-grid-wrap [class^=l-grid] .col-4-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.6666666667%;
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-4-6,
.l-grid-wrap [class^=l-grid] .push-4-6 {
  margin-left: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-5-6,
.l-grid-wrap [class^=l-grid] .col-5-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 83.3333333333%;
  flex: 0 0 83.3333333333%;
  width: 83.3333333333%;
  max-width: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-5-6,
.l-grid-wrap [class^=l-grid] .push-5-6 {
  margin-left: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-6-6,
.l-grid-wrap [class^=l-grid] .col-6-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-6-6,
.l-grid-wrap [class^=l-grid] .push-6-6 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-7,
.l-grid-wrap [class^=l-grid] .col-1-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 14.2857142857%;
  flex: 0 0 14.2857142857%;
  width: 14.2857142857%;
  max-width: 14.2857142857%
}

.l-grid-wrap [class*=" l-grid"] .push-1-7,
.l-grid-wrap [class^=l-grid] .push-1-7 {
  margin-left: 14.2857142857%
}

.l-grid-wrap [class*=" l-grid"] .col-2-7,
.l-grid-wrap [class^=l-grid] .col-2-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 28.5714285714%;
  flex: 0 0 28.5714285714%;
  width: 28.5714285714%;
  max-width: 28.5714285714%
}

.l-grid-wrap [class*=" l-grid"] .push-2-7,
.l-grid-wrap [class^=l-grid] .push-2-7 {
  margin-left: 28.5714285714%
}

.l-grid-wrap [class*=" l-grid"] .col-3-7,
.l-grid-wrap [class^=l-grid] .col-3-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 42.8571428571%;
  flex: 0 0 42.8571428571%;
  width: 42.8571428571%;
  max-width: 42.8571428571%
}

.l-grid-wrap [class*=" l-grid"] .push-3-7,
.l-grid-wrap [class^=l-grid] .push-3-7 {
  margin-left: 42.8571428571%
}

.l-grid-wrap [class*=" l-grid"] .col-4-7,
.l-grid-wrap [class^=l-grid] .col-4-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 57.1428571429%;
  flex: 0 0 57.1428571429%;
  width: 57.1428571429%;
  max-width: 57.1428571429%
}

.l-grid-wrap [class*=" l-grid"] .push-4-7,
.l-grid-wrap [class^=l-grid] .push-4-7 {
  margin-left: 57.1428571429%
}

.l-grid-wrap [class*=" l-grid"] .col-5-7,
.l-grid-wrap [class^=l-grid] .col-5-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 71.4285714286%;
  flex: 0 0 71.4285714286%;
  width: 71.4285714286%;
  max-width: 71.4285714286%
}

.l-grid-wrap [class*=" l-grid"] .push-5-7,
.l-grid-wrap [class^=l-grid] .push-5-7 {
  margin-left: 71.4285714286%
}

.l-grid-wrap [class*=" l-grid"] .col-6-7,
.l-grid-wrap [class^=l-grid] .col-6-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 85.7142857143%;
  flex: 0 0 85.7142857143%;
  width: 85.7142857143%;
  max-width: 85.7142857143%
}

.l-grid-wrap [class*=" l-grid"] .push-6-7,
.l-grid-wrap [class^=l-grid] .push-6-7 {
  margin-left: 85.7142857143%
}

.l-grid-wrap [class*=" l-grid"] .col-7-7,
.l-grid-wrap [class^=l-grid] .col-7-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-7-7,
.l-grid-wrap [class^=l-grid] .push-7-7 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-8,
.l-grid-wrap [class^=l-grid] .col-1-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 12.5%;
  flex: 0 0 12.5%;
  width: 12.5%;
  max-width: 12.5%
}

.l-grid-wrap [class*=" l-grid"] .push-1-8,
.l-grid-wrap [class^=l-grid] .push-1-8 {
  margin-left: 12.5%
}

.l-grid-wrap [class*=" l-grid"] .col-2-8,
.l-grid-wrap [class^=l-grid] .col-2-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%
}

.l-grid-wrap [class*=" l-grid"] .push-2-8,
.l-grid-wrap [class^=l-grid] .push-2-8 {
  margin-left: 25%
}

.l-grid-wrap [class*=" l-grid"] .col-3-8,
.l-grid-wrap [class^=l-grid] .col-3-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 37.5%;
  flex: 0 0 37.5%;
  width: 37.5%;
  max-width: 37.5%
}

.l-grid-wrap [class*=" l-grid"] .push-3-8,
.l-grid-wrap [class^=l-grid] .push-3-8 {
  margin-left: 37.5%
}

.l-grid-wrap [class*=" l-grid"] .col-4-8,
.l-grid-wrap [class^=l-grid] .col-4-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-4-8,
.l-grid-wrap [class^=l-grid] .push-4-8 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-5-8,
.l-grid-wrap [class^=l-grid] .col-5-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 62.5%;
  flex: 0 0 62.5%;
  width: 62.5%;
  max-width: 62.5%
}

.l-grid-wrap [class*=" l-grid"] .push-5-8,
.l-grid-wrap [class^=l-grid] .push-5-8 {
  margin-left: 62.5%
}

.l-grid-wrap [class*=" l-grid"] .col-6-8,
.l-grid-wrap [class^=l-grid] .col-6-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%
}

.l-grid-wrap [class*=" l-grid"] .push-6-8,
.l-grid-wrap [class^=l-grid] .push-6-8 {
  margin-left: 75%
}

.l-grid-wrap [class*=" l-grid"] .col-7-8,
.l-grid-wrap [class^=l-grid] .col-7-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 87.5%;
  flex: 0 0 87.5%;
  width: 87.5%;
  max-width: 87.5%
}

.l-grid-wrap [class*=" l-grid"] .push-7-8,
.l-grid-wrap [class^=l-grid] .push-7-8 {
  margin-left: 87.5%
}

.l-grid-wrap [class*=" l-grid"] .col-8-8,
.l-grid-wrap [class^=l-grid] .col-8-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-8-8,
.l-grid-wrap [class^=l-grid] .push-8-8 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-9,
.l-grid-wrap [class^=l-grid] .col-1-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 11.1111111111%;
  flex: 0 0 11.1111111111%;
  width: 11.1111111111%;
  max-width: 11.1111111111%
}

.l-grid-wrap [class*=" l-grid"] .push-1-9,
.l-grid-wrap [class^=l-grid] .push-1-9 {
  margin-left: 11.1111111111%
}

.l-grid-wrap [class*=" l-grid"] .col-2-9,
.l-grid-wrap [class^=l-grid] .col-2-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 22.2222222222%;
  flex: 0 0 22.2222222222%;
  width: 22.2222222222%;
  max-width: 22.2222222222%
}

.l-grid-wrap [class*=" l-grid"] .push-2-9,
.l-grid-wrap [class^=l-grid] .push-2-9 {
  margin-left: 22.2222222222%
}

.l-grid-wrap [class*=" l-grid"] .col-3-9,
.l-grid-wrap [class^=l-grid] .col-3-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.3333333333%;
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-3-9,
.l-grid-wrap [class^=l-grid] .push-3-9 {
  margin-left: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-4-9,
.l-grid-wrap [class^=l-grid] .col-4-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 44.4444444444%;
  flex: 0 0 44.4444444444%;
  width: 44.4444444444%;
  max-width: 44.4444444444%
}

.l-grid-wrap [class*=" l-grid"] .push-4-9,
.l-grid-wrap [class^=l-grid] .push-4-9 {
  margin-left: 44.4444444444%
}

.l-grid-wrap [class*=" l-grid"] .col-5-9,
.l-grid-wrap [class^=l-grid] .col-5-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 55.5555555556%;
  flex: 0 0 55.5555555556%;
  width: 55.5555555556%;
  max-width: 55.5555555556%
}

.l-grid-wrap [class*=" l-grid"] .push-5-9,
.l-grid-wrap [class^=l-grid] .push-5-9 {
  margin-left: 55.5555555556%
}

.l-grid-wrap [class*=" l-grid"] .col-6-9,
.l-grid-wrap [class^=l-grid] .col-6-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.6666666667%;
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-6-9,
.l-grid-wrap [class^=l-grid] .push-6-9 {
  margin-left: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-7-9,
.l-grid-wrap [class^=l-grid] .col-7-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 77.7777777778%;
  flex: 0 0 77.7777777778%;
  width: 77.7777777778%;
  max-width: 77.7777777778%
}

.l-grid-wrap [class*=" l-grid"] .push-7-9,
.l-grid-wrap [class^=l-grid] .push-7-9 {
  margin-left: 77.7777777778%
}

.l-grid-wrap [class*=" l-grid"] .col-8-9,
.l-grid-wrap [class^=l-grid] .col-8-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 88.8888888889%;
  flex: 0 0 88.8888888889%;
  width: 88.8888888889%;
  max-width: 88.8888888889%
}

.l-grid-wrap [class*=" l-grid"] .push-8-9,
.l-grid-wrap [class^=l-grid] .push-8-9 {
  margin-left: 88.8888888889%
}

.l-grid-wrap [class*=" l-grid"] .col-9-9,
.l-grid-wrap [class^=l-grid] .col-9-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-9-9,
.l-grid-wrap [class^=l-grid] .push-9-9 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-10,
.l-grid-wrap [class^=l-grid] .col-1-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 10%;
  flex: 0 0 10%;
  width: 10%;
  max-width: 10%
}

.l-grid-wrap [class*=" l-grid"] .push-1-10,
.l-grid-wrap [class^=l-grid] .push-1-10 {
  margin-left: 10%
}

.l-grid-wrap [class*=" l-grid"] .col-2-10,
.l-grid-wrap [class^=l-grid] .col-2-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  width: 20%;
  max-width: 20%
}

.l-grid-wrap [class*=" l-grid"] .push-2-10,
.l-grid-wrap [class^=l-grid] .push-2-10 {
  margin-left: 20%
}

.l-grid-wrap [class*=" l-grid"] .col-3-10,
.l-grid-wrap [class^=l-grid] .col-3-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30%;
  flex: 0 0 30%;
  width: 30%;
  max-width: 30%
}

.l-grid-wrap [class*=" l-grid"] .push-3-10,
.l-grid-wrap [class^=l-grid] .push-3-10 {
  margin-left: 30%
}

.l-grid-wrap [class*=" l-grid"] .col-4-10,
.l-grid-wrap [class^=l-grid] .col-4-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 40%;
  flex: 0 0 40%;
  width: 40%;
  max-width: 40%
}

.l-grid-wrap [class*=" l-grid"] .push-4-10,
.l-grid-wrap [class^=l-grid] .push-4-10 {
  margin-left: 40%
}

.l-grid-wrap [class*=" l-grid"] .col-5-10,
.l-grid-wrap [class^=l-grid] .col-5-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-5-10,
.l-grid-wrap [class^=l-grid] .push-5-10 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-6-10,
.l-grid-wrap [class^=l-grid] .col-6-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 60%;
  flex: 0 0 60%;
  width: 60%;
  max-width: 60%
}

.l-grid-wrap [class*=" l-grid"] .push-6-10,
.l-grid-wrap [class^=l-grid] .push-6-10 {
  margin-left: 60%
}

.l-grid-wrap [class*=" l-grid"] .col-7-10,
.l-grid-wrap [class^=l-grid] .col-7-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70%;
  flex: 0 0 70%;
  width: 70%;
  max-width: 70%
}

.l-grid-wrap [class*=" l-grid"] .push-7-10,
.l-grid-wrap [class^=l-grid] .push-7-10 {
  margin-left: 70%
}

.l-grid-wrap [class*=" l-grid"] .col-8-10,
.l-grid-wrap [class^=l-grid] .col-8-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 80%;
  flex: 0 0 80%;
  width: 80%;
  max-width: 80%
}

.l-grid-wrap [class*=" l-grid"] .push-8-10,
.l-grid-wrap [class^=l-grid] .push-8-10 {
  margin-left: 80%
}

.l-grid-wrap [class*=" l-grid"] .col-9-10,
.l-grid-wrap [class^=l-grid] .col-9-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 90%;
  flex: 0 0 90%;
  width: 90%;
  max-width: 90%
}

.l-grid-wrap [class*=" l-grid"] .push-9-10,
.l-grid-wrap [class^=l-grid] .push-9-10 {
  margin-left: 90%
}

.l-grid-wrap [class*=" l-grid"] .col-10-10,
.l-grid-wrap [class^=l-grid] .col-10-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-10-10,
.l-grid-wrap [class^=l-grid] .push-10-10 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-11,
.l-grid-wrap [class^=l-grid] .col-1-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 9.0909090909%;
  flex: 0 0 9.0909090909%;
  width: 9.0909090909%;
  max-width: 9.0909090909%
}

.l-grid-wrap [class*=" l-grid"] .push-1-11,
.l-grid-wrap [class^=l-grid] .push-1-11 {
  margin-left: 9.0909090909%
}

.l-grid-wrap [class*=" l-grid"] .col-2-11,
.l-grid-wrap [class^=l-grid] .col-2-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 18.1818181818%;
  flex: 0 0 18.1818181818%;
  width: 18.1818181818%;
  max-width: 18.1818181818%
}

.l-grid-wrap [class*=" l-grid"] .push-2-11,
.l-grid-wrap [class^=l-grid] .push-2-11 {
  margin-left: 18.1818181818%
}

.l-grid-wrap [class*=" l-grid"] .col-3-11,
.l-grid-wrap [class^=l-grid] .col-3-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 27.2727272727%;
  flex: 0 0 27.2727272727%;
  width: 27.2727272727%;
  max-width: 27.2727272727%
}

.l-grid-wrap [class*=" l-grid"] .push-3-11,
.l-grid-wrap [class^=l-grid] .push-3-11 {
  margin-left: 27.2727272727%
}

.l-grid-wrap [class*=" l-grid"] .col-4-11,
.l-grid-wrap [class^=l-grid] .col-4-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 36.3636363636%;
  flex: 0 0 36.3636363636%;
  width: 36.3636363636%;
  max-width: 36.3636363636%
}

.l-grid-wrap [class*=" l-grid"] .push-4-11,
.l-grid-wrap [class^=l-grid] .push-4-11 {
  margin-left: 36.3636363636%
}

.l-grid-wrap [class*=" l-grid"] .col-5-11,
.l-grid-wrap [class^=l-grid] .col-5-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 45.4545454545%;
  flex: 0 0 45.4545454545%;
  width: 45.4545454545%;
  max-width: 45.4545454545%
}

.l-grid-wrap [class*=" l-grid"] .push-5-11,
.l-grid-wrap [class^=l-grid] .push-5-11 {
  margin-left: 45.4545454545%
}

.l-grid-wrap [class*=" l-grid"] .col-6-11,
.l-grid-wrap [class^=l-grid] .col-6-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 54.5454545455%;
  flex: 0 0 54.5454545455%;
  width: 54.5454545455%;
  max-width: 54.5454545455%
}

.l-grid-wrap [class*=" l-grid"] .push-6-11,
.l-grid-wrap [class^=l-grid] .push-6-11 {
  margin-left: 54.5454545455%
}

.l-grid-wrap [class*=" l-grid"] .col-7-11,
.l-grid-wrap [class^=l-grid] .col-7-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 63.6363636364%;
  flex: 0 0 63.6363636364%;
  width: 63.6363636364%;
  max-width: 63.6363636364%
}

.l-grid-wrap [class*=" l-grid"] .push-7-11,
.l-grid-wrap [class^=l-grid] .push-7-11 {
  margin-left: 63.6363636364%
}

.l-grid-wrap [class*=" l-grid"] .col-8-11,
.l-grid-wrap [class^=l-grid] .col-8-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 72.7272727273%;
  flex: 0 0 72.7272727273%;
  width: 72.7272727273%;
  max-width: 72.7272727273%
}

.l-grid-wrap [class*=" l-grid"] .push-8-11,
.l-grid-wrap [class^=l-grid] .push-8-11 {
  margin-left: 72.7272727273%
}

.l-grid-wrap [class*=" l-grid"] .col-9-11,
.l-grid-wrap [class^=l-grid] .col-9-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 81.8181818182%;
  flex: 0 0 81.8181818182%;
  width: 81.8181818182%;
  max-width: 81.8181818182%
}

.l-grid-wrap [class*=" l-grid"] .push-9-11,
.l-grid-wrap [class^=l-grid] .push-9-11 {
  margin-left: 81.8181818182%
}

.l-grid-wrap [class*=" l-grid"] .col-10-11,
.l-grid-wrap [class^=l-grid] .col-10-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 90.9090909091%;
  flex: 0 0 90.9090909091%;
  width: 90.9090909091%;
  max-width: 90.9090909091%
}

.l-grid-wrap [class*=" l-grid"] .push-10-11,
.l-grid-wrap [class^=l-grid] .push-10-11 {
  margin-left: 90.9090909091%
}

.l-grid-wrap [class*=" l-grid"] .col-11-11,
.l-grid-wrap [class^=l-grid] .col-11-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-11-11,
.l-grid-wrap [class^=l-grid] .push-11-11 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"] .col-1-12,
.l-grid-wrap [class^=l-grid] .col-1-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 8.3333333333%;
  flex: 0 0 8.3333333333%;
  width: 8.3333333333%;
  max-width: 8.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-1-12,
.l-grid-wrap [class^=l-grid] .push-1-12 {
  margin-left: 8.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-2-12,
.l-grid-wrap [class^=l-grid] .col-2-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.6666666667%;
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-2-12,
.l-grid-wrap [class^=l-grid] .push-2-12 {
  margin-left: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-3-12,
.l-grid-wrap [class^=l-grid] .col-3-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%
}

.l-grid-wrap [class*=" l-grid"] .push-3-12,
.l-grid-wrap [class^=l-grid] .push-3-12 {
  margin-left: 25%
}

.l-grid-wrap [class*=" l-grid"] .col-4-12,
.l-grid-wrap [class^=l-grid] .col-4-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.3333333333%;
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-4-12,
.l-grid-wrap [class^=l-grid] .push-4-12 {
  margin-left: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-5-12,
.l-grid-wrap [class^=l-grid] .col-5-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 41.6666666667%;
  flex: 0 0 41.6666666667%;
  width: 41.6666666667%;
  max-width: 41.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-5-12,
.l-grid-wrap [class^=l-grid] .push-5-12 {
  margin-left: 41.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-6-12,
.l-grid-wrap [class^=l-grid] .col-6-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%
}

.l-grid-wrap [class*=" l-grid"] .push-6-12,
.l-grid-wrap [class^=l-grid] .push-6-12 {
  margin-left: 50%
}

.l-grid-wrap [class*=" l-grid"] .col-7-12,
.l-grid-wrap [class^=l-grid] .col-7-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 58.3333333333%;
  flex: 0 0 58.3333333333%;
  width: 58.3333333333%;
  max-width: 58.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-7-12,
.l-grid-wrap [class^=l-grid] .push-7-12 {
  margin-left: 58.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-8-12,
.l-grid-wrap [class^=l-grid] .col-8-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.6666666667%;
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-8-12,
.l-grid-wrap [class^=l-grid] .push-8-12 {
  margin-left: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-9-12,
.l-grid-wrap [class^=l-grid] .col-9-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%
}

.l-grid-wrap [class*=" l-grid"] .push-9-12,
.l-grid-wrap [class^=l-grid] .push-9-12 {
  margin-left: 75%
}

.l-grid-wrap [class*=" l-grid"] .col-10-12,
.l-grid-wrap [class^=l-grid] .col-10-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 83.3333333333%;
  flex: 0 0 83.3333333333%;
  width: 83.3333333333%;
  max-width: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .push-10-12,
.l-grid-wrap [class^=l-grid] .push-10-12 {
  margin-left: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"] .col-11-12,
.l-grid-wrap [class^=l-grid] .col-11-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 91.6666666667%;
  flex: 0 0 91.6666666667%;
  width: 91.6666666667%;
  max-width: 91.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .push-11-12,
.l-grid-wrap [class^=l-grid] .push-11-12 {
  margin-left: 91.6666666667%
}

.l-grid-wrap [class*=" l-grid"] .col-12-12,
.l-grid-wrap [class^=l-grid] .col-12-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%
}

.l-grid-wrap [class*=" l-grid"] .push-12-12,
.l-grid-wrap [class^=l-grid] .push-12-12 {
  margin-left: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"],
.l-grid-wrap [class^=l-grid][class*="--reverse"] {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-2,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-2 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-2,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-2 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-3,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-3 {
  margin-left: auto;
  margin-right: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-3,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-3 {
  margin-left: auto;
  margin-right: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-3,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-3 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-4,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-4 {
  margin-left: auto;
  margin-right: 25%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-4,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-4 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-4,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-4 {
  margin-left: auto;
  margin-right: 75%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-4,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-4 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-5,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-5 {
  margin-left: auto;
  margin-right: 20%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-5,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-5 {
  margin-left: auto;
  margin-right: 40%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-5,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-5 {
  margin-left: auto;
  margin-right: 60%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-5,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-5 {
  margin-left: auto;
  margin-right: 80%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-5,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-5 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-6 {
  margin-left: auto;
  margin-right: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-6 {
  margin-left: auto;
  margin-right: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-6 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-6 {
  margin-left: auto;
  margin-right: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-6 {
  margin-left: auto;
  margin-right: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-6,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-6 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-7 {
  margin-left: auto;
  margin-right: 14.2857142857%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-7 {
  margin-left: auto;
  margin-right: 28.5714285714%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-7 {
  margin-left: auto;
  margin-right: 42.8571428571%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-7 {
  margin-left: auto;
  margin-right: 57.1428571429%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-7 {
  margin-left: auto;
  margin-right: 71.4285714286%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-7 {
  margin-left: auto;
  margin-right: 85.7142857143%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-7,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-7 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-8 {
  margin-left: auto;
  margin-right: 12.5%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-8 {
  margin-left: auto;
  margin-right: 25%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-8 {
  margin-left: auto;
  margin-right: 37.5%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-8 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-8 {
  margin-left: auto;
  margin-right: 62.5%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-8 {
  margin-left: auto;
  margin-right: 75%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-8 {
  margin-left: auto;
  margin-right: 87.5%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-8-8,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-8-8 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-9 {
  margin-left: auto;
  margin-right: 11.1111111111%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-9 {
  margin-left: auto;
  margin-right: 22.2222222222%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-9 {
  margin-left: auto;
  margin-right: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-9 {
  margin-left: auto;
  margin-right: 44.4444444444%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-9 {
  margin-left: auto;
  margin-right: 55.5555555556%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-9 {
  margin-left: auto;
  margin-right: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-9 {
  margin-left: auto;
  margin-right: 77.7777777778%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-8-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-8-9 {
  margin-left: auto;
  margin-right: 88.8888888889%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-9-9,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-9-9 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-10 {
  margin-left: auto;
  margin-right: 10%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-10 {
  margin-left: auto;
  margin-right: 20%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-10 {
  margin-left: auto;
  margin-right: 30%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-10 {
  margin-left: auto;
  margin-right: 40%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-10 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-10 {
  margin-left: auto;
  margin-right: 60%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-10 {
  margin-left: auto;
  margin-right: 70%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-8-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-8-10 {
  margin-left: auto;
  margin-right: 80%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-9-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-9-10 {
  margin-left: auto;
  margin-right: 90%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-10-10,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-10-10 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-11 {
  margin-left: auto;
  margin-right: 9.0909090909%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-11 {
  margin-left: auto;
  margin-right: 18.1818181818%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-11 {
  margin-left: auto;
  margin-right: 27.2727272727%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-11 {
  margin-left: auto;
  margin-right: 36.3636363636%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-11 {
  margin-left: auto;
  margin-right: 45.4545454545%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-11 {
  margin-left: auto;
  margin-right: 54.5454545455%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-11 {
  margin-left: auto;
  margin-right: 63.6363636364%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-8-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-8-11 {
  margin-left: auto;
  margin-right: 72.7272727273%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-9-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-9-11 {
  margin-left: auto;
  margin-right: 81.8181818182%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-10-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-10-11 {
  margin-left: auto;
  margin-right: 90.9090909091%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-11-11,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-11-11 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-1-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-1-12 {
  margin-left: auto;
  margin-right: 8.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-2-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-2-12 {
  margin-left: auto;
  margin-right: 16.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-3-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-3-12 {
  margin-left: auto;
  margin-right: 25%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-4-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-4-12 {
  margin-left: auto;
  margin-right: 33.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-5-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-5-12 {
  margin-left: auto;
  margin-right: 41.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-6-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-6-12 {
  margin-left: auto;
  margin-right: 50%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-7-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-7-12 {
  margin-left: auto;
  margin-right: 58.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-8-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-8-12 {
  margin-left: auto;
  margin-right: 66.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-9-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-9-12 {
  margin-left: auto;
  margin-right: 75%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-10-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-10-12 {
  margin-left: auto;
  margin-right: 83.3333333333%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-11-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-11-12 {
  margin-left: auto;
  margin-right: 91.6666666667%
}

.l-grid-wrap [class*=" l-grid"][class*="--reverse"] .push-12-12,
.l-grid-wrap [class^=l-grid][class*="--reverse"] .push-12-12 {
  margin-left: auto;
  margin-right: 100%
}

.l-grid-wrap [class*=" l-grid"].gutter-0,
.l-grid-wrap [class^=l-grid].gutter-0 {
  margin-left: 0px;
  margin-right: 0px
}

.l-grid-wrap [class*=" l-grid"].gutter-0 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-0 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-0 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-0 [class^=l-col] {
  padding-left: 0px;
  padding-right: 0px
}

.l-grid-wrap [class*=" l-grid"].gutter-10,
.l-grid-wrap [class^=l-grid].gutter-10 {
  margin-left: -5px;
  margin-right: -5px
}

.l-grid-wrap [class*=" l-grid"].gutter-10 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-10 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-10 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-10 [class^=l-col] {
  padding-left: 5px;
  padding-right: 5px
}

.l-grid-wrap [class*=" l-grid"].gutter-20,
.l-grid-wrap [class^=l-grid].gutter-20 {
  margin-left: -10px;
  margin-right: -10px
}

.l-grid-wrap [class*=" l-grid"].gutter-20 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-20 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-20 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-20 [class^=l-col] {
  padding-left: 10px;
  padding-right: 10px
}

.l-grid-wrap [class*=" l-grid"].gutter-30,
.l-grid-wrap [class^=l-grid].gutter-30 {
  margin-left: -15px;
  margin-right: -15px
}

.l-grid-wrap [class*=" l-grid"].gutter-30 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-30 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-30 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-30 [class^=l-col] {
  padding-left: 15px;
  padding-right: 15px
}

.l-grid-wrap [class*=" l-grid"].gutter-40,
.l-grid-wrap [class^=l-grid].gutter-40 {
  margin-left: -20px;
  margin-right: -20px
}

.l-grid-wrap [class*=" l-grid"].gutter-40 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-40 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-40 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-40 [class^=l-col] {
  padding-left: 20px;
  padding-right: 20px
}

.l-grid-wrap [class*=" l-grid"].gutter-50,
.l-grid-wrap [class^=l-grid].gutter-50 {
  margin-left: -25px;
  margin-right: -25px
}

.l-grid-wrap [class*=" l-grid"].gutter-50 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-50 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-50 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-50 [class^=l-col] {
  padding-left: 25px;
  padding-right: 25px
}

.l-grid-wrap [class*=" l-grid"].gutter-60,
.l-grid-wrap [class^=l-grid].gutter-60 {
  margin-left: -30px;
  margin-right: -30px
}

.l-grid-wrap [class*=" l-grid"].gutter-60 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-60 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-60 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-60 [class^=l-col] {
  padding-left: 30px;
  padding-right: 30px
}

.l-grid-wrap [class*=" l-grid"].gutter-70,
.l-grid-wrap [class^=l-grid].gutter-70 {
  margin-left: -35px;
  margin-right: -35px
}

.l-grid-wrap [class*=" l-grid"].gutter-70 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-70 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-70 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-70 [class^=l-col] {
  padding-left: 35px;
  padding-right: 35px
}

.l-grid-wrap [class*=" l-grid"].gutter-80,
.l-grid-wrap [class^=l-grid].gutter-80 {
  margin-left: -40px;
  margin-right: -40px
}

.l-grid-wrap [class*=" l-grid"].gutter-80 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-80 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-80 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-80 [class^=l-col] {
  padding-left: 40px;
  padding-right: 40px
}

.l-grid-wrap [class*=" l-grid"].gutter-90,
.l-grid-wrap [class^=l-grid].gutter-90 {
  margin-left: -45px;
  margin-right: -45px
}

.l-grid-wrap [class*=" l-grid"].gutter-90 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-90 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-90 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-90 [class^=l-col] {
  padding-left: 45px;
  padding-right: 45px
}

.l-grid-wrap [class*=" l-grid"].gutter-100,
.l-grid-wrap [class^=l-grid].gutter-100 {
  margin-left: -50px;
  margin-right: -50px
}

.l-grid-wrap [class*=" l-grid"].gutter-100 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-100 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-100 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-100 [class^=l-col] {
  padding-left: 50px;
  padding-right: 50px
}

.l-grid-wrap [class*=" l-grid"].gutterB-0,
.l-grid-wrap [class^=l-grid].gutterB-0 {
  margin-bottom: -0px
}

.l-grid-wrap [class*=" l-grid"].gutterB-0 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-0 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-0 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-0 [class^=l-col] {
  margin-bottom: 0px
}

.l-grid-wrap [class*=" l-grid"].gutterB-10,
.l-grid-wrap [class^=l-grid].gutterB-10 {
  margin-bottom: -10px
}

.l-grid-wrap [class*=" l-grid"].gutterB-10 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-10 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-10 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-10 [class^=l-col] {
  margin-bottom: 10px
}

.l-grid-wrap [class*=" l-grid"].gutterB-20,
.l-grid-wrap [class^=l-grid].gutterB-20 {
  margin-bottom: -20px
}

.l-grid-wrap [class*=" l-grid"].gutterB-20 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-20 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-20 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-20 [class^=l-col] {
  margin-bottom: 20px
}

.l-grid-wrap [class*=" l-grid"].gutterB-30,
.l-grid-wrap [class^=l-grid].gutterB-30 {
  margin-bottom: -30px
}

.l-grid-wrap [class*=" l-grid"].gutterB-30 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-30 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-30 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-30 [class^=l-col] {
  margin-bottom: 30px
}

.l-grid-wrap [class*=" l-grid"].gutterB-40,
.l-grid-wrap [class^=l-grid].gutterB-40 {
  margin-bottom: -40px
}

.l-grid-wrap [class*=" l-grid"].gutterB-40 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-40 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-40 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-40 [class^=l-col] {
  margin-bottom: 40px
}

.l-grid-wrap [class*=" l-grid"].gutterB-50,
.l-grid-wrap [class^=l-grid].gutterB-50 {
  margin-bottom: -50px
}

.l-grid-wrap [class*=" l-grid"].gutterB-50 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-50 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-50 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-50 [class^=l-col] {
  margin-bottom: 50px
}

.l-grid-wrap [class*=" l-grid"].gutterB-60,
.l-grid-wrap [class^=l-grid].gutterB-60 {
  margin-bottom: -60px
}

.l-grid-wrap [class*=" l-grid"].gutterB-60 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-60 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-60 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-60 [class^=l-col] {
  margin-bottom: 60px
}

.l-grid-wrap [class*=" l-grid"].gutterB-70,
.l-grid-wrap [class^=l-grid].gutterB-70 {
  margin-bottom: -70px
}

.l-grid-wrap [class*=" l-grid"].gutterB-70 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-70 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-70 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-70 [class^=l-col] {
  margin-bottom: 70px
}

.l-grid-wrap [class*=" l-grid"].gutterB-80,
.l-grid-wrap [class^=l-grid].gutterB-80 {
  margin-bottom: -80px
}

.l-grid-wrap [class*=" l-grid"].gutterB-80 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-80 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-80 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-80 [class^=l-col] {
  margin-bottom: 80px
}

.l-grid-wrap [class*=" l-grid"].gutterB-90,
.l-grid-wrap [class^=l-grid].gutterB-90 {
  margin-bottom: -90px
}

.l-grid-wrap [class*=" l-grid"].gutterB-90 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-90 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-90 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-90 [class^=l-col] {
  margin-bottom: 90px
}

.l-grid-wrap [class*=" l-grid"].gutterB-100,
.l-grid-wrap [class^=l-grid].gutterB-100 {
  margin-bottom: -100px
}

.l-grid-wrap [class*=" l-grid"].gutterB-100 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-100 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-100 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-100 [class^=l-col] {
  margin-bottom: 100px
}

.l-grid-wrap [class*=" l-grid"].gutter-15,
.l-grid-wrap [class^=l-grid].gutter-15 {
  margin-left: -8px;
  margin-right: -8px
}

.l-grid-wrap [class*=" l-grid"].gutter-15 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutter-15 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutter-15 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutter-15 [class^=l-col] {
  padding-left: 8px;
  padding-right: 8px
}

.l-grid-wrap [class*=" l-grid"].gutterB-15,
.l-grid-wrap [class^=l-grid].gutterB-15 {
  margin-bottom: -15px
}

.l-grid-wrap [class*=" l-grid"].gutterB-15 [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"].gutterB-15 [class^=l-col],
.l-grid-wrap [class^=l-grid].gutterB-15 [class*=" l-col"],
.l-grid-wrap [class^=l-grid].gutterB-15 [class^=l-col] {
  margin-bottom: 15px
}

.l-grid-wrap [class*=" l-grid"][class*="--top"],
.l-grid-wrap [class^=l-grid][class*="--top"] {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start
}

.l-grid-wrap [class*=" l-grid"][class*="--middle"],
.l-grid-wrap [class^=l-grid][class*="--middle"] {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.l-grid-wrap [class*=" l-grid"][class*="--bottom"],
.l-grid-wrap [class^=l-grid][class*="--bottom"] {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}

.l-grid-wrap [class*=" l-grid"][class*="--left"],
.l-grid-wrap [class^=l-grid][class*="--left"] {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start
}

.l-grid-wrap [class*=" l-grid"][class*="--center"],
.l-grid-wrap [class^=l-grid][class*="--center"] {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.l-grid-wrap [class*=" l-grid"][class*="--right"],
.l-grid-wrap [class^=l-grid][class*="--right"] {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

.l-grid-wrap [class*=" l-grid"][class*="--tile"] [class*=" l-col"],
.l-grid-wrap [class*=" l-grid"][class*="--tile"] [class^=l-col],
.l-grid-wrap [class^=l-grid][class*="--tile"] [class*=" l-col"],
.l-grid-wrap [class^=l-grid][class*="--tile"] [class^=l-col] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media screen and (max-width:46em) {

  .l-grid-wrap [class*=" l-grid"],
  .l-grid-wrap [class^=l-grid] {
    margin-left: -7.5px;
    margin-right: -7.5px;
    margin-bottom: -15px
  }

  .l-grid-wrap [class*=" l-grid"] [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"] [class*=l-col],
  .l-grid-wrap [class^=l-grid] [class*=" l-col"],
  .l-grid-wrap [class^=l-grid] [class*=l-col] {
    padding-left: 7.5px;
    padding-right: 7.5px;
    margin-bottom: 15px
  }

  .l-grid-wrap [class*=" l-grid"] [class*=" l-col"] [class*="--sp-top"],
  .l-grid-wrap [class*=" l-grid"] [class*=l-col] [class*="--sp-top"],
  .l-grid-wrap [class^=l-grid] [class*=" l-col"] [class*="--sp-top"],
  .l-grid-wrap [class^=l-grid] [class*=l-col] [class*="--sp-top"] {
    -ms-flex-item-align: start;
    align-self: flex-start
  }

  .l-grid-wrap [class*=" l-grid"] [class*=" l-col"] [class*="--sp-middle"],
  .l-grid-wrap [class*=" l-grid"] [class*=l-col] [class*="--sp-middle"],
  .l-grid-wrap [class^=l-grid] [class*=" l-col"] [class*="--sp-middle"],
  .l-grid-wrap [class^=l-grid] [class*=l-col] [class*="--sp-middle"] {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center
  }

  .l-grid-wrap [class*=" l-grid"] [class*=" l-col"] [class*="--sp-bottom"],
  .l-grid-wrap [class*=" l-grid"] [class*=l-col] [class*="--sp-bottom"],
  .l-grid-wrap [class^=l-grid] [class*=" l-col"] [class*="--sp-bottom"],
  .l-grid-wrap [class^=l-grid] [class*=l-col] [class*="--sp-bottom"] {
    -ms-flex-item-align: end;
    align-self: flex-end
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-0,
  .l-grid-wrap [class^=l-grid] .sp-push-0 {
    margin-left: 0
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-1,
  .l-grid-wrap [class^=l-grid] .sp-col-1-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-2,
  .l-grid-wrap [class^=l-grid] .sp-col-1-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-2,
  .l-grid-wrap [class^=l-grid] .sp-push-1-2 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-2,
  .l-grid-wrap [class^=l-grid] .sp-col-2-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-2,
  .l-grid-wrap [class^=l-grid] .sp-push-2-2 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-3,
  .l-grid-wrap [class^=l-grid] .sp-col-1-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-3,
  .l-grid-wrap [class^=l-grid] .sp-push-1-3 {
    margin-left: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-3,
  .l-grid-wrap [class^=l-grid] .sp-col-2-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-3,
  .l-grid-wrap [class^=l-grid] .sp-push-2-3 {
    margin-left: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-3,
  .l-grid-wrap [class^=l-grid] .sp-col-3-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-3,
  .l-grid-wrap [class^=l-grid] .sp-push-3-3 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-4,
  .l-grid-wrap [class^=l-grid] .sp-col-1-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-4,
  .l-grid-wrap [class^=l-grid] .sp-push-1-4 {
    margin-left: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-4,
  .l-grid-wrap [class^=l-grid] .sp-col-2-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-4,
  .l-grid-wrap [class^=l-grid] .sp-push-2-4 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-4,
  .l-grid-wrap [class^=l-grid] .sp-col-3-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-4,
  .l-grid-wrap [class^=l-grid] .sp-push-3-4 {
    margin-left: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-4,
  .l-grid-wrap [class^=l-grid] .sp-col-4-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-4,
  .l-grid-wrap [class^=l-grid] .sp-push-4-4 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-5,
  .l-grid-wrap [class^=l-grid] .sp-col-1-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-5,
  .l-grid-wrap [class^=l-grid] .sp-push-1-5 {
    margin-left: 20%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-5,
  .l-grid-wrap [class^=l-grid] .sp-col-2-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40%;
    flex: 0 0 40%;
    width: 40%;
    max-width: 40%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-5,
  .l-grid-wrap [class^=l-grid] .sp-push-2-5 {
    margin-left: 40%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-5,
  .l-grid-wrap [class^=l-grid] .sp-col-3-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
    width: 60%;
    max-width: 60%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-5,
  .l-grid-wrap [class^=l-grid] .sp-push-3-5 {
    margin-left: 60%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-5,
  .l-grid-wrap [class^=l-grid] .sp-col-4-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 80%;
    flex: 0 0 80%;
    width: 80%;
    max-width: 80%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-5,
  .l-grid-wrap [class^=l-grid] .sp-push-4-5 {
    margin-left: 80%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-5,
  .l-grid-wrap [class^=l-grid] .sp-col-5-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-5,
  .l-grid-wrap [class^=l-grid] .sp-push-5-5 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-6,
  .l-grid-wrap [class^=l-grid] .sp-col-1-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-6,
  .l-grid-wrap [class^=l-grid] .sp-push-1-6 {
    margin-left: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-6,
  .l-grid-wrap [class^=l-grid] .sp-col-2-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-6,
  .l-grid-wrap [class^=l-grid] .sp-push-2-6 {
    margin-left: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-6,
  .l-grid-wrap [class^=l-grid] .sp-col-3-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-6,
  .l-grid-wrap [class^=l-grid] .sp-push-3-6 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-6,
  .l-grid-wrap [class^=l-grid] .sp-col-4-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-6,
  .l-grid-wrap [class^=l-grid] .sp-push-4-6 {
    margin-left: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-6,
  .l-grid-wrap [class^=l-grid] .sp-col-5-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-6,
  .l-grid-wrap [class^=l-grid] .sp-push-5-6 {
    margin-left: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-6,
  .l-grid-wrap [class^=l-grid] .sp-col-6-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-6,
  .l-grid-wrap [class^=l-grid] .sp-push-6-6 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-7,
  .l-grid-wrap [class^=l-grid] .sp-col-1-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 14.2857142857%;
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-7,
  .l-grid-wrap [class^=l-grid] .sp-push-1-7 {
    margin-left: 14.2857142857%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-7,
  .l-grid-wrap [class^=l-grid] .sp-col-2-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28.5714285714%;
    flex: 0 0 28.5714285714%;
    width: 28.5714285714%;
    max-width: 28.5714285714%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-7,
  .l-grid-wrap [class^=l-grid] .sp-push-2-7 {
    margin-left: 28.5714285714%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-7,
  .l-grid-wrap [class^=l-grid] .sp-col-3-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 42.8571428571%;
    flex: 0 0 42.8571428571%;
    width: 42.8571428571%;
    max-width: 42.8571428571%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-7,
  .l-grid-wrap [class^=l-grid] .sp-push-3-7 {
    margin-left: 42.8571428571%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-7,
  .l-grid-wrap [class^=l-grid] .sp-col-4-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 57.1428571429%;
    flex: 0 0 57.1428571429%;
    width: 57.1428571429%;
    max-width: 57.1428571429%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-7,
  .l-grid-wrap [class^=l-grid] .sp-push-4-7 {
    margin-left: 57.1428571429%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-7,
  .l-grid-wrap [class^=l-grid] .sp-col-5-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 71.4285714286%;
    flex: 0 0 71.4285714286%;
    width: 71.4285714286%;
    max-width: 71.4285714286%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-7,
  .l-grid-wrap [class^=l-grid] .sp-push-5-7 {
    margin-left: 71.4285714286%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-7,
  .l-grid-wrap [class^=l-grid] .sp-col-6-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 85.7142857143%;
    flex: 0 0 85.7142857143%;
    width: 85.7142857143%;
    max-width: 85.7142857143%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-7,
  .l-grid-wrap [class^=l-grid] .sp-push-6-7 {
    margin-left: 85.7142857143%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-7,
  .l-grid-wrap [class^=l-grid] .sp-col-7-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-7,
  .l-grid-wrap [class^=l-grid] .sp-push-7-7 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-8,
  .l-grid-wrap [class^=l-grid] .sp-col-1-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 12.5%;
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-8,
  .l-grid-wrap [class^=l-grid] .sp-push-1-8 {
    margin-left: 12.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-8,
  .l-grid-wrap [class^=l-grid] .sp-col-2-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-8,
  .l-grid-wrap [class^=l-grid] .sp-push-2-8 {
    margin-left: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-8,
  .l-grid-wrap [class^=l-grid] .sp-col-3-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 37.5%;
    flex: 0 0 37.5%;
    width: 37.5%;
    max-width: 37.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-8,
  .l-grid-wrap [class^=l-grid] .sp-push-3-8 {
    margin-left: 37.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-8,
  .l-grid-wrap [class^=l-grid] .sp-col-4-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-8,
  .l-grid-wrap [class^=l-grid] .sp-push-4-8 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-8,
  .l-grid-wrap [class^=l-grid] .sp-col-5-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 62.5%;
    flex: 0 0 62.5%;
    width: 62.5%;
    max-width: 62.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-8,
  .l-grid-wrap [class^=l-grid] .sp-push-5-8 {
    margin-left: 62.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-8,
  .l-grid-wrap [class^=l-grid] .sp-col-6-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-8,
  .l-grid-wrap [class^=l-grid] .sp-push-6-8 {
    margin-left: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-8,
  .l-grid-wrap [class^=l-grid] .sp-col-7-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 87.5%;
    flex: 0 0 87.5%;
    width: 87.5%;
    max-width: 87.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-8,
  .l-grid-wrap [class^=l-grid] .sp-push-7-8 {
    margin-left: 87.5%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-8-8,
  .l-grid-wrap [class^=l-grid] .sp-col-8-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-8-8,
  .l-grid-wrap [class^=l-grid] .sp-push-8-8 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-9,
  .l-grid-wrap [class^=l-grid] .sp-col-1-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 11.1111111111%;
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-9,
  .l-grid-wrap [class^=l-grid] .sp-push-1-9 {
    margin-left: 11.1111111111%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-9,
  .l-grid-wrap [class^=l-grid] .sp-col-2-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 22.2222222222%;
    flex: 0 0 22.2222222222%;
    width: 22.2222222222%;
    max-width: 22.2222222222%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-9,
  .l-grid-wrap [class^=l-grid] .sp-push-2-9 {
    margin-left: 22.2222222222%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-9,
  .l-grid-wrap [class^=l-grid] .sp-col-3-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-9,
  .l-grid-wrap [class^=l-grid] .sp-push-3-9 {
    margin-left: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-9,
  .l-grid-wrap [class^=l-grid] .sp-col-4-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 44.4444444444%;
    flex: 0 0 44.4444444444%;
    width: 44.4444444444%;
    max-width: 44.4444444444%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-9,
  .l-grid-wrap [class^=l-grid] .sp-push-4-9 {
    margin-left: 44.4444444444%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-9,
  .l-grid-wrap [class^=l-grid] .sp-col-5-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 55.5555555556%;
    flex: 0 0 55.5555555556%;
    width: 55.5555555556%;
    max-width: 55.5555555556%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-9,
  .l-grid-wrap [class^=l-grid] .sp-push-5-9 {
    margin-left: 55.5555555556%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-9,
  .l-grid-wrap [class^=l-grid] .sp-col-6-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-9,
  .l-grid-wrap [class^=l-grid] .sp-push-6-9 {
    margin-left: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-9,
  .l-grid-wrap [class^=l-grid] .sp-col-7-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 77.7777777778%;
    flex: 0 0 77.7777777778%;
    width: 77.7777777778%;
    max-width: 77.7777777778%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-9,
  .l-grid-wrap [class^=l-grid] .sp-push-7-9 {
    margin-left: 77.7777777778%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-8-9,
  .l-grid-wrap [class^=l-grid] .sp-col-8-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 88.8888888889%;
    flex: 0 0 88.8888888889%;
    width: 88.8888888889%;
    max-width: 88.8888888889%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-8-9,
  .l-grid-wrap [class^=l-grid] .sp-push-8-9 {
    margin-left: 88.8888888889%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-9-9,
  .l-grid-wrap [class^=l-grid] .sp-col-9-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-9-9,
  .l-grid-wrap [class^=l-grid] .sp-push-9-9 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-10,
  .l-grid-wrap [class^=l-grid] .sp-col-1-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 10%;
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-10,
  .l-grid-wrap [class^=l-grid] .sp-push-1-10 {
    margin-left: 10%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-10,
  .l-grid-wrap [class^=l-grid] .sp-col-2-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-10,
  .l-grid-wrap [class^=l-grid] .sp-push-2-10 {
    margin-left: 20%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-10,
  .l-grid-wrap [class^=l-grid] .sp-col-3-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 0 0 30%;
    width: 30%;
    max-width: 30%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-10,
  .l-grid-wrap [class^=l-grid] .sp-push-3-10 {
    margin-left: 30%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-10,
  .l-grid-wrap [class^=l-grid] .sp-col-4-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40%;
    flex: 0 0 40%;
    width: 40%;
    max-width: 40%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-10,
  .l-grid-wrap [class^=l-grid] .sp-push-4-10 {
    margin-left: 40%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-10,
  .l-grid-wrap [class^=l-grid] .sp-col-5-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-10,
  .l-grid-wrap [class^=l-grid] .sp-push-5-10 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-10,
  .l-grid-wrap [class^=l-grid] .sp-col-6-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
    width: 60%;
    max-width: 60%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-10,
  .l-grid-wrap [class^=l-grid] .sp-push-6-10 {
    margin-left: 60%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-10,
  .l-grid-wrap [class^=l-grid] .sp-col-7-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 70%;
    flex: 0 0 70%;
    width: 70%;
    max-width: 70%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-10,
  .l-grid-wrap [class^=l-grid] .sp-push-7-10 {
    margin-left: 70%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-8-10,
  .l-grid-wrap [class^=l-grid] .sp-col-8-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 80%;
    flex: 0 0 80%;
    width: 80%;
    max-width: 80%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-8-10,
  .l-grid-wrap [class^=l-grid] .sp-push-8-10 {
    margin-left: 80%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-9-10,
  .l-grid-wrap [class^=l-grid] .sp-col-9-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 90%;
    flex: 0 0 90%;
    width: 90%;
    max-width: 90%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-9-10,
  .l-grid-wrap [class^=l-grid] .sp-push-9-10 {
    margin-left: 90%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-10-10,
  .l-grid-wrap [class^=l-grid] .sp-col-10-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-10-10,
  .l-grid-wrap [class^=l-grid] .sp-push-10-10 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-11,
  .l-grid-wrap [class^=l-grid] .sp-col-1-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 9.0909090909%;
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-11,
  .l-grid-wrap [class^=l-grid] .sp-push-1-11 {
    margin-left: 9.0909090909%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-11,
  .l-grid-wrap [class^=l-grid] .sp-col-2-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 18.1818181818%;
    flex: 0 0 18.1818181818%;
    width: 18.1818181818%;
    max-width: 18.1818181818%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-11,
  .l-grid-wrap [class^=l-grid] .sp-push-2-11 {
    margin-left: 18.1818181818%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-11,
  .l-grid-wrap [class^=l-grid] .sp-col-3-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 27.2727272727%;
    flex: 0 0 27.2727272727%;
    width: 27.2727272727%;
    max-width: 27.2727272727%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-11,
  .l-grid-wrap [class^=l-grid] .sp-push-3-11 {
    margin-left: 27.2727272727%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-11,
  .l-grid-wrap [class^=l-grid] .sp-col-4-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 36.3636363636%;
    flex: 0 0 36.3636363636%;
    width: 36.3636363636%;
    max-width: 36.3636363636%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-11,
  .l-grid-wrap [class^=l-grid] .sp-push-4-11 {
    margin-left: 36.3636363636%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-11,
  .l-grid-wrap [class^=l-grid] .sp-col-5-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 45.4545454545%;
    flex: 0 0 45.4545454545%;
    width: 45.4545454545%;
    max-width: 45.4545454545%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-11,
  .l-grid-wrap [class^=l-grid] .sp-push-5-11 {
    margin-left: 45.4545454545%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-11,
  .l-grid-wrap [class^=l-grid] .sp-col-6-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 54.5454545455%;
    flex: 0 0 54.5454545455%;
    width: 54.5454545455%;
    max-width: 54.5454545455%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-11,
  .l-grid-wrap [class^=l-grid] .sp-push-6-11 {
    margin-left: 54.5454545455%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-11,
  .l-grid-wrap [class^=l-grid] .sp-col-7-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 63.6363636364%;
    flex: 0 0 63.6363636364%;
    width: 63.6363636364%;
    max-width: 63.6363636364%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-11,
  .l-grid-wrap [class^=l-grid] .sp-push-7-11 {
    margin-left: 63.6363636364%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-8-11,
  .l-grid-wrap [class^=l-grid] .sp-col-8-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 72.7272727273%;
    flex: 0 0 72.7272727273%;
    width: 72.7272727273%;
    max-width: 72.7272727273%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-8-11,
  .l-grid-wrap [class^=l-grid] .sp-push-8-11 {
    margin-left: 72.7272727273%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-9-11,
  .l-grid-wrap [class^=l-grid] .sp-col-9-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 81.8181818182%;
    flex: 0 0 81.8181818182%;
    width: 81.8181818182%;
    max-width: 81.8181818182%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-9-11,
  .l-grid-wrap [class^=l-grid] .sp-push-9-11 {
    margin-left: 81.8181818182%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-10-11,
  .l-grid-wrap [class^=l-grid] .sp-col-10-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 90.9090909091%;
    flex: 0 0 90.9090909091%;
    width: 90.9090909091%;
    max-width: 90.9090909091%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-10-11,
  .l-grid-wrap [class^=l-grid] .sp-push-10-11 {
    margin-left: 90.9090909091%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-11-11,
  .l-grid-wrap [class^=l-grid] .sp-col-11-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-11-11,
  .l-grid-wrap [class^=l-grid] .sp-push-11-11 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-1-12,
  .l-grid-wrap [class^=l-grid] .sp-col-1-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.3333333333%;
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-1-12,
  .l-grid-wrap [class^=l-grid] .sp-push-1-12 {
    margin-left: 8.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-2-12,
  .l-grid-wrap [class^=l-grid] .sp-col-2-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-2-12,
  .l-grid-wrap [class^=l-grid] .sp-push-2-12 {
    margin-left: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-3-12,
  .l-grid-wrap [class^=l-grid] .sp-col-3-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-3-12,
  .l-grid-wrap [class^=l-grid] .sp-push-3-12 {
    margin-left: 25%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-4-12,
  .l-grid-wrap [class^=l-grid] .sp-col-4-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-4-12,
  .l-grid-wrap [class^=l-grid] .sp-push-4-12 {
    margin-left: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-5-12,
  .l-grid-wrap [class^=l-grid] .sp-col-5-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.6666666667%;
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-5-12,
  .l-grid-wrap [class^=l-grid] .sp-push-5-12 {
    margin-left: 41.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-6-12,
  .l-grid-wrap [class^=l-grid] .sp-col-6-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-6-12,
  .l-grid-wrap [class^=l-grid] .sp-push-6-12 {
    margin-left: 50%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-7-12,
  .l-grid-wrap [class^=l-grid] .sp-col-7-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.3333333333%;
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-7-12,
  .l-grid-wrap [class^=l-grid] .sp-push-7-12 {
    margin-left: 58.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-8-12,
  .l-grid-wrap [class^=l-grid] .sp-col-8-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-8-12,
  .l-grid-wrap [class^=l-grid] .sp-push-8-12 {
    margin-left: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-9-12,
  .l-grid-wrap [class^=l-grid] .sp-col-9-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-9-12,
  .l-grid-wrap [class^=l-grid] .sp-push-9-12 {
    margin-left: 75%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-10-12,
  .l-grid-wrap [class^=l-grid] .sp-col-10-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-10-12,
  .l-grid-wrap [class^=l-grid] .sp-push-10-12 {
    margin-left: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-11-12,
  .l-grid-wrap [class^=l-grid] .sp-col-11-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.6666666667%;
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-11-12,
  .l-grid-wrap [class^=l-grid] .sp-push-11-12 {
    margin-left: 91.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-col-12-12,
  .l-grid-wrap [class^=l-grid] .sp-col-12-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%
  }

  .l-grid-wrap [class*=" l-grid"] .sp-push-12-12,
  .l-grid-wrap [class^=l-grid] .sp-push-12-12 {
    margin-left: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"],
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-2,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-2 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-2,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-2 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-3,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-3 {
    margin-left: auto;
    margin-right: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-3,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-3 {
    margin-left: auto;
    margin-right: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-3,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-3 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-4,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-4 {
    margin-left: auto;
    margin-right: 25%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-4,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-4 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-4,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-4 {
    margin-left: auto;
    margin-right: 75%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-4,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-4 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-5,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-5 {
    margin-left: auto;
    margin-right: 20%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-5,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-5 {
    margin-left: auto;
    margin-right: 40%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-5,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-5 {
    margin-left: auto;
    margin-right: 60%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-5,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-5 {
    margin-left: auto;
    margin-right: 80%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-5,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-5 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-6 {
    margin-left: auto;
    margin-right: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-6 {
    margin-left: auto;
    margin-right: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-6 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-6 {
    margin-left: auto;
    margin-right: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-6 {
    margin-left: auto;
    margin-right: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-6,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-6 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-7 {
    margin-left: auto;
    margin-right: 14.2857142857%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-7 {
    margin-left: auto;
    margin-right: 28.5714285714%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-7 {
    margin-left: auto;
    margin-right: 42.8571428571%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-7 {
    margin-left: auto;
    margin-right: 57.1428571429%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-7 {
    margin-left: auto;
    margin-right: 71.4285714286%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-7 {
    margin-left: auto;
    margin-right: 85.7142857143%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-7,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-7 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-8 {
    margin-left: auto;
    margin-right: 12.5%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-8 {
    margin-left: auto;
    margin-right: 25%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-8 {
    margin-left: auto;
    margin-right: 37.5%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-8 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-8 {
    margin-left: auto;
    margin-right: 62.5%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-8 {
    margin-left: auto;
    margin-right: 75%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-8 {
    margin-left: auto;
    margin-right: 87.5%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-8-8,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-8-8 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-9 {
    margin-left: auto;
    margin-right: 11.1111111111%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-9 {
    margin-left: auto;
    margin-right: 22.2222222222%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-9 {
    margin-left: auto;
    margin-right: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-9 {
    margin-left: auto;
    margin-right: 44.4444444444%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-9 {
    margin-left: auto;
    margin-right: 55.5555555556%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-9 {
    margin-left: auto;
    margin-right: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-9 {
    margin-left: auto;
    margin-right: 77.7777777778%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-8-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-8-9 {
    margin-left: auto;
    margin-right: 88.8888888889%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-9-9,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-9-9 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-10 {
    margin-left: auto;
    margin-right: 10%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-10 {
    margin-left: auto;
    margin-right: 20%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-10 {
    margin-left: auto;
    margin-right: 30%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-10 {
    margin-left: auto;
    margin-right: 40%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-10 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-10 {
    margin-left: auto;
    margin-right: 60%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-10 {
    margin-left: auto;
    margin-right: 70%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-8-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-8-10 {
    margin-left: auto;
    margin-right: 80%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-9-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-9-10 {
    margin-left: auto;
    margin-right: 90%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-10-10,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-10-10 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-11 {
    margin-left: auto;
    margin-right: 9.0909090909%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-11 {
    margin-left: auto;
    margin-right: 18.1818181818%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-11 {
    margin-left: auto;
    margin-right: 27.2727272727%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-11 {
    margin-left: auto;
    margin-right: 36.3636363636%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-11 {
    margin-left: auto;
    margin-right: 45.4545454545%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-11 {
    margin-left: auto;
    margin-right: 54.5454545455%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-11 {
    margin-left: auto;
    margin-right: 63.6363636364%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-8-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-8-11 {
    margin-left: auto;
    margin-right: 72.7272727273%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-9-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-9-11 {
    margin-left: auto;
    margin-right: 81.8181818182%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-10-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-10-11 {
    margin-left: auto;
    margin-right: 90.9090909091%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-11-11,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-11-11 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-1-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-1-12 {
    margin-left: auto;
    margin-right: 8.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-2-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-2-12 {
    margin-left: auto;
    margin-right: 16.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-3-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-3-12 {
    margin-left: auto;
    margin-right: 25%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-4-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-4-12 {
    margin-left: auto;
    margin-right: 33.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-5-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-5-12 {
    margin-left: auto;
    margin-right: 41.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-6-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-6-12 {
    margin-left: auto;
    margin-right: 50%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-7-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-7-12 {
    margin-left: auto;
    margin-right: 58.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-8-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-8-12 {
    margin-left: auto;
    margin-right: 66.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-9-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-9-12 {
    margin-left: auto;
    margin-right: 75%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-10-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-10-12 {
    margin-left: auto;
    margin-right: 83.3333333333%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-11-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-11-12 {
    margin-left: auto;
    margin-right: 91.6666666667%
  }

  .l-grid-wrap [class*=" l-grid"] [class*="--reverse"] .sp-push-12-12,
  .l-grid-wrap [class^=l-grid] [class*="--reverse"] .sp-push-12-12 {
    margin-left: auto;
    margin-right: 100%
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-0,
  .l-grid-wrap [class^=l-grid].sp-gutter-0 {
    margin-left: 0px;
    margin-right: 0px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-0 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-0 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-0 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-0 [class^=l-col] {
    padding-left: 0px;
    padding-right: 0px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-10,
  .l-grid-wrap [class^=l-grid].sp-gutter-10 {
    margin-left: -5px;
    margin-right: -5px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-10 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-10 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-10 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-10 [class^=l-col] {
    padding-left: 5px;
    padding-right: 5px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-20,
  .l-grid-wrap [class^=l-grid].sp-gutter-20 {
    margin-left: -10px;
    margin-right: -10px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-20 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-20 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-20 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-20 [class^=l-col] {
    padding-left: 10px;
    padding-right: 10px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-30,
  .l-grid-wrap [class^=l-grid].sp-gutter-30 {
    margin-left: -15px;
    margin-right: -15px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-30 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-30 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-30 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-30 [class^=l-col] {
    padding-left: 15px;
    padding-right: 15px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-40,
  .l-grid-wrap [class^=l-grid].sp-gutter-40 {
    margin-left: -20px;
    margin-right: -20px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-40 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-40 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-40 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-40 [class^=l-col] {
    padding-left: 20px;
    padding-right: 20px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-50,
  .l-grid-wrap [class^=l-grid].sp-gutter-50 {
    margin-left: -25px;
    margin-right: -25px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-50 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-50 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-50 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-50 [class^=l-col] {
    padding-left: 25px;
    padding-right: 25px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-60,
  .l-grid-wrap [class^=l-grid].sp-gutter-60 {
    margin-left: -30px;
    margin-right: -30px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-60 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-60 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-60 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-60 [class^=l-col] {
    padding-left: 30px;
    padding-right: 30px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-0,
  .l-grid-wrap [class^=l-grid].sp-gutterB-0 {
    margin-bottom: -0px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-0 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-0 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-0 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-0 [class^=l-col] {
    margin-bottom: 0px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-10,
  .l-grid-wrap [class^=l-grid].sp-gutterB-10 {
    margin-bottom: -10px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-10 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-10 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-10 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-10 [class^=l-col] {
    margin-bottom: 10px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-20,
  .l-grid-wrap [class^=l-grid].sp-gutterB-20 {
    margin-bottom: -20px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-20 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-20 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-20 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-20 [class^=l-col] {
    margin-bottom: 20px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-30,
  .l-grid-wrap [class^=l-grid].sp-gutterB-30 {
    margin-bottom: -30px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-30 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-30 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-30 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-30 [class^=l-col] {
    margin-bottom: 30px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-40,
  .l-grid-wrap [class^=l-grid].sp-gutterB-40 {
    margin-bottom: -40px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-40 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-40 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-40 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-40 [class^=l-col] {
    margin-bottom: 40px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-50,
  .l-grid-wrap [class^=l-grid].sp-gutterB-50 {
    margin-bottom: -50px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-50 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-50 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-50 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-50 [class^=l-col] {
    margin-bottom: 50px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-60,
  .l-grid-wrap [class^=l-grid].sp-gutterB-60 {
    margin-bottom: -60px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-60 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-60 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-60 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-60 [class^=l-col] {
    margin-bottom: 60px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-15,
  .l-grid-wrap [class^=l-grid].sp-gutter-15 {
    margin-left: -8px;
    margin-right: -8px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutter-15 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutter-15 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutter-15 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutter-15 [class^=l-col] {
    padding-left: 8px;
    padding-right: 8px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-15,
  .l-grid-wrap [class^=l-grid].sp-gutterB-15 {
    margin-bottom: -15px
  }

  .l-grid-wrap [class*=" l-grid"].sp-gutterB-15 [class*=" l-col"],
  .l-grid-wrap [class*=" l-grid"].sp-gutterB-15 [class^=l-col],
  .l-grid-wrap [class^=l-grid].sp-gutterB-15 [class*=" l-col"],
  .l-grid-wrap [class^=l-grid].sp-gutterB-15 [class^=l-col] {
    margin-bottom: 15px
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-top"],
  .l-grid-wrap [class^=l-grid][class*="--sp-top"] {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-middle"],
  .l-grid-wrap [class^=l-grid][class*="--sp-middle"] {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-bottom"],
  .l-grid-wrap [class^=l-grid][class*="--sp-bottom"] {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-left"],
  .l-grid-wrap [class^=l-grid][class*="--sp-left"] {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-center"],
  .l-grid-wrap [class^=l-grid][class*="--sp-center"] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }

  .l-grid-wrap [class*=" l-grid"][class*="--sp-right"],
  .l-grid-wrap [class^=l-grid][class*="--sp-right"] {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}

.l-header {
  min-width: 1080px;
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  padding-top: 30px;
  height: 100px;
  background: #fff;
  position: relative;
  z-index: 10000;
  position: fixed;
  width: 100%;
  left: 0;
  top: 0
}

.mini-header .l-header {
  -webkit-transform: translateY(-30px);
  transform: translateY(-30px);
  -webkit-box-shadow: 0px 2px 20px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 2px 20px 0px rgba(0, 0, 0, 0.1)
}

.l-header .header-logo {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  position: absolute;
  top: 20px;
  left: 30px;
  z-index: 1;
  width: 93px
}

.l-header .header-logo a {
  display: block
}

.l-header .header-logo a img {
  width: 93px;
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease
}

.mini-header .l-header .header-logo {
  top: 40px;
  width: 80px
}

.mini-header .l-header .header-logo a img {
  width: 80px
}

.l-header .gnav {
  background: #fff;
  height: 70px;
  text-align: right;
  padding-right: 63px;
  padding-left: 160px
}

.l-header .gnav>ul {
  display: inline-block;
  text-align: left
}

.l-header .gnav>ul>li {
  float: left;
  height: 70px
}

.l-header .gnav>ul>li>a {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 8px;
  height: 54px;
  font-weight: 500;
  color: #333;
  padding: 0 23px;
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 14px;
  line-height: 1.4rem
}

[lang=en] .l-header .gnav>ul>li>a {
  font-weight: bold;
  padding: 0 14px
}

@media screen and (max-width:1200px) {
  [lang=en] .l-header .gnav>ul>li>a {
    padding: 0 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem
  }
}

.l-header .gnav>ul>li>a:after {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #d6d6d6;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px
}

.l-header .gnav>ul>li>a:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  display: block;
  width: calc(100% - 14px);
  height: 2px;
  background: #4065a2;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 4px);
  transform: translate(-50%, 4px);
  opacity: 0;
  visibility: hidden
}

.l-header .gnav>ul>li>a:hover {
  text-decoration: none;
  color: #4065a2
}

.l-header .gnav>ul>li>a:active {
  text-decoration: none
}

.l-header .gnav>ul>li>a.is-current {
  color: #4065a2
}

.l-header .gnav>ul>li>a.is-current:before {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  background: rgba(64, 101, 162, 0.5);
  width: calc(100% - 46px)
}

[lang=en] .l-header .gnav>ul>li>a.is-current:before {
  width: calc(100% - 28px)
}

@media screen and (max-width:1200px) {
  [lang=en] .l-header .gnav>ul>li>a.is-current:before {
    width: calc(100% - 20px)
  }
}

.l-header .gnav>ul>li>a.is-active {
  color: #4065a2
}

.l-header .gnav>ul>li>a.is-active:before {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  background: #4065a2;
  width: calc(100% - 14px)
}

.l-header .gnav>ul>li>a.is-active+.megamenu {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.l-header .gnav>ul>li>a.is-active+.megamenu .megamenu__inner {
  -webkit-transition: all 0.5s 0s ease;
  transition: all 0.5s 0s ease;
  -webkit-transition-delay: 0.25s;
  transition-delay: 0.25s;
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.l-header .gnav>ul>li>a.is-active+.megamenu .megamenu__close {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  opacity: 1;
  visibility: visible
}

.l-header .gnav>ul>li .megamenu {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  position: absolute;
  left: 0;
  top: 99px;
  width: 100%;
  background: #424851;
  color: #fff;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  z-index: -1
}

.l-header .gnav>ul>li .megamenu__inner {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
  width: 1000px;
  margin: 0 auto;
  padding: 25px 0 35px;
  position: relative
}

.l-header .gnav>ul>li .megamenu__inner .dir-top {
  border-bottom: 1px solid #595e64;
  font-size: 20px;
  font-size: 2rem;
  line-height: 35px;
  line-height: 3.5rem;
  padding-bottom: 15px;
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--csr:before,
.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--ir:before,
.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--outline:before,
.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--products:before,
.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--recruit:before,
.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--subaruness:before {
  content: "";
  display: block;
  vertical-align: middle;
  margin-right: 15px;
  height: 30px
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--outline:before {
  width: 27px;
  background: url(/assets/img/common/icon-megamenu-outline.svg) left center no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--products:before {
  width: 40px;
  background: url(/assets/img/common/icon-megamenu-products.svg) left center no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--ir:before {
  width: 28px;
  background: url(/assets/img/common/icon-megamenu-ir.svg) left center no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--csr:before {
  width: 24px;
  background: url(/assets/img/common/icon-megamenu-csr.svg) left center no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--subaruness:before {
  width: 28px;
  background: #fff url(/assets/img/common/icon-category-subaruness.svg) center no-repeat;
  background-size: cover;
  border-radius: 50%
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--recruit:before {
  width: 28px;
  background: url(/assets/img/common/icon-megamenu-recruit.svg) left center no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a {
  color: #fff;
  position: relative;
  display: inline-block
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a:before {
  content: "";
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  position: absolute;
  top: 35px;
  left: 0;
  display: inline-block;
  width: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.3)
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a span {
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 13px;
  line-height: 1.3rem;
  background: #fff url(/assets/img/common/icon-link-arrow-gray.svg) 15px center no-repeat;
  color: #333;
  padding: 4px 16px 5px 26px;
  border-radius: 20px;
  margin-left: 13px;
  font-weight: bold;
  position: relative;
  top: -2px
}

[lang=en] .l-header .gnav>ul>li .megamenu__inner .dir-top a span {
  top: -3px
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a:hover {
  text-decoration: none
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a:hover:before {
  width: 100%
}

.l-header .gnav>ul>li .megamenu__inner a {
  color: #fff
}

.l-header .gnav>ul>li .megamenu__inner a:hover figure .image img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.l-header .gnav>ul>li .megamenu__inner a:hover figure figcaption {
  text-decoration: none
}

.l-header .gnav>ul>li .megamenu__inner a:hover figure figcaption:after {
  width: 100%
}

.l-header .gnav>ul>li .megamenu__inner a[target=_blank]:after {
  display: none
}

.l-header .gnav>ul>li .megamenu__inner figure .image {
  overflow: hidden
}

.l-header .gnav>ul>li .megamenu__inner figure img {
  width: 100%;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  -webkit-backface-visibility: hidden
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 20px;
  line-height: 2rem;
  font-weight: bold;
  margin: 8px 0;
  position: relative;
  display: inline-block;
  text-indent: -20px;
  margin-left: 20px
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption:before {
  background: url(/assets/img/common/icon-link-circle-white.svg) no-repeat
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption .icon-external:after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption:before {
  top: -1px
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption:after {
  content: "";
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  position: absolute;
  bottom: -3px;
  left: 0;
  display: inline-block;
  width: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.3)
}

.l-header .gnav>ul>li .megamenu__inner .linklist li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  margin-bottom: 8px
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a {
  text-indent: -11px;
  margin-left: 16px;
  margin-right: 2px;
  display: inline-block;
  position: relative
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .l-header .gnav>ul>li .megamenu__inner .linklist li a:before {
    top: -1px
  }
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:before {
  background: url(/assets/img/common/icon-link-arrow-white.svg) no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a .icon-external:after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:before {
  top: -1px
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:after {
  content: "";
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  position: absolute;
  top: auto;
  margin: 0;
  bottom: -2px;
  left: 0;
  display: inline-block;
  width: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.3)
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:hover {
  text-decoration: none
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a:hover:after {
  width: 100%
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-inline li {
  display: inline-block;
  margin-right: 50px
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-2col li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 44%;
  flex: 0 0 44%
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-2col li:nth-child(2n) {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 56%;
  flex: 0 0 56%
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-3col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-3col li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 31%;
  flex: 0 0 31%
}

.l-header .gnav>ul>li .megamenu__inner .linklist.is-3col li:nth-child(3n) {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 38%;
  flex: 0 0 38%
}

.l-header .gnav>ul>li .megamenu__inner .linklist.csrLinks {
  border-top: 1px solid #595e64;
  border-bottom: 1px solid #595e64;
  padding-top: 10px;
  padding-bottom: 5px;
  margin-bottom: 10px
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a {
  display: block;
  position: relative;
  overflow: hidden
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a img {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-backface-visibility: hidden
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(black), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(to right, black 0%, rgba(0, 0, 0, 0) 100%)
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a p {
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  z-index: 2;
  margin: auto
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a p em {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  display: block;
  width: 80px;
  text-align: center;
  margin-bottom: 10px;
  padding: 5px 0 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5)
}

[lang=en] .l-header .gnav>ul>li .megamenu__inner .bn-special a p em {
  width: 150px
}

.l-header .gnav>ul>li .megamenu__inner .bn-special a p strong {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 28px;
  line-height: 2.8rem;
  font-weight: normal
}

.l-header .gnav>ul>li .megamenu__close {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  opacity: 0;
  visibility: hidden;
  width: 27px;
  height: 27px;
  position: absolute;
  top: 30px;
  right: 0;
  font-size: 0;
  cursor: pointer
}

.l-header .gnav>ul>li .megamenu__close:after,
.l-header .gnav>ul>li .megamenu__close:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 27px;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 0;
  top: 50%
}

.l-header .gnav>ul>li .megamenu__close:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.l-header .gnav>ul>li .megamenu__close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.l-header .gnav>ul>li.icon-worldwide {
  position: relative;
  padding-left: 20px
}

.l-header .gnav>ul>li.icon-worldwide:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url(/assets/img/common/icon-worldwide.svg) no-repeat;
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -8px
}

[lang=en] .l-header .gnav>ul>li.icon-worldwide:before {
  left: 14px
}

@media screen and (max-width:1200px) {
  [lang=en] .l-header .gnav>ul>li.icon-worldwide:before {
    left: 9px
  }
}

.l-header .search-btn {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  width: 64px;
  height: 70px;
  background: #eee;
  position: absolute;
  top: 30px;
  right: 0;
  z-index: 1;
  background: url(/assets/img/common/icon-search.svg) center no-repeat;
  background-size: 91.4285714286%;
  cursor: pointer;
  text-indent: -9999px
}

.searchmenu-open .l-header .search-btn {
  background-color: #f4f4f4
}

.l-header .search-menu {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #f4f4f4;
  position: relative;
  z-index: -1;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%)
}

.searchmenu-open .l-header .search-menu {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.l-header .search-menu__inner {
  width: 800px;
  margin: 0 auto;
  padding: 35px 0
}

.l-header .search-menu__inner form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.l-header .search-menu__inner input[type=text] {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  border: 1px solid #ddd;
  padding: 10px 20px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 82%;
  flex: 0 0 82%;
  border-radius: 0;
  margin-right: 0
}

.l-header .search-menu__inner input[type=submit] {
  background: #4065a2;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
  vertical-align: middle;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.l-header .header__tools {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 31px;
  background: #fff;
  text-align: right
}

.l-header .header__tools ul {
  display: inline-block;
  vertical-align: top;
  font-size: 0;
  line-height: 1
}

.l-header .header__tools ul li {
  display: inline-block;
  vertical-align: middle;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 11px;
  line-height: 1.1rem
}

.l-header .header__tools ul:not(.lang-switch) {
  margin-right: 30px
}

.l-header .header__tools ul:not(.lang-switch) li {
  margin-top: 10px
}

[lang=en] .l-header .header__tools ul:not(.lang-switch) li {
  margin-top: 9px
}

.l-header .header__tools ul:not(.lang-switch) li:not(:first-child) {
  border-left: 1px solid #d6d6d6;
  padding-left: 18px;
  margin-left: 18px
}

.l-header .header__tools ul:not(.lang-switch) li a {
  color: #666
}

.l-header .header__tools .lang-switch {
  display: block;
  float: right
}

.l-header .header__tools .lang-switch:after {
  content: "";
  clear: both;
  display: block
}

.l-header .header__tools .lang-switch li {
  display: block;
  float: left
}

.l-header .header__tools .lang-switch li:not(:first-child) {
  border-left: 1px solid #f4f4f4
}

.l-header .header__tools .lang-switch li .active,
.l-header .header__tools .lang-switch li a {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  display: block;
  width: 50px;
  height: 30px;
  text-align: center;
  font-style: italic;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  line-height: 30px;
  font-weight: bold;
  position: relative;
  z-index: 2
}

.l-header .header__tools .lang-switch li a {
  background: #f4f4f4;
  color: #aaa
}

.l-header .header__tools .lang-switch li a:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  width: 100%;
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  background: #4065a2;
  height: 0
}

.l-header .header__tools .lang-switch li a:hover {
  color: #fff;
  text-decoration: none
}

.l-header .header__tools .lang-switch li a:hover:before {
  height: 100%
}

.l-header .header__tools .lang-switch li a:active {
  text-decoration: none
}

.l-header .header__tools .lang-switch li .active {
  background: #4065a2;
  color: #fff
}

.overlay {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  z-index: 9999;
  top: 0;
  opacity: 0;
  visibility: hidden
}

.searchmenu-open .overlay {
  opacity: 1;
  visibility: visible
}

.overlayMenu-open .overlay {
  opacity: 1;
  visibility: visible;
  z-index: 10001
}

@media screen and (max-width:46em) {
  .l-header {
    min-width: 0;
    padding-top: 0;
    height: 60px;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0
  }

  .mini-header .l-header {
    -webkit-transform: none;
    transform: none
  }

  .l-header .header-logo {
    top: 0;
    left: 0;
    height: 60px;
    width: 100%;
    background: #fff
  }

  .l-header .header-logo a {
    position: absolute;
    top: 12px;
    left: 50%;
    width: 57px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }

  .l-header .header-logo a img {
    width: 57px
  }

  .mini-header .l-header .header-logo {
    top: 0;
    width: 100%
  }

  .mini-header .l-header .header-logo a img {
    width: 57px
  }

  .l-header .header__tools {
    position: static;
    height: auto;
    background: transparent;
    text-align: center
  }

  .l-header .header__tools ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem
  }

  .l-header .header__tools ul:not(.lang-switch) {
    margin-right: 0
  }

  .l-header .header__tools ul:not(.lang-switch) li {
    margin-top: 0;
    border-bottom: 1px solid #d6d6d6;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }

  [lang=en] .l-header .header__tools ul:not(.lang-switch) li {
    margin-top: 0
  }

  .l-header .header__tools ul:not(.lang-switch) li:not(:first-child) {
    border-left: none;
    padding-left: 0;
    margin-left: 0
  }

  .l-header .header__tools ul:not(.lang-switch) li:nth-child(2n) {
    border-right: 1px solid #d6d6d6
  }

  .l-header .header__tools ul:not(.lang-switch) li a {
    width: 100%;
    padding: 14px 10px;
    display: block
  }

  .l-header .header__tools .lang-switch {
    float: none;
    padding: 15px
  }

  .l-header .header__tools .lang-switch li {
    width: 50%
  }

  .l-header .header__tools .lang-switch li .active,
  .l-header .header__tools .lang-switch li a {
    width: 100%;
    height: 40px;
    line-height: 40px
  }

  .l-header .header__tools .lang-switch li a {
    background: #fff
  }

  .l-header .header__tools .lang-switch li a:hover {
    color: #4065a2
  }

  .l-header .header__tools .lang-switch li a:hover:before {
    height: 0
  }

  .l-header .search-btn {
    width: 60px;
    height: 60px;
    top: 0;
    background-size: 100%
  }

  .l-header .search-menu {
    position: absolute;
    top: 60px;
    width: 100%
  }

  .l-header .search-menu__inner {
    width: auto;
    padding: 25px 15px
  }

  .l-header .search-menu__inner input[type=text] {
    padding: 10px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 80%;
    flex: 0 0 80%
  }

  .l-header .menu-btn {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 60px;
    height: 60px;
    cursor: pointer;
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease
  }

  .l-header .menu-btn span {
    position: absolute;
    left: 20px;
    width: 20px;
    height: 2px;
    background-color: #4065a2;
    display: inline-block;
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease
  }

  .l-header .menu-btn span:first-of-type {
    top: 23px
  }

  .l-header .menu-btn span:nth-of-type(2) {
    top: 29px
  }

  .l-header .menu-btn span:nth-of-type(3) {
    bottom: 23px
  }

  .l-header .menu-btn.is-open {
    background: #f4f4f4
  }

  .l-header .menu-btn.is-open span:first-of-type {
    -webkit-animation: open-menu-bar01 0.6s forwards;
    animation: open-menu-bar01 0.6s forwards
  }

  .l-header .menu-btn.is-open span:nth-of-type(2) {
    opacity: 0
  }

  .l-header .menu-btn.is-open span:nth-of-type(3) {
    -webkit-animation: open-menu-bar03 0.6s forwards;
    animation: open-menu-bar03 0.6s forwards
  }

  .l-header .menu-btn.is-close span:first-of-type {
    -webkit-animation: close-menu-bar01 0.6s forwards;
    animation: close-menu-bar01 0.6s forwards
  }

  .l-header .menu-btn.is-close span:nth-of-type(2) {
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease;
    opacity: 1
  }

  .l-header .menu-btn.is-close span:nth-of-type(3) {
    -webkit-animation: close-menu-bar02 0.6s forwards;
    animation: close-menu-bar02 0.6s forwards
  }

  .sp-menu {
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease;
    background: #f4f4f4;
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    max-height: calc(100vh - 128px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
  }

  .menu-open .sp-menu {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  .sp-menu nav {
    padding: 0
  }

  .sp-menu nav>ul {
    width: 100%;
    float: none;
    padding: 0
  }

  .sp-menu nav>ul>li.header-hide {
    display: none
  }

  .sp-menu nav>ul>li .accordion-toggle {
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    color: #4065a2;
    font-weight: bold;
    padding: 13px;
    padding-right: 35px;
    border-bottom: 1px solid #d6d6d6
  }

  .sp-menu nav>ul>li .accordion-toggle:after,
  .sp-menu nav>ul>li .accordion-toggle:before {
    -webkit-transition: all 0.2s 0s ease;
    transition: all 0.2s 0s ease;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #4065a2
  }

  .sp-menu nav>ul>li .accordion-toggle:before {
    right: 19.5px;
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: translateY(3px) rotate(45deg);
    transform: translateY(3px) rotate(45deg)
  }

  .sp-menu nav>ul>li .accordion-toggle:after {
    right: 10px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: translateY(3px) rotate(-45deg);
    transform: translateY(3px) rotate(-45deg)
  }

  .sp-menu nav>ul>li .accordion-toggle.is-open:before {
    -webkit-transform: translateY(-3px) rotate(-45deg);
    transform: translateY(-3px) rotate(-45deg)
  }

  .sp-menu nav>ul>li .accordion-toggle.is-open:after {
    right: 10px;
    -webkit-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg)
  }

  .sp-menu nav>ul>li>a {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    color: #4065a2;
    font-weight: bold;
    padding: 13px;
    border-bottom: 1px solid #d6d6d6
  }

  .sp-menu nav>ul>li ul {
    display: none;
    border-bottom: 1px solid #d6d6d6;
    background: #fcfcfc;
    padding: 10px 0
  }

  .sp-menu nav>ul>li ul li {
    margin-bottom: 0;
    position: relative;
    z-index: 1
  }

  .sp-menu nav>ul>li ul li a {
    display: block;
    padding: 6px 15px;
    color: #4065a2
  }

  .sp-menu nav>ul>li ul li a:not(.dir-top) {
    text-indent: -11px;
    margin-left: 14px
  }

  .sp-menu nav>ul>li ul li a:not(.dir-top):before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
    width: 4px;
    height: 7px;
    margin-right: 7px;
    background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
  }
}

@media screen and (max-width:46em) and (max-width:46em) {
  .sp-menu nav>ul>li ul li a:not(.dir-top):before {
    top: -1px
  }
}

@media screen and (max-width:46em) {
  .sp-menu nav>ul>li ul li a.dir-top {
    font-weight: bold
  }
}

@media screen and (max-width:46em) {
  .sp-menu nav>ul>li ul li a.is-current {
    color: #333;
    font-weight: 500
  }

  [lang=en] .sp-menu nav>ul>li ul li a.is-current {
    font-weight: bold
  }
}

@media screen and (max-width:46em) {
  .sp-menu nav>ul>li.icon-worldwide {
    position: relative
  }

  .sp-menu nav>ul>li.icon-worldwide:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url(/assets/img/common/icon-worldwide.svg) no-repeat;
    position: absolute;
    top: 50%;
    left: 13px;
    margin-top: -9px
  }

  .sp-menu nav>ul>li.icon-worldwide a {
    padding-left: 36px
  }
}

@media screen and (max-width:46em) {
  .menu-open .overlay {
    opacity: 1;
    visibility: visible
  }
}

.l-footer__upper {
  background: #f1f2f7
}

.l-footer__upper nav {
  padding: 35px 20px
}

.l-footer__upper nav:after {
  content: "";
  clear: both;
  display: block
}

.l-footer__upper nav>ul {
  width: 25%;
  float: left;
  padding: 0 20px
}

.l-footer__upper nav>ul.footer-hide {
  display: none
}

.l-footer__upper nav>ul>li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-weight: bold
}

.l-footer__upper nav>ul>li>a {
  display: block;
  border-bottom: 1px solid #d6d6d6;
  color: #4065a2;
  padding-bottom: 10px;
  margin-bottom: 14px
}

.l-footer__upper nav>ul>li>a:hover {
  text-decoration: none;
  color: #438bc5
}

.l-footer__upper nav>ul>li>a:active {
  text-decoration: none
}

.l-footer__upper nav>ul>li:not(:first-child) {
  margin-top: 60px
}

@media screen and (min-width:46.0625em) {
  .l-footer__upper nav>ul>li ul {
    display: block !important
  }
}

.l-footer__upper nav>ul>li ul li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  font-weight: normal;
  margin-bottom: 6px
}

.l-footer__upper nav>ul>li ul li a {
  color: #333
}

.l-footer__upper nav>ul>li ul li a:hover {
  color: #438bc5;
  text-decoration: none
}

.l-footer__upper nav>ul>li ul li a:active {
  text-decoration: none
}

.l-footer__lower {
  height: 80px;
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 120px 0 40px;
  position: relative
}

.l-footer__lower:first-child {
  border-top: 1px solid #d6d6d6
}

.l-footer__lower ul {
  font-size: 0px;
  font-size: 0rem;
  line-height: 0px;
  line-height: 0rem;
  margin-bottom: 10px
}

.l-footer__lower ul li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  display: inline-block
}

.l-footer__lower ul li:not(:first-child) {
  border-left: 1px solid #666;
  padding-left: 18px;
  margin-left: 18px
}

.l-footer__lower ul li a {
  color: #666
}

.l-footer__lower .copyright {
  color: #666;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 19.25px;
  line-height: 1.925rem;
  font-family: "Lato", Helvetica, Arial, sans-serif
}

.l-footer__lower .copyright a {
  color: #666
}

.l-footer__lower .pagetop {
  width: 80px;
  height: 80px;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 8000;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease
}

.l-footer__lower .pagetop a {
  display: block;
  height: 100%;
  background: #4065a2;
  color: #fff;
  font-size: 0;
  position: relative
}

.l-footer__lower .pagetop a:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -3px) rotate(45deg);
  transform: translate(-50%, -3px) rotate(45deg)
}

.l-footer__lower .pagetop a:hover {
  text-decoration: none
}

.l-footer__lower .pagetop a:hover:before {
  -webkit-transform: translate(-50%, -8px) rotate(45deg);
  transform: translate(-50%, -8px) rotate(45deg)
}

.l-footer__lower .pagetop a:active {
  text-decoration: none
}

.l-footer__lower .pagetop-fixed {
  width: 38px;
  height: 38px;
  position: fixed;
  right: 30px;
  bottom: 20px;
  z-index: 8000;
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  -webkit-transform: translateY(58px);
  transform: translateY(58px);
  opacity: 0;
  visibility: hidden
}

.pagetop-show .l-footer__lower .pagetop-fixed {
  position: fixed;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  visibility: visible
}

.scroll-end .l-footer__lower .pagetop-fixed {
  -webkit-transform: translateY(58px);
  transform: translateY(58px);
  opacity: 0;
  visibility: hidden
}

.l-footer__lower .pagetop-fixed a {
  display: block;
  height: 100%;
  background: #4065a2;
  border-radius: 50%;
  color: #fff;
  font-size: 0;
  position: relative
}

.l-footer__lower .pagetop-fixed a:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -3px) rotate(45deg);
  transform: translate(-50%, -3px) rotate(45deg)
}

.l-footer__lower .pagetop-fixed a:hover {
  text-decoration: none
}

.l-footer__lower .pagetop-fixed a:hover:before {
  -webkit-transform: translate(-50%, -6px) rotate(45deg);
  transform: translate(-50%, -6px) rotate(45deg)
}

.l-footer__lower .pagetop-fixed a:active {
  text-decoration: none
}

@media screen and (max-width:46em) {
  .l-footer__upper nav {
    padding: 0
  }

  .l-footer__upper nav>ul {
    width: 100%;
    float: none;
    padding: 0
  }

  .l-footer__upper nav>ul>li:not(:first-child) {
    margin-top: 0
  }

  .l-footer__upper nav>ul>li .accordion-toggle {
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    color: #4065a2;
    padding: 15px;
    padding-right: 35px;
    border-bottom: 1px solid #d6d6d6
  }

  .l-footer__upper nav>ul>li .accordion-toggle:after,
  .l-footer__upper nav>ul>li .accordion-toggle:before {
    -webkit-transition: all 0.2s 0s ease;
    transition: all 0.2s 0s ease;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #4065a2
  }

  .l-footer__upper nav>ul>li .accordion-toggle:before {
    right: 19.5px;
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: translateY(3px) rotate(45deg);
    transform: translateY(3px) rotate(45deg)
  }

  .l-footer__upper nav>ul>li .accordion-toggle:after {
    right: 10px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: translateY(3px) rotate(-45deg);
    transform: translateY(3px) rotate(-45deg)
  }

  .l-footer__upper nav>ul>li .accordion-toggle.is-open:before {
    -webkit-transform: translateY(-3px) rotate(-45deg);
    transform: translateY(-3px) rotate(-45deg)
  }

  .l-footer__upper nav>ul>li .accordion-toggle.is-open:after {
    right: 10px;
    -webkit-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg)
  }

  .l-footer__upper nav>ul>li ul {
    display: none;
    border-bottom: 1px solid #d6d6d6;
    background: #fbfbfd;
    padding: 10px 0
  }

  .l-footer__upper nav>ul>li ul li {
    margin-bottom: 0
  }

  .l-footer__upper nav>ul>li ul li a {
    display: block;
    padding: 6px 15px
  }

  .l-footer__upper nav>ul>li ul li a:not(.dir-top) {
    text-indent: -11px;
    margin-left: 14px
  }

  .l-footer__upper nav>ul>li ul li a:not(.dir-top):before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
    width: 4px;
    height: 7px;
    margin-right: 7px;
    background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
  }
}

@media screen and (max-width:46em) and (max-width:46em) {
  .l-footer__upper nav>ul>li ul li a:not(.dir-top):before {
    top: -1px
  }
}

@media screen and (max-width:46em) {
  .l-footer__upper nav>ul>li ul li a.dir-top {
    font-weight: bold
  }
}

@media screen and (max-width:46em) {
  .l-footer__lower {
    height: auto;
    display: block;
    padding: 0
  }

  .l-footer__lower ul {
    margin-bottom: 0;
    padding: 15px
  }

  .l-footer__lower ul li {
    display: block;
    padding: 8px 0
  }

  .l-footer__lower ul li:not(:first-child) {
    border-left: none;
    padding-left: 0;
    margin-left: 0
  }

  .l-footer__lower ul li a {
    display: block
  }

  .l-footer__lower ul li a:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
    width: 4px;
    height: 7px;
    margin-right: 7px;
    background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
  }
}

@media screen and (max-width:46em) and (max-width:46em) {
  .l-footer__lower ul li a:before {
    top: -1px
  }
}

@media screen and (max-width:46em) {
  .l-footer__lower ul li a:before {
    background: url(/assets/img/common/icon-link-arrow-gray.svg) no-repeat
  }
}

@media screen and (max-width:46em) {
  .l-footer__lower .copyright {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 15.75px;
    line-height: 1.575rem;
    padding: 10px;
    text-align: center
  }
}

@media screen and (max-width:46em) {
  .l-footer__lower .pagetop {
    width: 100%;
    height: 40px;
    position: static;
    -webkit-transform: scale(1);
    transform: scale(1)
  }

  .l-footer__lower .pagetop a {
    display: block;
    text-align: center
  }

  .l-footer__lower .pagetop a:before {
    width: 10px;
    height: 10px;
    -webkit-transform: translate(-50%, -2px) rotate(45deg);
    transform: translate(-50%, -2px) rotate(45deg)
  }

  .l-footer__lower .pagetop a:hover:before {
    -webkit-transform: translate(-50%, -6px) rotate(45deg);
    transform: translate(-50%, -6px) rotate(45deg)
  }
}

@media screen and (max-width:46em) {
  .l-footer__lower .pagetop-fixed {
    width: 35px;
    height: 35px;
    right: 12px;
    bottom: 12px;
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
  }

  .pagetop-show .l-footer__lower .pagetop-fixed {
    position: fixed
  }

  .scroll-end .l-footer__lower .pagetop-fixed {
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
  }
}

main {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  padding-top: 100px;
  position: relative
}

@media (-ms-high-contrast:none) {

  ::-ms-backdrop,
  main {
    -ms-flex: none;
    flex: none
  }
}

.section:not(.no-padding) {
  padding: 60px 0 80px
}

.section:not(.no-padding).is-reduce {
  padding: 40px 0 40px
}

.section:not(.no-border) {
  border-top: 1px solid #d6d6d6
}

.section:last-child {
  padding-bottom: 100px
}

.section .inner {
  width: 1000px;
  margin: 0 auto
}

.section .inner.max-width {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .section .inner.max-width {
    max-width: none;
    padding: 0 15px
  }
}

.section .inner__block:not(:last-child) {
  margin-bottom: 50px
}

.section .inner__block.indent {
  padding-left: 20px
}

.section .inner__block.w-800 {
  width: 800px;
  margin-left: auto;
  margin-right: auto
}

.section.bg {
  background: #f5f7fb
}

.section.lead-section {
  background: #f4f4f4;
  padding: 30px 0;
  border-bottom: 1px solid #d6d6d6
}

.section.lead-section .inner__block:not(:last-child) {
  margin-bottom: 30px
}

@media screen and (max-width:46em) {
  main {
    padding-top: 60px
  }

  .section:not(.no-padding) {
    padding: 40px 0 50px
  }

  .section:not(.no-padding).is-reduce {
    padding: 20px 0 20px
  }

  .section:last-child {
    padding-bottom: 50px
  }

  .section .inner {
    width: auto;
    padding: 0 15px
  }

  .section .inner.max-width {
    width: auto;
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 40px
  }
}

@media screen and (max-width:46em) and (max-width:46em) {
  .section .inner.max-width {
    max-width: none;
    padding: 0 15px
  }
}

@media screen and (max-width:46em) {
  .section .inner__block:not(:last-child) {
    margin-bottom: 40px
  }

  .section .inner__block.indent {
    padding-left: 0
  }

  .section .inner__block.w-800 {
    width: auto
  }
}

@media screen and (max-width:46em) {
  .section.lead-section {
    padding: 20px 0
  }
}

.pageheader {
  height: 70px;
  background: #4065a2;
  color: #fff;
  padding: 5px 30px 5px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative
}

.pageheader .headline--lv1 {
  margin-bottom: 0
}

.pageheader.has-localnav {
  padding-right: 80px
}

.pageheader.has-overlayMenu {
  padding-right: 120px
}

[lang=en] .pageheader.has-overlayMenu {
  padding-right: 130px
}

.pageheader .printPdf-btn {
  margin-left: auto;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.pageheader .printPdf-btn:not(:last-child) {
  margin-right: 10px
}

.pageheader .printPdf-btn a {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  display: block;
  background: #fff;
  color: #333;
  width: 112px;
  height: 24px;
  line-height: 24px;
  border-radius: 12px;
  text-align: center;
  letter-spacing: normal
}

.pageheader .printPdf-btn a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 14px;
  height: 14px;
  margin-right: 6px;
  background: url(/assets/img/common/icon-link-pdf2.svg) no-repeat
}

.pageheader .printPdf-btn a:hover {
  background: rgba(255, 255, 255, 0.8);
  text-decoration: none
}

.pageheader .printPdf-btn a:active {
  text-decoration: none
}

.pageheader--csr:before,
.pageheader--ir:before,
.pageheader--outline:before,
.pageheader--products:before,
.pageheader--recruit:before,
.pageheader--subaruness:before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 46px;
  flex: 0 0 46px;
  border-radius: 50%;
  margin-right: 18px
}

.pageheader--outline {
  background: #69bfb7
}

.pageheader--outline:before {
  background: #fff url(/assets/img/common/icon-category-outline.svg) center no-repeat;
  background-size: cover
}

.pageheader--products {
  background: #33addf
}

.pageheader--products:before {
  background: #fff url(/assets/img/common/icon-category-products.svg) center no-repeat;
  background-size: cover
}

.pageheader--ir {
  background: #4f5e7e
}

.pageheader--ir:before {
  background: #fff url(/assets/img/common/icon-category-ir.svg) center no-repeat;
  background-size: cover
}

.pageheader--csr {
  background: #aad37b
}

.pageheader--csr:before {
  background: #fff url(/assets/img/common/icon-category-csr.svg) center no-repeat;
  background-size: cover
}

.pageheader--subaruness:before {
  background: #fff url(/assets/img/common/icon-category-subaruness.svg) center no-repeat;
  background-size: cover
}

.pageheader--recruit {
  background: #f5827e
}

.pageheader--recruit:before {
  background: #fff url(/assets/img/common/icon-category-recruit.svg) center no-repeat;
  background-size: cover
}

@media screen and (max-width:46em) {
  .pageheader {
    height: auto;
    min-height: 60px;
    padding: 5px 15px 5px 15px
  }

  .pageheader.has-localnav {
    padding-right: 55px
  }

  .pageheader.has-overlayMenu {
    padding-right: 95px
  }

  [lang=en] .pageheader.has-overlayMenu {
    padding-right: 105px
  }

  .pageheader .printPdf-btn {
    display: none
  }

  .pageheader--csr,
  .pageheader--ir,
  .pageheader--outline,
  .pageheader--products,
  .pageheader--recruit,
  .pageheader--subaruness {
    padding-left: 11px
  }

  .pageheader--csr:before,
  .pageheader--ir:before,
  .pageheader--outline:before,
  .pageheader--products:before,
  .pageheader--recruit:before,
  .pageheader--subaruness:before {
    width: 38px;
    height: 38px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 38px;
    flex: 0 0 38px;
    margin-right: 10px
  }
}

.visual-slider {
  position: relative;
  background: #000
}

.visual-slider .slider {
  height: 600px
}

.visual-slider .slider .slide {
  height: 600px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual-slider .slider .slide.bg-lt {
  background-position: left top
}

.visual-slider .slider .slide.bg-lc {
  background-position: left center
}

.visual-slider .slider .slide.bg-rt {
  background-position: right top
}

.visual-slider .slider .slide.bg-lc {
  background-position: left center
}

.visual-slider .slider .slide.bg-cc {
  background-position: center center
}

.visual-slider .slider .slide.bg-rc {
  background-position: right center
}

.visual-slider .slider .slide.bg-lb {
  background-position: left bottom
}

.visual-slider .slider .slide.bg-cb {
  background-position: center bottom
}

.visual-slider .slider .slide.bg-rb {
  background-position: right bottom
}

.visual-slider .slider .slick-slide:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
  position: absolute
}

.visual-slider .slider .slick-slide.no-overlay:before {
  display: none
}

.visual-slider .slider .slick-slide>a[target=_blank]:after {
  display: none
}

.visual-slider .slickPause .slick-active .slide {
  -webkit-animation-play-state: paused;
  animation-play-state: paused
}

.visual-slider .slickPlay .slick-active .slide {
  -webkit-animation-play-state: running;
  animation-play-state: running
}

.visual-slider .copyWrap {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.visual-slider .copyWrap .copy {
  -webkit-transition: all 2s 2s ease;
  transition: all 2s 2s ease;
  color: #fff;
  text-align: center
}

.visual-slider .copyWrap .copy__title {
  opacity: 0;
  visibility: hidden;
  font-weight: 300;
  letter-spacing: 0.15em;
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 30px
}

.visual-slider .copyWrap .copy__title span {
  font-size: 20px;
  font-size: 2rem;
  line-height: 35px;
  line-height: 3.5rem;
  font-weight: 300;
  letter-spacing: 0.18em
}

.visual-slider .copyWrap .copy__title strong {
  display: block;
  font-size: 60px;
  font-size: 6rem;
  line-height: 60px;
  line-height: 6rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 14px 0 18px
}

[lang=en] .visual-slider .copyWrap .copy__title strong {
  margin-top: 0
}

.visual-slider .copyWrap .copy__lead {
  opacity: 0;
  visibility: hidden;
  font-size: 20px;
  font-size: 2rem;
  line-height: 35px;
  line-height: 3.5rem;
  letter-spacing: 0.25em;
  margin-bottom: 10px
}

.visual-slider .copyWrap .copy__banner {
  opacity: 0;
  visibility: hidden;
  text-align: center;
  margin-top: 40px
}

.visual-slider .copyWrap .copy__banner a {
  color: #fff
}

.visual-slider .copyWrap .copy__banner figure {
  width: 420px;
  margin: 0 auto
}

.visual-slider .copyWrap .copy__banner figure img {
  width: 100%;
  display: inline-block
}

.visual-slider .copyWrap .copy__banner figure figcaption {
  margin-top: 5px
}

.visual-slider .slick-active .copyWrap .copy__title {
  -webkit-animation: copy-fade 0.6s 0.75s ease-out forwards;
  animation: copy-fade 0.6s 0.75s ease-out forwards
}

.visual-slider .slick-active .copyWrap .copy__lead {
  -webkit-animation: copy-fade 0.6s 1s ease-out forwards;
  animation: copy-fade 0.6s 1s ease-out forwards
}

.visual-slider .slick-active .copyWrap .copy__banner {
  -webkit-animation: copy-fade 0.6s 1.25s ease-out forwards;
  animation: copy-fade 0.6s 1.25s ease-out forwards
}

.visual {
  height: 350px;
  padding: 40px;
  overflow: hidden;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.visual.thin {
  height: 180px
}

.visual.bg {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-lt {
  background-position: left top;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-lc {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-rt {
  background-position: right top;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-lc {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-cc {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-rc {
  background-position: right center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-lb {
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-cb {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover
}

.visual.bg-rb {
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: cover
}

.visual:before {
  content: "";
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0
}

.visual.img {
  padding: 0;
  min-height: 0;
  height: auto
}

.visual.img img {
  width: 100%
}

.visual.no-overlay:before {
  display: none
}

.visual .visual__copy {
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 2
}

.visual .visual__copy__title {
  font-weight: 300;
  font-size: 40px;
  font-size: 4rem;
  line-height: 70px;
  line-height: 7rem;
  font-style: italic;
  letter-spacing: 0.2em;
  display: inline-block;
  margin-bottom: 20px
}

[lang=en] .visual .visual__copy__title.small {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 63px;
  line-height: 6.3rem;
  letter-spacing: 0.15em;
  text-shadow: 0 0 30px rgba(0, 0, 0, 0.8)
}

.visual .visual__copy__title:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #fff
}

.visual .visual__copy__titleimage {
  margin-bottom: 20px
}

.visual .visual__copy__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  line-height: 2.8rem;
  font-weight: 300;
  letter-spacing: 0.2em;
  margin-bottom: 10px
}

.visual-video {
  height: 600px
}

.visual-video #player {
  background: url(/assets/img/outline/visual-video-alt.jpg) center no-repeat;
  background-size: contain;
  min-width: 1080px;
  width: 100vw !important;
  height: 100vw !important;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -1
}

.is-tablet .visual-video #player {
  display: none
}

.is-tablet .visual-video .video-alt {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  display: block !important
}

.is-tablet .visual-video .video-alt img {
  width: 100%
}

.visual-text {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

.visual-text:before {
  display: none
}

.visual-text .visual__text {
  width: 53.5714285714%;
  padding: 20px 0
}

.visual-fade {
  position: absolute !important;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
  z-index: -1
}

.visual-fade .slick-list {
  height: 100%
}

.visual-fade .slick-track {
  height: 100%
}

.visual-fade .slide {
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

.visual-ir {
  display: block;
  background-repeat: no-repeat;
  background-position: center -40px;
  background-size: 100%;
  padding: 30.3333333333% 0 40px;
  height: auto;
  min-height: 350px
}

.visual-ir:before {
  display: none
}

.visual-ir .mod-asof {
  margin: -30px 30px 15px
}

.visual-ir-message {
  background-color: #eae9e9;
  background-repeat: no-repeat
}

.visual-ir-message .visual__text {
  width: 66.0714285714%
}

.visual-ir-message .visual__text .messege {
  width: 500px;
  margin: 0 auto;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 32px;
  line-height: 3.2rem;
  padding: 20px 0
}

.visual-ir-message .visual__text .mod-sign {
  width: 500px;
  margin: 0 auto;
  text-align: right
}

[lang=en] .visual-ir-message .visual__text .messege {
  width: 640px
}

[lang=en] .visual-ir-message .visual__text .mod-sign {
  width: 640px
}

.visual-ir-individual-index {
  height: 600px
}

.visual-ir-individual-index .visual__copy__lead {
  max-width: 700px
}

[lang=en] .visual-ir-individual-index .visual__copy__lead {
  margin-top: 40px
}

.visual-ir-individual {
  height: 400px
}

.visual-outline-vision {
  height: auto;
  min-height: 350px;
  background-color: #eae8e9
}

@media screen and (max-width:1420px) {
  [lang=en] .visual-outline-vision.bg-lt {
    background-position: -140px 10px
  }

  [lang=en] .visual-outline-vision .visual__text {
    width: 62.5%
  }
}

@media screen and (max-width:1300px) {
  .visual-outline-vision.bg-lt {
    background-position: -60px 0
  }

  [lang=en] .visual-outline-vision.bg-lt {
    background-position: -160px 10px
  }

  .visual-outline-vision .visual__text {
    width: 58.9285714286%
  }

  [lang=en] .visual-outline-vision .visual__text {
    width: 58.9285714286%
  }
}

@media screen and (max-width:1250px) {
  .visual-outline-vision.bg-lt {
    background-position: -100px 0
  }

  [lang=en] .visual-outline-vision.bg-lt {
    background-position: -180px 10px
  }
}

@media screen and (max-width:1200px) {
  .visual-outline-vision.bg-lt {
    background-position: -160px 0
  }

  [lang=en] .visual-outline-vision.bg-lt {
    background-position: -220px 60px
  }

  .visual-outline-vision .visual__text {
    width: 62.5%
  }

  [lang=en] .visual-outline-vision .visual__text {
    width: 62.5%
  }
}

@media screen and (max-width:1120px) {
  .visual-outline-vision.bg-lt {
    background-position: -190px 0
  }

  [lang=en] .visual-outline-vision.bg-lt {
    background-position: -230px 70px
  }

  .visual-outline-vision .visual__text {
    width: 66.0714285714%
  }

  [lang=en] .visual-outline-vision .visual__text {
    width: 63.3928571429%
  }
}

.visual-csr-message {
  position: relative
}

.visual-csr-message img {
  width: 100%
}

.visual-csr-message .text {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 40px;
  left: 45%;
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.visual-csr-message .text .messege {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 45.5px;
  line-height: 4.55rem;
  font-weight: bold
}

[lang=en] .visual-csr-message .text .messege {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 32px;
  line-height: 3.2rem
}

.visual-csr-message .text .mod-sign {
  text-align: left
}

.visual-recruit {
  height: 500px
}

.visual-recruit:before {
  display: none
}

.visual-subaruness {
  position: relative
}

.visual-subaruness img {
  width: 100%
}

.visual-subaruness .text {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center
}

.visual-subaruness .text .headline--lv3-2 {
  background: rgba(255, 255, 255, 0.7);
  padding: 4px 16px;
  font-size: 56px;
  font-size: 5.6rem;
  line-height: 98px;
  line-height: 9.8rem;
  min-width: 880px;
  margin-bottom: 20px
}

.visual-subaruness .text .messege {
  color: #fff;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 45.5px;
  line-height: 4.55rem;
  font-weight: bold;
  min-width: 880px;
  margin-bottom: 40px
}

[lang=en] .visual-subaruness .text .messege {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 32px;
  line-height: 3.2rem
}

.visual-subaruness .text .buttonArea {
  min-width: 480px
}

.visual-subaruness .text .buttonArea .btn-white.more {
  padding: 20px 40px;
  border: 2px solid #fff
}

.visual-subaruness-detail {
  height: 400px;
  position: relative
}

.visual-subaruness-detail .mod-asof {
  position: absolute;
  right: 30px;
  bottom: 15px;
  color: #fff
}

.visual-subaruness.is-small {
  min-height: 600px;
  background: #3F66A3;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.visual-subaruness.is-small .text {
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center
}

.visual-subaruness.is-small .headline--lv3-2 {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 63px;
  line-height: 6.3rem
}

.visual-subaruness.is-small .lead {
  font-size: 20px;
  font-size: 2rem;
  line-height: 42px;
  line-height: 4.2rem;
  text-align: center;
  color: #fff;
  margin-bottom: 40px
}

@media screen and (max-width:46em) {
  .visual-slider .slider {
    height: 420px
  }

  .visual-slider .slider .slide {
    height: 420px;
    background-position: 75% center
  }

  .visual-slider .copyWrap .copy__title {
    margin-bottom: 20px
  }

  .visual-slider .copyWrap .copy__title span {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
    letter-spacing: 0.15em
  }

  .visual-slider .copyWrap .copy__title strong {
    display: block;
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 32px;
    line-height: 3.2rem;
    letter-spacing: 0.1em;
    margin: 5px 0 7px
  }

  [lang=en] .visual-slider .copyWrap .copy__title strong {
    margin: 0 0 7px
  }

  .visual-slider .copyWrap .copy__lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22.75px;
    line-height: 2.275rem
  }

  [lang=en] .visual-slider .copyWrap .copy__lead {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem;
    letter-spacing: 0.15em
  }

  .visual-slider .copyWrap .copy__banner {
    margin-top: 20px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 19.25px;
    line-height: 1.925rem
  }

  .visual-slider .copyWrap .copy__banner figure {
    width: 280px
  }

  .visual {
    height: 40.625vw;
    min-height: 130px;
    padding: 30px 15px 20px
  }

  .visual.thin {
    height: auto;
    min-height: 80px
  }

  .visual .visual__copy__title {
    font-size: 20px;
    font-size: 2rem;
    line-height: 32px;
    line-height: 3.2rem;
    margin-bottom: 5px
  }

  [lang=en] .visual .visual__copy__title.small {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    line-height: 2.6rem;
    margin-bottom: 10px
  }

  [lang=en] .visual .visual__copy__title.small:after {
    position: relative;
    top: 5px
  }

  .visual .visual__copy__titleimage {
    margin: 0 auto 15px;
    width: 70vw
  }

  .visual .visual__copy__titleimage img {
    width: 100%
  }

  .visual .visual__copy__lead {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem;
    margin-bottom: 0
  }

  .visual-video {
    height: 56vw
  }

  .visual-video #player {
    min-width: 0
  }

  .visual-video .video-alt {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
  }

  .visual-video .video-alt img {
    width: 100%
  }

  .visual-text {
    height: auto;
    background-size: contain !important;
    padding: 0
  }

  .visual-text .visual__text {
    width: 100%;
    background: #f5f7fb;
    margin-top: 50vw;
    padding: 15px 15px 30px
  }

  .visual-ir {
    min-height: 0;
    height: auto;
    background-position: center top;
    background-size: 120%;
    padding: 42.1875% 0 0
  }

  .visual-ir:before {
    display: none
  }

  .visual-ir .mod-asof {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem;
    margin: 0 10px 5px
  }

  .visual-ir-message {
    background-position: -10px 10px
  }

  .visual-ir-message .visual__text .messege {
    width: auto;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    padding: 0 0 20px
  }

  .visual-ir-message .visual__text .mod-sign {
    width: auto
  }

  [lang=en] .visual-ir-message .visual__text .messege {
    width: auto
  }

  [lang=en] .visual-ir-message .visual__text .mod-sign {
    width: auto
  }

  .visual-ir-individual-index {
    min-height: 250px;
    height: 53.125vw
  }

  [lang=en] .visual-ir-individual-index .visual__copy__lead {
    margin-top: 20px
  }

  .visual-ir-individual {
    height: 200px
  }

  .visual-outline-vision {
    background-image: url(/assets/img/outline/visual-vision-sp.jpg) !important
  }

  .visual-outline-vision.bg-lt {
    background-position: left top
  }

  [lang=en] .visual-outline-vision.bg-lt {
    background-position: left top
  }

  .visual-outline-vision .visual__text {
    width: 100%
  }

  [lang=en] .visual-outline-vision .visual__text {
    width: 100%
  }

  .visual-csr-message {
    background: #eae8e9
  }

  .visual-csr-message .text {
    right: 15px;
    left: 40%
  }

  [lang=en] .visual-csr-message .text {
    right: 10px
  }

  .visual-csr-message .text .headline--lv3-2 {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem;
    margin-bottom: 2px
  }

  [lang=en] .visual-csr-message .text .headline--lv3-2 {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem
  }

  .visual-csr-message .text .messege {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem
  }

  [lang=en] .visual-csr-message .text .messege {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    letter-spacing: 0.05em
  }

  .visual-csr-message .text .mod-sign {
    margin-top: 10px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 14px;
    line-height: 1.4rem
  }

  [lang=en] .visual-csr-message .text .mod-sign {
    margin-top: 8px
  }

  .visual-csr-message .text .mod-sign b {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem
  }

  [lang=en] .visual-csr-message .text .mod-sign b {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem
  }

  .visual-subaruness {
    position: relative;
    height: 300px;
    background: url("/en/assets/img/difference/visual-subaruness.jpg"), #4065a2;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100%
  }

  .visual-subaruness img {
    display: none
  }

  .visual-subaruness .text {
    position: relative;
    height: 100%;
    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-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  [lang=en] .visual-subaruness .text {
    right: 10px
  }

  .visual-subaruness .text .headline--lv3-2 {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 38.5px;
    line-height: 3.85rem;
    margin-bottom: 15px;
    min-width: inherit
  }

  [lang=en] .visual-subaruness .text .headline--lv3-2 {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem
  }

  .visual-subaruness .text .messege {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 20px;
    line-height: 2rem;
    min-width: inherit;
    margin-bottom: 15px
  }

  [lang=en] .visual-subaruness .text .messege {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    letter-spacing: 0.05em
  }

  .visual-subaruness .text .buttonArea {
    min-width: inherit
  }

  .visual-subaruness .text .buttonArea .btn-white.more {
    padding: 10px 60px
  }

  .visual-subaruness-detail {
    height: 200px;
    margin-bottom: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: initial
  }

  .visual-subaruness-detail .mod-asof {
    top: 210px;
    bottom: initial;
    right: initial;
    color: #333;
    padding: 0 15px;
    text-align: left
  }

  .visual-subaruness.is-small {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 40px;
    height: auto
  }

  .visual-subaruness.is-small .headline--lv3-2 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 28px;
    line-height: 2.8rem
  }

  .visual-subaruness.is-small .messege {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 20px;
    line-height: 2rem
  }

  .visual-subaruness.is-small .lead {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 18px;
    line-height: 1.8rem;
    margin-bottom: 20px;
    font-weight: bold
  }

  .visual-subaruness.is-small .lead br {
    display: none
  }
}

.component-socialmedia {
  border-top: 1px solid #d6d6d6
}

.component-socialmedia ul {
  background: #fff;
  padding: 30px 0
}

.component-socialmedia ul:after {
  content: "";
  clear: both;
  display: block
}

.component-socialmedia ul li {
  width: 25%;
  float: left;
  text-align: center
}

.component-socialmedia ul li:not(:first-child) {
  border-left: 1px solid #d6d6d6
}

.component-socialmedia ul li a {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  line-height: 16px;
  line-height: 1.6rem;
  color: #333;
  position: relative;
  padding: 55px 5px 5px
}

.component-socialmedia ul li a:hover {
  text-decoration: none;
  color: #438bc5
}

.component-socialmedia ul li a:active {
  text-decoration: none
}

.component-socialmedia ul li a b {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 16px;
  line-height: 1.6rem
}

.component-socialmedia ul li a:before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 50%;
  top: 5px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.component-socialmedia ul li.icon-facebook a:before {
  background: url(/assets/img/common/icon-socialmedia-facebook.svg) no-repeat
}

.component-socialmedia ul li.icon-youtube a:before {
  background: url(/assets/img/common/icon-socialmedia-youtube.svg) no-repeat
}

.component-socialmedia ul li.icon-twitter a:before {
  background: url(/assets/img/common/icon-socialmedia-twitter.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-socialmedia ul {
    padding: 0
  }

  .component-socialmedia ul li {
    width: 100%;
    float: none;
    text-align: left;
    border-bottom: 1px solid #d6d6d6
  }

  .component-socialmedia ul li:not(:first-child) {
    border-left: none
  }

  .component-socialmedia ul li a {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 16px;
    line-height: 1.6rem;
    padding: 15px 15px 15px 58px
  }

  .component-socialmedia ul li a b {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 16px;
    line-height: 1.6rem
  }

  .component-socialmedia ul li a:before {
    width: 30px;
    height: 30px;
    left: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }

  .component-socialmedia ul li.icon-facebook a:before {
    background-size: 30px 30px
  }

  .component-socialmedia ul li.icon-youtube a:before {
    background-size: 30px 30px
  }

  .component-socialmedia ul li.icon-twitter a:before {
    background-size: 30px 30px
  }
}

.component-relatelink {
  background: #424851;
  padding: 30px 0;
  margin-bottom: -1px
}

.section:not(.bg):not(.is-reduce)+.component-relatelink {
  margin-top: 20px
}

.component-relatelink .l-grid-wrap {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-relatelink .l-grid-wrap {
    max-width: none;
    padding: 0 15px
  }
}

.component-relatelink .l-col {
  min-height: 70px
}

.component-relatelink .l-col a {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 18px;
  line-height: 1.8rem;
  min-height: 70px;
  height: 100%;
  padding: 5px 15px 5px 65px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  color: #333;
  position: relative
}

.component-relatelink .l-col a:hover {
  text-decoration: none;
  color: #438bc5
}

.component-relatelink .l-col a:active {
  text-decoration: none
}

.component-relatelink .l-col a img {
  width: 40px;
  height: 40px;
  position: absolute;
  left: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.component-relatelink .l-col a.no-image {
  padding: 5px 15px
}

.component-relatelink .l-col a.no-image:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-relatelink .l-col a.no-image:before {
    top: -1px
  }
}

.component-relatelink .l-col a.no-image:before {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 4px;
  flex: 0 0 4px;
  top: 0;
  margin-right: 10px
}

.component-relatelink .l-col a[class^=icon-]:before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.component-relatelink .l-col a.icon-outline:before {
  background: url(/assets/img/common/icon-relate-outline.svg) no-repeat;
  background-size: cover
}

.component-relatelink .l-col a.icon-ir:before {
  background: url(/assets/img/common/icon-relate-ir.svg) no-repeat;
  background-size: cover
}

.component-relatelink .l-col a.icon-csr:before {
  background: url(/assets/img/common/icon-relate-csr.svg) no-repeat;
  background-size: cover
}

.component-relatelink .l-col a.icon-recruit:before {
  background: url(/assets/img/common/icon-relate-recruit.svg) no-repeat;
  background-size: cover
}

.component-relatelink .l-col a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 11px;
  flex: 0 0 11px;
  margin-right: 0
}

@media screen and (max-width:46em) {
  .component-relatelink {
    padding: 15px 0
  }

  .component-relatelink .l-col {
    min-height: 50px
  }

  .component-relatelink .l-col a {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 14px;
    line-height: 1.4rem;
    min-height: 50px;
    padding: 5px 9px 5px 40px
  }

  .component-relatelink .l-col a img {
    width: 25px;
    height: 25px;
    left: 10px
  }

  .component-relatelink .l-col a.no-image:before {
    margin-right: 7px
  }

  .component-relatelink .l-col a[class^=icon-]:before {
    width: 25px;
    height: 25px;
    left: 10px
  }

  .component-relatelink .l-col a .icon-pdf:after {
    width: 8px;
    height: 10px;
    margin-left: 4px;
    top: -1px;
    background-size: 8px 10px
  }
}

.component-breadcrumb {
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 11px;
  line-height: 1.1rem;
  padding: 15px 40px;
  position: absolute;
  z-index: 1
}

.component-breadcrumb+.component-anchorList {
  padding-top: 64px
}

.component-breadcrumb+.component-navBar {
  padding-top: 64px
}

.component-breadcrumb+.section {
  padding-top: 75px
}

.component-breadcrumb+.section.section-anchorList {
  padding-top: 20px;
  margin-top: 42px;
  border-top: 1px solid #d6d6d6
}

.component-breadcrumb+.component-annotationBox {
  margin-top: 50px
}

.component-breadcrumb ul:after {
  content: "";
  clear: both;
  display: block
}

.component-breadcrumb ul li {
  float: left
}

.component-breadcrumb ul li:not(:first-child) {
  padding-left: 10px
}

.component-breadcrumb ul li:not(:first-child):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  margin-top: -3px;
  margin-right: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.component-breadcrumb ul li a {
  color: #333
}

.component-breadcrumb.is-white ul {
  color: #fff
}

.component-breadcrumb.is-white ul li:not(:first-child):before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.component-breadcrumb.is-white ul li a {
  color: #fff
}

@media screen and (max-width:46em) {
  .component-breadcrumb {
    padding: 0;
    width: 100%
  }

  .component-breadcrumb+.component-anchorList {
    padding-top: 40px
  }

  .component-breadcrumb+.component-navBar {
    padding-top: 40px
  }

  .component-breadcrumb+.section {
    padding-top: 55px
  }

  .component-breadcrumb+.section.section-anchorList {
    padding-top: 0;
    margin-top: 32px
  }

  .component-breadcrumb+.component-annotationBox {
    margin-top: 40px
  }

  .component-breadcrumb+.mod-tabs {
    margin-top: 32px
  }

  .component-breadcrumb ul {
    padding: 10px 0;
    white-space: nowrap;
    overflow: auto;
    -webkit-overflow-scrolling: touch
  }

  .component-breadcrumb ul li {
    float: none;
    display: inline-block
  }

  .component-breadcrumb ul li:first-child {
    padding-left: 15px
  }

  .component-breadcrumb ul li:last-child {
    padding-right: 15px
  }
}

.component-localnav .localnav-btn {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  width: 38px;
  height: 38px;
  border: 2px solid #fff;
  border-radius: 50%;
  position: absolute;
  top: 16px;
  right: 30px;
  z-index: 9001
}

.component-localnav .localnav-btn span {
  position: absolute;
  right: 7px;
  width: 20px;
  height: 2px;
  background-color: #fff;
  display: inline-block;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease
}

.component-localnav .localnav-btn span:first-of-type {
  top: 10px
}

.component-localnav .localnav-btn span:nth-of-type(2) {
  width: 16px;
  top: 16px
}

.component-localnav .localnav-btn span:nth-of-type(3) {
  width: 12px;
  bottom: 10px
}

.component-localnav .localnav-btn.is-open span:nth-of-type(2),
.component-localnav .localnav-btn:hover span:nth-of-type(2) {
  width: 20px
}

.component-localnav .localnav-btn.is-open span:nth-of-type(3),
.component-localnav .localnav-btn:hover span:nth-of-type(3) {
  width: 20px
}

.component-localnav .localnav-btn.is-open span:first-of-type {
  -webkit-animation: open-localnav-bar01 0.6s forwards;
  animation: open-localnav-bar01 0.6s forwards
}

.component-localnav .localnav-btn.is-open span:nth-of-type(2) {
  width: 20px;
  opacity: 0
}

.component-localnav .localnav-btn.is-open span:nth-of-type(3) {
  width: 20px;
  -webkit-animation: open-localnav-bar03 0.6s forwards;
  animation: open-localnav-bar03 0.6s forwards
}

.component-localnav .localnav-btn.is-close span:first-of-type {
  -webkit-animation: close-localnav-bar01 0.6s forwards;
  animation: close-localnav-bar01 0.6s forwards
}

.component-localnav .localnav-btn.is-close span:nth-of-type(2) {
  width: 16px;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  opacity: 1
}

.component-localnav .localnav-btn.is-close span:nth-of-type(3) {
  width: 12px;
  -webkit-animation: close-localnav-bar02 0.6s forwards;
  animation: close-localnav-bar02 0.6s forwards
}

.component-localnav .localnav-btn.is-close:hover span:nth-of-type(2) {
  width: 20px
}

.component-localnav .localnav-btn.is-close:hover span:nth-of-type(3) {
  width: 20px
}

.component-localnav .localnav-menu {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  background: #fff;
  color: #333;
  width: 400px;
  padding: 10px;
  position: absolute;
  top: 65px;
  right: 20px;
  z-index: 9000;
  -webkit-box-shadow: 0px 6px 30px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 6px 30px 0px rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(15px);
  transform: translateY(15px)
}

.component-localnav .localnav-menu nav {
  padding: 5px 10px 15px;
  max-height: calc(100vh - 220px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch
}

.component-localnav .localnav-menu:hover {
  -webkit-box-shadow: 0px 7px 45px 0px rgba(0, 0, 0, 0.18);
  box-shadow: 0px 7px 45px 0px rgba(0, 0, 0, 0.18)
}

.component-localnav .localnav-menu:before {
  content: "";
  width: 68px;
  height: 60px;
  position: absolute;
  top: -60px;
  right: 0
}

.component-localnav .localnav-menu:after {
  content: "";
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-bottom-color: #fff;
  position: absolute;
  top: -14px;
  right: 22px
}

.component-localnav .localnav-menu a {
  color: #333
}

.component-localnav .localnav-menu a.is-current {
  font-weight: bold;
  color: #4065a2
}

.component-localnav .localnav-menu a.is-current:hover {
  color: #4065a2
}

.component-localnav .localnav-menu a:hover {
  color: #438bc5;
  text-decoration: none
}

.component-localnav .localnav-menu a:active {
  text-decoration: none
}

.component-localnav .localnav-menu .parent {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem
}

.component-localnav .localnav-menu .parent a {
  display: block;
  padding: 10px 0;
  text-indent: -22px;
  margin-left: 22px
}

.component-localnav .localnav-menu .parent a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.component-localnav .localnav-menu ul:not([class*=colList-category]) li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-localnav .localnav-menu ul:not([class*=colList-category]) li a {
  display: block;
  padding: 8px 0;
  text-indent: -11px;
  margin-left: 25px
}

.component-localnav .localnav-menu ul:not([class*=colList-category]) li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-localnav .localnav-menu ul:not([class*=colList-category]) li a:before {
    top: -1px
  }
}

.component-localnav .localnav-menu ul:not([class*=colList-category]) li a.icon-outline:before {
  width: 12px;
  height: 13px;
  margin-left: -6px;
  margin-right: 6px;
  background: url(/assets/img/common/icon-megamenu-outline.svg) no-repeat;
  background-size: 12px 13px
}

.component-localnav .localnav-menu ul:not([class*=colList-category]) li ul {
  margin-left: 15px
}

.component-localnav .localnav-menu ul.colList-year {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.component-localnav .localnav-menu ul.colList-year li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.33%;
  flex: 0 0 33.33%
}

.component-localnav .localnav-menu ul.colList-year li a {
  display: block;
  padding: 5px 10px;
  margin-left: 5px
}

.component-localnav .localnav-menu ul.colList-year.col2 li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%
}

.component-localnav .localnav-menu ul.colList-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.component-localnav .localnav-menu ul.colList-category li {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  letter-spacing: 0.05em
}

.component-localnav .localnav-menu ul.colList-category li a {
  display: block;
  padding: 4px 0
}

.component-localnav .localnav-menu ul.colList-category li[class*=category-] a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 5px;
  background: #ccc
}

.component-localnav .localnav-menu ul.colList-category li.category-finance a:hover {
  color: #b65865
}

.component-localnav .localnav-menu ul.colList-category li.category-finance a.is-current {
  color: #b65865
}

.component-localnav .localnav-menu ul.colList-category li.category-finance a.is-current:hover {
  color: #b65865
}

.component-localnav .localnav-menu ul.colList-category li.category-finance a:before {
  background: #b65865
}

.component-localnav .localnav-menu ul.colList-category li.category-csr a:hover {
  color: #cda84b
}

.component-localnav .localnav-menu ul.colList-category li.category-csr a.is-current {
  color: #cda84b
}

.component-localnav .localnav-menu ul.colList-category li.category-csr a.is-current:hover {
  color: #cda84b
}

.component-localnav .localnav-menu ul.colList-category li.category-csr a:before {
  background: #cda84b
}

.component-localnav .localnav-menu ul.colList-category li.category-car a:hover {
  color: #647da8
}

.component-localnav .localnav-menu ul.colList-category li.category-car a.is-current {
  color: #647da8
}

.component-localnav .localnav-menu ul.colList-category li.category-car a.is-current:hover {
  color: #647da8
}

.component-localnav .localnav-menu ul.colList-category li.category-car a:before {
  background: #647da8
}

.component-localnav .localnav-menu ul.colList-category li.category-production a:hover {
  color: #a2b556
}

.component-localnav .localnav-menu ul.colList-category li.category-production a.is-current {
  color: #a2b556
}

.component-localnav .localnav-menu ul.colList-category li.category-production a.is-current:hover {
  color: #a2b556
}

.component-localnav .localnav-menu ul.colList-category li.category-production a:before {
  background: #a2b556
}

.component-localnav .localnav-menu ul.colList-category li.category-motorshow a:hover {
  color: #3d916b
}

.component-localnav .localnav-menu ul.colList-category li.category-motorshow a.is-current {
  color: #3d916b
}

.component-localnav .localnav-menu ul.colList-category li.category-motorshow a.is-current:hover {
  color: #3d916b
}

.component-localnav .localnav-menu ul.colList-category li.category-motorshow a:before {
  background: #3d916b
}

.component-localnav .localnav-menu ul.colList-category li.category-motorsports a:hover {
  color: #3f8ca1
}

.component-localnav .localnav-menu ul.colList-category li.category-motorsports a.is-current {
  color: #3f8ca1
}

.component-localnav .localnav-menu ul.colList-category li.category-motorsports a.is-current:hover {
  color: #3f8ca1
}

.component-localnav .localnav-menu ul.colList-category li.category-motorsports a:before {
  background: #3f8ca1
}

.component-localnav .localnav-menu ul.colList-category li.category-aerospace a:hover {
  color: #4086aa
}

.component-localnav .localnav-menu ul.colList-category li.category-aerospace a.is-current {
  color: #4086aa
}

.component-localnav .localnav-menu ul.colList-category li.category-aerospace a.is-current:hover {
  color: #4086aa
}

.component-localnav .localnav-menu ul.colList-category li.category-aerospace a:before {
  background: #4086aa
}

.component-localnav .localnav-menu ul.colList-category li.category-industrial a:hover {
  color: #beb144
}

.component-localnav .localnav-menu ul.colList-category li.category-industrial a.is-current {
  color: #beb144
}

.component-localnav .localnav-menu ul.colList-category li.category-industrial a.is-current:hover {
  color: #beb144
}

.component-localnav .localnav-menu ul.colList-category li.category-industrial a:before {
  background: #beb144
}

.component-localnav .localnav-menu ul.colList-category li.category-other a:hover {
  color: #955683
}

.component-localnav .localnav-menu ul.colList-category li.category-other a.is-current {
  color: #955683
}

.component-localnav .localnav-menu ul.colList-category li.category-other a.is-current:hover {
  color: #955683
}

.component-localnav .localnav-menu ul.colList-category li.category-other a:before {
  background: #955683
}

.component-localnav .localnav-menu dl {
  padding: 10px;
  margin-top: 10px
}

.component-localnav .localnav-menu dl dt {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem;
  font-weight: bold;
  margin-bottom: 5px
}

.component-localnav .localnav-menu dl+ul {
  border-top: 1px solid #d6d6d6;
  margin-top: 20px;
  padding-top: 15px
}

.localnav-fixed .component-localnav .localnav-btn {
  position: fixed;
  top: 86px;
  border-color: #4065a2;
  background: #4065a2
}

.localnav-fixed .component-localnav .localnav-btn span {
  background-color: #fff
}

.localnav-fixed .component-localnav .localnav-menu {
  position: fixed;
  top: 135px
}

.localnav-fixed .component-localnav .localnav-menu nav {
  max-height: calc(100vh - 190px)
}

.component-localnav.hover .localnav-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

@media screen and (max-width:46em) {
  .component-localnav .localnav-btn {
    width: 35px;
    height: 35px;
    border: 1px solid #fff;
    top: 12px;
    right: 12px
  }

  .component-localnav .localnav-btn span {
    right: 9px;
    width: 15px;
    height: 1px
  }

  .component-localnav .localnav-btn span:first-of-type {
    top: 11px
  }

  .component-localnav .localnav-btn span:nth-of-type(2) {
    width: 12px;
    top: 16px
  }

  .component-localnav .localnav-btn span:nth-of-type(3) {
    width: 9px;
    bottom: 11px
  }

  .component-localnav .localnav-btn.is-open span:nth-of-type(2),
  .component-localnav .localnav-btn:hover span:nth-of-type(2) {
    width: 15px
  }

  .component-localnav .localnav-btn.is-open span:nth-of-type(3),
  .component-localnav .localnav-btn:hover span:nth-of-type(3) {
    width: 15px
  }

  .component-localnav .localnav-btn.is-open span:nth-of-type(2) {
    width: 15px
  }

  .component-localnav .localnav-btn.is-open span:nth-of-type(3) {
    width: 15px
  }

  .component-localnav .localnav-btn.is-close span:nth-of-type(2) {
    width: 12px
  }

  .component-localnav .localnav-btn.is-close span:nth-of-type(3) {
    width: 9px
  }

  .component-localnav .localnav-btn.is-close:hover span:nth-of-type(2) {
    width: 15px
  }

  .component-localnav .localnav-btn.is-close:hover span:nth-of-type(3) {
    width: 15px
  }

  .component-localnav .localnav-menu {
    width: auto;
    top: 57px;
    right: 15px;
    left: 15px
  }

  .component-localnav .localnav-menu nav {
    padding: 0 5px 10px;
    max-height: calc(100vh - 230px)
  }

  .component-localnav .localnav-menu:before {
    width: 60px;
    right: -15px
  }

  .component-localnav .localnav-menu:after {
    right: 8px
  }

  .component-localnav .localnav-menu .parent a:before {
    top: -1px
  }

  .component-localnav .localnav-menu ul:not([class*=colList-category]) li a {
    margin-left: 21px
  }

  .component-localnav .localnav-menu ul.colList-year li a {
    padding: 5px 11px;
    margin-left: 5px;
    white-space: nowrap
  }

  .component-localnav .localnav-menu ul.colList-category li a {
    white-space: nowrap
  }

  .component-localnav .localnav-menu dl {
    padding: 5px
  }

  .localnav-fixed .component-localnav .localnav-btn {
    top: 72px
  }

  .localnav-fixed .component-localnav .localnav-menu {
    top: 117px
  }

  .localnav-fixed .component-localnav .localnav-menu nav {
    max-height: calc(100vh - 230px)
  }
}

.component-newsList ul {
  border-top: 1px solid #d6d6d6
}

.component-newsList ul li {
  padding: 15px 0 18px;
  border-bottom: 1px solid #d6d6d6
}

.component-newsList ul li:after {
  content: "";
  clear: both;
  display: block
}

.component-newsList ul li.loading {
  position: relative;
  padding: 90px
}

.component-newsList ul li.loading:before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  margin-top: -16px;
  margin-left: -16px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-left-color: #4065a2;
  -webkit-animation: loading-spin 0.8s linear infinite;
  animation: loading-spin 0.8s linear infinite
}

.component-newsList ul li [class*=category] {
  min-width: 150px;
  display: block;
  float: left;
  letter-spacing: normal;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  background: #4065a2;
  color: #fff;
  text-align: center;
  padding: 4px 14px;
  margin-top: 3px;
  border-radius: 20px
}

.component-newsList ul li .category--subaru {
  background: #647da8
}

.component-newsList ul li .category--industrial {
  background: #beb144
}

.component-newsList ul li .category--eco {
  background: #88b062
}

.component-newsList ul li .category--finance {
  background: #b65865
}

.component-newsList ul li .category--csr {
  background: #cda84b
}

.component-newsList ul li .category--car {
  background: #647da8
}

.component-newsList ul li .category--production {
  background: #a2b556
}

.component-newsList ul li .category--motorshow {
  background: #3d916b
}

.component-newsList ul li .category--motorsports {
  background: #3f8ca1
}

.component-newsList ul li .category--aerospace {
  background: #4086aa
}

.component-newsList ul li .category--other {
  background: #955683
}

.component-newsList ul li time {
  width: 120px;
  padding-left: 10px;
  display: block;
  float: left
}

[lang=en] .component-newsList ul li time {
  width: 130px
}

.component-newsList ul li time+p {
  width: calc(100% - 240px)
}

[lang=en] .component-newsList ul li time+p {
  width: calc(100% - 250px)
}

.component-newsList ul li time+p:last-child {
  width: calc(100% - 120px)
}

[lang=en] .component-newsList ul li time+p:last-child {
  width: calc(100% - 130px)
}

.component-newsList ul li p {
  width: calc(100% - 390px);
  float: left;
  padding: 0 20px 0 30px
}

[lang=en] .component-newsList ul li p {
  width: calc(100% - 400px)
}

.component-newsList ul li p a {
  display: block;
  text-indent: -11px;
  margin-left: 14px;
  word-break: normal
}

.component-newsList ul li p a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-newsList ul li p a:before {
    top: -1px
  }
}

.component-newsList ul li p a .pdf-info {
  margin-left: 20px;
  color: #333
}

.component-newsList ul li p:last-child {
  width: calc(100% - 270px)
}

[lang=en] .component-newsList ul li p:last-child {
  width: calc(100% - 280px)
}

.component-newsList ul li .pdf {
  width: 120px;
  float: right
}

@media screen and (max-width:46em) {
  .component-newsList ul li {
    padding: 12px 0 12px
  }

  .component-newsList ul li.loading {
    padding: 60px
  }

  .component-newsList ul li [class*=category] {
    min-width: 136px;
    display: inline-block;
    float: none;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem
  }

  .component-newsList ul li time {
    width: 90px;
    padding-left: 0;
    display: inline-block;
    float: none
  }

  [lang=en] .component-newsList ul li time {
    width: 100px
  }

  .component-newsList ul li time+p {
    width: 100%;
    padding: 4px 0 4px
  }

  [lang=en] .component-newsList ul li time+p {
    width: 100%
  }

  .component-newsList ul li time+p:last-child {
    width: 100%
  }

  [lang=en] .component-newsList ul li time+p:last-child {
    width: 100%
  }

  .component-newsList ul li p {
    width: 100%;
    float: none;
    padding: 6px 0 4px
  }

  [lang=en] .component-newsList ul li p {
    width: 100%
  }

  .component-newsList ul li p:last-child {
    width: 100%;
    padding-bottom: 0
  }

  [lang=en] .component-newsList ul li p:last-child {
    width: 100%
  }

  .component-newsList ul li .pdf {
    width: auto;
    float: none;
    text-align: right;
    padding-right: 5px
  }
}

.component-indexNewsList {
  background: #f9fafd
}

.component-indexNewsList:after {
  content: "";
  clear: both;
  display: block
}

.component-indexNewsList__column {
  width: 50%;
  float: left;
  padding: 40px 40px 45px;
  text-align: center
}

.component-indexNewsList__column:first-child {
  background: #fff
}

.component-indexNewsList__column .headline--lv2,
.component-indexNewsList__column .headline--lv2-2 {
  color: #333
}

.component-indexNewsList__column .headline--lv2-2:after,
.component-indexNewsList__column .headline--lv2:after {
  background: #333
}

.component-indexNewsList__column .scrollBox {
  text-align: left;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem;
  margin-bottom: 30px;
  height: 500px;
  overflow: auto
}

.component-indexNewsList__column .scrollBox ul li {
  padding: 10px 0
}

.component-indexNewsList__column .scrollBox ul li:not(:first-child) {
  border-top: 1px solid #d6d6d6
}

.component-indexNewsList__column .scrollBox ul li a .pdf-info {
  margin-left: 5px;
  color: #333
}

.component-indexNewsList__column .scrollBox ul li.loading {
  position: relative;
  padding: 90px
}

.component-indexNewsList__column .scrollBox ul li.loading:before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  margin-top: -16px;
  margin-left: -16px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-left-color: #4065a2;
  -webkit-animation: loading-spin 0.8s linear infinite;
  animation: loading-spin 0.8s linear infinite
}

@media screen and (max-width:46em) {
  .component-indexNewsList__column {
    width: 100%;
    float: none;
    padding: 30px 15px 40px
  }

  .component-indexNewsList__column .scrollBox {
    height: 300px
  }
}

.component-indexlinks a {
  display: block;
  height: 400px;
  overflow: hidden
}

.component-indexlinks a:after {
  content: "";
  clear: both;
  display: block
}

.component-indexlinks a .component-indexlinks__image {
  -webkit-transition: all 0.6s 0s ease;
  transition: all 0.6s 0s ease;
  width: 66.6%;
  float: left;
  height: 100%;
  background-position: center;
  background-size: cover;
  opacity: 0;
  visibility: hidden
}

.component-indexlinks a .component-indexlinks__image.addBg {
  opacity: 1;
  visibility: visible
}

.component-indexlinks a .component-indexlinks__text {
  width: 33.4%;
  float: right;
  height: 100%;
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 40px;
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  background: #4065a2
}

.component-indexlinks a .component-indexlinks__text:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-right-color: #4065a2;
  position: absolute;
  left: -40px;
  top: 50%;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px)
}

.component-indexlinks a .component-indexlinks__text p {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem
}

.component-indexlinks a .component-indexlinks__text p .name {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem
}

.component-indexlinks a .component-indexlinks__text .btn,
.component-indexlinks a .component-indexlinks__text .btn-white {
  margin-top: 20px;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.component-indexlinks a:hover .component-indexlinks__image {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.component-indexlinks a:hover .component-indexlinks__text .btn {
  background: #333;
  color: #fff
}

.component-indexlinks a:hover .component-indexlinks__text .btn-white {
  background: #fff;
  color: #333
}

.component-indexlinks.is-reverse a .component-indexlinks__image {
  float: right
}

.component-indexlinks.is-reverse a .component-indexlinks__text {
  float: left
}

.component-indexlinks.is-reverse a .component-indexlinks__text:after {
  left: auto;
  right: -40px;
  border-right-color: transparent;
  border-left-color: #4065a2
}

.component-indexlinks.is-reverse a:hover .component-indexlinks__image {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.component-indexlinks.is-outline .component-indexlinks__text {
  background: #69bfb7
}

.component-indexlinks.is-outline .component-indexlinks__text:after {
  border-right-color: #69bfb7
}

.component-indexlinks.is-outline .component-indexlinks__text .headline--lv2.with-icon:before,
.component-indexlinks.is-outline .component-indexlinks__text .with-icon.headline--lv2-2:before {
  background-image: url(/assets/img/common/icon-category-outline.svg)
}

.component-indexlinks.is-outline a:hover .btn-white {
  color: #69bfb7
}

.component-indexlinks.is-outline.is-reverse .component-indexlinks__text:after {
  border-left-color: #69bfb7
}

.component-indexlinks.is-products .component-indexlinks__text {
  background: #33addf
}

.component-indexlinks.is-products .component-indexlinks__text:after {
  border-right-color: #33addf
}

.component-indexlinks.is-products .component-indexlinks__text .headline--lv2.with-icon:before,
.component-indexlinks.is-products .component-indexlinks__text .with-icon.headline--lv2-2:before {
  background-image: url(/assets/img/common/icon-category-products.svg)
}

.component-indexlinks.is-products a:hover .btn-white {
  color: #33addf
}

.component-indexlinks.is-products.is-reverse .component-indexlinks__text:after {
  border-left-color: #33addf
}

.component-indexlinks.is-ir .component-indexlinks__text {
  background: #4f5e7e
}

.component-indexlinks.is-ir .component-indexlinks__text:after {
  border-right-color: #4f5e7e
}

.component-indexlinks.is-ir .component-indexlinks__text .headline--lv2.with-icon:before,
.component-indexlinks.is-ir .component-indexlinks__text .with-icon.headline--lv2-2:before {
  background-image: url(/assets/img/common/icon-category-ir.svg)
}

.component-indexlinks.is-ir .component-indexlinks__text .btn-white:hover {
  color: #4f5e7e
}

.component-indexlinks.is-ir a:hover .btn-white {
  color: #4f5e7e
}

.component-indexlinks.is-ir.is-reverse .component-indexlinks__text:after {
  border-left-color: #4f5e7e
}

.component-indexlinks.is-csr .component-indexlinks__text {
  background: #aad37b
}

.component-indexlinks.is-csr .component-indexlinks__text:after {
  border-right-color: #aad37b
}

.component-indexlinks.is-csr .component-indexlinks__text .headline--lv2.with-icon:before,
.component-indexlinks.is-csr .component-indexlinks__text .with-icon.headline--lv2-2:before {
  background-image: url(/assets/img/common/icon-category-csr.svg)
}

.component-indexlinks.is-csr .component-indexlinks__text .btn-white:hover {
  color: #aad37b
}

.component-indexlinks.is-csr a:hover .btn-white {
  color: #aad37b
}

.component-indexlinks.is-csr.is-reverse .component-indexlinks__text:after {
  border-right-color: transparent;
  border-left-color: #aad37b
}

.component-indexlinks.is-subaruness .component-indexlinks__text .headline--lv2-2.with-icon:before {
  background-image: url(/assets/img/common/icon-category-subaruness.svg)
}

.component-indexlinks.is-recruit .component-indexlinks__text {
  background: #f5827e
}

.component-indexlinks.is-recruit .component-indexlinks__text:after {
  border-right-color: #f5827e
}

.component-indexlinks.is-recruit .component-indexlinks__text .headline--lv2.with-icon:before,
.component-indexlinks.is-recruit .component-indexlinks__text .with-icon.headline--lv2-2:before {
  background-image: url(/assets/img/common/icon-category-recruit.svg)
}

.component-indexlinks.is-recruit .component-indexlinks__text .btn-white:hover {
  color: #f5827e
}

.component-indexlinks.is-recruit a:hover .btn-white {
  color: #f5827e
}

.component-indexlinks.is-recruit.is-reverse .component-indexlinks__text:after {
  border-left-color: #f5827e
}

@media screen and (max-width:46em) {
  .component-indexlinks a {
    height: auto
  }

  .component-indexlinks a .component-indexlinks__image {
    width: 100%;
    float: none;
    height: auto;
    background: none !important;
    opacity: 1;
    visibility: visible
  }

  .component-indexlinks a .component-indexlinks__image img {
    display: block !important;
    width: 100%
  }

  .component-indexlinks a .component-indexlinks__text {
    width: 100%;
    float: none;
    height: auto;
    padding: 18px 15px 22px
  }

  .component-indexlinks a .component-indexlinks__text:after {
    border: 10px solid transparent;
    border-right-color: transparent;
    border-bottom-color: #4065a2;
    left: 50%;
    top: -20px;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
  }

  .component-indexlinks a .component-indexlinks__text p .name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem
  }

  .component-indexlinks a .component-indexlinks__text .btn,
  .component-indexlinks a .component-indexlinks__text .btn-white {
    margin-top: 15px
  }

  .component-indexlinks.is-reverse a .component-indexlinks__image {
    float: none
  }

  .component-indexlinks.is-reverse a .component-indexlinks__text {
    float: none
  }

  .component-indexlinks.is-reverse a .component-indexlinks__text:after {
    left: 50%;
    right: auto;
    border-left-color: transparent
  }

  .component-indexlinks.is-outline .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #69bfb7
  }

  .component-indexlinks.is-outline.is-reverse .component-indexlinks__text:after {
    border-left-color: transparent
  }

  .component-indexlinks.is-products .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #33addf
  }

  .component-indexlinks.is-products.is-reverse .component-indexlinks__text:after {
    border-left-color: transparent
  }

  .component-indexlinks.is-ir .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #4f5e7e
  }

  .component-indexlinks.is-ir.is-reverse .component-indexlinks__text:after {
    border-left-color: transparent
  }

  .component-indexlinks.is-csr .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #aad37b
  }

  .component-indexlinks.is-csr.is-reverse .component-indexlinks__text:after {
    border-left-color: transparent
  }

  .component-indexlinks.is-recruit .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #f5827e
  }

  .component-indexlinks.is-recruit.is-reverse .component-indexlinks__text:after {
    border-left-color: transparent
  }
}

.component-indexBannerList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.component-indexBannerList__banner {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  overflow: hidden
}

.component-indexBannerList__banner a {
  display: block;
  position: relative;
  color: #333
}

.component-indexBannerList__banner a figure:before {
  content: "";
  width: 100%;
  height: 34px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.9)
}

.component-indexBannerList__banner a figure img {
  width: 100%
}

.component-indexBannerList__banner a figure figcaption {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}

.component-indexBannerList__banner a figure figcaption:before {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  -webkit-transition-duration: ease-out;
  transition-duration: ease-out;
  content: "";
  width: 100%;
  height: 300%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(64, 101, 162, 0.9);
  -webkit-transform: translateY(29%) skewY(-45deg);
  transform: translateY(29%) skewY(-45deg);
  -webkit-transform-origin: right top;
  transform-origin: right top
}

.component-indexBannerList__banner a figure figcaption dl dt {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  line-height: 34px;
  text-align: center;
  letter-spacing: 0.05em
}

.component-indexBannerList__banner a figure figcaption dl dt:before {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  content: "";
  display: block;
  width: auto;
  height: 1px;
  position: absolute;
  left: 30px;
  right: 30px;
  top: 0;
  z-index: 2;
  background: rgba(255, 255, 255, 0.3);
  opacity: 0;
  visibility: hidden
}

.component-indexBannerList__banner a figure figcaption dl dd {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  opacity: 0;
  visibility: hidden;
  padding: 15px 30px;
  color: #fff;
  position: relative;
  z-index: 1;
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
  letter-spacing: normal
}

.component-indexBannerList__banner a:hover figure figcaption:before {
  -webkit-transform: translateY(-66.6%) skewY(-45deg);
  transform: translateY(-66.6%) skewY(-45deg)
}

.component-indexBannerList__banner a:hover figure figcaption dl dt {
  color: #fff
}

.component-indexBannerList__banner a:hover figure figcaption dl dt:before {
  opacity: 1;
  visibility: visible
}

.component-indexBannerList__banner a:hover figure figcaption dl dd {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.component-indexBannerList__banner a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):after {
  display: none
}

.component-indexBannerList__banner a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]) figure figcaption dl dt:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 11px;
  height: 9px;
  margin-left: 4px;
  margin-right: 4px;
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.component-indexBannerList__banner a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):hover figure figcaption dl dt:after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-indexBannerList {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .component-indexBannerList__banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    width: 50%
  }

  .component-indexBannerList__banner:nth-child(4n-1),
  .component-indexBannerList__banner:nth-child(4n-2) {
    background-color: #f4f4f4
  }

  .component-indexBannerList__banner a figure:before {
    display: none
  }

  .component-indexBannerList__banner a figure figcaption {
    position: static
  }

  .component-indexBannerList__banner a figure figcaption:before {
    width: 0;
    height: 0;
    left: auto;
    top: auto;
    right: 0;
    bottom: 0;
    border: 5px solid transparent;
    border-right-color: #4065a2;
    border-bottom-color: #4065a2;
    background: none;
    -webkit-transform: none;
    transform: none
  }

  .component-indexBannerList__banner a figure figcaption dl {
    padding: 12px 15px 15px
  }

  .component-indexBannerList__banner a figure figcaption dl dt {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 18px;
    line-height: 1.8rem;
    font-weight: bold;
    color: #4065a2;
    position: static;
    text-align: left;
    padding: 0;
    margin-bottom: 5px
  }

  .component-indexBannerList__banner a figure figcaption dl dd {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 20px;
    line-height: 2rem;
    opacity: 1;
    visibility: visible;
    padding: 0;
    color: #333;
    -webkit-transform: none;
    transform: none
  }

  .component-indexBannerList__banner a:hover figure figcaption:before {
    -webkit-transform: none;
    transform: none
  }

  .component-indexBannerList__banner a:hover figure figcaption dl dt {
    color: #4065a2
  }
}

.component-bussinessGuide {
  background: url(/assets/img/outline/bg-bussinessguide.jpg) center top no-repeat;
  background-size: cover;
  padding: 60px 0;
  text-align: center;
  color: #fff
}

.component-bussinessGuide__text {
  margin-bottom: 60px
}

.component-bussinessGuide__text p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-bussinessGuide__text .btn,
.component-bussinessGuide__text .btn-white {
  margin-top: 20px;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.component-bussinessGuide .l-grid-wrap {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-bussinessGuide .l-grid-wrap {
    max-width: none;
    padding: 0 15px
  }
}

@media screen and (max-width:46em) {
  .component-bussinessGuide {
    padding: 30px 0
  }

  .component-bussinessGuide__text {
    padding: 0 15px;
    margin-bottom: 30px
  }

  .component-bussinessGuide__text .btn,
  .component-bussinessGuide__text .btn-white {
    margin-top: 15px
  }

  .component-bussinessGuide .l-grid-wrap {
    padding: 0 15px
  }
}

.component-cardLink {
  background: #f5f7fb;
  padding: 40px 0
}

.component-cardLink .l-grid-wrap {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-cardLink .l-grid-wrap {
    max-width: none;
    padding: 0 15px
  }
}

@media screen and (max-width:46em) {
  .component-cardLink {
    padding: 15px 0
  }
}

.component-anchorList {
  padding-top: 10px
}

.component-anchorList ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 1px solid #d6d6d6;
  padding-bottom: 10px;
  overflow: hidden
}

.component-anchorList ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 18px;
  line-height: 1.8rem
}

.component-anchorList ul li a {
  display: block;
  padding: 10px 15px;
  width: 100%
}

.component-anchorList ul li a:not([href^="#"]):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-anchorList ul li a:not([href^="#"]):before {
    top: -1px
  }
}

.component-anchorList ul li a[href^="#"]:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-anchor.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-anchorList ul li a[href^="#"]:before {
    top: -1px
  }
}

.component-anchorList ul li:not(:first-child) {
  border-left: 1px solid #d6d6d6
}

.component-anchorList ul li.is-active {
  background: #4065a2;
  position: relative
}

.component-anchorList ul li.is-active:after {
  content: "";
  display: 0;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top-color: #4065a2;
  position: absolute;
  bottom: -12px;
  left: 50%;
  margin-left: -6px
}

.component-anchorList ul li.is-active a {
  color: #fff
}

.component-anchorList ul li.is-active a:hover {
  text-decoration: none
}

.component-anchorList ul li.is-active a:before {
  display: none
}

@media screen and (max-width:46em) {
  .component-anchorList ul li {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem;
    margin: 2px 0 2px -1px
  }

  .component-anchorList ul li a {
    padding: 4px 10px
  }

  .component-anchorList ul li.is-active:after {
    display: none
  }

  .component-anchorList ul li.is-active a {
    color: #fff
  }

  .component-anchorList ul li.is-active a:hover {
    text-decoration: none
  }

  .component-anchorList ul li.is-active a:before {
    display: none
  }
}

.component-anchorList-inset {
  border: 1px solid #d6d6d6;
  padding: 20px;
  margin-bottom: 40px;
  overflow: hidden
}

.component-anchorList-inset ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -40px
}

.component-anchorList-inset ul li {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding: 0 40px 0 0;
  letter-spacing: 0.05em
}

.component-anchorList-inset ul li a {
  display: block;
  padding: 4px 0;
  text-indent: -14px;
  margin-left: 14px
}

.section.section-anchorList {
  padding: 20px 0;
  border-top: none;
  border-bottom: 1px solid #d6d6d6
}

.section.section-anchorList .component-anchorList-inset {
  margin-bottom: 0;
  border: none;
  padding: 0
}

@media screen and (max-width:46em) {
  .component-anchorList-inset {
    padding: 0;
    margin-bottom: 30px
  }

  .component-anchorList-inset .mod-sp-accordion {
    margin-bottom: 0;
    width: 100%;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 19px;
    line-height: 1.9rem;
    color: #333;
    font-weight: bold;
    padding: 10px 35px 10px 15px
  }

  .component-anchorList-inset ul {
    padding: 3px 5px 14px 10px;
    margin-right: 0
  }

  .component-anchorList-inset ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    padding: 0 10px
  }

  .component-anchorList-inset ul li a {
    padding: 6px 0
  }

  .component-anchorList-inset ul.sp-col2 li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%
  }

  .section.section-anchorList {
    padding: 0
  }

  .section.section-anchorList .inner {
    padding: 0
  }

  .section.section-anchorList .component-anchorList-inset {
    margin-bottom: 0;
    border: none;
    padding: 0
  }

  .section.section-anchorList .component-anchorList-inset .mod-sp-accordion {
    padding-top: 14px;
    padding-bottom: 14px
  }
}

.component-table.w-800 {
  width: 800px;
  margin-left: auto;
  margin-right: auto
}

.component-table.w-800+.mod-caption,
.component-table.w-800+.mod-caption+.mod-caption {
  width: 800px;
  margin-left: auto;
  margin-right: auto
}

.component-table.w-600 {
  width: 600px;
  margin-left: auto;
  margin-right: auto
}

.component-table.w-600+.mod-caption,
.component-table.w-600+.mod-caption+.mod-caption {
  width: 600px;
  margin-left: auto;
  margin-right: auto
}

.component-table table {
  width: 100%;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 20px;
  line-height: 2rem;
  letter-spacing: 0.05em
}

.component-table table.fixed {
  table-layout: fixed
}

.component-table table thead th {
  background: #4065a2;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 7px 10px
}

.component-table table td,
.component-table table th {
  border: 1px solid #d6d6d6;
  padding: 12px 15px;
  vertical-align: middle
}

.component-table table td b,
.component-table table th b {
  color: #4065a2
}

.component-table table td span:not(.pdf-info):not(.file-info),
.component-table table th span:not(.pdf-info):not(.file-info) {
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 19.25px;
  line-height: 1.925rem;
  font-weight: normal
}

.component-table table td.borderB-none,
.component-table table th.borderB-none {
  border-bottom-style: hidden
}

.component-table table td.borderT-none,
.component-table table th.borderT-none {
  border-top-style: hidden
}

.component-table table td.borderL-none,
.component-table table th.borderL-none {
  border-left-style: hidden
}

.component-table table td.borderR-none,
.component-table table th.borderR-none {
  border-right-style: hidden
}

.component-table table td.w-50,
.component-table table th.w-50 {
  width: 50px
}

.component-table table td.w-100,
.component-table table th.w-100 {
  width: 90px
}

.component-table table td.w-150,
.component-table table th.w-150 {
  width: 150px
}

.component-table table td.w-200,
.component-table table th.w-200 {
  width: 200px
}

.component-table table td.w-250,
.component-table table th.w-250 {
  width: 250px
}

.component-table table td.w-300,
.component-table table th.w-300 {
  width: 300px
}

.component-table table td.w-350,
.component-table table th.w-350 {
  width: 350px
}

.component-table table td.w-400,
.component-table table th.w-400 {
  width: 400px
}

.component-table table td.w-450,
.component-table table th.w-450 {
  width: 450px
}

.component-table table td.w-500,
.component-table table th.w-500 {
  width: 500px
}

.component-table table th {
  font-weight: bold;
  background: #f1f2f7
}

.component-table table td .report-thumb {
  width: 160px
}

.component-table+p.mod-caption {
  margin-top: 10px
}

.component-table .table-accordion-toggle th {
  padding-right: 30px;
  position: relative
}

.component-table .table-accordion-toggle th:after,
.component-table .table-accordion-toggle th:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 11px;
  height: 1px;
  background: #4065a2;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -1px
}

.component-table .table-accordion-toggle th:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.component-table .table-accordion-toggle:not(.is-open) {
  cursor: pointer
}

.component-table .table-accordion-toggle:not(.is-open):hover th {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #e7ecf5
}

.component-table .table-accordion-toggle:not(.is-open):hover td {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #e7ecf5
}

.component-table .table-accordion-toggle.is-open th {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #f1f2f7
}

.component-table .table-accordion-toggle.is-open th:before {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg)
}

.component-table .table-accordion-toggle.is-open th:after {
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg)
}

.component-table .table-accordion-toggle.is-open td {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: none
}

.component-table .table-accordion-contents {
  display: none
}

@media screen and (max-width:46em) {
  .component-table.w-800 {
    width: auto
  }

  .component-table.w-800+.mod-caption {
    width: auto
  }

  .component-table.w-600 {
    width: auto
  }

  .component-table.w-600+.mod-caption {
    width: auto
  }

  .component-table table {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem
  }

  .component-table table td,
  .component-table table th {
    padding: 10px 14px
  }

  .component-table table td span:not(.pdf-info):not(.file-info),
  .component-table table th span:not(.pdf-info):not(.file-info) {
    font-size: 10px;
    font-size: 1rem;
    line-height: 17.5px;
    line-height: 1.75rem
  }

  .component-table table td.sp-w-auto,
  .component-table table th.sp-w-auto {
    width: auto
  }

  .component-table.sp-scroll {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    width: 100%
  }

  .component-table.sp-scroll:before {
    content: "表は左右にスクロールできます";
    display: inline-block;
    background: #d84d4d;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
    line-height: 1;
    font-weight: normal;
    color: #fff;
    padding: 4px 10px;
    margin: 0 0 5px
  }

  [lang=en] .component-table.sp-scroll:before {
    content: "Scroll left and right to view the chart.";
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
    padding-right: 5px
  }

  .component-table.sp-scroll table {
    width: 800px
  }

  .component-table.sp-scroll.w-800 table {
    width: 700px
  }

  .component-table.sp-scroll.w-600 table {
    width: 500px
  }

  .component-table.sp-col {
    border-bottom: 1px solid #d6d6d6
  }

  .component-table.sp-col th {
    display: block;
    border-bottom: none
  }

  .component-table.sp-col td {
    display: block;
    border-bottom: none
  }
}

.component-listTable {
  border-top: 1px solid #d6d6d6
}

.component-listTable dl {
  border-bottom: 1px solid #d6d6d6
}

.component-listTable dl:after {
  content: "";
  clear: both;
  display: block
}

.component-listTable dl dt {
  width: 220px;
  float: left;
  padding: 15px 0 15px 0;
  font-weight: bold
}

.component-listTable dl dt span {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  font-weight: normal
}

.component-listTable dl dd {
  margin-left: 240px;
  padding: 15px 0;
  position: relative;
  overflow: hidden
}

.component-listTable dl dd:not(:last-child) {
  border-bottom: 1px solid #d6d6d6
}

.component-listTable dl dd .links {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  text-align: right;
  float: right;
  padding-top: 2px
}

.component-listTable dl dd .links a {
  margin-left: 40px;
  display: inline-block
}

.component-listTable dl dd .mod-accordion {
  padding-right: 0;
  padding-left: 30px
}

.component-listTable dl dd .mod-accordion:before {
  right: auto;
  left: 13px
}

.component-listTable dl dd .mod-accordion:after {
  right: auto;
  left: 19px
}

.component-listTable dl dd .mod-accordion-contents {
  clear: both;
  padding: 25px 0 15px
}

.component-listTable.xshort dl {
  letter-spacing: normal
}

.component-listTable.xshort dl dt {
  width: 90px
}

.component-listTable.xshort dl dd {
  margin-left: 110px
}

.component-listTable.short dl dt {
  width: 140px
}

.component-listTable.short dl dd {
  margin-left: 160px
}

.component-listTable.long dl dt {
  width: 330px
}

.component-listTable.long dl dd {
  margin-left: 350px
}

.component-listTable.xlong dl dt {
  width: 500px
}

.component-listTable.xlong dl dd {
  margin-left: 520px
}

.component-listTable[class*=mod-column-] {
  border-top: 0
}

.component-listTable[class*=mod-column-] dl {
  border-top: 1px solid #d6d6d6
}

.component-listTable[class*=mod-column-] dl+dl {
  margin-top: -1px
}

@media screen and (max-width:46em) {
  .component-listTable dl dt {
    width: auto;
    float: none;
    padding: 10px 0 0
  }

  .component-listTable dl dt+dd {
    padding-top: 3px
  }

  .component-listTable dl dd {
    margin-left: 0;
    padding: 10px 0
  }

  .component-listTable dl dd:not(:last-child) {
    border-bottom: 1px dotted #d6d6d6
  }

  .component-listTable dl dd .links {
    float: none
  }

  .component-listTable dl dd .links a {
    margin-left: 20px
  }

  .component-listTable dl dd .links.mod-accordion {
    float: right
  }

  .component-listTable.xshort dl dt {
    width: auto
  }

  .component-listTable.xshort dl dd {
    margin-left: 0
  }

  .component-listTable.short dl dt {
    width: auto
  }

  .component-listTable.short dl dd {
    margin-left: 0
  }

  .component-listTable.long dl dt {
    width: auto
  }

  .component-listTable.long dl dd {
    margin-left: 0
  }

  .component-listTable.xlong dl dt {
    width: auto
  }

  .component-listTable.xlong dl dd {
    margin-left: 0
  }
}

.component-formTable {
  border-top: 1px solid #d6d6d6
}

.component-formTable dl {
  border-bottom: 1px solid #d6d6d6
}

.component-formTable dl:after {
  content: "";
  clear: both;
  display: block
}

.component-formTable dl .form-opt {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  font-weight: normal;
  background: #999;
  color: #fff;
  display: inline-block;
  margin-right: 10px;
  margin-left: -60px;
  width: 46px;
  text-align: center;
  padding: 2px 5px
}

.component-formTable dl .form-opt.required {
  background: #d84d4d
}

[lang=en] .component-formTable dl .form-opt {
  margin-left: -84px;
  width: 70px;
  letter-spacing: normal
}

.component-formTable dl dt {
  width: 360px;
  float: left;
  padding: 24px 0 24px 60px;
  font-weight: bold
}

[lang=en] .component-formTable dl dt {
  padding-left: 84px
}

.component-formTable dl dt span {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 18px;
  line-height: 1.8rem;
  display: inline-block;
  font-weight: normal;
  margin-top: 4px
}

.component-formTable dl dd {
  margin-left: 380px;
  padding: 15px 0;
  position: relative;
  overflow: hidden
}

.component-formTable dl dd .error {
  display: block;
  color: #d84d4d;
  font-weight: bold
}

.component-formTable dl dd .form-opt {
  margin-left: 0
}

.component-formTable dl dd:not(:last-child) {
  border-bottom: 1px solid #d6d6d6
}

.component-formTable dl dd .form-element+.form-element {
  margin-left: 10px
}

.component-formTable dl dd p {
  font-weight: bold;
  display: inline-block;
  padding: 9px 0
}

.component-formTable dl dd p:first-child:not(:last-child) {
  padding-top: 0
}

.component-formTable dl dd p:not(:last-child) {
  margin-right: 30px
}

.component-formTable dl dd p.error {
  padding-bottom: 9px
}

.component-formTable dl dd label+p {
  margin-left: 10px
}

.component-formTable dl dd .subText {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  color: #666
}

.component-formTable dl dd label:not(.mod-radio):not(.mod-check) {
  margin-right: 10px
}

.component-formTable.type-col dl dt {
  width: 100%;
  float: none;
  padding: 15px 20px 15px 80px;
  border-bottom: 1px solid #d6d6d6;
  border-left: 1px solid #d6d6d6;
  border-right: 1px solid #d6d6d6;
  background: #f5f7fb
}

.component-formTable.type-col dl dd {
  margin-left: 0;
  padding: 15px 20px;
  border-left: 1px solid #d6d6d6;
  border-right: 1px solid #d6d6d6
}

.component-formTable.type-col dl dd .error {
  color: #d84d4d;
  font-weight: bold
}

.component-formTable.type-col dl dd .form-element {
  display: block
}

.component-formTable.type-col dl dd .form-element+.form-element {
  margin-left: 0;
  margin-top: 15px
}

.component-formTable.type-col dl dd input.short {
  width: 200px
}

.component-formTable.type-col dl dd input.middle {
  width: 400px
}

.component-formTable.type-col dl dd input.long {
  width: 800px
}

.component-formTable.type-col dl dd [class^=inputList-]:after {
  content: "";
  clear: both;
  display: block
}

.component-formTable.type-col dl dd [class^=inputList-] li {
  float: left
}

.component-formTable.type-col dl dd [class^=inputList-] li .mod-check,
.component-formTable.type-col dl dd [class^=inputList-] li .mod-radio {
  display: block;
  margin-right: 20px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 18px;
  line-height: 1.8rem
}

.component-formTable.type-col dl dd .inputList-3 li {
  width: 33.33%
}

.component-formTable.type-col dl dd .inputList-4 li {
  width: 25%
}

.component-formTable.type-col dl dd .inputList-5 li {
  width: 20%
}

@media screen and (max-width:46em) {
  .component-formTable dl .form-opt {
    margin-left: 0
  }

  .component-formTable dl dt {
    width: auto;
    float: none;
    padding: 10px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem
  }

  .component-formTable dl dd {
    margin-left: 0;
    padding: 10px 0 15px
  }

  .component-formTable dl dd:not(:last-child) {
    border-bottom: 1px dotted #d6d6d6
  }

  .component-formTable dl dd .form-element {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .component-formTable dl dd .form-element label:not(.mod-radio):not(.mod-check) {
    margin-bottom: 0
  }

  .component-formTable dl dd .form-element+.form-element {
    margin-left: 0;
    margin-top: 10px
  }

  .component-formTable dl dd p {
    padding: 0
  }

  .component-formTable dl dd p.error {
    padding-bottom: 5px
  }

  .component-formTable dl dd label:not(.mod-radio):not(.mod-check) {
    margin-right: 7px;
    margin-bottom: 7px;
    display: inline-block;
    white-space: nowrap
  }

  .component-formTable.type-col dl .form-opt {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px)
  }

  .component-formTable.type-col dl dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    float: none;
    padding: 10px 15px 10px 15px;
    border-bottom: 1px solid #d6d6d6;
    border-left: 1px solid #d6d6d6;
    border-right: 1px solid #d6d6d6;
    background: #f5f7fb
  }

  .component-formTable.type-col dl dd {
    margin-left: 0;
    padding: 15px 15px
  }

  .component-formTable.type-col dl dd input.long {
    width: 100%
  }

  .component-formTable.type-col dl dd [class^=inputList-] li {
    float: none;
    width: 100%;
    display: inline-block
  }
}

.component-link-dl:not(:last-child) {
  margin-bottom: 20px
}

.component-link-dl dt a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-link-dl dt a:before {
    top: -1px
  }
}

.component-textImage:after {
  content: "";
  clear: both;
  display: block
}

.component-textImage .image {
  width: 300px;
  float: left
}

.component-textImage .image img {
  max-width: 100%
}

.component-textImage .image img.w-auto {
  width: auto
}

.component-textImage .text {
  width: calc(100% - 340px);
  float: right
}

.component-textImage.is-reverse .image {
  float: right
}

.component-textImage.is-reverse .text {
  float: left
}

.component-textImage.w-100 .image {
  width: 100px
}

.component-textImage.w-100 .image img {
  max-width: 100px
}

.component-textImage.w-100 .text {
  width: calc(100% - 140px)
}

.component-textImage.w-140 .image {
  width: 140px
}

.component-textImage.w-140 .image img {
  max-width: 140px
}

.component-textImage.w-140 .text {
  width: calc(100% - 180px)
}

.component-textImage.w-200 .image {
  width: 200px
}

.component-textImage.w-200 .image img {
  max-width: 200px
}

.component-textImage.w-200 .text {
  width: calc(100% - 240px)
}

.component-textImage.w-240 .image {
  width: 240px
}

.component-textImage.w-240 .image img {
  max-width: 240px
}

.component-textImage.w-240 .text {
  width: calc(100% - 280px)
}

.component-textImage.w-300 .image {
  width: 300px
}

.component-textImage.w-300 .image img {
  max-width: 300px
}

.component-textImage.w-300 .text {
  width: calc(100% - 340px)
}

.component-textImage.w-340 .image {
  width: 340px
}

.component-textImage.w-340 .image img {
  max-width: 340px
}

.component-textImage.w-340 .text {
  width: calc(100% - 380px)
}

.component-textImage.w-400 .image {
  width: 400px
}

.component-textImage.w-400 .image img {
  max-width: 400px
}

.component-textImage.w-400 .text {
  width: calc(100% - 440px)
}

.component-textImage.w-440 .image {
  width: 440px
}

.component-textImage.w-440 .image img {
  max-width: 440px
}

.component-textImage.w-440 .text {
  width: calc(100% - 480px)
}

.component-textImage.is-float .image {
  margin-right: 40px;
  margin-bottom: 20px
}

.component-textImage.is-float .text {
  width: 100%;
  float: none
}

.component-textImage.is-float.is-reverse .image {
  margin-right: 0;
  margin-left: 40px
}

@media screen and (max-width:46em) {
  .component-textImage .image {
    width: auto;
    float: none;
    margin-bottom: 15px;
    text-align: center
  }

  .component-textImage .image .headline--lv4,
  .component-textImage .image .headline--lv4-2,
  .component-textImage .image .headline--lv4-3 {
    text-align: left
  }

  .component-textImage .image img {
    width: auto;
    max-width: 100%
  }

  .component-textImage .text {
    width: auto;
    float: none
  }

  .component-textImage .text+.image {
    margin-bottom: 0;
    margin-top: 15px
  }

  .component-textImage.is-reverse .image {
    float: none
  }

  .component-textImage.is-reverse .text {
    float: none
  }

  .component-textImage.is-float .image {
    margin-right: 0
  }

  .component-textImage.is-float.is-reverse .image {
    margin-left: 0
  }

  .component-textImage.w-100 .image,
  .component-textImage.w-140 .image,
  .component-textImage.w-200 .image,
  .component-textImage.w-240 .image,
  .component-textImage.w-300 .image,
  .component-textImage.w-340 .image,
  .component-textImage.w-400 .image,
  .component-textImage.w-440 .image {
    width: auto
  }

  .component-textImage.w-100 .image img,
  .component-textImage.w-140 .image img,
  .component-textImage.w-200 .image img,
  .component-textImage.w-240 .image img,
  .component-textImage.w-300 .image img,
  .component-textImage.w-340 .image img,
  .component-textImage.w-400 .image img,
  .component-textImage.w-440 .image img {
    max-width: 100%
  }

  .component-textImage.w-100 .text,
  .component-textImage.w-140 .text,
  .component-textImage.w-200 .text,
  .component-textImage.w-240 .text,
  .component-textImage.w-300 .text,
  .component-textImage.w-340 .text,
  .component-textImage.w-400 .text,
  .component-textImage.w-440 .text {
    width: auto
  }

  .component-textImage.w-100 .image img.size-fixed {
    max-width: 100px
  }

  .component-textImage.w-140 .image img.size-fixed {
    max-width: 140px
  }

  .component-textImage.w-200 .image img.size-fixed {
    max-width: 200px
  }

  .component-textImage.w-240 .image img.size-fixed {
    max-width: 240px
  }
}

.component-philosophy {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  border: 1px solid #d6d6d6;
  background: #f5f7fb;
  padding: 30px 40px;
  margin-top: 30px
}

.component-philosophy__title {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 38.5px;
  line-height: 3.85rem;
  font-weight: bold;
  margin-bottom: 15px
}

@media screen and (max-width:46em) {
  .component-philosophy {
    padding: 15px 15px
  }

  .component-philosophy__title {
    text-align: center;
    font-size: 20px;
    font-size: 2rem;
    line-height: 35px;
    line-height: 3.5rem;
    margin-bottom: 10px
  }
}

.component-subText {
  color: #666;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-bottomLinks {
  border-top: 1px solid #d6d6d6;
  padding-top: 30px
}

.component-bottomLinks li {
  display: inline-block;
  margin-right: 40px
}

.component-bottomLinks.type-col li {
  display: block;
  margin-right: 0;
  margin-bottom: 5px
}

@media screen and (max-width:46em) {
  .component-bottomLinks {
    padding-top: 20px
  }

  .component-bottomLinks li {
    display: block;
    margin-right: 0;
    margin-bottom: 10px
  }
}

.component-recallSearch {
  background: #f5f7fb;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.component-recallSearch__text {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 63%;
  flex: 0 0 63%;
  padding-bottom: 10px
}

.component-recallSearch__text__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem;
  font-weight: bold;
  margin-bottom: 5px
}

.component-recallSearch__btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 37%;
  flex: 0 0 37%
}

.component-recallSearch__btn .mod-caption {
  margin-top: 5px
}

@media screen and (max-width:46em) {
  .component-recallSearch {
    padding: 15px;
    display: block
  }

  .component-recallSearch__text {
    padding-right: 0
  }

  .component-recallSearch__text__title {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 28px;
    line-height: 2.8rem
  }

  .component-recallSearch__btn .btn-color {
    margin: 5px 0
  }
}

.component-contactBox {
  background: #f5f7fb;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.component-contactBox__tel {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 0 12px;
  border-right: 1px solid #d6d6d6
}

.component-contactBox__tel address {
  color: #4065a2;
  font-weight: bold
}

.component-contactBox__tel address a {
  color: #4065a2
}

.component-contactBox__tel address b {
  font-size: 37px;
  font-size: 3.7rem;
  line-height: 37px;
  line-height: 3.7rem;
  letter-spacing: 0.075em
}

.component-contactBox__tel address b:before {
  content: "";
  width: 50px;
  height: 29px;
  display: inline-block;
  position: relative;
  top: 1px;
  margin-right: 8px;
  background: url(/assets/img/common/freediallogo.svg) no-repeat
}

.component-contactBox__tel .mod-caption {
  letter-spacing: normal
}

.component-contactBox__info {
  letter-spacing: normal;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 570px;
  flex: 0 0 570px;
  border-left: 1px solid #d6d6d6;
  margin-left: -1px;
  padding-left: 35px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-contactBox__info .info__title {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  font-weight: bold;
  margin-bottom: 8px
}

.component-contactBox__info .mod-dl {
  margin-top: 8px
}

@media screen and (max-width:46em) {
  .component-contactBox {
    background: #f5f7fb;
    padding: 15px;
    display: block
  }

  .component-contactBox__tel {
    padding: 0 0 15px;
    border-right: none
  }

  .component-contactBox__tel address b {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 28px;
    line-height: 2.8rem
  }

  .component-contactBox__tel address b:before {
    width: 40px;
    height: 23px;
    background-size: 40px 23px
  }

  .component-contactBox__info {
    border-left: none;
    border-top: 1px solid #d6d6d6;
    margin-left: 0;
    padding-left: 0;
    padding-top: 15px
  }
}

.component-accordionList {
  border-top: 1px solid #d6d6d6
}

.component-accordionList li {
  border-bottom: 1px solid #d6d6d6
}

.component-accordionList li .mod-accordion {
  display: block;
  padding: 20px 60px 20px 20px;
  cursor: pointer;
  position: relative;
  position: relative
}

.component-accordionList li .mod-accordion:after,
.component-accordionList li .mod-accordion:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 14px;
  height: 1px;
  background: #4065a2
}

.component-accordionList li .mod-accordion:before {
  right: 27.5px;
  -webkit-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: translateY(4.2px) rotate(45deg);
  transform: translateY(4.2px) rotate(45deg)
}

.component-accordionList li .mod-accordion:after {
  right: 14px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: translateY(4.2px) rotate(-45deg);
  transform: translateY(4.2px) rotate(-45deg)
}

.component-accordionList li .mod-accordion.is-open:before {
  -webkit-transform: translateY(-4.2px) rotate(-45deg);
  transform: translateY(-4.2px) rotate(-45deg)
}

.component-accordionList li .mod-accordion.is-open:after {
  right: 14px;
  -webkit-transform: translateY(-4.2px) rotate(45deg);
  transform: translateY(-4.2px) rotate(45deg)
}

.component-accordionList li .mod-accordion-contents {
  border-top: 1px dotted #d6d6d6;
  padding: 20px 60px 20px 20px
}

.component-accordionList.is-faq li .mod-accordion {
  padding-left: 70px
}

.component-accordionList.is-faq li .mod-accordion i {
  font-style: italic;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 18px;
  line-height: 1.8rem;
  position: absolute;
  left: 15px;
  top: 23px;
  color: #4065a2
}

.component-accordionList.is-faq li .mod-accordion-contents {
  padding-left: 10px;
  margin: 0 0 0 60px
}

@media screen and (max-width:46em) {
  .component-accordionList li .mod-accordion {
    padding: 15px 40px 15px 0;
    position: relative
  }

  .component-accordionList li .mod-accordion:after,
  .component-accordionList li .mod-accordion:before {
    -webkit-transition: all 0.2s 0s ease;
    transition: all 0.2s 0s ease;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #4065a2
  }

  .component-accordionList li .mod-accordion:before {
    right: 19.5px;
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: translateY(3px) rotate(45deg);
    transform: translateY(3px) rotate(45deg)
  }

  .component-accordionList li .mod-accordion:after {
    right: 10px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: translateY(3px) rotate(-45deg);
    transform: translateY(3px) rotate(-45deg)
  }

  .component-accordionList li .mod-accordion.is-open:before {
    -webkit-transform: translateY(-3px) rotate(-45deg);
    transform: translateY(-3px) rotate(-45deg)
  }

  .component-accordionList li .mod-accordion.is-open:after {
    right: 10px;
    -webkit-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg)
  }

  .component-accordionList li .mod-accordion-contents {
    padding: 15px 0;
    margin: 0
  }

  .component-accordionList.is-faq li .mod-accordion {
    padding-left: 45px
  }

  .component-accordionList.is-faq li .mod-accordion i {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    left: 0;
    top: 17px
  }

  .component-accordionList.is-faq li .mod-accordion-contents {
    padding-left: 0;
    margin: 0
  }

  .component-accordionList.is-faq li .mod-accordion-contents a {
    word-break: break-all
  }
}

.component-yearList {
  background: #f4f4f4
}

.component-yearList__inner {
  width: 1000px;
  margin: 0 auto;
  padding: 30px 0
}

.component-yearList ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.component-yearList ul li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.66%;
  flex: 0 0 16.66%;
  padding: 4px
}

.component-yearList ul li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-yearList ul li a:before {
    top: -1px
  }
}

.component-yearList ul.yearList__recall li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%
}

@media screen and (max-width:46em) {
  .component-yearList__inner {
    width: auto;
    padding: 20px 15px
  }

  .component-yearList ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3%;
    flex: 0 0 33.3%
  }

  .component-yearList ul.yearList__recall li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%
  }
}

.component-categoryList {
  border: 1px solid #d6d6d6;
  padding: 20px 30px;
  margin-bottom: 40px
}

.component-categoryList ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.component-categoryList ul li {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  letter-spacing: 0.05em
}

.component-categoryList ul li a {
  display: block;
  padding: 4px 0;
  color: #333
}

.component-categoryList ul li a:hover {
  text-decoration: none
}

.component-categoryList ul li a:active {
  text-decoration: none
}

.component-categoryList ul li[class*=category-] a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 5px;
  background: #ccc
}

.component-categoryList ul li.category-finance a:hover {
  color: #b65865
}

.component-categoryList ul li.category-finance a.is-current {
  color: #b65865
}

.component-categoryList ul li.category-finance a.is-current:hover {
  color: #b65865
}

.component-categoryList ul li.category-finance a:before {
  background: #b65865
}

.component-categoryList ul li.category-csr a:hover {
  color: #cda84b
}

.component-categoryList ul li.category-csr a.is-current {
  color: #cda84b
}

.component-categoryList ul li.category-csr a.is-current:hover {
  color: #cda84b
}

.component-categoryList ul li.category-csr a:before {
  background: #cda84b
}

.component-categoryList ul li.category-car a:hover {
  color: #647da8
}

.component-categoryList ul li.category-car a.is-current {
  color: #647da8
}

.component-categoryList ul li.category-car a.is-current:hover {
  color: #647da8
}

.component-categoryList ul li.category-car a:before {
  background: #647da8
}

.component-categoryList ul li.category-production a:hover {
  color: #a2b556
}

.component-categoryList ul li.category-production a.is-current {
  color: #a2b556
}

.component-categoryList ul li.category-production a.is-current:hover {
  color: #a2b556
}

.component-categoryList ul li.category-production a:before {
  background: #a2b556
}

.component-categoryList ul li.category-motorshow a:hover {
  color: #3d916b
}

.component-categoryList ul li.category-motorshow a.is-current {
  color: #3d916b
}

.component-categoryList ul li.category-motorshow a.is-current:hover {
  color: #3d916b
}

.component-categoryList ul li.category-motorshow a:before {
  background: #3d916b
}

.component-categoryList ul li.category-motorsports a:hover {
  color: #3f8ca1
}

.component-categoryList ul li.category-motorsports a.is-current {
  color: #3f8ca1
}

.component-categoryList ul li.category-motorsports a.is-current:hover {
  color: #3f8ca1
}

.component-categoryList ul li.category-motorsports a:before {
  background: #3f8ca1
}

.component-categoryList ul li.category-aerospace a:hover {
  color: #4086aa
}

.component-categoryList ul li.category-aerospace a.is-current {
  color: #4086aa
}

.component-categoryList ul li.category-aerospace a.is-current:hover {
  color: #4086aa
}

.component-categoryList ul li.category-aerospace a:before {
  background: #4086aa
}

.component-categoryList ul li.category-industrial a:hover {
  color: #beb144
}

.component-categoryList ul li.category-industrial a.is-current {
  color: #beb144
}

.component-categoryList ul li.category-industrial a.is-current:hover {
  color: #beb144
}

.component-categoryList ul li.category-industrial a:before {
  background: #beb144
}

.component-categoryList ul li.category-other a:hover {
  color: #955683
}

.component-categoryList ul li.category-other a.is-current {
  color: #955683
}

.component-categoryList ul li.category-other a.is-current:hover {
  color: #955683
}

.component-categoryList ul li.category-other a:before {
  background: #955683
}

@media screen and (max-width:46em) {
  .component-categoryList {
    padding: 0;
    margin-bottom: 30px
  }

  .component-categoryList .mod-sp-accordion {
    margin-bottom: 0;
    width: 100%;
    color: #333;
    font-weight: 500;
    padding: 10px 15px
  }

  .component-categoryList ul {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 3px 20px 14px
  }

  .component-categoryList ul li a {
    padding: 6px 0
  }
}

.component-csrNav {
  background: #f5f7fb;
  padding: 40px 0
}

.section+.component-csrNav {
  margin-top: 20px
}

.component-csrNav .l-grid-wrap {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-csrNav .l-grid-wrap {
    max-width: none;
    padding: 0 15px
  }
}

.component-csrNav .l-grid-wrap [class*=" l-col"],
.component-csrNav .l-grid-wrap [class^=l-col] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.component-csrNav .csrNav__title {
  -ms-flex-line-pack: center;
  align-content: center
}

.component-csrNav .csrNav__title>div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 22px;
  line-height: 2.2rem;
  letter-spacing: 0.5em;
  color: #aad37b;
  position: relative
}

[lang=en] .component-csrNav .csrNav__title>div {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 22px;
  line-height: 2.2rem;
  letter-spacing: 0.3em
}

.component-csrNav .csrNav__title>div span {
  border-bottom: 1px solid #aad37b;
  padding-left: 0.4em;
  margin-top: -20px
}

[lang=en] .component-csrNav .csrNav__title>div span {
  padding-left: 0.2em
}

.component-csrNav .csrNav__title>div b {
  font-size: 64px;
  font-size: 6.4rem;
  line-height: 70px;
  line-height: 7rem;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  margin-left: 2px;
  font-weight: 300;
  position: relative;
  top: 2px;
  display: inline-block;
  width: 0.7em
}

[lang=en] .component-csrNav .csrNav__title>div b {
  font-size: 56px;
  font-size: 5.6rem;
  line-height: 60px;
  line-height: 6rem
}

.component-csrNav a {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  display: block;
  width: 100%;
  color: #333;
  background: #fff;
  text-align: center;
  padding: 98px 20px 18px;
  position: relative
}

.component-csrNav a:hover {
  text-decoration: none;
  -webkit-box-shadow: inset 0 0 0 2px #aad37b;
  box-shadow: inset 0 0 0 2px #aad37b
}

.component-csrNav a:active {
  text-decoration: none
}

.component-csrNav a.is-current {
  -webkit-box-shadow: inset 0 0 0 2px #aad37b;
  box-shadow: inset 0 0 0 2px #aad37b
}

.component-csrNav a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: 0;
  border: 10px solid transparent;
  border-right-color: #aad37b;
  border-bottom-color: #aad37b
}

.component-csrNav a:before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  left: 50%;
  top: 24px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.component-csrNav a.icon-consumers:before {
  background: url(/assets/img/csr/icon-consumers.svg) center no-repeat
}

.component-csrNav a.icon-compliance:before {
  background: url(/assets/img/csr/icon-compliance.svg) center no-repeat
}

.component-csrNav a.icon-governance:before {
  background: url(/assets/img/csr/icon-governance.svg) center no-repeat
}

.component-csrNav a.icon-environment:before {
  background: url(/assets/img/csr/icon-environment.svg) center no-repeat
}

.component-csrNav a.icon-contribution:before {
  background: url(/assets/img/csr/icon-contribution.svg) center no-repeat
}

.component-csrNav a.icon-disclosure:before {
  background: url(/assets/img/csr/icon-disclosure.svg) center no-repeat
}

.component-csrNav a.icon-procurement:before {
  background: url(/assets/img/csr/icon-procurement.svg) center no-repeat
}

.component-csrNav a.icon-employees:before {
  background: url(/assets/img/csr/icon-employees.svg) center no-repeat
}

.component-csrNav a.icon-iso:before {
  background: url(/assets/img/csr/icon-iso.svg) center no-repeat
}

@media screen and (max-width:46em) {
  .component-csrNav {
    padding: 15px 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 17px;
    line-height: 1.7rem
  }

  .component-csrNav .csrNav__title>div {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    padding-bottom: 5px
  }

  [lang=en] .component-csrNav .csrNav__title>div {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem
  }

  .component-csrNav .csrNav__title>div span {
    margin-top: 0
  }

  .component-csrNav .csrNav__title>div b {
    font-size: 44px;
    font-size: 4.4rem;
    line-height: 44px;
    line-height: 4.4rem
  }

  [lang=en] .component-csrNav .csrNav__title>div b {
    top: 1px;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 36px;
    line-height: 3.6rem
  }

  .component-csrNav a {
    padding: 54px 15px 12px
  }

  .component-csrNav a:after {
    border: 5px solid transparent;
    border-right-color: #aad37b;
    border-bottom-color: #aad37b
  }

  .component-csrNav a:before {
    width: 40px;
    height: 40px;
    top: 10px
  }

  .component-csrNav a[class*=icon-]:before {
    background-size: 40px 40px
  }
}

.component-bannerSlider {
  background: #f5f7fb;
  padding: 40px
}

.component-bannerSlider.no-slide .mod-lead {
  margin: 30px 0 10px;
  font-weight: bold
}

.component-bannerSlider .banner-slider {
  position: relative
}

.component-bannerSlider .slick-pauseBtn {
  right: 81px;
  bottom: 40px
}

.component-bannerSlider .slick-dots {
  bottom: -30px
}

.component-bannerSlider .slick-dots li button:focus:before,
.component-bannerSlider .slick-dots li button:hover:before {
  background: #4065a2
}

.component-bannerSlider .slick-dots li button:before {
  background: #ccc
}

.component-bannerSlider .slick-dots li.slick-active button:before {
  background: #4065a2
}

.component-bannerSlider .banner-slider .slide {
  outline: none
}

.component-bannerSlider .banner-slider .slide a {
  display: block;
  position: relative;
  overflow: hidden
}

.component-bannerSlider .banner-slider .slide img {
  -webkit-transition: all 0.6s 0s ease;
  transition: all 0.6s 0s ease;
  width: 100%
}

.component-bannerSlider .banner-slider .slide:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-backface-visibility: hidden
}

.component-bannerSlider .special-banner {
  max-width: 1260px;
  margin: 0 auto;
  position: relative
}

.component-bannerSlider .special-banner .slick-pauseBtn {
  right: 41px;
  bottom: 0
}

.component-bannerSlider .special-banner .slide {
  color: #fff
}

.component-bannerSlider .special-banner .slide a {
  color: #fff
}

.component-bannerSlider .special-banner .slide a:hover figure .more {
  background: #fff;
  color: #333
}

.component-bannerSlider .special-banner .slide figure:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(black), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(to right, black 0%, rgba(0, 0, 0, 0) 100%)
}

.component-bannerSlider .special-banner .slide figure figcaption {
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  left: 40px;
  top: 0;
  bottom: 0;
  z-index: 2;
  margin: auto
}

.component-bannerSlider .special-banner .slide figure figcaption em {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 15px;
  line-height: 1.5rem;
  display: block;
  width: 100px;
  text-align: center;
  margin-bottom: 10px;
  padding: 8px 0 8px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5)
}

[lang=en] .component-bannerSlider .special-banner .slide figure figcaption em {
  width: 180px
}

.component-bannerSlider .special-banner .slide figure figcaption strong {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 38px;
  line-height: 3.8rem;
  font-weight: normal;
  letter-spacing: 0.15em
}

.component-bannerSlider .special-banner .slide figure figcaption .more {
  width: 140px;
  margin-top: 25px
}

.component-bannerSlider .special-banner>.slide img {
  width: 100%
}

@media screen and (max-width:46em) {
  .component-bannerSlider {
    padding: 15px 15px 35px
  }

  .component-bannerSlider.no-slide {
    padding: 15px
  }

  .component-bannerSlider.no-slide .mod-lead {
    margin: 20px 0 15px
  }

  .component-bannerSlider .slick-pauseBtn {
    display: none !important
  }

  .component-bannerSlider .slick-prev {
    height: 35px;
    width: 35px;
    right: auto;
    left: -15px;
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }

  .component-bannerSlider .slick-next {
    height: 35px;
    width: 35px;
    right: -15px;
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }

  .component-bannerSlider .slick-dots {
    bottom: -28px;
    text-align: center;
    padding: 0
  }

  .component-bannerSlider .banner-slider .slide {
    outline: none
  }

  .component-bannerSlider .banner-slider .slide a {
    display: block;
    position: relative;
    overflow: hidden
  }

  .component-bannerSlider .banner-slider .slide img {
    -webkit-transition: all 0.6s 0s ease;
    transition: all 0.6s 0s ease;
    width: 100%
  }

  .component-bannerSlider .banner-slider .slide:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-backface-visibility: hidden
  }

  .component-bannerSlider .special-banner .slide figure:before {
    background: -webkit-gradient(linear, left top, left bottom, from(black), color-stop(70%, rgba(0, 0, 0, 0)));
    background: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0) 70%)
  }

  .component-bannerSlider .special-banner .slide figure figcaption {
    display: block;
    left: 30px;
    top: 15px;
    right: 20px
  }

  .component-bannerSlider .special-banner .slide figure figcaption em {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
    width: 80px;
    margin-bottom: 6px;
    padding: 6px 0 6px
  }

  .component-bannerSlider .special-banner .slide figure figcaption strong {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 24px;
    line-height: 2.4rem
  }

  .component-bannerSlider .special-banner .slide figure figcaption .more {
    display: none
  }

  .component-bannerSlider .special-banner>.slide figure figcaption {
    left: 15px;
    right: 15px
  }
}

.component-bottomBanner {
  background: #424851;
  padding: 30px 0;
  margin-bottom: -1px
}

.component-bottomBanner .l-grid-wrap {
  width: 1000px;
  margin: 0 auto
}

.component-bottomBanner .l-col a img {
  width: 100%
}

@media screen and (max-width:46em) {
  .component-bottomBanner {
    padding: 15px
  }

  .component-bottomBanner .l-grid-wrap {
    width: auto
  }
}

.component-importantNotice {
  width: 1000px;
  margin: 0 auto;
  padding: 0 20px 20px
}

.component-importantNotice .mod-borderBox {
  padding: 15px 20px
}

.component-importantNotice .mod-dl+.mod-dl,
.component-importantNotice .mod-dl+p,
.component-importantNotice p+.mod-dl,
.component-importantNotice p+p {
  margin-top: 10px
}

@media screen and (max-width:46em) {
  .component-importantNotice {
    width: auto;
    padding: 0 15px 15px
  }

  .component-importantNotice .mod-borderBox {
    padding: 10px 15px
  }

  .component-importantNotice .mod-dl {
    display: block
  }
}

.component-csrmanagement8 .subaru-logo .mod-bgBox {
  padding: 15px 15px 15px
}

.component-csrmanagement8 .subaru-logo .mod-bgBox img {
  width: 100px
}

.component-csrmanagement8 .mod-bgBox {
  text-align: center;
  position: relative;
  padding: 70px 15px 20px
}

.component-csrmanagement8 .mod-bgBox .headline--lv4,
.component-csrmanagement8 .mod-bgBox .headline--lv4-2,
.component-csrmanagement8 .mod-bgBox .headline--lv4-3 {
  margin-bottom: 5px
}

.component-csrmanagement8 .mod-bgBox p {
  text-align: left
}

.component-csrmanagement8 .mod-bgBox:before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  left: 50%;
  top: 10px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.component-csrmanagement8 .mod-bgBox.icon-consumers:before {
  background: url(/assets/img/csr/icon-consumers.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-compliance:before {
  background: url(/assets/img/csr/icon-compliance.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-governance:before {
  background: url(/assets/img/csr/icon-governance.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-environment:before {
  background: url(/assets/img/csr/icon-environment.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-contribution:before {
  background: url(/assets/img/csr/icon-contribution.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-disclosure:before {
  background: url(/assets/img/csr/icon-disclosure.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-procurement:before {
  background: url(/assets/img/csr/icon-procurement.svg) center no-repeat
}

.component-csrmanagement8 .mod-bgBox.icon-employees:before {
  background: url(/assets/img/csr/icon-employees.svg) center no-repeat
}

@media screen and (max-width:46em) {
  .component-csrmanagement8 .subaru-logo {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
  }

  .component-csrmanagement8 .subaru-logo .mod-bgBox {
    padding: 0 15px 15px
  }

  .component-csrmanagement8 .subaru-logo .mod-bgBox img {
    width: 80px
  }

  .component-csrmanagement8 .mod-bgBox {
    padding: 60px 15px 15px
  }

  .component-csrmanagement8 .mod-bgBox:before {
    width: 50px;
    height: 50px
  }

  .component-csrmanagement8 .mod-bgBox[class*=icon-]:before {
    background-size: 50px 50px
  }
}

.component-timeline {
  position: relative;
  padding-left: 30px
}

.component-timeline:before {
  content: "";
  position: absolute;
  left: 5px;
  top: 18px;
  width: 1px;
  height: 100%;
  background: #4065a2
}

.component-timeline .inner__block {
  position: relative
}

.component-timeline .inner__block:before {
  content: "";
  position: absolute;
  left: -29px;
  top: 12px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #4065a2
}

@media screen and (max-width:46em) {
  .component-timeline {
    padding-left: 25px
  }

  .component-timeline .inner__block:before {
    left: -24px
  }
}

.component-report-dl .image {
  width: 250px;
  margin: 0 auto 20px
}

.component-report-dl .image img {
  width: 100%
}

@media screen and (max-width:46em) {
  .component-report-dl .image {
    width: 200px;
    margin: 0 auto 15px
  }
}

.component-ir-latestInfo {
  background: url(/assets/img/ir/bg-latestinfo.jpg) center top no-repeat;
  background-size: cover;
  padding: 60px 0;
  color: #fff
}

.component-ir-latestInfo__inner {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-ir-latestInfo__inner {
    max-width: none;
    padding: 0 15px
  }
}

.component-ir-latestInfo__inner:after {
  content: "";
  clear: both;
  display: block
}

.component-ir-latestInfo__inner a {
  color: #fff
}

.component-ir-latestInfo__inner a .file-info {
  color: #fff
}

.component-ir-latestInfo__inner a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  background: url(/assets/img/common/icon-link-external-white.svg) no-repeat
}

.component-ir-latestInfo__inner .headline--lv3,
.component-ir-latestInfo__inner .headline--lv3-2 {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, 0.4);
  margin-bottom: 0
}

.component-ir-latestInfo__inner .ir-event {
  width: 62.962962963%;
  float: left
}

.component-ir-latestInfo__inner .ir-event .eventInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4)
}

.component-ir-latestInfo__inner .ir-event .eventInfo .image {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 240px;
  flex: 0 0 240px;
  max-height: 240px;
  overflow: hidden
}

.component-ir-latestInfo__inner .ir-event .eventInfo .image img {
  width: 100%
}

.component-ir-latestInfo__inner .ir-event .eventInfo .image+.text {
  padding-left: 30px
}

.component-ir-latestInfo__inner .ir-event .eventInfo .text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.component-ir-latestInfo__inner .ir-event .eventInfo h4 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  line-height: 3rem;
  font-weight: bold;
  margin-bottom: 12px
}

.component-ir-latestInfo__inner .ir-event .eventInfo h4 span {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  line-height: 2.8rem
}

.component-ir-latestInfo__inner .ir-event .eventInfo .mod-list {
  margin-top: 15px
}

.component-ir-latestInfo__inner .ir-document {
  width: 31.4814814815%;
  float: right
}

.component-ir-latestInfo__inner .ir-document ul li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4)
}

.component-ir-latestInfo__inner .ir-document ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 0
}

.component-ir-latestInfo__inner .ir-document ul li a .image {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70px;
  flex: 0 0 70px;
  height: 50px;
  overflow: hidden
}

.component-ir-latestInfo__inner .ir-document ul li a .image img {
  width: 100%
}

.component-ir-latestInfo__inner .ir-document ul li a .image+p {
  padding-left: 18px
}

.component-ir-latestInfo__inner .ir-document ul li a p {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.component-ir-latestInfo__inner .ir-document ul li a p span {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-ir-latestInfo__inner .ir-document .dl-all a {
  display: block;
  padding: 15px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  font-weight: bold;
  text-indent: 0
}

.component-ir-latestInfo__inner .btmBtn {
  margin-top: 25px
}

@media screen and (max-width:46em) {
  .component-ir-latestInfo {
    padding: 30px 0
  }

  .component-ir-latestInfo__inner .ir-event {
    width: auto;
    float: none;
    margin-bottom: 40px
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo {
    padding: 15px 0
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo .image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100px;
    flex: 0 0 100px
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo .image+.text {
    padding-left: 18px
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo h4 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 25px;
    line-height: 2.5rem;
    margin-bottom: 10px
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo h4 span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem
  }

  .component-ir-latestInfo__inner .ir-event .eventInfo .mod-list {
    margin-top: 10px
  }

  .component-ir-latestInfo__inner .ir-document {
    width: auto;
    float: none
  }

  .component-ir-latestInfo__inner .btmBtn {
    margin-top: 15px
  }
}

.component-ir-bottomLink {
  padding: 20px 0
}

.component-ir-bottomLink__inner {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

@media screen and (max-width:46em) {
  .component-ir-bottomLink__inner {
    max-width: none;
    padding: 0 15px
  }
}

.component-ir-bottomLink__inner:after {
  content: "";
  clear: both;
  display: block
}

.component-ir-bottomLink__inner .links {
  float: left;
  width: 260px;
  margin-top: 10px
}

.component-ir-bottomLink__inner .banners {
  float: right;
  width: 730px;
  text-align: right;
  font-size: 0
}

.component-ir-bottomLink__inner .banners li {
  display: inline-block;
  margin-left: 8px
}

@media screen and (max-width:46em) {
  .component-ir-bottomLink__inner .links {
    float: none;
    width: auto;
    margin-top: 0;
    padding-bottom: 5px
  }

  .component-ir-bottomLink__inner .links li {
    margin-bottom: 5px
  }

  .component-ir-bottomLink__inner .banners {
    float: none;
    width: auto;
    text-align: center
  }

  .component-ir-bottomLink__inner .banners li {
    display: block;
    margin-left: 0;
    margin-top: 10px
  }
}

.component-pageRanking {
  background: #f5f7fb;
  padding: 30px 0 40px
}

.component-pageRanking__inner {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px;
  position: relative
}

@media screen and (max-width:46em) {
  .component-pageRanking__inner {
    max-width: none;
    padding: 0 15px
  }
}

.component-pageRanking__inner .headline--lv4,
.component-pageRanking__inner .headline--lv4-2,
.component-pageRanking__inner .headline--lv4-3 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem
}

.component-pageRanking__inner .date {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  text-align: right;
  position: absolute;
  top: 10px;
  right: 30px
}

.component-pageRanking__inner ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #d6d6d6;
  padding: 5px 5px 5px 0
}

.component-pageRanking__inner ol li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  padding-left: 5px;
  position: relative
}

.component-pageRanking__inner ol li:after {
  content: "→";
  display: block;
  position: absolute;
  top: 4px;
  left: 34px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem
}

.component-pageRanking__inner ol li.up:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.component-pageRanking__inner ol li.down:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.component-pageRanking__inner ol li[class*=rank]:before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  background: #4065a2;
  position: absolute;
  left: 0;
  top: -5px;
  color: #fff;
  text-align: center;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-style: italic;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  line-height: 26px
}

.component-pageRanking__inner ol li.rank1:before {
  content: "1";
  background: #caac32
}

.component-pageRanking__inner ol li.rank2:before {
  content: "2";
  background: #b0bcc8
}

.component-pageRanking__inner ol li.rank3:before {
  content: "3";
  background: #9b734d
}

.component-pageRanking__inner ol li.rank4:before {
  content: "4"
}

.component-pageRanking__inner ol li.rank5:before {
  content: "5"
}

.component-pageRanking__inner ol li a {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #fff;
  width: 100%;
  text-align: center;
  height: 80px;
  color: #333;
  padding: 0 30px
}

.component-pageRanking__inner ol li a:hover {
  text-decoration: none;
  color: #438bc5
}

@media screen and (max-width:46em) {

  .component-pageRanking__inner .headline--lv4,
  .component-pageRanking__inner .headline--lv4-2,
  .component-pageRanking__inner .headline--lv4-3 {
    margin-bottom: 15px
  }

  .component-pageRanking__inner .date {
    position: static;
    margin-top: 10px
  }

  .component-pageRanking__inner ol {
    display: block;
    padding: 5px 5px 1px 5px
  }

  .component-pageRanking__inner ol li {
    padding-left: 0;
    margin-bottom: 5px
  }

  .component-pageRanking__inner ol li:after {
    left: 28px
  }

  .component-pageRanking__inner ol li[class*=rank]:before {
    left: -5px
  }

  .component-pageRanking__inner ol li a {
    height: 74px
  }
}

.component-irNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.component-irNav>ul {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  padding: 10px 0;
  max-width: 100%
}

.component-irNav>ul:not(:first-child) {
  border-left: 1px solid #d6d6d6
}

.component-irNav>ul>li {
  padding: 0 20px
}

.component-irNav>ul>li>a {
  font-weight: bold;
  color: #333
}

.component-irNav>ul>li>a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.component-irNav>ul ul {
  padding: 10px 0 0 10px
}

@media screen and (min-width:46.0625em) {
  .component-irNav>ul ul {
    display: block !important
  }
}

.component-irNav>ul ul li {
  padding: 2px 0;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  margin-left: 12px
}

.component-irNav>ul ul li a {
  display: inline;
  text-indent: -12px;
  margin-left: 12px;
  text-indent: 0;
  margin-left: 0
}

.component-irNav>ul ul li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-irNav>ul ul li a:before {
    top: -1px
  }
}

.component-irNav>ul ul li a:before {
  margin-right: 8px;
  top: -1px;
  margin-left: -12px
}

.component-irNav>ul ul li a.icon-outline:before {
  width: 12px;
  height: 13px;
  margin-left: -18px;
  margin-right: 6px;
  background: url(/assets/img/common/icon-megamenu-outline.svg) no-repeat;
  background-size: 12px 13px
}

@media screen and (max-width:46em) {
  .component-irNav {
    display: block
  }

  .component-irNav>ul {
    padding: 0
  }

  .component-irNav>ul:first-child {
    border-top: 1px solid #d6d6d6
  }

  .component-irNav>ul:not(:first-child) {
    border-left: none
  }

  .component-irNav>ul>li {
    padding: 0
  }

  .component-irNav>ul>li .accordion-toggle {
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    font-weight: bold;
    color: #333;
    background: #fff;
    padding: 10px 15px;
    padding-right: 35px;
    border-bottom: 1px solid #d6d6d6
  }

  .component-irNav>ul>li .accordion-toggle:after,
  .component-irNav>ul>li .accordion-toggle:before {
    -webkit-transition: all 0.2s 0s ease;
    transition: all 0.2s 0s ease;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #4065a2
  }

  .component-irNav>ul>li .accordion-toggle:before {
    right: 19.5px;
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: translateY(3px) rotate(45deg);
    transform: translateY(3px) rotate(45deg)
  }

  .component-irNav>ul>li .accordion-toggle:after {
    right: 10px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: translateY(3px) rotate(-45deg);
    transform: translateY(3px) rotate(-45deg)
  }

  .component-irNav>ul>li .accordion-toggle.is-open:before {
    -webkit-transform: translateY(-3px) rotate(-45deg);
    transform: translateY(-3px) rotate(-45deg)
  }

  .component-irNav>ul>li .accordion-toggle.is-open:after {
    right: 10px;
    -webkit-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg)
  }

  .component-irNav>ul ul {
    display: none;
    border-bottom: 1px solid #d6d6d6;
    background: #fff;
    padding: 10px 0
  }

  .component-irNav>ul ul li {
    padding: 5px 0
  }

  .component-irNav>ul ul li:not(.pc-hide) {
    margin-left: 37px;
    margin-right: 10px
  }

  .component-irNav>ul ul li a.dir-top {
    font-weight: bold;
    padding: 5px 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .component-irNav>ul ul li a.dir-top:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
    width: 14px;
    height: 14px;
    margin-right: 7px;
    background: url(/assets/img/common/icon-link-circle.svg) no-repeat
  }
}

.component-irNews {
  position: relative
}

.component-irNews .ir-mail {
  position: absolute;
  top: 0;
  right: 0;
  border-left: 1px solid #d6d6d6;
  padding: 12px 0 11px;
  font-size: 0;
  padding: 18px 0;
  font-size: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.component-irNews .ir-mail dt {
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  padding: 0 18px
}

.component-irNews .ir-mail dd {
  line-height: 1
}

.component-irNews .ir-mail dd a {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  display: inline-block;
  padding: 3px 15px;
  border-left: 1px solid #d6d6d6
}

.component-irNews .tabs {
  margin-bottom: 20px
}

.component-irNews .tabs li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto
}

.component-irNews .tab-contents .component-newsList ul {
  border-top: none
}

@media screen and (max-width:46em) {
  .component-irNews {
    margin-top: -30px
  }

  .component-irNews .ir-mail {
    position: static;
    border-left: none;
    display: block;
    text-align: center
  }

  .component-irNews .ir-mail dt {
    margin-bottom: 10px
  }

  .component-irNews .ir-mail dd a {
    padding: 3px 20px
  }

  .component-irNews .ir-mail dd a:first-child {
    border-left: none
  }

  .component-irNews .tabs {
    margin-bottom: 10px
  }

  .component-irNews .tabs li {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
  }
}

.component-navBar ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  -webkit-box-shadow: inset 0 1px 0 0 #d6d6d6, inset 0 -1px 0 0 #d6d6d6;
  box-shadow: inset 0 1px 0 0 #d6d6d6, inset 0 -1px 0 0 #d6d6d6
}

.component-navBar ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  line-height: 2rem;
  font-weight: bold
}

.component-navBar ul li a {
  display: block;
  padding: 17px 15px;
  width: 100%
}

.component-navBar ul li a:not([href^="#"]):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-navBar ul li a:not([href^="#"]):before {
    top: -1px
  }
}

.component-navBar ul li a[href^="#"]:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-anchor.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-navBar ul li a[href^="#"]:before {
    top: -1px
  }
}

.component-navBar ul li:not(:first-child) {
  border-left: 1px solid #d6d6d6
}

.component-navBar ul li.is-active {
  background: #4065a2;
  position: relative
}

.component-navBar ul li.is-active:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top-color: #4065a2;
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -10px
}

.component-navBar ul li.is-active a {
  color: #fff
}

.component-navBar ul li.is-active a:hover {
  text-decoration: none
}

.component-navBar ul li.is-active a:before {
  display: none
}

@media screen and (max-width:46em) {
  .component-navBar.sp-col ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }

  .component-navBar.sp-col ul li.is-active {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }

  .component-navBar ul li {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 17px;
    line-height: 1.7rem
  }

  .component-navBar ul li a {
    padding: 12px 15px
  }

  .component-navBar ul li:not(:first-child) {
    border-left: none;
    -webkit-box-shadow: inset 0 1px 0 0 #d6d6d6;
    box-shadow: inset 0 1px 0 0 #d6d6d6
  }

  .component-navBar ul li.is-active:after {
    border: 6px solid transparent;
    border-top-color: #4065a2;
    bottom: -12px;
    margin-left: -6px
  }
}

.component-numBox ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px;
  margin-bottom: -20px
}

.component-numBox ol li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.33%;
  flex: 0 0 33.33%;
  list-style-position: inside;
  counter-increment: cnt;
  padding: 0 10px;
  margin-bottom: 20px
}

.component-numBox ol li>div {
  width: 100%;
  border: 1px solid #d6d6d6;
  position: relative;
  padding: 20px
}

.component-numBox ol li>div:before {
  display: marker;
  content: "" counter(cnt) "";
  width: 26px;
  height: 26px;
  background: #4065a2;
  position: absolute;
  left: -1px;
  top: -1px;
  color: #fff;
  text-align: center;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-style: italic;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  line-height: 26px
}

.component-numBox ol li>div .numBox__title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 24px;
  line-height: 2.4rem;
  text-align: center;
  font-weight: bold;
  color: #4065a2;
  margin-bottom: 10px;
  padding: 0 15px
}

@media screen and (max-width:46em) {
  .component-numBox ol {
    display: block;
    margin-bottom: -15px
  }

  .component-numBox ol li {
    display: block;
    margin-bottom: 15px
  }

  .component-numBox ol li>div {
    padding: 15px
  }

  .component-numBox ol li>div .numBox__title {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
    margin-bottom: 6px
  }
}

.component-pluginBanner a {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333
}

.component-pluginBanner a:after {
  display: none !important
}

.component-pluginBanner a img {
  margin-right: 20px
}

.component-pluginBanner a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon) span:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 11px;
  height: 9px;
  margin-left: 4px;
  margin-right: 4px;
  background: url(/assets/img/common/icon-link-external.svg) no-repeat
}

.component-messageLink {
  background: #f4f4f4
}

.component-messageLink a {
  width: 1000px;
  height: 300px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden
}

.component-messageLink a .component-messageLink__image {
  padding-top: 10px
}

.component-messageLink a .component-messageLink__image img {
  -webkit-transition: all 0.6s 0s ease;
  transition: all 0.6s 0s ease;
  -webkit-transform-origin: center top;
  transform-origin: center top
}

.component-messageLink a .component-messageLink__text {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 460px;
  flex: 0 0 460px;
  z-index: 1;
  text-align: center;
  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-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #333
}

.component-messageLink a .component-messageLink__text .headline--lv2-2 {
  color: #333
}

.component-messageLink a .component-messageLink__text .headline--lv2-2:after {
  background: #333
}

.component-messageLink a .component-messageLink__text p {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 22.75px;
  line-height: 2.275rem
}

.component-messageLink a .component-messageLink__text .btn,
.component-messageLink a .component-messageLink__text .btn-white {
  margin-top: 20px;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.component-messageLink a:hover {
  text-decoration: none
}

.component-messageLink a:hover .component-messageLink__image img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.component-messageLink a:hover .component-messageLink__text .btn {
  background: #333;
  color: #fff
}

.component-messageLink.is-reverse a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row
}

@media screen and (max-width:46em) {
  .component-messageLink a {
    width: auto;
    height: auto
  }

  .component-messageLink a .component-messageLink__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 44%;
    flex: 0 0 44%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-left: -8%
  }

  .component-messageLink a .component-messageLink__image img {
    width: 100%
  }

  .component-messageLink a .component-messageLink__text {
    padding: 15px 15px 15px 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }

  .component-messageLink a .component-messageLink__text .headline--lv2-2 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 25px;
    line-height: 2.5rem
  }

  .component-messageLink a .component-messageLink__text p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .component-messageLink a .component-messageLink__text .btn,
  .component-messageLink a .component-messageLink__text .btn-white {
    margin-top: 15px
  }

  .component-messageLink a:hover {
    text-decoration: none
  }
}

.component-banner-irmail {
  width: 800px;
  height: 100px;
  margin: 0 auto;
  background: #e1e5ef url(/assets/img/ir/bg-banner-irmail.png) left center no-repeat;
  background-size: contain;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.component-banner-irmail a {
  display: block;
  color: #333;
  text-decoration: none
}

.component-banner-irmail a .banner-text {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 17px;
  line-height: 1.7rem;
  padding: 8px 200px 10px 150px;
  letter-spacing: 0.05em
}

.component-banner-irmail a .banner-text__title {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 34px;
  line-height: 3.4rem;
  margin-bottom: 7px
}

.component-banner-irmail a .btn {
  position: absolute;
  right: 40px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.component-banner-irmail:hover .btn {
  background: #333;
  color: #fff
}

@media screen and (max-width:46em) {
  .component-banner-irmail {
    width: auto;
    height: auto;
    background-size: 120px 80px
  }

  .component-banner-irmail a .banner-text {
    padding: 15px 15px 18px 110px
  }

  .component-banner-irmail a .banner-text__title {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 24px;
    line-height: 2.4rem
  }

  .component-banner-irmail a .btn {
    display: none;
    position: static;
    -webkit-transform: none;
    transform: none;
    margin-left: 140px
  }
}

.component-ratioBlock {
  background: #f5f7fb;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: normal
}

.component-ratioBlock__head {
  padding: 30px;
  background: #4065a2;
  color: #fff;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 390px;
  flex: 0 0 390px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.component-ratioBlock__head strong {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem;
  font-weight: normal
}

.component-ratioBlock__head .percentage {
  margin: 0 0 0 auto;
  font-style: italic;
  font-weight: 300;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 58px;
  font-size: 5.8rem;
  line-height: 58px;
  line-height: 5.8rem
}

.component-ratioBlock__head .percentage span {
  font-size: 30px;
  font-size: 3rem;
  line-height: 30px;
  line-height: 3rem
}

.component-ratioBlock__image {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 15px 0;
  text-align: center
}

.component-ratioBlock__text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 30px
}

@media screen and (max-width:46em) {
  .component-ratioBlock {
    display: block
  }

  .component-ratioBlock__head {
    padding: 10px 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 17px;
    line-height: 1.7rem
  }

  .component-ratioBlock__head strong {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 20px;
    line-height: 2rem
  }

  .component-ratioBlock__head .percentage {
    font-size: 40px;
    font-size: 4rem;
    line-height: 40px;
    line-height: 4rem
  }

  .component-ratioBlock__head .percentage span {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem
  }

  .component-ratioBlock__image img {
    width: 100%
  }

  .component-ratioBlock__text {
    padding: 15px
  }
}

.component-annotationBox {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 16px;
  line-height: 1.6rem;
  text-align: center;
  padding: 15px;
  border: 3px solid #d6d6d6;
  width: 1000px;
  margin: 20px auto
}

.component-annotationBox+.section:not(.no-padding) {
  padding-top: 40px
}

.component-annotationBox+.section.section-anchorList {
  padding-top: 0
}

.component-annotationBox+.mod-tabs .tabs.w-fixed {
  margin-top: 40px
}

@media screen and (max-width:46em) {
  .component-annotationBox {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 15px;
    line-height: 1.5rem;
    padding: 10px 15px;
    width: auto;
    margin: 15px
  }

  .component-annotationBox+.section.section-anchorList {
    border-top: 1px solid #d6d6d6
  }

  .component-annotationBox+.section:not(.no-padding) {
    padding-top: 20px
  }

  .component-annotationBox+.section.section-anchorList {
    padding-top: 0
  }

  .component-annotationBox+.mod-tabs .tabs.w-fixed {
    margin-top: 15px
  }
}

.component-sitemapList ul {
  margin-top: -12px
}

.component-sitemapList ul li {
  border-bottom: 1px dotted #d6d6d6;
  padding: 12px 0;
  font-weight: bold;
  margin-left: 10px
}

.component-sitemapList ul li a {
  display: block;
  text-indent: -11px;
  padding-left: 11px
}

.component-sitemapList ul li a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-sitemapList ul li a:before {
    top: -1px
  }
}

.component-sitemapList ul li ul {
  margin-left: 10px;
  margin-top: 5px
}

.component-sitemapList ul li ul li {
  border-bottom: none;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem;
  padding: 5px 0;
  font-weight: normal
}

.component-formStep {
  text-align: center;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
  min-height: 50px
}

.component-formStep__step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative;
  padding: 12px 40px 12px 10px;
  background-color: #f4f4f4
}

.component-formStep__step span {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%
}

.component-formStep__step:after,
.component-formStep__step:before {
  content: "";
  display: block;
  position: absolute;
  left: -15px;
  background-color: #f4f4f4;
  border-left: 2px solid #fff;
  width: 30px;
  height: 50%
}

.component-formStep__step:after {
  top: 0;
  -webkit-transform: skew(30deg);
  transform: skew(30deg)
}

.component-formStep__step:before {
  bottom: 0;
  -webkit-transform: skew(-30deg);
  transform: skew(-30deg)
}

.component-formStep__step:first-child {
  padding-right: 30px;
  padding-left: 20px
}

.component-formStep__step:first-child:after,
.component-formStep__step:first-child:before {
  content: none
}

.component-formStep__step:last-child {
  padding-right: 30px;
  padding-left: 20px
}

.component-formStep__step.is-current {
  color: #fff;
  background-color: #4065a2
}

.component-formStep__step.is-current:after,
.component-formStep__step.is-current:before {
  background-color: #4065a2
}

@media screen and (max-width:46em) {
  .component-formStep {
    display: block;
    margin-bottom: 20px;
    min-height: 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 21px;
    line-height: 2.1rem
  }

  .component-formStep__step {
    display: block;
    padding: 5px 20px
  }

  .component-formStep__step:after,
  .component-formStep__step:before {
    display: none
  }

  .component-formStep__step:first-child {
    padding: 6px 10px
  }

  .component-formStep__step:last-child {
    padding: 6px 10px
  }
}

.component-overlayMenu .overlayMenu-btn {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  width: 80px;
  height: 60px;
  border: 2px solid #fff;
  border-radius: 3px;
  position: absolute;
  top: 5px;
  right: 30px;
  z-index: 9001;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  padding-top: 5px
}

.component-overlayMenu .overlayMenu-btn b {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  font-weight: bold;
  background: #fff;
  color: #aad37b;
  display: block;
  width: 100%;
  height: 28px;
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 17px;
  line-height: 1.7rem;
  padding-top: 5px
}

[lang=en] .component-overlayMenu .overlayMenu-btn {
  width: 90px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 13px;
  line-height: 1.3rem;
  padding-top: 3px;
  letter-spacing: normal
}

[lang=en] .component-overlayMenu .overlayMenu-btn b {
  height: 23px;
  padding-top: 3px
}

.component-overlayMenu .overlayMenu-menu {
  -webkit-transition: all 0.4s 0s ease;
  transition: all 0.4s 0s ease;
  background: #fff;
  color: #333;
  width: 1000px;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 50%;
  margin-left: -500px;
  z-index: 10002;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
  transform: translateY(20px)
}

.component-overlayMenu .overlayMenu-menu .overlayMenu-close {
  cursor: pointer;
  position: absolute;
  top: 25px;
  right: 30px;
  width: 28px;
  height: 28px
}

.component-overlayMenu .overlayMenu-menu .overlayMenu-close:after,
.component-overlayMenu .overlayMenu-menu .overlayMenu-close:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #333;
  position: absolute
}

.component-overlayMenu .overlayMenu-menu .overlayMenu-close:before {
  -webkit-transform: translateY(14px) rotate(45deg);
  transform: translateY(14px) rotate(45deg)
}

.component-overlayMenu .overlayMenu-menu .overlayMenu-close:after {
  -webkit-transform: translateY(14px) rotate(-45deg);
  transform: translateY(14px) rotate(-45deg)
}

.component-overlayMenu .overlayMenu-menu .overlayMenu-title {
  height: 60px;
  margin-top: 80px;
  background: #aad37b;
  color: #fff;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 42px;
  line-height: 4.2rem;
  line-height: 60px;
  text-align: center
}

.component-overlayMenu .overlayMenu-menu nav {
  padding: 50px;
  height: calc(100% - 140px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch
}

.component-overlayMenu .overlayMenu-menu nav>ul>li {
  width: 100%
}

.component-overlayMenu .overlayMenu-menu nav>ul>li a {
  color: #333
}

.component-overlayMenu .overlayMenu-menu nav>ul>li a.is-current {
  font-weight: bold;
  color: #4065a2
}

.component-overlayMenu .overlayMenu-menu nav>ul>li a.is-current:hover {
  color: #4065a2
}

.component-overlayMenu .overlayMenu-menu nav>ul>li a:hover {
  text-decoration: none
}

.component-overlayMenu .overlayMenu-menu nav>ul>li a:active {
  text-decoration: none
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  background: #f4f4f4;
  display: block;
  padding: 0 20px 0 40px;
  font-weight: bold;
  height: 60px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 26.25px;
  line-height: 2.625rem;
  line-height: 60px;
  margin-bottom: 10px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 14px;
  height: 14px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-circle.svg) no-repeat
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a:hover {
  -webkit-transition: all 0.1s 0s ease;
  transition: all 0.1s 0s ease;
  -webkit-box-shadow: inset 0 0 0 2px #4065a2;
  box-shadow: inset 0 0 0 2px #4065a2
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>a.is-current {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 31.5px;
  line-height: 3.15rem;
  line-height: 60px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul {
  font-size: 0;
  padding-top: 4px;
  padding-bottom: 20px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li {
  display: inline-block;
  width: 33.2%;
  padding-left: 30px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li.w-full {
  width: 100%
}

[lang=en] .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li {
  width: 49.9%;
  vertical-align: top
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  display: block;
  padding-top: 2px;
  padding-bottom: 2px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a:before {
    top: -1px
  }
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a:hover {
  color: #438bc5
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li {
  display: inline-block;
  width: 33.2%;
  padding-left: 30px
}

[lang=en] .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li {
  width: 49.9%;
  vertical-align: top
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 24.5px;
  line-height: 2.45rem;
  display: block;
  padding-top: 2px;
  padding-bottom: 2px
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -2px;
  width: 4px;
  height: 7px;
  margin-right: 7px;
  background: url(/assets/img/common/icon-link-arrow.svg) no-repeat
}

@media screen and (max-width:46em) {
  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a:before {
    top: -1px
  }
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a:hover {
  color: #438bc5
}

.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a .file-info,
.component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a .pdf-info {
  padding-left: 11px
}

.localnav-fixed .component-overlayMenu .overlayMenu-btn {
  position: fixed;
  top: 86px;
  border-color: #4065a2;
  background: #4065a2
}

.localnav-fixed .component-overlayMenu .overlayMenu-btn b {
  color: #4065a2
}

.overlayMenu-open {
  position: fixed;
  width: 100%;
  overflow-y: scroll
}

.overlayMenu-open .overlayMenu-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

@media screen and (max-width:46em) {
  .component-overlayMenu .overlayMenu-btn {
    width: 74px;
    height: 52px;
    top: 4px;
    right: 12px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem
  }

  .component-overlayMenu .overlayMenu-btn b {
    height: 24px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    padding-top: 4px
  }

  [lang=en] .component-overlayMenu .overlayMenu-btn {
    width: 84px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem
  }

  [lang=en] .component-overlayMenu .overlayMenu-btn b {
    height: 19px;
    padding-top: 2px
  }

  .component-overlayMenu .overlayMenu-menu {
    width: 100%;
    left: 0;
    margin-left: 0
  }

  .component-overlayMenu .overlayMenu-menu .overlayMenu-close {
    top: 16px;
    right: 16px
  }

  .component-overlayMenu .overlayMenu-menu .overlayMenu-title {
    margin-top: 60px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 31.5px;
    line-height: 3.15rem;
    line-height: 60px
  }

  .component-overlayMenu .overlayMenu-menu nav {
    padding: 20px 15px;
    height: calc(100% - 120px)
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>a {
    padding: 0 15px 0 35px;
    height: 52px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24.5px;
    line-height: 2.45rem;
    line-height: 52px
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>a.is-current {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 28px;
    line-height: 2.8rem;
    line-height: 52px
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li {
    width: 100%
  }

  [lang=en] .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li {
    width: 100%
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>a {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22.75px;
    line-height: 2.275rem
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li {
    width: 100%
  }

  [lang=en] .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li {
    width: 100%
  }

  .component-overlayMenu .overlayMenu-menu nav>ul>li>ul>li>ul>li>a {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22.75px;
    line-height: 2.275rem
  }

  .localnav-fixed .component-overlayMenu .overlayMenu-btn {
    top: 72px
  }
}

.component-subarunessGrid {
  background: #4065a2;
  padding: 60px 0;
  text-align: center;
  color: #fff
}

.component-subarunessGrid__text {
  margin-bottom: 60px
}

.component-subarunessGrid__text p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 21px;
  line-height: 2.1rem
}

.component-subarunessGrid__text .btn,
.component-subarunessGrid__text .btn-white {
  margin-top: 20px;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.component-subarunessGrid .l-grid-wrap {
  width: auto;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px
}

@media screen and (max-width:46em) {
  .component-subarunessGrid .l-grid-wrap {
    max-width: none;
    padding: 0 15px
  }
}

.component-subarunessGrid__cardList {
  height: 100%
}

.component-subarunessGrid .l-grid-wrap [class^=l-grid] [class^=l-col]:only-child {
  margin-right: auto;
  margin-left: auto
}

.component-subarunessGrid__card {
  background: #fff;
  text-align: left;
  height: calc((100% - 40px) / 2);
  min-height: 78px
}

.component-subarunessGrid__card:only-child {
  margin: 0
}

.component-subarunessGrid__card .file-info:before {
  margin-left: 0
}

.component-subarunessGrid__card .title {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 22px;
  line-height: 2.2rem;
  margin-bottom: 6px;
  font-weight: bold
}

.component-subarunessGrid__card .title:only-child {
  margin-bottom: 0
}

.component-subarunessGrid__card+* {
  margin-top: 40px
}

.component-subarunessGrid__card a {
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 15px 20px 18px;
  height: 100%;
  text-decoration: none;
  position: relative
}

.component-subarunessGrid__card a:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}

.component-subarunessGrid__card a[target=_blank]:not([href$=".pdf"]):not([href$=".xls"]):not(.no-icon):after {
  display: none
}

.component-subarunessGrid__card a:hover {
  text-decoration: none
}

.component-subarunessGrid__card a:hover:before {
  content: "";
  -webkit-box-shadow: inset 0 0 0 2px #4065a2;
  box-shadow: inset 0 0 0 2px #4065a2
}

.component-subarunessGrid__card a:hover .btn {
  background: #333333;
  color: #fff;
  text-decoration: none
}

.component-subarunessGrid__card a:active {
  text-decoration: none
}

.component-subarunessGrid__card a.is-current:before {
  -webkit-box-shadow: inset 0 0 0 2px #4065a2;
  box-shadow: inset 0 0 0 2px #4065a2
}

@media screen and (max-width:46em) {
  .component-subarunessGrid {
    padding: 25px 0 0
  }

  .component-subarunessGrid__text {
    padding: 0 15px;
    margin-bottom: 30px
  }

  .component-subarunessGrid__text .btn,
  .component-subarunessGrid__text .btn-white {
    margin-top: 15px
  }

  .component-subarunessGrid .l-grid-wrap {
    padding: 0 15px
  }

  .component-subarunessGrid__card+* {
    margin-top: 15px
  }

  .component-subarunessGrid__card a {
    padding: 14px 10px
  }

  .component-subarunessGrid__card a .btn {
    padding: 5px 10px 5px;
    min-width: 40px
  }
}

.component-subarunessVideo {
  width: 800px;
  height: 450px;
  margin: 0 auto;
  overflow: hidden;
  display: block;
  position: relative;
  margin-bottom: -60px
}

@media screen and (max-width:46em) {
  .component-subarunessVideo {
    max-width: 100%;
    max-height: initial;
    height: auto;
    margin-bottom: 0
  }

  .component-subarunessVideo .jstream-eqPlayer {
    width: 100% !important;
    height: auto !important;
    margin-bottom: -7.5% !important;
    position: relative !important
  }

  .component-subarunessVideo .jstream-eqPlayer>* {
    width: 100% !important;
    height: auto !important;
    padding-top: 56.25% !important
  }

  .component-subarunessVideo .jstream-eqPlayer .water_mark_wrapper {
    position: absolute;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important
  }

  .component-subarunessVideo .jstream-eqPlayer .water_mark_square {
    height: 100%;
    background-repeat: no-repeat;
    background-position: center
  }
}

@-webkit-keyframes open-menu-bar01 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }
}

@keyframes open-menu-bar01 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }
}

@-webkit-keyframes open-menu-bar03 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }
}

@keyframes open-menu-bar03 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }
}

@-webkit-keyframes close-menu-bar01 {
  0% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@keyframes close-menu-bar01 {
  0% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@-webkit-keyframes close-menu-bar02 {
  0% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@keyframes close-menu-bar02 {
  0% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@-webkit-keyframes open-localnav-bar01 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }
}

@keyframes open-localnav-bar01 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }
}

@-webkit-keyframes open-localnav-bar03 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }
}

@keyframes open-localnav-bar03 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }
}

@-webkit-keyframes close-localnav-bar01 {
  0% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@keyframes close-localnav-bar01 {
  0% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(45deg);
    transform: translate3d(0, 6px, 0) rotate(45deg)
  }

  50% {
    -webkit-transform: translate3d(0, 6px, 0) rotate(0);
    transform: translate3d(0, 6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@-webkit-keyframes close-localnav-bar02 {
  0% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@keyframes close-localnav-bar02 {
  0% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(-45deg);
    transform: translate3d(0, -6px, 0) rotate(-45deg)
  }

  50% {
    -webkit-transform: translate3d(0, -6px, 0) rotate(0);
    transform: translate3d(0, -6px, 0) rotate(0)
  }

  to {
    -webkit-transform: translate3d(0, 0, 0) rotate(0);
    transform: translate3d(0, 0, 0) rotate(0)
  }
}

@media screen and (max-width:46em) {
  @-webkit-keyframes open-localnav-bar01 {
    0% {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }

    50% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(0);
      transform: translate3d(0, 5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 5px, 0) rotate(45deg);
      transform: translate3d(0, 5px, 0) rotate(45deg)
    }
  }

  @keyframes open-localnav-bar01 {
    0% {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }

    50% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(0);
      transform: translate3d(0, 5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 5px, 0) rotate(45deg);
      transform: translate3d(0, 5px, 0) rotate(45deg)
    }
  }

  @-webkit-keyframes open-localnav-bar03 {
    0% {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }

    50% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(0);
      transform: translate3d(0, -5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, -5px, 0) rotate(-45deg);
      transform: translate3d(0, -5px, 0) rotate(-45deg)
    }
  }

  @keyframes open-localnav-bar03 {
    0% {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }

    50% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(0);
      transform: translate3d(0, -5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, -5px, 0) rotate(-45deg);
      transform: translate3d(0, -5px, 0) rotate(-45deg)
    }
  }

  @-webkit-keyframes close-localnav-bar01 {
    0% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(45deg);
      transform: translate3d(0, 5px, 0) rotate(45deg)
    }

    50% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(0);
      transform: translate3d(0, 5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }
  }

  @keyframes close-localnav-bar01 {
    0% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(45deg);
      transform: translate3d(0, 5px, 0) rotate(45deg)
    }

    50% {
      -webkit-transform: translate3d(0, 5px, 0) rotate(0);
      transform: translate3d(0, 5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }
  }

  @-webkit-keyframes close-localnav-bar02 {
    0% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(-45deg);
      transform: translate3d(0, -5px, 0) rotate(-45deg)
    }

    50% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(0);
      transform: translate3d(0, -5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }
  }

  @keyframes close-localnav-bar02 {
    0% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(-45deg);
      transform: translate3d(0, -5px, 0) rotate(-45deg)
    }

    50% {
      -webkit-transform: translate3d(0, -5px, 0) rotate(0);
      transform: translate3d(0, -5px, 0) rotate(0)
    }

    to {
      -webkit-transform: translate3d(0, 0, 0) rotate(0);
      transform: translate3d(0, 0, 0) rotate(0)
    }
  }
}

@-webkit-keyframes visual-scale {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }

  to {
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
  }
}

@keyframes visual-scale {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }

  to {
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
  }
}

@media screen and (max-width:46em) {
  @-webkit-keyframes visual-scale {
    0% {
      -webkit-transform: scale(1);
      transform: scale(1)
    }

    to {
      -webkit-transform: scale(1.4);
      transform: scale(1.4)
    }
  }

  @keyframes visual-scale {
    0% {
      -webkit-transform: scale(1);
      transform: scale(1)
    }

    to {
      -webkit-transform: scale(1.4);
      transform: scale(1.4)
    }
  }
}

@-webkit-keyframes loading-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes loading-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@-webkit-keyframes copy-fade {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
  }

  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@keyframes copy-fade {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
  }

  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block
}

.slick-track:after,
.slick-track:before {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.slick-next,
.slick-pauseBtn,
.slick-prev {
  position: absolute;
  z-index: 10;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: #fff;
  color: transparent;
  bottom: 0;
  padding: 0;
  border: none;
  outline: none
}

.slick-next:focus,
.slick-next:hover,
.slick-pauseBtn:focus,
.slick-pauseBtn:hover,
.slick-prev:focus,
.slick-prev:hover {
  outline: none
}

.slick-pauseBtn {
  display: none
}

.slick-dotted+.slick-pauseBtn {
  display: block
}

.slick-prev {
  right: 82px
}

.slick-prev:before {
  -webkit-transition: all 0.2s 0s ease;
  transition: all 0.2s 0s ease;
  content: "";
  display: block;
  width: 11px;
  height: 11px;
  border-top: 2px solid #4065a2;
  border-left: 2px solid #4065a2;
  -webkit-transform: translate(0, -50%) rotate(-45deg);
  transform: translate(0, -50%) rotate(-45deg);
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -3px
}

.slick-prev:hover:before {
  -webkit-transform: translate(-4px, -50%) rotate(-45deg);
  transform: translate(-4px, -50%) rotate(-45deg)
}

.slick-next {
  right: 0
}

.slick-next:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  content: "";
  display: block;
  width: 11px;
  height: 11px;
  border-top: 2px solid #4065a2;
  border-right: 2px solid #4065a2;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -8px
}

.slick-next:hover:before {
  -webkit-transform: translate(4px, -50%) rotate(45deg);
  transform: translate(4px, -50%) rotate(45deg)
}

.slick-pauseBtn {
  right: 41px
}

.slick-pauseBtn #startBtn:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-left: 10px solid #4065a2;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin-left: 4px
}

.slick-pauseBtn #stopBtn:before {
  content: "";
  display: block;
  width: 12px;
  height: 14px;
  border-left: 4px solid #4065a2;
  border-right: 4px solid #4065a2;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.slick-dots {
  position: absolute;
  bottom: 11px;
  z-index: 1;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 28px;
  width: 28px;
  margin: 0 2px;
  padding: 0;
  cursor: pointer
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 28px;
  width: 28px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer
}

.slick-dots li button:focus,
.slick-dots li button:hover {
  outline: none
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
  background: #f4d551
}

.slick-dots li button:before {
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  position: absolute;
  top: 9px;
  left: 9px;
  content: "";
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%
}

.slick-dots li.slick-active button:before {
  background: #f4d551;
  -webkit-transform: scale(1.3);
  transform: scale(1.3)
}

@media screen and (max-width:46em) {
  .slick-dots {
    bottom: 9px;
    text-align: left;
    padding: 0 130px 0 10px
  }

  .slick-dots li {
    height: 25px;
    width: 25px
  }

  .slick-dots li button {
    height: 25px;
    width: 25px
  }
}

.mCustomScrollbar {
  -ms-touch-action: pinch-zoom;
  touch-action: pinch-zoom
}

.mCustomScrollbar.mCS_no_scrollbar,
.mCustomScrollbar.mCS_touch_action {
  -ms-touch-action: auto;
  touch-action: auto
}

.mCustomScrollBox {
  position: relative;
  overflow: hidden;
  height: 100%;
  max-width: 100%;
  outline: none;
  direction: ltr
}

.mCSB_container {
  overflow: hidden;
  width: auto;
  height: auto
}

.mCSB_inside>.mCSB_container {
  margin-right: 30px
}

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0
}

.mCS-dir-rtl>.mCSB_inside>.mCSB_container {
  margin-right: 0;
  margin-left: 30px
}

.mCS-dir-rtl>.mCSB_inside>.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-left: 0
}

.mCSB_scrollTools {
  position: absolute;
  width: 16px;
  height: auto;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0
}

.mCSB_outside+.mCSB_scrollTools {
  right: -26px
}

.mCS-dir-rtl>.mCSB_inside>.mCSB_scrollTools,
.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools {
  right: auto;
  left: 0
}

.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools {
  left: -26px
}

.mCSB_scrollTools .mCSB_draggerContainer {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto
}

.mCSB_scrollTools a+.mCSB_draggerContainer {
  margin: 20px 0
}

.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  height: 100%;
  margin: 0 auto
}

.mCSB_scrollTools .mCSB_dragger {
  cursor: pointer;
  width: 100%;
  height: 30px;
  z-index: 1
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  position: relative;
  width: 4px;
  height: 100%;
  margin: 0 auto;
  text-align: center
}

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 12px
}

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 8px
}

.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonUp {
  display: block;
  position: absolute;
  height: 20px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer
}

.mCSB_scrollTools .mCSB_buttonDown {
  bottom: 0
}

.mCSB_horizontal.mCSB_inside>.mCSB_container {
  margin-right: 0;
  margin-bottom: 30px
}

.mCSB_horizontal.mCSB_outside>.mCSB_container {
  min-height: 100%
}

.mCSB_horizontal>.mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  width: auto;
  height: 16px;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0
}

.mCustomScrollBox+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox+.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: -26px
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal a+.mCSB_draggerContainer {
  margin: 0 20px
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 2px;
  margin: 7px 0
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 30px;
  height: 100%;
  left: 0
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto
}

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  margin: 2px auto
}

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 8px;
  margin: 4px 0
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  display: block;
  position: absolute;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
  left: 0
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  right: 0
}

.mCSB_container_wrapper {
  position: absolute;
  height: auto;
  width: auto;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: 30px;
  margin-bottom: 30px
}

.mCSB_container_wrapper>.mCSB_container {
  padding-right: 30px;
  padding-bottom: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 20px
}

.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 20px
}

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden+.mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 0
}

.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools~.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 0
}

.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 20px
}

.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools~.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 0
}

.mCS-dir-rtl>.mCSB_inside>.mCSB_container_wrapper {
  margin-right: 0;
  margin-left: 30px
}

.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden>.mCSB_container {
  padding-right: 0
}

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden>.mCSB_container {
  padding-bottom: 0
}

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0;
  margin-left: 0
}

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0
}

.mCSB_scrollTools,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight,
.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  -webkit-transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out
}

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail {
  -webkit-transition: width 0.2s ease-out 0.2s, height 0.2s ease-out 0.2s, margin-left 0.2s ease-out 0.2s, margin-right 0.2s ease-out 0.2s, margin-top 0.2s ease-out 0.2s, margin-bottom 0.2s ease-out 0.2s, opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
  transition: width 0.2s ease-out 0.2s, height 0.2s ease-out 0.2s, margin-left 0.2s ease-out 0.2s, margin-right 0.2s ease-out 0.2s, margin-top 0.2s ease-out 0.2s, margin-bottom 0.2s ease-out 0.2s, opacity 0.2s ease-in-out, background-color 0.2s ease-in-out
}

.mCS-autoHide>.mCustomScrollBox>.mCSB_scrollTools,
.mCS-autoHide>.mCustomScrollBox~.mCSB_scrollTools {
  opacity: 0
}

.mCS-autoHide:hover>.mCustomScrollBox>.mCSB_scrollTools,
.mCS-autoHide:hover>.mCustomScrollBox~.mCSB_scrollTools,
.mCustomScrollbar>.mCustomScrollBox>.mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollbar>.mCustomScrollBox~.mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollBox:hover>.mCSB_scrollTools,
.mCustomScrollBox:hover~.mCSB_scrollTools {
  opacity: 1
}

.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #eee
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #4065a2
}

.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight,
.mCSB_scrollTools .mCSB_buttonUp {
  background-image: url(mCSB_buttons.png);
  background-repeat: no-repeat;
  opacity: 0.4
}

.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 0
}

.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -20px
}

.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -40px
}

.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -56px
}

.mCSB_scrollTools .mCSB_buttonDown:hover,
.mCSB_scrollTools .mCSB_buttonLeft:hover,
.mCSB_scrollTools .mCSB_buttonRight:hover,
.mCSB_scrollTools .mCSB_buttonUp:hover {
  opacity: 0.75
}

.mCSB_scrollTools .mCSB_buttonDown:active,
.mCSB_scrollTools .mCSB_buttonLeft:active,
.mCSB_scrollTools .mCSB_buttonRight:active,
.mCSB_scrollTools .mCSB_buttonUp:active {
  opacity: 0.9
}


/**2022 カテゴリーカラー統一対応**/
.l-header .gnav>ul>li .megamenu {
  background-color: #fff;
}

.l-header .gnav>ul>li>a.is-active+.megamenu {
  box-shadow: 0 0px 10px 0px rgba(0, 0, 0, 0.3);
}

.l-header .gnav>ul>li .megamenu__inner a {
  color: #000;
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--outline::before {
  background-image: url("/assets/img/common/icon-megamenu-outline-s_blue.svg");
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--ir::before {
  background-image: url("/assets/img/common/icon-megamenu-ir-s_blue.svg");
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--csr::before {
  background-image: url("/assets/img/common/icon-megamenu-csr-s_blue.svg");
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--subaruness::before {
  background-image: url("/assets/img/common/icon-megamenu-subaruness-s_blue.svg");
  background-color: transparent;
  background-size: contain;
  border-radius: 0;
}

.l-header .gnav>ul>li .megamenu__inner .dir-top.icon--recruit::before {
  background-image: url("/assets/img/common/icon-megamenu-recruit-s_blue.svg");
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a {
  color: #000;
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a::before {
  background-color: rgba(0, 0, 0, 0.3);
}

.l-header .gnav>ul>li .megamenu__inner .dir-top a span {
  background-image: url("/assets/img/common/icon-link-arrow-s_blue.svg");
  color: #00266e;
  border: 1px solid #00266e;
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption::before {
  background-image: url("/assets/img/common/icon-link-circle-s_blue.svg");
}

.l-header .gnav>ul>li .megamenu__inner figure figcaption::after {
  background-color: rgba(0, 0, 0, 0.3);
}

.l-header .gnav>ul>li .megamenu__inner .linklist li a::after {
  background-color: rgba(0, 0, 0, 0.3);
}

.l-header .gnav>ul>li .megamenu__close::after,
.l-header .gnav>ul>li .megamenu__close::before {
  background-color: #00266e;
}

.l-header .header__tools .lang-switch li .active,
.l-header .header__tools .lang-switch li a::before,
.l-footer__lower .pagetop-fixed a,
.l-footer__lower .pagetop a,
.pageheader,
.pageheader.pageheader--alliance,
.pageheader.pageheader--quality,
.component-indexlinks.is-outline .component-indexlinks__text,
.component-subarunessGrid {
  background-color: #00266e;
}

.pageheader--csr:before,
.pageheader--ir:before,
.pageheader--outline:before,
.pageheader--products:before,
.pageheader--recruit:before,
.pageheader--subaruness:before,
.pageheader.pageheader--alliance:before,
.pageheader.pageheader--quality:before {
  background-color: transparent;
  margin-right: 10px;
  border-radius: 0;
}

.pageheader--csr:before {
  background-image: url("/assets/img/common/icon-category-csr_wht.svg");
}

.pageheader--ir:before {
  background-image: url("/assets/img/common/icon-category-ir_wht.svg");
}

.pageheader--outline:before {
  background-image: url("/assets/img/common/icon-category-outline_wht.svg");
}

.pageheader--products:before {
  background-image: url("/assets/img/common/icon-category-products_wht.svg");
}

.pageheader--recruit:before {
  background-image: url("/assets/img/common/icon-category-recruit_wht.svg");
}

.pageheader--subaruness:before {
  background-image: url("/assets/img/common/icon-category-subaruness_wht.svg");
}

.pageheader.pageheader--alliance:before {
  background-image: url("/assets/img/common/icon-category-alliance_wht.svg");
}

.pageheader.pageheader--quality:before {
  background-image: url("/assets/img/common/icon-category-quality_wht.svg");
}

.component-indexlinks.is-outline a:hover .btn-white {
  color: #00266e;
}

.component-indexlinks.is-outline .component-indexlinks__text:after {
  border-right-color: #00266e;
}

@media screen and (max-width: 46em) {
  .component-indexlinks.is-outline .component-indexlinks__text:after {
    border-right-color: transparent;
    border-bottom-color: #00266e;
  }
}

.component-indexlinks.is-outline.is-reverse .component-indexlinks__text::after {
  border-left-color: #00266e;
}

@media screen and (max-width: 46em) {
  .component-indexlinks.is-outline.is-reverse .component-indexlinks__text::after {
    border-left-color: transparent;
  }
}

@media screen and (min-width: 46.0625em) {
  .pc-menu-open .overlay {
    opacity: 1;
    visibility: visible;
  }
}


/**SP時、メニューボタンに「MENU」の文字を追加**/
@media screen and (max-width: 46em) {
  .l-header .menu-btn span:first-of-type {
    top: 16px;
  }

  .l-header .menu-btn span:nth-of-type(2) {
    top: 22px;
  }

  .l-header .menu-btn span:nth-of-type(3) {
    bottom: 30px;
  }

  .l-header .menu-btn .menu-text {
    background: none;
    width: 100%;
    height: auto;
    margin-top: 0;
    font-size: 10px;
    color: #4065a2;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0;
    line-height: 1;
    bottom: 13px;
    left: 0;
  }
}


/**20220907 リコール等情報対象車両検索のボタンサイズを調整**/
.component-recallSearch__text {
  flex-basis: 48.4210526316%;
}

.component-recallSearch__btn {
  flex-basis: 51.5789473684%;
}

.component-recallSearch__btn .timerLink {
  display: block;
}

@media screen and (min-width: 46.0625em) {
  .component-recallSearch__btn .timerLink .btn-color {
    padding: 26px 30px 27px;
    font-size: 2.0rem;
  }
}

@media screen and (max-width: 46em) {
  .component-recallSearch__btn .timerLink .btn-color {
    padding-top: 21px;
    padding-bottom: 22px;
  }
}


/* 20230418 added */
sub {
  vertical-align: sub;
  font-size: smaller;
}


