@charset "UTF-8";

:root {
  --font-size: 16px;
  --remark-size: 14px;
  --color-primary: #00a8a9;
  --color-primary-dark: #008486;
  --color-secondary: #d35345;
  --color-tertiary: #e39300;
  --color: #333;
  --white: #fff;
  --bg-color: #fff;
  --bg-color-dark: #f5f5f2;
  --border: 1px solid #ddd;
  --border-radius-S: 5px;
  --border-radius-M: 10px;
  --border-radius-L: 15px;
  --transition: all .5s ease;
}

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */
}

*,
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

summary {
  display: list-item;
  /* Add the correct display in all browsers */
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type="number"] {
  width: auto;
  /* Firefox 36+ */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */
}

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */
}

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  line-height: 1;
  vertical-align: top;
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~="screen"] {
    display: inherit;
  }

  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

h1, h2, h3, h4, h5 {
  font-weight: normal;
}

/* MS Form */
input::-ms-clear {
  visibility: hidden;
}

input::-ms-reveal {
  visibility: hidden;
}

/* ===== Base Styles ===== */
html {
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  text-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
  font-size: 62.5%;
}

html.-localNavOpened {
  overflow: hidden;
}

html.-gNavOpened {
  overflow: hidden;
}

html.-hmenuOpened {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

body {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic Pro", Meiryo, Arial, sans-serif !important;
  line-height: 1.7;
  color: #333;
  background-color: #fff;
}

/* ===== Basic Link Color ===== */
a {
  cursor: pointer;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
}

a:link {
  color: #008486;
  text-decoration: none;
}

a:visited {
  color: #471f99;
  text-decoration: none;
}

a:hover, a:focus {
  color: #00a8a9;
  text-decoration: none;
}

a:active {
  color: #008486;
  text-decoration: none;
}

a,
img,
input,
svg,
*::before,
*::after {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

a:hover img,
a:hover input {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/*
  This will hide the focus indicator if the element receives focus via the mouse,
  but it will still show up on keyboard focus.
*/
.js-focus-visible :focus:not(.focus-visible) {
  outline: none;
}

/* ===== SiteContent ===== */
#SiteWrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
  height: auto;
}

@media print, screen and (min-width: 960px) {
  #SiteWrap.-fixed #SiteWrap__header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    overflow-y: auto;
    background: rgba(51, 51, 51, 0.7);
  }
}

@media print, screen and (min-width: 960px) {
  #SiteWrap__header {
    background-color: #fff;
    -webkit-transition: -webkit-transform .5s ease .2s;
    transition: -webkit-transform .5s ease .2s;
    transition: transform .5s ease .2s;
    transition: transform .5s ease .2s, -webkit-transform .5s ease .2s;
  }
}

@media print, screen and (min-width: 960px) {
  #SiteWrap__header.-scrollDown {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

#SiteWrap__header.-verSimple {
  position: inherit;
  z-index: 100;
}

@media print, screen and (min-width: 960px) {
  #SiteWrap__body {
    padding: 60px 0;
  }
}


#SiteWrap__body {
  max-width: 1600px;
  font-size: 1.6rem;
}

#SiteContent__main {
  padding: 32px 32px 40px;
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn1Min .SiteContent {
    padding-top: 68px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn1Min .SiteContent {
    margin-top: 26px;
  }
}

.SiteContentTypeColumn1Min .SiteContent.-hero {
  margin-top: 0;
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeNewsArticle .SiteContent {
    padding-top: 68px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeNewsArticle .SiteContent {
    margin-top: 44px;
  }
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn1Max .SiteContent {
    padding-top: 68px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn1Max .SiteContent {
    margin-top: 54px;
  }
}

@media print, screen and (min-width: 560px) {

  .SiteContentTypeColumn1Max.-hero .SiteContent,
  .SiteContentTypeColumn1Min.-hero .SiteContent {
    margin-top: 0;
    padding-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn2 .SiteContent {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse;
    flex-flow: row-reverse;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1600px;
    padding: 68px 50px 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn2 .SiteContent {
    margin-top: 54px;
  }
}


@media only screen and (max-width: 559px) {
  .SiteContentTypeColumn1Min #SiteContent__main {
    padding: 60px 0 0;
  }
}

@media print, screen and (min-width: 560px) {
  .SiteContentTypeColumn1Max #SiteContent__main {
    max-width: 1600px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn1Max #SiteContent__main {
    padding: 0 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn1Max #SiteContent__main {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .SiteContentTypeColumn1Max #SiteContent__main {
    padding: 56px 15px 0;
  }
}

.SiteContentTypeColumn1Max+.SiteContent__related {
  margin: 0 auto;
  max-width: 1600px;
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn1Max+.SiteContent__related {
    padding: 0 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn1Max+.SiteContent__related {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .SiteContentTypeColumn1Max+.SiteContent__related {
    padding: 0 15px;
  }
}

.SiteContentTypeColumn2 #SiteContent__main {
  padding: 0 0 0 5%;
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn2 #SiteContent__main {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 70%;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SiteContentTypeColumn2 #SiteContent__main {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .SiteContentTypeColumn2 #SiteContent__main {
    padding: 56px 15px 0;
  }
}

@media only screen and (max-width: 559px) {

  .SiteContentTypeColumn1Max.-hero #SiteContent__main,
  .SiteContentTypeColumn1Min.-hero #SiteContent__main {
    padding: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .SiteContentTypeColumn1Max.-hero #SiteContent__main {
    padding: 0;
  }
}


@media only screen and (max-width: 559px) {
  .SiteContentTypeNewsArticle #SiteContent__main {
    padding: 52px 0 0;
  }
}

.SiteWrap__footer {
  position: relative;
}

/* ===== Header ===== */
#Header {
  width: 100%;
  border-bottom: 1px solid #dedede;
  background-color: #fff;
}

#Header.-hmenuFixed {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 100;
}

.Header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 28px;
  height: 80px;
}

@media only screen and (max-width: 959px) {
  .Header__inner {
    height: 80px;
  }
}

.HeaderLogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.HeaderLogo__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.HeaderLogo__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 20px;
  padding-left: 18px;
  color: #666;
  font-size: 1.4rem;
  /*font-weight: bold;*/
  vertical-align: middle;
  position: relative;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

@media only screen and (max-width: 959px) {
  .HeaderLogo__text {
    margin-left: 12px;
    padding-left: 12px;
    font-size: 1.2rem;
  }
}

.HeaderLogo__text::after {
  content: "";
  display: block;
  width: 1px;
  height: 42px;
  background-color: #e5e5e5;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

@media only screen and (max-width: 959px) {
  .HeaderLogo__text::after {
    height: 36px;
  }
}



.layerGroup {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: auto;
  background: #fff;
}

.layerGroup.-show {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  z-index: 3;
  -webkit-transition: z-index .9s, -webkit-transform .8s;
  transition: z-index .9s, -webkit-transform .8s;
  transition: transform .8s, z-index .9s;
  transition: transform .8s, z-index .9s, -webkit-transform .8s;
}

.layerGroup.-hide {
  -webkit-transition: z-index 1s, -webkit-transform .7s;
  transition: z-index 1s, -webkit-transform .7s;
  transition: transform .7s, z-index 1s;
  transition: transform .7s, z-index 1s, -webkit-transform .7s;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.layerGroup.-preHide {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.layerGroup button {
  -webkit-transition: opacity .6s ease-in-out;
  transition: opacity .6s ease-in-out;
}

.layerGroup button:hover {
  opacity: .8;
}

.layerGroupFirst {
  position: static;
  list-style: none;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .layerGroupFirst {
    padding: 32px 28px 0;
  }
}

@media only screen and (max-width: 559px) {
  .layerGroupFirst {
    padding: 32px 15px 0;
  }
}

.layerGroupFirst li:last-child {
  border-bottom: 1px solid #dedede;
}

.layerGroupFirst li:last-child .layerGroup__nextButton {
  margin-bottom: 22px;
}

.layerGroupLower {
  padding: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

@media print, screen and (min-width: 960px) {
  .layerGroupLower .GNavLower__item {
    margin-top: 13px;
  }
}

@media only screen and (max-width: 959px) {
  .layerGroupLower .GNavLower__item:not(:first-child) {
    margin-top: 13px;
  }
}

.layerGroupLower__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: .03em;
}

.layerGroupLower__body {
  padding: 30px 30px 34px;
  background-color: #f1f1f1;
}

.layerGroupLower__list {
  list-style: none;
}

.layerGroupLower__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  width: 100%;
  padding: 24px 30px 21px;
  color: #333;
}

.layerGroupLower__top a {
  display: inline-block;
  position: relative;
  padding-left: 25px;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.layerGroupLower__top a:hover, .layerGroupLower__top a:focus {
  cursor: pointer;
  opacity: .8;
}

.layerGroupLower__top a::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: .45em;
  left: 0;
  width: 0;
  height: 0;
  margin: 0 16px 1px 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.layerGroupLower__top a span {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: normal;
  color: #008486;
}

.layerGroup__nextButton {
  position: relative;
  width: 100%;
  padding: 15px 20px 15px 24px;
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: .03em;
  background: url("/assets/images/icons/folder.svg") 100% 50% no-repeat;
  background-size: 27px 20px;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.layerGroup__nextButton:hover, .layerGroup__nextButton:focus {
  cursor: pointer;
  opacity: .8;
}

.layerGroup__nextButton::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 7px;
  height: 8px;
  margin-top: -5px;
  vertical-align: baseline;
  background: url("/assets/images/icons/arrow_breadcrumb.svg") 0 0 no-repeat;
}

.layerGroup__nextButton span {
  color: #333;
}

.layerGroup__nextButton.-gnavCurrent span {
  color: #999;
}

.layerGroup__backButton {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  height: 44px;
  padding: 0 30px 0 57px;
  text-align: left;
  color: #008486;
  background: #dedede url("/assets/images/icons/arrow_back.svg") 30px 50% no-repeat;
  background-size: 9px 9px;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.layerGroup__backButton:hover, .layerGroup__backButton:focus {
  cursor: pointer;
  opacity: .8;
}

/* ===== Bredcrumb ===== */
#Breadcrumb {
  width: 100%;
  max-width: 1600px;
  z-index: 3;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  #Breadcrumb {
    padding: 16px 0 0 28px;
  }
}

@media print, screen and (min-width: 960px) {
  body.-hero #Breadcrumb {
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
}

@media print, screen and (min-width: 1601px) {
  #Breadcrumb {
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 1601px) {
  body.-hero #Breadcrumb {
    margin: 0 calc(-1 * (99vw - 100%) / 2);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #Breadcrumb {
    padding: 9px 28px 10px 28px;
    background-color: #fff;
  }
}

@media only screen and (max-width: 559px) {
  #Breadcrumb {
    display: none;
  }
}

@media print, screen and (min-width: 1601px) {
  #Breadcrumb _:-ms-lang(x), #Breadcrumb {
    overflow: hidden;
  }
}

.Breadcrumb__inner {
  position: relative;
  display: inline;
  letter-spacing: -.3em;
  list-style-type: none;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #fff;
}

@media print, screen and (min-width: 960px) {
  .Breadcrumb__inner {
    padding: 2px 14px 4px 0;
  }
}

.Breadcrumb__inner::before {
  content: '';
  position: absolute;
  top: 0;
  left: -28px;
  width: 29px;
  height: 100%;
  background-color: #fff;
}

.Breadcrumb__inner li {
  display: inline;
  vertical-align: middle;
  letter-spacing: normal;
  position: relative;
  margin-right: 9px;
}

.Breadcrumb__inner li:not(:first-child) {
  padding-left: 15px;
  background: url(/assets/images/icons/arrow_breadcrumb.svg) 0 50% no-repeat;
  background-size: 7px 7px;
}

.Breadcrumb__inner li a {
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Breadcrumb__inner li a:hover {
  cursor: pointer;
  opacity: .8;
}

.Breadcrumb__inner li a span {
  font-weight: normal;
}

.Breadcrumb__inner li span {
  font-weight: bold;
  color: #333;
}

/* ===== Hero ===== */
.Hero {
  position: relative;
  height: auto;
  line-height: 0;
  z-index: 2;
  overflow: hidden;
  margin: 0 auto;
}

@media print, screen and (min-width: 960px) {
  .Hero {
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 1601px) {
  .Hero {
    margin: 0 calc(-1 * (99vw - 100%) / 2);
  }
}

@media only screen and (max-width: 959px) {
  .Hero {
    margin-top: 0 !important;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero~.CategoryIndex {
    margin-top: 58px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero~.CategoryIndex {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero~.CategoryIndex {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__withLead.-regular+.CategoryIndex {
    margin-top: 50px;
  }
}

.Hero.-layerArticle {
  position: relative;
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle {
    padding-bottom: 32px;
    background: transparent -webkit-gradient(linear, left top, right top, from(#008486), color-stop(55%, #008486), to(#009194)) 0% 0% no-repeat;
    background: transparent -webkit-linear-gradient(left, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
    background: transparent linear-gradient(90deg, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 20%;
    height: 100%;
    background-color: #fff;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle.-withLead {
    padding-bottom: 0;
  }
}

.Hero.-layerArticle.-withLead::after {
  display: none;
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle .Hero__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 2;
    padding-bottom: 47px;
  }
}

.Hero.-layerArticle .Hero__body {
  text-align: left;
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle .Hero__body {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 45%;
    height: 100%;
    margin-right: -5%;
    padding-top: 69px;
    z-index: 3;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero.-layerArticle .Hero__body {
    padding: 60px 30px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero.-layerArticle .Hero__body {
    padding: 40px 15px;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle .Hero__head {
    padding: 22px 60px 35px;
    background-color: #fff;
  }
}

.Hero.-layerArticle .Hero__headLead,
.Hero.-layerArticle .Hero__headShoulder,
.Hero.-layerArticle .Hero__headSub {
  color: #333;
}

.Hero.-layerArticle .Hero__headBody {
  text-align: left;
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle .Hero__img {
    width: 65%;
    height: 100%;
  }
}

.Hero.-layerArticle .Hero__withLead {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 959px) {
  .Hero.-layerArticle .Hero__withLead {
    background: transparent -webkit-gradient(linear, left top, right top, from(#008486), color-stop(55%, #008486), to(#009194)) 0% 0% no-repeat;
    background: transparent -webkit-linear-gradient(left, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
    background: transparent linear-gradient(90deg, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-layerArticle .Hero__withLead::after {
    content: '';
    display: inline-block;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin: -100% -50vw 0 0;
    background-color: #fff;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull {
    height: calc(100vh - 134px);
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-viewportFull {
    width: 100%;
  }
}

.Hero.-viewportFull .Hero__inner {
  min-height: 200px;
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull .Hero__inner {
    height: 100%;
  }
}

.Hero.-viewportFull .Hero__body {
  z-index: 2;
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull .Hero__body {
    max-width: 500px;
    padding: 54px 90px 57px;
    background-color: rgba(255, 255, 255, 0.86);
  }
}

@media print, screen and (min-width: 1100px) {
  .Hero.-viewportFull .Hero__body {
    padding: 54px 60px 57px;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-viewportFull .Hero__body {
    background-color: #fff;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull .Hero__img {
    display: none;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-viewportFull .Hero__img img {
    width: 100%;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-viewportFull .Hero__scroll {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull.-sustaina .Hero__inner {
    background: url("/sustainability/images/img_hero.jpg") no-repeat 50% 50%;
    background-size: cover;
  }
}

.Hero.-viewportFull.-sustaina .Hero__img {
  position: relative;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero.-viewportFull.-sustaina .Hero__img {
    height: 380px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero.-viewportFull.-sustaina .Hero__img {
    height: 220px;
  }
}

.Hero.-viewportFull.-sustaina .Hero__img img {
  position: absolute;
  bottom: 50%;
  right: 0;
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
  height: auto;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero.-viewportFull.-sustaina .Hero__img img {
    width: 110%;
  }
}

@media only screen and (max-width: 559px) {
  .Hero.-viewportFull.-sustaina .Hero__img img {
    width: 134%;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull.-innovation .Hero__inner {
    background: url("/innovation/images/img_hero.jpg") no-repeat 0 100%;
    background-size: cover;
  }
}

.Hero.-viewportFull.-innovation .Hero__img {
  position: relative;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero.-viewportFull.-innovation .Hero__img {
    height: 380px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero.-viewportFull.-innovation .Hero__img {
    height: 220px;
  }
}

.Hero.-viewportFull.-innovation .Hero__img img {
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  height: auto;
}

@media print, screen and (max-width: 959px) and (min-width: 700px) {
  .Hero.-viewportFull.-innovation .Hero__img img {
    width: 100%;
  }
}

@media print, screen and (max-width: 699px) and (min-width: 560px) {
  .Hero.-viewportFull.-innovation .Hero__img img {
    width: 122%;
  }
}

@media only screen and (max-width: 599px) {
  .Hero.-viewportFull.-innovation .Hero__img img {
    width: 125%;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-viewportFull.-design .Hero__inner {
    background: url("/innovation/design/images/img_hero.jpg") no-repeat 50% 50%;
    background-size: cover;
  }
}

.Hero.-carousel .Hero__inner::before {
  display: none;
}

.Hero.-carousel img {
  width: 100%;
}

.Hero.-carouselRow .Hero__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 960px) {
  .Hero.-carouselRow .Hero__inner {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    z-index: 2;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .Hero__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: #f5f5f5;
  }
}

.Hero.-carouselRow .-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

@media print, screen and (min-width: 960px) {
  .Hero.-carouselRow .Hero__img {
    width: 100%;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .Hero__img {
    opacity: 2;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .HeroImgList__item {
    background-color: transparent;
  }
}

.Hero.-carouselRow .HeroImgList__itemInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .HeroImgList__itemInner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: transparent;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero.-carouselRow .HeroImgList__body {
    position: relative;
    width: 45%;
    background: transparent -webkit-gradient(linear, left top, right top, from(#008486), color-stop(55%, #008486), to(#009194)) 0% 0% no-repeat;
    background: transparent -webkit-linear-gradient(left, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
    background: transparent linear-gradient(90deg, #008486 0%, #008486 55%, #009194 100%) 0% 0% no-repeat;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .HeroImgList__body {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
  }
}

.Hero.-carouselRow .HeroImgList__text {
  margin-top: 15px;
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
}

@media print, screen and (max-width: 1100px) and (min-width: 960px) {
  .Hero.-carouselRow .HeroImgList__text {
    margin-top: 10px;
    font-size: 1.6rem;
  }
}

.Hero.-carouselRow .HeroImgList__textSub {
  margin-top: 10px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

@media print, screen and (max-width: 1100px) and (min-width: 960px) {
  .Hero.-carouselRow .HeroImgList__textSub {
    margin-top: 5px;
  }
}

.Hero.-carouselRow .HeroImgList__link {
  color: #008486;
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.7;
}

@media print, screen and (max-width: 1100px) and (min-width: 960px) {
  .Hero.-carouselRow .HeroImgList__link {
    margin-top: 0;
  }
}

.Hero.-carouselRow .HeroImgList__link a {
  display: block;
  width: 100%;
  padding: 5px 10px 5px 0;
  color: #008486;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Hero.-carouselRow .HeroImgList__link a:hover {
  opacity: .8;
}

.Hero.-carouselRow .HeroImgList__link span {
  position: relative;
  padding-left: 22px;
}

.Hero.-carouselRow .HeroImgList__link span::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .38em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

@media print, screen and (min-width: 960px) {
  .Hero.-carouselRow .HeroImgList__image {
    width: 65%;
  }
}

@media only screen and (max-width: 959px) {
  .Hero.-carouselRow .HeroImgList__image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    height: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero__inner {
    min-height: 240px;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__inner {
    min-height: 120px;
  }
}

@media only screen and (max-width: 959px) {

  .-layer02 .Hero__inner,
  .-layer02withLead .Hero__inner,
  .-layer03 .Hero__inner,
  .-layer03withLead .Hero__inner,
  .-layerArticle .Hero__inner,
  .-viewportFull .Hero__inner {
    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%;
  }
}

@media print, screen and (min-width: 960px) {

  .-layer02 .Hero__inner,
  .-layer02withLead .Hero__inner,
  .-layer03 .Hero__inner,
  .-layer03withLead .Hero__inner {
    display: block;
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {

  .-layer02 .Hero__inner::before,
  .-layer02withLead .Hero__inner::before,
  .-layer03 .Hero__inner::before,
  .-layer03withLead .Hero__inner::before {
    content: "";
    display: block;
    padding-top: 34%;
  }
}

@media print, screen and (min-width: 960px) {

  .-layer02 .Hero__inner .Hero__img,
  .-layer02withLead .Hero__inner .Hero__img,
  .-layer03 .Hero__inner .Hero__img,
  .-layer03withLead .Hero__inner .Hero__img {
    position: absolute;
    top: 0;
    display: inline-block;
    height: 100%;
    z-index: 1;
  }
}

@media only screen and (max-width: 959px) {

  .-layer02 .Hero__inner .Hero__img,
  .-layer02withLead .Hero__inner .Hero__img,
  .-layer03 .Hero__inner .Hero__img,
  .-layer03withLead .Hero__inner .Hero__img {
    overflow: hidden;
    position: relative;
  }
}

@media only screen and (max-width: 959px) {

  .-layer02 .Hero__inner .Hero__img img,
  .-layer02withLead .Hero__inner .Hero__img img,
  .-layer03 .Hero__inner .Hero__img img,
  .-layer03withLead .Hero__inner .Hero__img img {
    width: auto;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
  }
}

@media only screen and (max-width: 959px) {
  .-layer02 .Hero__inner .Hero__img {
    padding-top: 40%;
  }
}

@media only screen and (max-width: 959px) {
  .-layer02withLead .Hero__inner .Hero__img {
    padding-top: 50%;
  }
}

@media print, screen and (min-width: 960px) {
  .-layer03 .Hero__inner::before {
    padding-top: 34%;
  }
}

@media only screen and (max-width: 959px) {
  .-layer03 .Hero__inner .Hero__img {
    padding-top: 43%;
  }
}

@media only screen and (max-width: 959px) {
  .-layer03withLead .Hero__inner .Hero__img {
    padding-top: 50%;
  }
}

@media print, screen and (min-width: 960px) {
  .-products .Hero__inner::before {
    padding-top: 39%;
  }
}

@media print, screen and (min-width: 960px) {
  .-carouselColumn1 .Hero__inner::before {
    padding-top: 32%;
  }
}

@media only screen and (max-width: 959px) {
  .-carouselColumn1 .Hero__inner .Hero__img {
    padding-top: 0;
  }
}

.-carouselColumn1 .Hero__inner .Hero__img img {
  position: static;
  width: 100%;
  height: auto;
}

@media print, screen and (min-width: 960px) {
  .-dok .Hero__inner::before {
    padding-top: 48%;
  }
}

.-shoulder .Hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.-shoulder .Hero__head .Hero__headBody {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.-shoulder .Hero__head .Hero__headSub {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin: 0 0 18px 0;
}

.Hero__headBody {
  letter-spacing: .03em;
}

@media only screen and (max-width: 959px) {
  .Hero__headBody {
    text-align: center;
  }
}

@media print, screen and (min-width: 960px) {
  .HeroImgList__bodyInner {
    position: absolute;
    top: 50%;
    left: 0;
    width: 115%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    padding: 22px 60px 35px;
    z-index: 2;
    background-color: #fff;
  }
}

@media only screen and (max-width: 1099px) {
  .HeroImgList__bodyInner {
    padding: 20px 40px 23px;
  }
}

@media only screen and (max-width: 959px) {
  .HeroImgList__bodyInner {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HeroImgList__bodyInner {
    padding: 42px 50px 44px;
  }
}

@media only screen and (max-width: 559px) {
  .HeroImgList__bodyInner {
    padding: 31px 30px 33px;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__body {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    text-align: center;
    background-color: #fff;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero__body {
    padding: 42px 30px 44px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__body {
    padding: 31px 15px 33px;
  }
}

@media print, screen and (min-width: 960px) {

  .-layer02 .Hero__body,
  .-layer02withLead .Hero__body,
  .-layer03 .Hero__body,
  .-layer03withLead .Hero__body,
  .-viewportFull .Hero__body {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    z-index: 2;
  }
}

@media only screen and (min-width: 1601px) {

  .-layer02 .Hero__body,
  .-layer02withLead .Hero__body,
  .-layer03 .Hero__body,
  .Hero__body .-layer03withLead {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

@media print, screen and (min-width: 960px) {
  .-layer02withLead .Hero__body {
    max-width: 500px;
    padding: 54px 90px 57px;
    background-color: rgba(255, 255, 255, 0.86);
  }
}

@media only screen and (max-width: 559px) {
  .-layer02withLead .Hero__body {
    padding: 37px 15px 40px;
  }
}

@media print, screen and (min-width: 960px) {

  .-layer03 .Hero__body,
  .-layer03withLead .Hero__body {
    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;
    width: 40%;
    height: 101%;
    padding: 20px 60px;
    background-color: rgba(255, 255, 255, 0.86);
  }
}

@media print, screen and (max-width: 1200px) {

  .-layer03 .Hero__body,
  .-layer03withLead .Hero__body {
    padding: 42px 40px 44px;
  }
}

@media only screen and (max-width: 559px) {

  .-layer03 .Hero__body,
  .-layer03withLead .Hero__body {
    padding: 37px 15px 33px;
  }
}

.Hero__bodyInner {
  width: 100%;
}

.Hero__headLead,
.Hero__headShoulder,
.Hero__headSub {
  display: inline-block;
  color: #008486;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
}

@media print, screen and (max-width: 1100px) and (min-width: 960px) {

  .Hero__headLead,
  .Hero__headShoulder,
  .Hero__headSub {
    font-size: 1.6rem;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero__headLead {
    margin-top: 19px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero__headLead {
    margin-top: 21px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__headLead {
    margin-top: 17px;
  }
}

.Hero__headLead strong {
  font-weight: normal;
}

@media print, screen and (min-width: 960px) {
  .Hero__headShoulder {
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__headShoulder {
    margin-bottom: 18px;
  }
}

@media print, screen and (min-width: 960px) {
  .Hero__headSub {
    margin-top: 26px;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__headSub {
    margin-top: 24px;
  }
}

.Hero__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  .Hero__text {
    padding: 47px 60px 0;
    color: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__text {
    padding: 20px 0 0;
    color: #333;
  }
}

.Hero__text .List li::before {
  background: #fff;
  border: 1px solid #fff;
}

.Hero__definitionlist {
  text-align: left;
}

.Hero__definitionlistBody {
  margin-top: 12px;
}

.Hero__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.Hero__list li {
  position: relative;
  padding-left: 24px;
}

.Hero__list li:not(:first-child) {
  margin-top: 8px;
}

.Hero__list li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  width: 6px;
  height: 6px;
}

@media print, screen and (min-width: 960px) {
  .Hero__list li::before {
    background: #fff;
    border: 1px solid #fff;
  }
}

@media only screen and (max-width: 959px) {
  .Hero__list li::before {
    background: #333;
    border: 1px solid #333;
  }
}

.Hero__headMain {
  color: #008486;
  line-height: 1.3;
}

@media print, screen and (min-width: 1100px) {
  .Hero__headMain {
    font-size: 4rem;
  }
}

@media only screen and (max-width: 1099px) {
  .Hero__headMain {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__headMain {
    font-size: 2.8rem;
  }
}

@media print, screen and (min-width: 1100px) {
  .-layerArticle .Hero__headMain {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 1099px) {
  .-layerArticle .Hero__headMain {
    font-size: 2.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .-layerArticle .Hero__headMain {
    font-size: 2.1rem;
  }
}

.-layer02 .Hero__headMain {
  background-color: rgba(255, 255, 255, 0.86);
}

@media print, screen and (min-width: 960px) {
  .-layer02 .Hero__headMain {
    display: table;
  }
}

@media only screen and (max-width: 959px) {
  .-layer02 .Hero__headMain {
    display: block;
  }
}

@media print, screen and (min-width: 960px) {
  .-layer02 .Hero__headMain:first-child {
    padding: 24px 50px 26px;
  }
}

@media print, screen and (min-width: 960px) {
  .-layer02 .Hero__headMain:not(:first-child) {
    margin-top: -16px;
    padding: 0 50px 26px;
  }
}

.Hero__img {
  width: 100%;
}

@media only screen and (max-width: 959px) {
  .Hero__img {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    height: 100%;
  }
}

.Hero__img img {
  width: 100%;
}

@media print, screen and (min-width: 960px) {

  .-layer02 .Hero__img img,
  .-layer02withLead .Hero__img img,
  .-layer03 .Hero__img img,
  .-layer03withLead .Hero__img img {
    width: 100%;
    height: auto;
  }
}

@media only screen and (max-width: 959px) {

  .-layer02 .Hero__img img,
  .-layer02withLead .Hero__img img,
  .-layer03 .Hero__img img,
  .-layer03withLead .Hero__img img {
    width: auto;
    height: 100%;
  }
}

.HeroImgList {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.-carousel .HeroImgList__item {
  display: inline-block;
}

.Hero__withLead {
  position: relative;
  margin: 0 auto;
  height: auto;
  color: #fff;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

@media only screen and (max-width: 1600px) {
  .Hero__withLead {
    max-width: 1600px;
  }
}

.Hero__withLead.-regular {
  margin: 0;
  text-align: left;
  color: #333;
  background-color: #fff;
}

@media print, screen and (min-width: 960px) {
  .Hero__withLead.-regular .Hero__withLeadInner {
    padding: 58px 50px 10px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero__withLead.-regular .Hero__withLeadInner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__withLead.-regular .Hero__withLeadInner {
    padding: 0 15px;
  }
}

.Hero__withLead.-oneside, .Hero__withLead.-onesideAdjustHeight {
  margin: 0;
  text-align: left;
}

.Hero__withLead.-oneside .Hero__withLeadInner, .Hero__withLead.-onesideAdjustHeight .Hero__withLeadInner {
  max-width: initial;
}

@media print, screen and (min-width: 960px) {
  .Hero__withLead.-oneside .Hero__withLeadInner, .Hero__withLead.-onesideAdjustHeight .Hero__withLeadInner {
    width: 80%;
  }
}

.Hero__withLead.-oneside .Hero__withLeadTextArea, .Hero__withLead.-onesideAdjustHeight .Hero__withLeadTextArea {
  max-width: 960px;
  margin: 0;
}

.Hero__withLead.-column1, .Hero__withLead.-column2 {
  background-color: #008486;
}

@media print, screen and (min-width: 1601px) {
  .Hero__withLead.-column1, .Hero__withLead.-column2 {
    max-width: initial;
    margin: 0 calc(-1 * (100vw - 100%) / 2);
  }
}

.Hero__withLead.-column1 .Hero__withLeadInner, .Hero__withLead.-column2 .Hero__withLeadInner {
  width: 100%;
  max-width: 100%;
}

@media print, screen and (min-width: 960px) {
  .Hero__withLead.-column1 .Hero__withLeadInner, .Hero__withLead.-column2 .Hero__withLeadInner {
    padding: 57px 50px 67px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero__withLead.-column1 .Hero__withLeadInner, .Hero__withLead.-column2 .Hero__withLeadInner {
    padding: 57px 28px 67px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__withLead.-column1 .Hero__withLeadInner, .Hero__withLead.-column2 .Hero__withLeadInner {
    padding: 57px 15px 67px;
  }
}

.Hero__withLead.-column1 .Hero__withLeadTextArea, .Hero__withLead.-column2 .Hero__withLeadTextArea {
  max-width: 1600px;
}

@media print, screen and (min-width: 960px) {
  .Hero__withLead.-column2 .Hero__withLeadText {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 50px;
    -moz-column-gap: 50px;
    column-gap: 50px;
  }
}

.Hero__withLead .ListLink .Link {
  color: #fff;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Hero__withLead .ListLink .Link::before {
  border-color: transparent transparent transparent #fff;
}

.Hero__withLead .ListLink .Link:hover, .Hero__withLead .ListLink .Link:focus {
  cursor: pointer;
  opacity: .8;
}

.Hero__withLeadInner {
  max-width: 1060px;
  padding: 0 50px 67px;
}

@media only screen and (min-width: 1601px) {
  .Hero__withLeadInner {
    width: 100%;
    padding: 36px 50px 33px calc(((100vw - 1600px) / 2) + 50px);
  }
}

@media only screen and (max-width: 1600px) {
  .Hero__withLeadInner {
    width: 100%;
    max-width: 1060px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Hero__withLeadInner {
    padding: 36px 28px 33px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__withLeadInner {
    padding: 36px 15px 33px;
  }
}

.Hero__withLeadTextArea {
  margin: 0 auto;
}

.Hero__withLeadText+.List,
.Hero__withLeadText+.ListLink {
  margin-top: 24px;
}

@media only screen and (max-width: 559px) {

  .Hero__withLeadText+.List,
  .Hero__withLeadText+.ListLink {
    margin-top: 25px;
  }
}

.Hero__withLeadText+.List+.ListLink,
.Hero__withLeadText+.ListLink+.ListLink {
  margin-top: 24px;
}

@media only screen and (max-width: 559px) {

  .Hero__withLeadText+.List+.ListLink,
  .Hero__withLeadText+.ListLink+.ListLink {
    margin-top: 25px;
  }
}

.Hero__withLeadHeading {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 18px;
}

@media only screen and (max-width: 559px) {
  .Hero__withLeadHeading {
    margin-bottom: 51px;
  }
}

.Hero__withLeadHeading strong {
  font-weight: normal;
}

.Hero__headNumber {
  display: inline-block;
  position: relative;
}

.Hero__headNumber:after {
  content: '';
  position: absolute;
  top: 4px;
  right: -12px;
  display: inline-block;
  width: 2px;
  background-color: #008486;
}

@media print, screen and (min-width: 1100px) {
  .Hero__headNumber:after {
    height: 30px;
  }
}

@media only screen and (max-width: 1099px) {
  .Hero__headNumber:after {
    height: 20px;
  }
}

@media only screen and (max-width: 559px) {
  .Hero__headNumber:after {
    height: 24px;
  }
}

.Hero__scroll {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: 186px;
  height: 40px;
  background-color: #fff;
  z-index: 10;
}

.Hero__scrollText {
  position: relative;
  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: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
  text-align: center;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  color: #008486;
}

.Hero__scrollText::after {
  content: '';
  display: block;
  width: 50%;
  height: 12px;
  border-right: 1px solid #008486;
}

.Hero__scrollText span {
  height: calc(40px - 12px);
  padding: 9px 5px 0;
}

/* ===== Section ===== */
@media print, screen and (min-width: 560px) {

  .HeadingLevel1~.List,
  .HeadingLevel1~.ListLink,
  .HeadingLevel1~.Definitionlist,
  .HeadingLevel1~.NewsList {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .HeadingLevel1~.List,
  .HeadingLevel1~.ListLink,
  .HeadingLevel1~.Definitionlist,
  .HeadingLevel1~.NewsList {
    margin-top: 28px;
  }
}

.HeadingLevel1~.Text,
.HeadingLevel1~.CardGrid,
.HeadingLevel1~.CardHorizontal,
.HeadingLevel1~.Grid,
.HeadingLevel1~.Js-Scrollable__wrap,
.HeadingLevel1~.Box {
  margin-top: 40px;
}

.HeadingLevel1~.Text+.Text.-note,
.HeadingLevel1~.Text+.List.-note,
.HeadingLevel1~.CardGrid+.Text.-note,
.HeadingLevel1~.CardGrid+.List.-note,
.HeadingLevel1~.CardHorizontal+.Text.-note,
.HeadingLevel1~.CardHorizontal+.List.-note,
.HeadingLevel1~.Grid+.Text.-note,
.HeadingLevel1~.Grid+.List.-note,
.HeadingLevel1~.Js-Scrollable__wrap+.Text.-note,
.HeadingLevel1~.Js-Scrollable__wrap+.List.-note,
.HeadingLevel1~.Box+.Text.-note,
.HeadingLevel1~.Box+.List.-note {
  margin-top: 13px;
}

.HeadingLevel1~.CardGrid .Box,
.HeadingLevel1~.CardHorizontal .Box,
.HeadingLevel1~.Grid .Box {
  margin-top: 0;
}

.HeadingLevel1~.CardGrid.-zaxis {
  margin-top: 0;
}

.HeadingLevel1~.Button {
  margin-top: 40px;
}

.SiteContent__sectionInner~.CardGrid,
.SiteContent__sectionInner~.CardHorizontal,
.SiteContent__sectionInner~.Grid {
  margin-top: 0;
}

@media only screen and (max-width: 559px) {

  .SiteContent__sectionInner~.CardGrid,
  .SiteContent__sectionInner~.CardHorizontal,
  .SiteContent__sectionInner~.Grid {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {

  .SectionLevel2 .Text,
  .SectionLevel2 .List,
  .SectionLevel2 .ListLink,
  .SectionLevel2 .Box,
  .SectionLevel2 .Definitionlist,
  .SectionLevel2 .CardGrid,
  .SectionLevel2 .CardHorizontal,
  .SectionLevel2 .Grid,
  .SectionLevel2 .ProductInfo,
  .SectionLevel2 .NewsList,
  .SectionLevel2 .NewsContactBox,
  .SectionLead .Text,
  .SectionLead .List,
  .SectionLead .ListLink,
  .SectionLead .Box,
  .SectionLead .Definitionlist,
  .SectionLead .CardGrid,
  .SectionLead .CardHorizontal,
  .SectionLead .Grid,
  .SectionLead .ProductInfo,
  .SectionLead .NewsList,
  .SectionLead .NewsContactBox {
    margin-top: 35px;
  }
}

@media only screen and (max-width: 559px) {

  .SectionLevel2 .Text,
  .SectionLevel2 .List,
  .SectionLevel2 .ListLink,
  .SectionLevel2 .Box,
  .SectionLevel2 .Definitionlist,
  .SectionLevel2 .CardGrid,
  .SectionLevel2 .CardHorizontal,
  .SectionLevel2 .Grid,
  .SectionLevel2 .ProductInfo,
  .SectionLevel2 .NewsList,
  .SectionLevel2 .NewsContactBox,
  .SectionLead .Text,
  .SectionLead .List,
  .SectionLead .ListLink,
  .SectionLead .Box,
  .SectionLead .Definitionlist,
  .SectionLead .CardGrid,
  .SectionLead .CardHorizontal,
  .SectionLead .Grid,
  .SectionLead .ProductInfo,
  .SectionLead .NewsList,
  .SectionLead .NewsContactBox {
    margin-top: 30px;
  }
}

.SectionLevel2 .CardGrid.-zaxis,
.SectionLead .CardGrid.-zaxis {
  margin-top: 0;
}

.SectionLevel2 .Js-Scrollable__wrap,
.SectionLead .Js-Scrollable__wrap {
  margin-top: 40px;
}

@media print, screen and (min-width: 560px) {

  .SectionLevel2 .Js-Scrollable__wrap+.CardGrid.-zaxis,
  .SectionLead .Js-Scrollable__wrap+.CardGrid.-zaxis {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {

  .SectionLevel2 .Js-Scrollable__wrap+.CardGrid.-zaxis,
  .SectionLead .Js-Scrollable__wrap+.CardGrid.-zaxis {
    margin-top: 30px;
  }
}

.SectionLead {
  margin-top: 110px;
}

@media only screen and (max-width: 559px) {
  .SectionLead {
    margin-top: 60px;
  }
}


@media print, screen and (min-width: 560px) {
  .SectionLevel2 {
    padding-top: 60px;
  }
}

@media only screen and (max-width: 559px) {
  .SectionLevel2 {
    padding-top: 50px;
  }
}

.SectionLevel2#FeaturesArea {
  max-width: initial;
  margin: 0 auto;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 1601px) {
  .SectionLevel2#FeaturesArea {
    margin: -47px calc(-1 * (100vw - 100%) / 2) 0;
  }
}

.NewsArticle__summaryStart+.SectionLevel2 {
  padding-top: 0;
}

.SectionLevel2 .Text {
  max-width: 960px;
}

@media print, screen and (min-width: 560px) {
  .SectionLevel2+.CardGrid {
    padding-top: 60px;
  }
}

@media only screen and (max-width: 559px) {
  .SectionLevel2+.CardGrid {
    padding-top: 50px;
  }
}

@media print, screen and (min-width: 560px) {
  .SectionLevel3 {
    padding-top: 40px;
  }
}

@media only screen and (max-width: 559px) {
  .SectionLevel3 {
    padding-top: 32px;
  }
}

.SectionLevel3 .Text,
.SectionLevel3 .List,
.SectionLevel3 .ListLink,
.SectionLevel3 .Box,
.SectionLevel3 .CardGrid,
.SectionLevel3 .CardHorizontal,
.SectionLevel3 .Grid,
.SectionLevel3 .Definitionlist,
.SectionLevel3 .ProductInfo,
.SectionLevel3 .FeaturesList,
.SectionLevel3 .LineupList,
.SectionLevel3 .OurTechList,
.SectionLevel3 .ApplicationList,
.SectionLevel3 .Text,
.SectionLevel3 .List,
.SectionLevel3 .ListLink,
.SectionLevel3 .Grid {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .SectionLevel3 .Text,
  .SectionLevel3 .List,
  .SectionLevel3 .ListLink,
  .SectionLevel3 .Box,
  .SectionLevel3 .CardGrid,
  .SectionLevel3 .CardHorizontal,
  .SectionLevel3 .Grid,
  .SectionLevel3 .Definitionlist,
  .SectionLevel3 .ProductInfo,
  .SectionLevel3 .FeaturesList,
  .SectionLevel3 .LineupList,
  .SectionLevel3 .OurTechList,
  .SectionLevel3 .ApplicationList,
  .SectionLevel3 .Text,
  .SectionLevel3 .List,
  .SectionLevel3 .ListLink,
  .SectionLevel3 .Grid {
    margin-top: 12px;
  }
}

.SectionLevel3 .Text+.Text,
.SectionLevel3 .Text+.List,
.SectionLevel3 .Text+.ListLink,
.SectionLevel3 .Text+.Box,
.SectionLevel3 .Text+.CardGrid,
.SectionLevel3 .Text+.CardHorizontal,
.SectionLevel3 .Text+.Grid,
.SectionLevel3 .Text+.Definitionlist,
.SectionLevel3 .Text+.ProductInfo,
.SectionLevel3 .Text+.FeaturesList,
.SectionLevel3 .Text+.LineupList,
.SectionLevel3 .Text+.OurTechList,
.SectionLevel3 .Text+.ApplicationList,
.SectionLevel3 .Text+.Text,
.SectionLevel3 .Text+.List,
.SectionLevel3 .Text+.ListLink,
.SectionLevel3 .Text+.Grid,
.SectionLevel3 .List+.Text,
.SectionLevel3 .List+.List,
.SectionLevel3 .List+.ListLink,
.SectionLevel3 .List+.Box,
.SectionLevel3 .List+.CardGrid,
.SectionLevel3 .List+.CardHorizontal,
.SectionLevel3 .List+.Grid,
.SectionLevel3 .List+.Definitionlist,
.SectionLevel3 .List+.ProductInfo,
.SectionLevel3 .List+.FeaturesList,
.SectionLevel3 .List+.LineupList,
.SectionLevel3 .List+.OurTechList,
.SectionLevel3 .List+.ApplicationList,
.SectionLevel3 .List+.Text,
.SectionLevel3 .List+.List,
.SectionLevel3 .List+.ListLink,
.SectionLevel3 .List+.Grid,
.SectionLevel3 .ListLink+.Text,
.SectionLevel3 .ListLink+.List,
.SectionLevel3 .ListLink+.ListLink,
.SectionLevel3 .ListLink+.Box,
.SectionLevel3 .ListLink+.CardGrid,
.SectionLevel3 .ListLink+.CardHorizontal,
.SectionLevel3 .ListLink+.Grid,
.SectionLevel3 .ListLink+.Definitionlist,
.SectionLevel3 .ListLink+.ProductInfo,
.SectionLevel3 .ListLink+.FeaturesList,
.SectionLevel3 .ListLink+.LineupList,
.SectionLevel3 .ListLink+.OurTechList,
.SectionLevel3 .ListLink+.ApplicationList,
.SectionLevel3 .ListLink+.Text,
.SectionLevel3 .ListLink+.List,
.SectionLevel3 .ListLink+.ListLink,
.SectionLevel3 .ListLink+.Grid,
.SectionLevel3 .Box+.Text,
.SectionLevel3 .Box+.List,
.SectionLevel3 .Box+.ListLink,
.SectionLevel3 .Box+.Box,
.SectionLevel3 .Box+.CardGrid,
.SectionLevel3 .Box+.CardHorizontal,
.SectionLevel3 .Box+.Grid,
.SectionLevel3 .Box+.Definitionlist,
.SectionLevel3 .Box+.ProductInfo,
.SectionLevel3 .Box+.FeaturesList,
.SectionLevel3 .Box+.LineupList,
.SectionLevel3 .Box+.OurTechList,
.SectionLevel3 .Box+.ApplicationList,
.SectionLevel3 .Box+.Text,
.SectionLevel3 .Box+.List,
.SectionLevel3 .Box+.ListLink,
.SectionLevel3 .Box+.Grid,
.SectionLevel3 .CardGrid+.Text,
.SectionLevel3 .CardGrid+.List,
.SectionLevel3 .CardGrid+.ListLink,
.SectionLevel3 .CardGrid+.Box,
.SectionLevel3 .CardGrid+.CardGrid,
.SectionLevel3 .CardGrid+.CardHorizontal,
.SectionLevel3 .CardGrid+.Grid,
.SectionLevel3 .CardGrid+.Definitionlist,
.SectionLevel3 .CardGrid+.ProductInfo,
.SectionLevel3 .CardGrid+.FeaturesList,
.SectionLevel3 .CardGrid+.LineupList,
.SectionLevel3 .CardGrid+.OurTechList,
.SectionLevel3 .CardGrid+.ApplicationList,
.SectionLevel3 .CardGrid+.Text,
.SectionLevel3 .CardGrid+.List,
.SectionLevel3 .CardGrid+.ListLink,
.SectionLevel3 .CardGrid+.Grid,
.SectionLevel3 .CardHorizontal+.Text,
.SectionLevel3 .CardHorizontal+.List,
.SectionLevel3 .CardHorizontal+.ListLink,
.SectionLevel3 .CardHorizontal+.Box,
.SectionLevel3 .CardHorizontal+.CardGrid,
.SectionLevel3 .CardHorizontal+.CardHorizontal,
.SectionLevel3 .CardHorizontal+.Grid,
.SectionLevel3 .CardHorizontal+.Definitionlist,
.SectionLevel3 .CardHorizontal+.ProductInfo,
.SectionLevel3 .CardHorizontal+.FeaturesList,
.SectionLevel3 .CardHorizontal+.LineupList,
.SectionLevel3 .CardHorizontal+.OurTechList,
.SectionLevel3 .CardHorizontal+.ApplicationList,
.SectionLevel3 .CardHorizontal+.Text,
.SectionLevel3 .CardHorizontal+.List,
.SectionLevel3 .CardHorizontal+.ListLink,
.SectionLevel3 .CardHorizontal+.Grid,
.SectionLevel3 .Grid+.Text,
.SectionLevel3 .Grid+.List,
.SectionLevel3 .Grid+.ListLink,
.SectionLevel3 .Grid+.Box,
.SectionLevel3 .Grid+.CardGrid,
.SectionLevel3 .Grid+.CardHorizontal,
.SectionLevel3 .Grid+.Grid,
.SectionLevel3 .Grid+.Definitionlist,
.SectionLevel3 .Grid+.ProductInfo,
.SectionLevel3 .Grid+.FeaturesList,
.SectionLevel3 .Grid+.LineupList,
.SectionLevel3 .Grid+.OurTechList,
.SectionLevel3 .Grid+.ApplicationList,
.SectionLevel3 .Grid+.Text,
.SectionLevel3 .Grid+.List,
.SectionLevel3 .Grid+.ListLink,
.SectionLevel3 .Grid+.Grid,
.SectionLevel3 .Definitionlist+.Text,
.SectionLevel3 .Definitionlist+.List,
.SectionLevel3 .Definitionlist+.ListLink,
.SectionLevel3 .Definitionlist+.Box,
.SectionLevel3 .Definitionlist+.CardGrid,
.SectionLevel3 .Definitionlist+.CardHorizontal,
.SectionLevel3 .Definitionlist+.Grid,
.SectionLevel3 .Definitionlist+.Definitionlist,
.SectionLevel3 .Definitionlist+.ProductInfo,
.SectionLevel3 .Definitionlist+.FeaturesList,
.SectionLevel3 .Definitionlist+.LineupList,
.SectionLevel3 .Definitionlist+.OurTechList,
.SectionLevel3 .Definitionlist+.ApplicationList,
.SectionLevel3 .Definitionlist+.Text,
.SectionLevel3 .Definitionlist+.List,
.SectionLevel3 .Definitionlist+.ListLink,
.SectionLevel3 .Definitionlist+.Grid,
.SectionLevel3 .ProductInfo+.Text,
.SectionLevel3 .ProductInfo+.List,
.SectionLevel3 .ProductInfo+.ListLink,
.SectionLevel3 .ProductInfo+.Box,
.SectionLevel3 .ProductInfo+.CardGrid,
.SectionLevel3 .ProductInfo+.CardHorizontal,
.SectionLevel3 .ProductInfo+.Grid,
.SectionLevel3 .ProductInfo+.Definitionlist,
.SectionLevel3 .ProductInfo+.ProductInfo,
.SectionLevel3 .ProductInfo+.FeaturesList,
.SectionLevel3 .ProductInfo+.LineupList,
.SectionLevel3 .ProductInfo+.OurTechList,
.SectionLevel3 .ProductInfo+.ApplicationList,
.SectionLevel3 .ProductInfo+.Text,
.SectionLevel3 .ProductInfo+.List,
.SectionLevel3 .ProductInfo+.ListLink,
.SectionLevel3 .ProductInfo+.Grid,
.SectionLevel3 .FeaturesList+.Text,
.SectionLevel3 .FeaturesList+.List,
.SectionLevel3 .FeaturesList+.ListLink,
.SectionLevel3 .FeaturesList+.Box,
.SectionLevel3 .FeaturesList+.CardGrid,
.SectionLevel3 .FeaturesList+.CardHorizontal,
.SectionLevel3 .FeaturesList+.Grid,
.SectionLevel3 .FeaturesList+.Definitionlist,
.SectionLevel3 .FeaturesList+.ProductInfo,
.SectionLevel3 .FeaturesList+.FeaturesList,
.SectionLevel3 .FeaturesList+.LineupList,
.SectionLevel3 .FeaturesList+.OurTechList,
.SectionLevel3 .FeaturesList+.ApplicationList,
.SectionLevel3 .FeaturesList+.Text,
.SectionLevel3 .FeaturesList+.List,
.SectionLevel3 .FeaturesList+.ListLink,
.SectionLevel3 .FeaturesList+.Grid,
.SectionLevel3 .LineupList+.Text,
.SectionLevel3 .LineupList+.List,
.SectionLevel3 .LineupList+.ListLink,
.SectionLevel3 .LineupList+.Box,
.SectionLevel3 .LineupList+.CardGrid,
.SectionLevel3 .LineupList+.CardHorizontal,
.SectionLevel3 .LineupList+.Grid,
.SectionLevel3 .LineupList+.Definitionlist,
.SectionLevel3 .LineupList+.ProductInfo,
.SectionLevel3 .LineupList+.FeaturesList,
.SectionLevel3 .LineupList+.LineupList,
.SectionLevel3 .LineupList+.OurTechList,
.SectionLevel3 .LineupList+.ApplicationList,
.SectionLevel3 .LineupList+.Text,
.SectionLevel3 .LineupList+.List,
.SectionLevel3 .LineupList+.ListLink,
.SectionLevel3 .LineupList+.Grid,
.SectionLevel3 .OurTechList+.Text,
.SectionLevel3 .OurTechList+.List,
.SectionLevel3 .OurTechList+.ListLink,
.SectionLevel3 .OurTechList+.Box,
.SectionLevel3 .OurTechList+.CardGrid,
.SectionLevel3 .OurTechList+.CardHorizontal,
.SectionLevel3 .OurTechList+.Grid,
.SectionLevel3 .OurTechList+.Definitionlist,
.SectionLevel3 .OurTechList+.ProductInfo,
.SectionLevel3 .OurTechList+.FeaturesList,
.SectionLevel3 .OurTechList+.LineupList,
.SectionLevel3 .OurTechList+.OurTechList,
.SectionLevel3 .OurTechList+.ApplicationList,
.SectionLevel3 .OurTechList+.Text,
.SectionLevel3 .OurTechList+.List,
.SectionLevel3 .OurTechList+.ListLink,
.SectionLevel3 .OurTechList+.Grid,
.SectionLevel3 .ApplicationList+.Text,
.SectionLevel3 .ApplicationList+.List,
.SectionLevel3 .ApplicationList+.ListLink,
.SectionLevel3 .ApplicationList+.Box,
.SectionLevel3 .ApplicationList+.CardGrid,
.SectionLevel3 .ApplicationList+.CardHorizontal,
.SectionLevel3 .ApplicationList+.Grid,
.SectionLevel3 .ApplicationList+.Definitionlist,
.SectionLevel3 .ApplicationList+.ProductInfo,
.SectionLevel3 .ApplicationList+.FeaturesList,
.SectionLevel3 .ApplicationList+.LineupList,
.SectionLevel3 .ApplicationList+.OurTechList,
.SectionLevel3 .ApplicationList+.ApplicationList,
.SectionLevel3 .ApplicationList+.Text,
.SectionLevel3 .ApplicationList+.List,
.SectionLevel3 .ApplicationList+.ListLink,
.SectionLevel3 .ApplicationList+.Grid,
.SectionLevel3 .Text+.Text,
.SectionLevel3 .Text+.List,
.SectionLevel3 .Text+.ListLink,
.SectionLevel3 .Text+.Box,
.SectionLevel3 .Text+.CardGrid,
.SectionLevel3 .Text+.CardHorizontal,
.SectionLevel3 .Text+.Grid,
.SectionLevel3 .Text+.Definitionlist,
.SectionLevel3 .Text+.ProductInfo,
.SectionLevel3 .Text+.FeaturesList,
.SectionLevel3 .Text+.LineupList,
.SectionLevel3 .Text+.OurTechList,
.SectionLevel3 .Text+.ApplicationList,
.SectionLevel3 .Text+.Text,
.SectionLevel3 .Text+.List,
.SectionLevel3 .Text+.ListLink,
.SectionLevel3 .Text+.Grid,
.SectionLevel3 .List+.Text,
.SectionLevel3 .List+.List,
.SectionLevel3 .List+.ListLink,
.SectionLevel3 .List+.Box,
.SectionLevel3 .List+.CardGrid,
.SectionLevel3 .List+.CardHorizontal,
.SectionLevel3 .List+.Grid,
.SectionLevel3 .List+.Definitionlist,
.SectionLevel3 .List+.ProductInfo,
.SectionLevel3 .List+.FeaturesList,
.SectionLevel3 .List+.LineupList,
.SectionLevel3 .List+.OurTechList,
.SectionLevel3 .List+.ApplicationList,
.SectionLevel3 .List+.Text,
.SectionLevel3 .List+.List,
.SectionLevel3 .List+.ListLink,
.SectionLevel3 .List+.Grid,
.SectionLevel3 .ListLink+.Text,
.SectionLevel3 .ListLink+.List,
.SectionLevel3 .ListLink+.ListLink,
.SectionLevel3 .ListLink+.Box,
.SectionLevel3 .ListLink+.CardGrid,
.SectionLevel3 .ListLink+.CardHorizontal,
.SectionLevel3 .ListLink+.Grid,
.SectionLevel3 .ListLink+.Definitionlist,
.SectionLevel3 .ListLink+.ProductInfo,
.SectionLevel3 .ListLink+.FeaturesList,
.SectionLevel3 .ListLink+.LineupList,
.SectionLevel3 .ListLink+.OurTechList,
.SectionLevel3 .ListLink+.ApplicationList,
.SectionLevel3 .ListLink+.Text,
.SectionLevel3 .ListLink+.List,
.SectionLevel3 .ListLink+.ListLink,
.SectionLevel3 .ListLink+.Grid,
.SectionLevel3 .Grid+.Text,
.SectionLevel3 .Grid+.List,
.SectionLevel3 .Grid+.ListLink,
.SectionLevel3 .Grid+.Box,
.SectionLevel3 .Grid+.CardGrid,
.SectionLevel3 .Grid+.CardHorizontal,
.SectionLevel3 .Grid+.Grid,
.SectionLevel3 .Grid+.Definitionlist,
.SectionLevel3 .Grid+.ProductInfo,
.SectionLevel3 .Grid+.FeaturesList,
.SectionLevel3 .Grid+.LineupList,
.SectionLevel3 .Grid+.OurTechList,
.SectionLevel3 .Grid+.ApplicationList,
.SectionLevel3 .Grid+.Text,
.SectionLevel3 .Grid+.List,
.SectionLevel3 .Grid+.ListLink,
.SectionLevel3 .Grid+.Grid {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .SectionLevel3 .Text+.Text,
  .SectionLevel3 .Text+.List,
  .SectionLevel3 .Text+.ListLink,
  .SectionLevel3 .Text+.Box,
  .SectionLevel3 .Text+.CardGrid,
  .SectionLevel3 .Text+.CardHorizontal,
  .SectionLevel3 .Text+.Grid,
  .SectionLevel3 .Text+.Definitionlist,
  .SectionLevel3 .Text+.ProductInfo,
  .SectionLevel3 .Text+.FeaturesList,
  .SectionLevel3 .Text+.LineupList,
  .SectionLevel3 .Text+.OurTechList,
  .SectionLevel3 .Text+.ApplicationList,
  .SectionLevel3 .Text+.Text,
  .SectionLevel3 .Text+.List,
  .SectionLevel3 .Text+.ListLink,
  .SectionLevel3 .Text+.Grid,
  .SectionLevel3 .List+.Text,
  .SectionLevel3 .List+.List,
  .SectionLevel3 .List+.ListLink,
  .SectionLevel3 .List+.Box,
  .SectionLevel3 .List+.CardGrid,
  .SectionLevel3 .List+.CardHorizontal,
  .SectionLevel3 .List+.Grid,
  .SectionLevel3 .List+.Definitionlist,
  .SectionLevel3 .List+.ProductInfo,
  .SectionLevel3 .List+.FeaturesList,
  .SectionLevel3 .List+.LineupList,
  .SectionLevel3 .List+.OurTechList,
  .SectionLevel3 .List+.ApplicationList,
  .SectionLevel3 .List+.Text,
  .SectionLevel3 .List+.List,
  .SectionLevel3 .List+.ListLink,
  .SectionLevel3 .List+.Grid,
  .SectionLevel3 .ListLink+.Text,
  .SectionLevel3 .ListLink+.List,
  .SectionLevel3 .ListLink+.ListLink,
  .SectionLevel3 .ListLink+.Box,
  .SectionLevel3 .ListLink+.CardGrid,
  .SectionLevel3 .ListLink+.CardHorizontal,
  .SectionLevel3 .ListLink+.Grid,
  .SectionLevel3 .ListLink+.Definitionlist,
  .SectionLevel3 .ListLink+.ProductInfo,
  .SectionLevel3 .ListLink+.FeaturesList,
  .SectionLevel3 .ListLink+.LineupList,
  .SectionLevel3 .ListLink+.OurTechList,
  .SectionLevel3 .ListLink+.ApplicationList,
  .SectionLevel3 .ListLink+.Text,
  .SectionLevel3 .ListLink+.List,
  .SectionLevel3 .ListLink+.ListLink,
  .SectionLevel3 .ListLink+.Grid,
  .SectionLevel3 .Box+.Text,
  .SectionLevel3 .Box+.List,
  .SectionLevel3 .Box+.ListLink,
  .SectionLevel3 .Box+.Box,
  .SectionLevel3 .Box+.CardGrid,
  .SectionLevel3 .Box+.CardHorizontal,
  .SectionLevel3 .Box+.Grid,
  .SectionLevel3 .Box+.Definitionlist,
  .SectionLevel3 .Box+.ProductInfo,
  .SectionLevel3 .Box+.FeaturesList,
  .SectionLevel3 .Box+.LineupList,
  .SectionLevel3 .Box+.OurTechList,
  .SectionLevel3 .Box+.ApplicationList,
  .SectionLevel3 .Box+.Text,
  .SectionLevel3 .Box+.List,
  .SectionLevel3 .Box+.ListLink,
  .SectionLevel3 .Box+.Grid,
  .SectionLevel3 .CardGrid+.Text,
  .SectionLevel3 .CardGrid+.List,
  .SectionLevel3 .CardGrid+.ListLink,
  .SectionLevel3 .CardGrid+.Box,
  .SectionLevel3 .CardGrid+.CardGrid,
  .SectionLevel3 .CardGrid+.CardHorizontal,
  .SectionLevel3 .CardGrid+.Grid,
  .SectionLevel3 .CardGrid+.Definitionlist,
  .SectionLevel3 .CardGrid+.ProductInfo,
  .SectionLevel3 .CardGrid+.FeaturesList,
  .SectionLevel3 .CardGrid+.LineupList,
  .SectionLevel3 .CardGrid+.OurTechList,
  .SectionLevel3 .CardGrid+.ApplicationList,
  .SectionLevel3 .CardGrid+.Text,
  .SectionLevel3 .CardGrid+.List,
  .SectionLevel3 .CardGrid+.ListLink,
  .SectionLevel3 .CardGrid+.Grid,
  .SectionLevel3 .CardHorizontal+.Text,
  .SectionLevel3 .CardHorizontal+.List,
  .SectionLevel3 .CardHorizontal+.ListLink,
  .SectionLevel3 .CardHorizontal+.Box,
  .SectionLevel3 .CardHorizontal+.CardGrid,
  .SectionLevel3 .CardHorizontal+.CardHorizontal,
  .SectionLevel3 .CardHorizontal+.Grid,
  .SectionLevel3 .CardHorizontal+.Definitionlist,
  .SectionLevel3 .CardHorizontal+.ProductInfo,
  .SectionLevel3 .CardHorizontal+.FeaturesList,
  .SectionLevel3 .CardHorizontal+.LineupList,
  .SectionLevel3 .CardHorizontal+.OurTechList,
  .SectionLevel3 .CardHorizontal+.ApplicationList,
  .SectionLevel3 .CardHorizontal+.Text,
  .SectionLevel3 .CardHorizontal+.List,
  .SectionLevel3 .CardHorizontal+.ListLink,
  .SectionLevel3 .CardHorizontal+.Grid,
  .SectionLevel3 .Grid+.Text,
  .SectionLevel3 .Grid+.List,
  .SectionLevel3 .Grid+.ListLink,
  .SectionLevel3 .Grid+.Box,
  .SectionLevel3 .Grid+.CardGrid,
  .SectionLevel3 .Grid+.CardHorizontal,
  .SectionLevel3 .Grid+.Grid,
  .SectionLevel3 .Grid+.Definitionlist,
  .SectionLevel3 .Grid+.ProductInfo,
  .SectionLevel3 .Grid+.FeaturesList,
  .SectionLevel3 .Grid+.LineupList,
  .SectionLevel3 .Grid+.OurTechList,
  .SectionLevel3 .Grid+.ApplicationList,
  .SectionLevel3 .Grid+.Text,
  .SectionLevel3 .Grid+.List,
  .SectionLevel3 .Grid+.ListLink,
  .SectionLevel3 .Grid+.Grid,
  .SectionLevel3 .Definitionlist+.Text,
  .SectionLevel3 .Definitionlist+.List,
  .SectionLevel3 .Definitionlist+.ListLink,
  .SectionLevel3 .Definitionlist+.Box,
  .SectionLevel3 .Definitionlist+.CardGrid,
  .SectionLevel3 .Definitionlist+.CardHorizontal,
  .SectionLevel3 .Definitionlist+.Grid,
  .SectionLevel3 .Definitionlist+.Definitionlist,
  .SectionLevel3 .Definitionlist+.ProductInfo,
  .SectionLevel3 .Definitionlist+.FeaturesList,
  .SectionLevel3 .Definitionlist+.LineupList,
  .SectionLevel3 .Definitionlist+.OurTechList,
  .SectionLevel3 .Definitionlist+.ApplicationList,
  .SectionLevel3 .Definitionlist+.Text,
  .SectionLevel3 .Definitionlist+.List,
  .SectionLevel3 .Definitionlist+.ListLink,
  .SectionLevel3 .Definitionlist+.Grid,
  .SectionLevel3 .ProductInfo+.Text,
  .SectionLevel3 .ProductInfo+.List,
  .SectionLevel3 .ProductInfo+.ListLink,
  .SectionLevel3 .ProductInfo+.Box,
  .SectionLevel3 .ProductInfo+.CardGrid,
  .SectionLevel3 .ProductInfo+.CardHorizontal,
  .SectionLevel3 .ProductInfo+.Grid,
  .SectionLevel3 .ProductInfo+.Definitionlist,
  .SectionLevel3 .ProductInfo+.ProductInfo,
  .SectionLevel3 .ProductInfo+.FeaturesList,
  .SectionLevel3 .ProductInfo+.LineupList,
  .SectionLevel3 .ProductInfo+.OurTechList,
  .SectionLevel3 .ProductInfo+.ApplicationList,
  .SectionLevel3 .ProductInfo+.Text,
  .SectionLevel3 .ProductInfo+.List,
  .SectionLevel3 .ProductInfo+.ListLink,
  .SectionLevel3 .ProductInfo+.Grid,
  .SectionLevel3 .FeaturesList+.Text,
  .SectionLevel3 .FeaturesList+.List,
  .SectionLevel3 .FeaturesList+.ListLink,
  .SectionLevel3 .FeaturesList+.Box,
  .SectionLevel3 .FeaturesList+.CardGrid,
  .SectionLevel3 .FeaturesList+.CardHorizontal,
  .SectionLevel3 .FeaturesList+.Grid,
  .SectionLevel3 .FeaturesList+.Definitionlist,
  .SectionLevel3 .FeaturesList+.ProductInfo,
  .SectionLevel3 .FeaturesList+.FeaturesList,
  .SectionLevel3 .FeaturesList+.LineupList,
  .SectionLevel3 .FeaturesList+.OurTechList,
  .SectionLevel3 .FeaturesList+.ApplicationList,
  .SectionLevel3 .FeaturesList+.Text,
  .SectionLevel3 .FeaturesList+.List,
  .SectionLevel3 .FeaturesList+.ListLink,
  .SectionLevel3 .FeaturesList+.Grid,
  .SectionLevel3 .LineupList+.Text,
  .SectionLevel3 .LineupList+.List,
  .SectionLevel3 .LineupList+.ListLink,
  .SectionLevel3 .LineupList+.Box,
  .SectionLevel3 .LineupList+.CardGrid,
  .SectionLevel3 .LineupList+.CardHorizontal,
  .SectionLevel3 .LineupList+.Grid,
  .SectionLevel3 .LineupList+.Definitionlist,
  .SectionLevel3 .LineupList+.ProductInfo,
  .SectionLevel3 .LineupList+.FeaturesList,
  .SectionLevel3 .LineupList+.LineupList,
  .SectionLevel3 .LineupList+.OurTechList,
  .SectionLevel3 .LineupList+.ApplicationList,
  .SectionLevel3 .LineupList+.Text,
  .SectionLevel3 .LineupList+.List,
  .SectionLevel3 .LineupList+.ListLink,
  .SectionLevel3 .LineupList+.Grid,
  .SectionLevel3 .OurTechList+.Text,
  .SectionLevel3 .OurTechList+.List,
  .SectionLevel3 .OurTechList+.ListLink,
  .SectionLevel3 .OurTechList+.Box,
  .SectionLevel3 .OurTechList+.CardGrid,
  .SectionLevel3 .OurTechList+.CardHorizontal,
  .SectionLevel3 .OurTechList+.Grid,
  .SectionLevel3 .OurTechList+.Definitionlist,
  .SectionLevel3 .OurTechList+.ProductInfo,
  .SectionLevel3 .OurTechList+.FeaturesList,
  .SectionLevel3 .OurTechList+.LineupList,
  .SectionLevel3 .OurTechList+.OurTechList,
  .SectionLevel3 .OurTechList+.ApplicationList,
  .SectionLevel3 .OurTechList+.Text,
  .SectionLevel3 .OurTechList+.List,
  .SectionLevel3 .OurTechList+.ListLink,
  .SectionLevel3 .OurTechList+.Grid,
  .SectionLevel3 .ApplicationList+.Text,
  .SectionLevel3 .ApplicationList+.List,
  .SectionLevel3 .ApplicationList+.ListLink,
  .SectionLevel3 .ApplicationList+.Box,
  .SectionLevel3 .ApplicationList+.CardGrid,
  .SectionLevel3 .ApplicationList+.CardHorizontal,
  .SectionLevel3 .ApplicationList+.Grid,
  .SectionLevel3 .ApplicationList+.Definitionlist,
  .SectionLevel3 .ApplicationList+.ProductInfo,
  .SectionLevel3 .ApplicationList+.FeaturesList,
  .SectionLevel3 .ApplicationList+.LineupList,
  .SectionLevel3 .ApplicationList+.OurTechList,
  .SectionLevel3 .ApplicationList+.ApplicationList,
  .SectionLevel3 .ApplicationList+.Text,
  .SectionLevel3 .ApplicationList+.List,
  .SectionLevel3 .ApplicationList+.ListLink,
  .SectionLevel3 .ApplicationList+.Grid,
  .SectionLevel3 .Text+.Text,
  .SectionLevel3 .Text+.List,
  .SectionLevel3 .Text+.ListLink,
  .SectionLevel3 .Text+.Box,
  .SectionLevel3 .Text+.CardGrid,
  .SectionLevel3 .Text+.CardHorizontal,
  .SectionLevel3 .Text+.Grid,
  .SectionLevel3 .Text+.Definitionlist,
  .SectionLevel3 .Text+.ProductInfo,
  .SectionLevel3 .Text+.FeaturesList,
  .SectionLevel3 .Text+.LineupList,
  .SectionLevel3 .Text+.OurTechList,
  .SectionLevel3 .Text+.ApplicationList,
  .SectionLevel3 .Text+.Text,
  .SectionLevel3 .Text+.List,
  .SectionLevel3 .Text+.ListLink,
  .SectionLevel3 .Text+.Grid,
  .SectionLevel3 .List+.Text,
  .SectionLevel3 .List+.List,
  .SectionLevel3 .List+.ListLink,
  .SectionLevel3 .List+.Box,
  .SectionLevel3 .List+.CardGrid,
  .SectionLevel3 .List+.CardHorizontal,
  .SectionLevel3 .List+.Grid,
  .SectionLevel3 .List+.Definitionlist,
  .SectionLevel3 .List+.ProductInfo,
  .SectionLevel3 .List+.FeaturesList,
  .SectionLevel3 .List+.LineupList,
  .SectionLevel3 .List+.OurTechList,
  .SectionLevel3 .List+.ApplicationList,
  .SectionLevel3 .List+.Text,
  .SectionLevel3 .List+.List,
  .SectionLevel3 .List+.ListLink,
  .SectionLevel3 .List+.Grid,
  .SectionLevel3 .ListLink+.Text,
  .SectionLevel3 .ListLink+.List,
  .SectionLevel3 .ListLink+.ListLink,
  .SectionLevel3 .ListLink+.Box,
  .SectionLevel3 .ListLink+.CardGrid,
  .SectionLevel3 .ListLink+.CardHorizontal,
  .SectionLevel3 .ListLink+.Grid,
  .SectionLevel3 .ListLink+.Definitionlist,
  .SectionLevel3 .ListLink+.ProductInfo,
  .SectionLevel3 .ListLink+.FeaturesList,
  .SectionLevel3 .ListLink+.LineupList,
  .SectionLevel3 .ListLink+.OurTechList,
  .SectionLevel3 .ListLink+.ApplicationList,
  .SectionLevel3 .ListLink+.Text,
  .SectionLevel3 .ListLink+.List,
  .SectionLevel3 .ListLink+.ListLink,
  .SectionLevel3 .ListLink+.Grid,
  .SectionLevel3 .Grid+.Text,
  .SectionLevel3 .Grid+.List,
  .SectionLevel3 .Grid+.ListLink,
  .SectionLevel3 .Grid+.Box,
  .SectionLevel3 .Grid+.CardGrid,
  .SectionLevel3 .Grid+.CardHorizontal,
  .SectionLevel3 .Grid+.Grid,
  .SectionLevel3 .Grid+.Definitionlist,
  .SectionLevel3 .Grid+.ProductInfo,
  .SectionLevel3 .Grid+.FeaturesList,
  .SectionLevel3 .Grid+.LineupList,
  .SectionLevel3 .Grid+.OurTechList,
  .SectionLevel3 .Grid+.ApplicationList,
  .SectionLevel3 .Grid+.Text,
  .SectionLevel3 .Grid+.List,
  .SectionLevel3 .Grid+.ListLink,
  .SectionLevel3 .Grid+.Grid {
    margin-top: 12px;
  }
}

.SectionLevel3 .Js-Scrollable__wrap {
  margin-top: 22px;
}

.SectionLevel3 .Js-Scrollable__wrap+.Js-Scrollable__wrap {
  margin-top: 22px;
}

.SectionLevel3 .CardGrid.-zaxis {
  margin-top: 0;
}

@media print, screen and (min-width: 560px) {
  .Grid .SectionLevel3 {
    padding-top: 4px;
  }
}

.Grid.-column2 .SectionLevel3:nth-child(-n+2) {
  margin-top: 0;
}

@media only screen and (max-width: 559px) {
  .Grid.-column2.-column1SPView .SectionLevel3:nth-child(-n+1) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .Grid.-column2.-column1SPView .SectionLevel3:nth-child(-n+2) {
    margin-top: 0;
  }
}

.SectionLevel3 .NewsHeadingLevel3+.Text {
  margin-top: 14px;
}

.SectionLevel4 {
  padding-top: 30px;
}

@media only screen and (max-width: 559px) {
  .SectionLevel4 {
    padding-top: 24px;
  }
}

.SectionLevel5 {
  padding-top: 20px;
}

@media only screen and (max-width: 559px) {
  .SectionLevel5 {
    padding-top: 16px;
  }
}

.SectionGrid {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .SectionGrid {
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .SectionGrid {
    margin-left: 0;
  }
}

.-column2 .SectionGrid__item {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .-column2 .SectionGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .-column2 .SectionGrid__item {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
    padding-top: 90px;
  }
}

@media print, screen and (min-width: 560px) {
  .-column2 .SectionGrid__item _:-ms-lang(x), .-column2 .SectionGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .-column1SPView .SectionGrid__item {
    width: 100%;
    padding-top: 60px;
  }
}

@media only screen and (max-width: 559px) {
  .-column1SPView .SectionGrid__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {

  .SectionGrid__item .Text,
  .SectionGrid__item .List,
  .SectionGrid__item .ListLink,
  .SectionGrid__item .Box,
  .SectionGrid__item .Js-Scrollable__wrap,
  .SectionGrid__item .Card,
  .SectionGrid__item .CardGrid,
  .SectionGrid__item .CardHorizontal,
  .SectionGrid__item .Grid,
  .SectionGrid__item .Definitionlist,
  .SectionGrid__item .ProductInfo {
    margin-top: 35px;
  }
}

@media only screen and (max-width: 559px) {

  .SectionGrid__item .Text,
  .SectionGrid__item .List,
  .SectionGrid__item .ListLink,
  .SectionGrid__item .Box,
  .SectionGrid__item .Js-Scrollable__wrap,
  .SectionGrid__item .Card,
  .SectionGrid__item .CardGrid,
  .SectionGrid__item .CardHorizontal,
  .SectionGrid__item .Grid,
  .SectionGrid__item .Definitionlist,
  .SectionGrid__item .ProductInfo {
    margin-top: 30px;
  }
}

/* ===== CategoryIndex ===== */
@media print, screen and (min-width: 960px) {
  .CategoryIndex__inner {
    margin: 0 auto;
    max-width: 1600px;
    padding: 0 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .CategoryIndex__inner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .CategoryIndex__inner {
    padding: 0 15px;
  }
}

/* ===== Heading ===== */
.HeadingLevel1,
.HeadingLevel2,
.HeadingLevel3,
.HeadingLevel4,
.HeadingLevel5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  letter-spacing: .03em;
}

.HeadingLevel1 {
  position: relative;
  margin: 0;
  padding: 24px 0;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1 {
    padding: 19px 0;
  }
}

.HeadingLevel1::before {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  top: -1px;
  background-color: #008486;
}

.HeadingLevel1::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  right: 0;
  bottom: -1px;
  background-color: #008486;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1 {
    padding: 17px 0;
  }
}

.HeadingLevel1.-nextHero {
  margin-top: 78px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HeadingLevel1.-nextHero {
    margin-top: 26px;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1.-nextHero {
    margin-top: 60px;
  }
}

.HeadingLevel1.-nextHero+.Hero {
  margin-top: 60px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1.-nextHero+.Hero {
    margin-top: 30px;
  }
}

.HeadingLevel1__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  color: #008486;
  font-weight: normal;
  line-height: 1.3;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel1__body {
    font-size: 4rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1__body {
    font-size: 2.8rem;
  }
}

.HeadingLevel1__textLead {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  margin-top: 23px;
  color: #333;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1__textLead {
    margin-top: 10px;
  }
}

.HeadingLevel1__shoulder {
  display: block;
  margin-bottom: 12px;
  color: #333;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel1__shoulder {
    margin-bottom: 10px;
  }
}

.HeadingLevel2,
.HeadingLevel3,
.HeadingLevel4,
.HeadingLevel5 {
  position: relative;
}

.HeadingLevel2::after,
.HeadingLevel3::after,
.HeadingLevel4::after,
.HeadingLevel5::after {
  content: "";
  display: inline-block;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #008486;
}

.HeadingLevel2 {
  padding: 16px 0;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2 {
    padding: 13px 0;
  }
}

.HeadingLevel2::after {
  width: 120px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2::after {
    width: 96px;
  }
}

.HeadingLevel2 a {
  position: relative;
}

.HeadingLevel2 a span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0 7px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2 a span::after {
    margin: 0 0 4px 16px;
  }
}

.HeadingLevel2 a[target="_blank"] span::after {
  display: none;
}

.HeadingLevel2+.List.-number {
  margin-top: 37px;
}

.HeadingLevel2+.Text {
  margin-top: 35px;
}

.HeadingLevel2+.Image {
  margin-top: 35px;
}

.HeadingLevel2__body {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel2__body {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2__body {
    font-size: 2.4rem;
  }
}

.HeadingLevel2__textLead {
  margin-top: 20px;
  color: #008486;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2__textLead {
    margin-top: 10px;
  }
}

.HeadingLevel3 {
  padding: 21px 0;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel3 {
    padding: 11px 0;
  }
}

.HeadingLevel3::after {
  width: 80px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel3::after {
    width: 64px;
  }
}

.HeadingLevel3.-sustainability .HeadingLevel3__body {
  margin: 0;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel3.-sustainability .HeadingLevel3__body {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel3.-sustainability .HeadingLevel3__body {
    font-size: 2.1rem;
  }
}

.HeadingLevel3.-sustainability .HeadingLevel3__image {
  display: inline-block;
  width: 70px;
  height: 70px;
  line-height: 70px;
  margin-left: 18px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel3.-sustainability .HeadingLevel3__image {
    width: 40px;
    height: 40px;
    line-height: 40px;
    margin-left: 16px;
  }
}

.HeadingLevel3.-sustainability .HeadingLevel3__image img {
  width: 100%;
}

.HeadingLevel3+.Table__wrap {
  margin-top: 40px;
}

.HeadingLevel3__body {
  margin: 0;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel3__body {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel3__body {
    font-size: 2.1rem;
  }
}

.HeadingLevel4 {
  padding: 14px 0;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel4 {
    padding: 10px 0;
  }
}

.HeadingLevel4::after {
  width: 60px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel4::after {
    width: 48px;
  }
}

.HeadingLevel4__body {
  margin: 0;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel4__body {
    font-size: 2.2rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel4__body {
    font-size: 1.8rem;
  }
}

.HeadingLevel5 {
  padding: 12px 0;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel5 {
    padding: 8px 0;
  }
}

.HeadingLevel5::after {
  width: 40px;
}

@media only screen and (max-width: 559px) {
  .HeadingLevel5::after {
    width: 32px;
  }
}

.HeadingLevel5__body {
  margin: 0;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel5__body {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel5__body {
    font-size: 1.6rem;
  }
}

.HeadingIndex {
  padding: 27px 0 0 0;
  border-top: 2px solid #00a8a9;
  margin: 0 0 10px 0;
  line-height: 1.3;
  font-size: 2.2rem;
  font-weight: normal;
}

.NewsHeading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0 0 5px 0;
  padding: 0 0 11px 0;
  line-height: 1.2;
  font-size: 3.7rem;
  font-weight: normal;
  color: #008486;
  border-bottom: 2px solid #dedede;
}

.NewsHeading__date {
  margin-bottom: 30px;
  text-align: right;
  font-size: 1.4rem;
}

/* ===== List ===== */
.List,
.ListLink,
.ListHorizontal {
  list-style: none;
  margin: 0;
  padding: 0;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.List+.Text.-note,
.List+.List.-note,
.ListLink+.Text.-note,
.ListLink+.List.-note,
.ListHorizontal+.Text.-note,
.ListHorizontal+.List.-note {
  margin-top: 13px;
}

.List+.Text,
.List+.List,
.List+.ListLink,
.List+.Box,
.List+.Button,
.List+.Js-Scrollable__wrap,
.ListLink+.Text,
.ListLink+.List,
.ListLink+.ListLink,
.ListLink+.Box,
.ListLink+.Button,
.ListLink+.Js-Scrollable__wrap,
.ListHorizontal+.Text,
.ListHorizontal+.List,
.ListHorizontal+.ListLink,
.ListHorizontal+.Box,
.ListHorizontal+.Button,
.ListHorizontal+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .List+.Text,
  .List+.List,
  .List+.ListLink,
  .List+.Box,
  .List+.Button,
  .List+.Js-Scrollable__wrap,
  .ListLink+.Text,
  .ListLink+.List,
  .ListLink+.ListLink,
  .ListLink+.Box,
  .ListLink+.Button,
  .ListLink+.Js-Scrollable__wrap,
  .ListHorizontal+.Text,
  .ListHorizontal+.List,
  .ListHorizontal+.ListLink,
  .ListHorizontal+.Box,
  .ListHorizontal+.Button,
  .ListHorizontal+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .List+.CardGrid,
  .List+.CardHorizontal,
  .List+.Grid,
  .List+.Figure,
  .List+.Definitionlist,
  .List+.Media,
  .ListLink+.CardGrid,
  .ListLink+.CardHorizontal,
  .ListLink+.Grid,
  .ListLink+.Figure,
  .ListLink+.Definitionlist,
  .ListLink+.Media,
  .ListHorizontal+.CardGrid,
  .ListHorizontal+.CardHorizontal,
  .ListHorizontal+.Grid,
  .ListHorizontal+.Figure,
  .ListHorizontal+.Definitionlist,
  .ListHorizontal+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .List+.CardGrid,
  .List+.CardHorizontal,
  .List+.Grid,
  .List+.Figure,
  .List+.Definitionlist,
  .List+.Media,
  .ListLink+.CardGrid,
  .ListLink+.CardHorizontal,
  .ListLink+.Grid,
  .ListLink+.Figure,
  .ListLink+.Definitionlist,
  .ListLink+.Media,
  .ListHorizontal+.CardGrid,
  .ListHorizontal+.CardHorizontal,
  .ListHorizontal+.Grid,
  .ListHorizontal+.Figure,
  .ListHorizontal+.Definitionlist,
  .ListHorizontal+.Media {
    margin-top: 28px;
  }
}

.List li .Text,
.List li .List,
.List li .ListLink,
.List li .Box,
.List li .Definitionlist,
.ListLink li .Text,
.ListLink li .List,
.ListLink li .ListLink,
.ListLink li .Box,
.ListLink li .Definitionlist,
.ListHorizontal li .Text,
.ListHorizontal li .List,
.ListHorizontal li .ListLink,
.ListHorizontal li .Box,
.ListHorizontal li .Definitionlist {
  margin-top: 0;
}

.List li .Text+.CardGrid,
.List li .Text+.CardHorizontal,
.List li .Text+.Grid,
.List li .Text+.Js-Scrollable__wrap,
.List li .Text+.ProductInfo,
.List li .List+.CardGrid,
.List li .List+.CardHorizontal,
.List li .List+.Grid,
.List li .List+.Js-Scrollable__wrap,
.List li .List+.ProductInfo,
.List li .ListLink+.CardGrid,
.List li .ListLink+.CardHorizontal,
.List li .ListLink+.Grid,
.List li .ListLink+.Js-Scrollable__wrap,
.List li .ListLink+.ProductInfo,
.List li .Box+.CardGrid,
.List li .Box+.CardHorizontal,
.List li .Box+.Grid,
.List li .Box+.Js-Scrollable__wrap,
.List li .Box+.ProductInfo,
.List li .Definitionlist+.CardGrid,
.List li .Definitionlist+.CardHorizontal,
.List li .Definitionlist+.Grid,
.List li .Definitionlist+.Js-Scrollable__wrap,
.List li .Definitionlist+.ProductInfo,
.ListLink li .Text+.CardGrid,
.ListLink li .Text+.CardHorizontal,
.ListLink li .Text+.Grid,
.ListLink li .Text+.Js-Scrollable__wrap,
.ListLink li .Text+.ProductInfo,
.ListLink li .List+.CardGrid,
.ListLink li .List+.CardHorizontal,
.ListLink li .List+.Grid,
.ListLink li .List+.Js-Scrollable__wrap,
.ListLink li .List+.ProductInfo,
.ListLink li .ListLink+.CardGrid,
.ListLink li .ListLink+.CardHorizontal,
.ListLink li .ListLink+.Grid,
.ListLink li .ListLink+.Js-Scrollable__wrap,
.ListLink li .ListLink+.ProductInfo,
.ListLink li .Box+.CardGrid,
.ListLink li .Box+.CardHorizontal,
.ListLink li .Box+.Grid,
.ListLink li .Box+.Js-Scrollable__wrap,
.ListLink li .Box+.ProductInfo,
.ListLink li .Definitionlist+.CardGrid,
.ListLink li .Definitionlist+.CardHorizontal,
.ListLink li .Definitionlist+.Grid,
.ListLink li .Definitionlist+.Js-Scrollable__wrap,
.ListLink li .Definitionlist+.ProductInfo,
.ListHorizontal li .Text+.CardGrid,
.ListHorizontal li .Text+.CardHorizontal,
.ListHorizontal li .Text+.Grid,
.ListHorizontal li .Text+.Js-Scrollable__wrap,
.ListHorizontal li .Text+.ProductInfo,
.ListHorizontal li .List+.CardGrid,
.ListHorizontal li .List+.CardHorizontal,
.ListHorizontal li .List+.Grid,
.ListHorizontal li .List+.Js-Scrollable__wrap,
.ListHorizontal li .List+.ProductInfo,
.ListHorizontal li .ListLink+.CardGrid,
.ListHorizontal li .ListLink+.CardHorizontal,
.ListHorizontal li .ListLink+.Grid,
.ListHorizontal li .ListLink+.Js-Scrollable__wrap,
.ListHorizontal li .ListLink+.ProductInfo,
.ListHorizontal li .Box+.CardGrid,
.ListHorizontal li .Box+.CardHorizontal,
.ListHorizontal li .Box+.Grid,
.ListHorizontal li .Box+.Js-Scrollable__wrap,
.ListHorizontal li .Box+.ProductInfo,
.ListHorizontal li .Definitionlist+.CardGrid,
.ListHorizontal li .Definitionlist+.CardHorizontal,
.ListHorizontal li .Definitionlist+.Grid,
.ListHorizontal li .Definitionlist+.Js-Scrollable__wrap,
.ListHorizontal li .Definitionlist+.ProductInfo {
  margin-top: 10px;
}

.List li .CardGrid,
.List li .CardHorizontal,
.List li .Grid,
.List li .Js-Scrollable__wrap,
.List li .ProductInfo,
.ListLink li .CardGrid,
.ListLink li .CardHorizontal,
.ListLink li .Grid,
.ListLink li .Js-Scrollable__wrap,
.ListLink li .ProductInfo,
.ListHorizontal li .CardGrid,
.ListHorizontal li .CardHorizontal,
.ListHorizontal li .Grid,
.ListHorizontal li .Js-Scrollable__wrap,
.ListHorizontal li .ProductInfo {
  margin-top: 10px;
}

.List li .CardGrid .CardGrid__item,
.List li .CardHorizontal .CardGrid__item,
.List li .Grid .CardGrid__item,
.List li .Js-Scrollable__wrap .CardGrid__item,
.List li .ProductInfo .CardGrid__item,
.ListLink li .CardGrid .CardGrid__item,
.ListLink li .CardHorizontal .CardGrid__item,
.ListLink li .Grid .CardGrid__item,
.ListLink li .Js-Scrollable__wrap .CardGrid__item,
.ListLink li .ProductInfo .CardGrid__item,
.ListHorizontal li .CardGrid .CardGrid__item,
.ListHorizontal li .CardHorizontal .CardGrid__item,
.ListHorizontal li .Grid .CardGrid__item,
.ListHorizontal li .Js-Scrollable__wrap .CardGrid__item,
.ListHorizontal li .ProductInfo .CardGrid__item {
  padding-left: 0;
}

.List li .CardGrid .CardGrid__item::before,
.List li .CardHorizontal .CardGrid__item::before,
.List li .Grid .CardGrid__item::before,
.List li .Js-Scrollable__wrap .CardGrid__item::before,
.List li .ProductInfo .CardGrid__item::before,
.ListLink li .CardGrid .CardGrid__item::before,
.ListLink li .CardHorizontal .CardGrid__item::before,
.ListLink li .Grid .CardGrid__item::before,
.ListLink li .Js-Scrollable__wrap .CardGrid__item::before,
.ListLink li .ProductInfo .CardGrid__item::before,
.ListHorizontal li .CardGrid .CardGrid__item::before,
.ListHorizontal li .CardHorizontal .CardGrid__item::before,
.ListHorizontal li .Grid .CardGrid__item::before,
.ListHorizontal li .Js-Scrollable__wrap .CardGrid__item::before,
.ListHorizontal li .ProductInfo .CardGrid__item::before {
  display: none;
}

.List li+.CardHorizontal,
.List li+.Grid,
.List li+.Js-Scrollable__wrap,
.List li+.ProductInfo,
.ListLink li+.CardHorizontal,
.ListLink li+.Grid,
.ListLink li+.Js-Scrollable__wrap,
.ListLink li+.ProductInfo,
.ListHorizontal li+.CardHorizontal,
.ListHorizontal li+.Grid,
.ListHorizontal li+.Js-Scrollable__wrap,
.ListHorizontal li+.ProductInfo {
  margin-top: 10px;
}

.List li .CardGrid,
.ListLink li .CardGrid,
.ListHorizontal li .CardGrid {
  margin-top: 10px;
}

.List li .CardGrid .CardGrid__item::before,
.ListLink li .CardGrid .CardGrid__item::before,
.ListHorizontal li .CardGrid .CardGrid__item::before {
  display: none;
}

.List.-fontsizeSmall,
.ListLink.-fontsizeSmall,
.ListHorizontal.-fontsizeSmall {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.ListLink .ListLink,
.ListLink .List {
  margin: 0 0 14px 22px;
}

.List li:last-child .List,
.ListLink li:last-child .List {
  margin-top: 8px;
}

.List .List li,
.List .ListLink li,
.ListLink .List li,
.ListLink .ListLink li {
  margin-top: 10px;
}

.List .List,
.ListLink .List {
  margin: 8px 0 19px;
}

.List .List li,
.ListLink .List li {
  padding-left: 21px;
  text-indent: 0;
}

.List .List li::before,
.ListLink .List li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 2px;
  height: 2px;
  background: #333;
}

.List.-noteNumber .List,
.ListLink.-noteNumber .List {
  margin: 8px 0 19px;
}

.List.-noteNumber .List li,
.ListLink.-noteNumber .List li {
  padding-left: 21px;
  text-indent: 0;
}

.List.-noteNumber .List li::before,
.ListLink.-noteNumber .List li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 2px;
  height: 2px;
  background: #333;
}

.List.-zaxis,
.ListLink.-zaxis {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.List.-zaxis li,
.ListLink.-zaxis li {
  margin-top: 0;
  margin-bottom: 3px;
}

.List.-zaxis li:not(:last-child),
.ListLink.-zaxis li:not(:last-child) {
  margin-right: 72px;
}

.List+.Link .Image,
.ListLink+.Link .Image {
  margin-top: 2px;
}

.List li {
  position: relative;
  padding-left: 24px;
}

.List li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  width: 6px;
  height: 6px;
  background: #333;
}

.List:not(.-zaxis) li:not(:first-child) {
  margin-top: 8px;
}

@media print, screen and (min-width: 560px) {
  .List.-column2, .List.-column3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -24px;
  }
}

@media print, screen and (min-width: 560px) {
  .List.-column2 li, .List.-column3 li {
    margin-left: 24px;
  }
}

.List.-column2 li {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .List.-column2 li {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media print, screen and (min-width: 560px) {
  .List.-column2 li _:-ms-lang(x), .List.-column2 li {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 560px) {
  .List.-column2 li:nth-child(-n+2) {
    margin-top: 0;
  }
}

.List.-column3 li {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .List.-column3 li {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media print, screen and (min-width: 560px) {
  .List.-column3 li _:-ms-lang(x), .List.-column3 li {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media print, screen and (min-width: 560px) {
  .List.-column3 li:nth-child(-n+3) {
    margin-top: 0;
  }
}

.List.-number {
  counter-reset: number;
}

.List.-number>li {
  position: relative;
  padding-left: 29px;
}

.List.-number>li:not(:first-child) {
  margin-top: 8px;
}

.List.-number>li::before {
  counter-increment: number;
  content: counter(number) ".";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.4em;
  text-align: left;
  background: none;
}

.List.-number .List {
  margin-top: 8px;
}

.List.-number .List li {
  margin-top: 10px;
}

.List.-number .List.-paren {
  margin-top: 4px;
}

.List.-number .List.-paren li {
  margin-top: 10px;
}

.CardGrid .List.-number .List.-paren:nth-child(-n+1) {
  margin-top: 0;
}

.List.-paren {
  counter-reset: number;
}

.List.-paren>li {
  position: relative;
  padding-left: 36px;
}

.List.-paren>li:not(:first-child) {
  margin-top: 8px;
}

.List.-paren>li::before {
  counter-increment: number;
  content: "（"counter(number) "）";
  position: absolute;
  top: 0;
  left: -8px;
  width: 1.7em;
  text-align: left;
  background: none;
}

.Box .List.-paren>li::before {
  width: 2.7em;
}

.List.-note li {
  position: relative;
  padding-left: 12px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.List.-note li:not(:first-child) {
  margin-top: 8px;
}

.List.-note li::before {
  content: "*";
  position: absolute;
  top: -1px;
  left: 0;
  font-size: 1.5rem;
  background: none;
}

.List.-note+.Text,
.List.-note+.List,
.List.-note+.ListLink,
.List.-note+.Box,
.List.-note+.Button,
.List.-note+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .List.-note+.Text,
  .List.-note+.List,
  .List.-note+.ListLink,
  .List.-note+.Box,
  .List.-note+.Button,
  .List.-note+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

.List.-noteNumber {
  counter-reset: number;
}

.List.-noteNumber li {
  position: relative;
  padding-left: 28px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.List.-noteNumber li:not(:first-child) {
  margin-top: 8px;
}

.List.-noteNumber li::before {
  display: none;
}

.List.-noteNumber .List__noteNumberPrefix {
  display: inline-block;
  width: 1em;
  position: absolute;
  left: 0;
}

.List.-noteNumber+.Text,
.List.-noteNumber+.List,
.List.-noteNumber+.ListLink,
.List.-noteNumber+.Box,
.List.-noteNumber+.Button,
.List.-noteNumber+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .List.-noteNumber+.Text,
  .List.-noteNumber+.List,
  .List.-noteNumber+.ListLink,
  .List.-noteNumber+.Box,
  .List.-noteNumber+.Button,
  .List.-noteNumber+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

.List.-iroha {
  counter-reset: number;
}

.List.-iroha li {
  position: relative;
  padding-left: 40px;
}

.List.-iroha li:not(:first-child) {
  margin-top: 8px;
}

.List.-iroha li::before {
  display: none;
}

.List.-iroha .List__irohaPrefix {
  position: absolute;
  left: 0;
  display: inline-block;
  width: 40px;
}

.List.-thatOne li {
  position: relative;
  padding-left: 36px;
}

.List.-thatOne li:not(:first-child) {
  margin-top: 8px;
}

.List.-thatOne li::before {
  content: "一、";
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  background: none;
}

.ListLink {
  list-style-type: none;
}

.ListLink:not(.-zaxis) li:not(:first-child) {
  margin-top: 8px;
}

.Media__heading+.ListLink {
  margin-top: 7px;
}

.ListLink .List {
  margin-left: 22px;
}

.ListLink.-note li {
  position: relative;
}

.ListLink.-note a {
  padding-left: 29px;
}

.ListLink.-note .ListLink__noteIcon {
  position: absolute;
  top: -2px;
  left: 17px;
  color: #f00;
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column2, .ListLink.-column3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -24px;
  }
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column2 li, .ListLink.-column3 li {
    margin-left: 24px;
  }
}

.ListLink.-column2 li {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column2 li {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column2 li _:-ms-lang(x), .ListLink.-column2 li {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column2 li:nth-child(-n+2) {
    margin-top: 0;
  }
}

.ListLink.-column3 li {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column3 li {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column3 li _:-ms-lang(x), .ListLink.-column3 li {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media print, screen and (min-width: 560px) {
  .ListLink.-column3 li:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .ListLink.-zaxis {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media only screen and (max-width: 959px) {
  .ListLink.-zaxis li {
    margin-right: 0;
  }
}

@media only screen and (max-width: 959px) {
  .ListLink.-zaxis li:not(:last-child) {
    margin-right: 0;
  }
}

.ListLink.-pageback {
  margin-top: 66px;
  text-align: center;
}

@media only screen and (max-width: 559px) {
  .ListLink.-pageback {
    margin-top: 36px;
  }
}

.ListLink.-pageback+.ListLink.-pageback {
  margin-top: 66px;
}

@media only screen and (max-width: 559px) {
  .ListLink.-pageback+.ListLink.-pageback {
    margin-top: 36px;
  }
}

.ListHorizontal {
  letter-spacing: -.4em;
}

.ListHorizontal li {
  display: inline-block;
  margin-right: 10px;
  letter-spacing: normal;
  vertical-align: top;
  list-style: none;
}

.List__contentgroup {
  margin-top: 8px;
}

.List__contentgroupHeading {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.List__contentgroupBody {
  margin-top: 8px;
}

.AnnounceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.AnnounceList dt {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .AnnounceList dt {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .AnnounceList dt {
    font-size: 1.6rem;
  }
}

.AnnounceList dd {
  margin: 3px 0 0 16px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.AnnounceList+.AnnounceList {
  margin-top: 32px;
}

@media only screen and (max-width: 559px) {
  .AnnounceList+.AnnounceList {
    margin-top: 32px;
  }
}

/* ===== Link ===== */
.Link {
  position: relative;
  word-break: break-word;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Text .Link::before,
.TextItalic .Link::before,
.List .Link::before,
th .Link::before,
td .Link::before {
  display: none;
}

.Text .Link .IconBlank,
.Text .Link .IconPdf,
.Text .Link .IconZip,
.Text .Link .IconModal,
.TextItalic .Link .IconBlank,
.TextItalic .Link .IconPdf,
.TextItalic .Link .IconZip,
.TextItalic .Link .IconModal,
.List .Link .IconBlank,
.List .Link .IconPdf,
.List .Link .IconZip,
.List .Link .IconModal,
th .Link .IconBlank,
th .Link .IconPdf,
th .Link .IconZip,
th .Link .IconModal,
td .Link .IconBlank,
td .Link .IconPdf,
td .Link .IconZip,
td .Link .IconModal {
  margin-right: 12px;
}

.ListLink .Link,
.NewsList .Link,
.NewsRoomList .Link,
.LinkMore .Link {
  display: inline-block;
  padding-left: 22px;
}

.ListLink .Link::before,
.NewsList .Link::before,
.NewsRoomList .Link::before,
.LinkMore .Link::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.Text.-note .Link,
.List.-note .Link {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

th .ListLink .IconBlank,
th .ListLink .IconPdf,
th .ListLink .IconZip,
th .ListLink .IconModal,
td .ListLink .IconBlank,
td .ListLink .IconPdf,
td .ListLink .IconZip,
td .ListLink .IconModal {
  margin-right: 0;
}

.Link__text {
  text-decoration: underline;
}

.LinkBackNumber {
  text-align: right;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.LinkBackNumber+.NewsList {
  margin-top: 70px;
}

@media only screen and (max-width: 559px) {
  .LinkBackNumber+.NewsList {
    margin-top: 50px;
  }
}

.LinkBackNumber__link {
  display: inline-block;
  padding: 14px 0;
}

.LinkBackNumber__text {
  position: relative;
  padding-right: 24px;
}

.LinkBackNumber__text::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  right: 0;
  width: 9px;
  height: 9px;
  margin-top: -1px;
  border-top: 1px solid #008486;
  border-right: 1px solid #008486;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.AnnounceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.AnnounceList dt {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .AnnounceList dt {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .AnnounceList dt {
    font-size: 1.6rem;
  }
}

.AnnounceList dd {
  margin: 0 0 0 16px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.AnnounceList+.AnnounceList {
  margin-top: 32px;
}

@media only screen and (max-width: 559px) {
  .AnnounceList+.AnnounceList {
    margin-top: 32px;
  }
}

/* ===== Text ===== */
.Text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
  letter-spacing: .03em;
}

.Text+.Text.-note,
.Text+.List.-note {
  margin-top: 13px;
}

.Text+.Text,
.Text+.List,
.Text+.ListLink,
.Text+.Box,
.Text+.Button,
.Text+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .Text+.Text,
  .Text+.List,
  .Text+.ListLink,
  .Text+.Box,
  .Text+.Button,
  .Text+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .Text+.CardGrid,
  .Text+.CardHorizontal,
  .Text+.Grid,
  .Text+.Figure,
  .Text+.Definitionlist,
  .Text+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .Text+.CardGrid,
  .Text+.CardHorizontal,
  .Text+.Grid,
  .Text+.Figure,
  .Text+.Definitionlist,
  .Text+.Media {
    margin-top: 28px;
  }
}

@media print, screen and (min-width: 560px) {
  .-column1Max .SectionLevel2 .Text {
    max-width: 950px;
  }
}

.Text.-note {
  position: relative;
  padding-left: 8px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Text.-note::before {
  content: "*";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.6rem;
}

.Text.-note+.Text,
.Text.-note+.List,
.Text.-note+.ListLink,
.Text.-note+.Box,
.Text.-note+.Button,
.Text.-note+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .Text.-note+.Text,
  .Text.-note+.List,
  .Text.-note+.ListLink,
  .Text.-note+.Box,
  .Text.-note+.Button,
  .Text.-note+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

.Text.-fontsizeSmall {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Text.-lead {
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
}

.Text.-lead strong {
  font-weight: inherit;
}

.Text.-lead+.List,
.Text.-lead+.Text {
  margin-top: 20px;
}

.Text.-italic {
  font-style: italic;
}

.TextBold {
  font-weight: bold;
}

.TextSuperscript {
  position: relative;
  top: .1em;
  line-height: 1;
  font-size: .5em;
  vertical-align: top;
}

.TextSuperscript.-note {
  font-size: 1em;
}

.TextSuperscript.-noteNumber {
  font-size: .8em;
}

.TextSubscript {
  position: relative;
  bottom: 0;
  line-height: 1;
  font-size: .8em;
  vertical-align: middle;
}

.TextQuote {
  margin: 27px 0;
}

.TextQuote__text {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  padding: 0 34px;
  font-style: italic;
}

.TextQuote__text::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 17px;
  height: 13px;
  vertical-align: baseline;
  background: url(/assets/images/icons/quote_before.svg) 0 0 no-repeat;
}

.TextQuote__text::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  display: inline-block;
  width: 17px;
  height: 13px;
  vertical-align: baseline;
  background: url(/assets/images/icons/quote_after.svg) 0 0 no-repeat;
}

.-alert {
  color: #f00;
}

.TextInfoWithHeading {
  margin-top: 10px;
}

.TextInfoWithHeading__text {
  margin-top: 15px;
  text-align: right;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.TextStrikeThRrough {
  text-decoration: line-through;
}

.ListText {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
  letter-spacing: .03em;
  list-style: none;
}

.ListText li {
  margin-top: 8px;
}

@media print, screen and (min-width: 960px) {
  .TextBreak.-activePC {
    display: block;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .TextBreak.-activePC {
    display: none;
  }
}

@media only screen and (max-width: 559px) {
  .TextBreak.-activePC {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  .TextBreak.-activeTBandPC {
    display: block;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .TextBreak.-activeTBandPC {
    display: block;
  }
}

@media only screen and (max-width: 559px) {
  .TextBreak.-activeTBandPC {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  .TextBreak.-activeTB {
    display: none;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .TextBreak.-activeTB {
    display: block;
  }
}

@media only screen and (max-width: 559px) {
  .TextBreak.-activeTB {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  .TextBreak.-activeSPandTB {
    display: none;
  }
}

@media only screen and (max-width: 959px) {
  .TextBreak.-activeSPandTB {
    display: block;
  }
}

@media print, screen and (min-width: 560px) {
  .TextBreak.-activeSP {
    display: none;
  }
}

@media only screen and (max-width: 559px) {
  .TextBreak.-activeSP {
    display: block;
  }
}

@media print, screen and (min-width: 960px) {
  .TextBreak.-activeSPandPC {
    display: block;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .TextBreak.-activeSPandPC {
    display: none;
  }
}

@media only screen and (max-width: 559px) {
  .TextBreak.-activeSPandPC {
    display: block;
  }
}

/* ===== Button ===== */
.Button {
  max-width: 560px;
  min-width: 240px;
  margin: 0 auto;
  border: 1px solid #008486;
  background-color: #008486;
  -webkit-transition: background-color .2s ease-in-out;
  transition: background-color .2s ease-in-out;
}

@media only screen and (max-width: 559px) {
  .Button {
    width: 100%;
  }
}

.Button:hover {
  border: 1px solid #00a8a9;
  background-color: #00a8a9;
}

.Button.-widthMedium {
  width: 340px;
  max-width: 0;
}

.Button.-widthMedium .Button__inner,
.Button.-widthMedium a.Button__inner {
  padding: 22px 20px;
}

@media only screen and (max-width: 559px) {

  .Button.-widthMedium .Button__inner,
  .Button.-widthMedium a.Button__inner {
    padding: 12px 20px;
  }
}

.Button.-newsBack {
  text-align: center;
  margin: 60px auto 95px;
}

.Button.-scrollDown {
  text-align: center;
  width: 180px;
}

.Button.-scrollDown .Button__text {
  padding-left: 0;
  font-weight: normal;
  line-height: 1.4;
  font-size: 1.2rem;
  padding-bottom: 16px;
  background: url(/assets/images/icons/arrow_scrolldown.svg) 50% 100% no-repeat;
  background-size: 24px 7px;
}

.Button.-scrollDown .Button__text::before {
  display: none;
}

.Button.-scrollDown a.Button__inner {
  padding: 8px 10px;
}

.Button.-printPdf {
  text-align: center;
  min-width: 180px;
  width: auto;
  margin: 0;
  border: 1px solid #008486;
  background-color: #fff;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.Button.-printPdf:hover {
  border: 1px solid #00a8a9;
  background-color: #00a8a9;
}

.Button.-printPdf:hover .Button__text {
  color: #fff;
}

.Button.-printPdf:hover .Button__text::before {
  border-color: transparent transparent transparent #fff;
}

.Button.-printPdf:hover .IconPdf {
  background: url(/assets/images/icons/link_pdf_white.svg) 0 0 no-repeat;
}

.Button.-printPdf a.Button__inner {
  padding: 9px 22px 6px;
}

.Button.-printPdf .Button__text {
  color: #008486;
}

.Button.-printPdf .Button__text::before {
  border-color: transparent transparent transparent #008486;
}

.Button.-printPdf .IconPdf {
  background: url(/assets/images/icons/link_pdf_green.svg) 0 0 no-repeat;
}

.Button.-white {
  background-color: #fff;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Button.-white:hover {
  opacity: .8;
}

.Button.-white .Button__text {
  color: #008486;
}

.Button.-white .Button__text::before {
  border-color: transparent transparent transparent #008486;
}

.Button.-back {
  background-color: #fff;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Button.-back:hover {
  opacity: .8;
}

.Button.-back .Button__text {
  color: #008486;
}

.Button.-back .Button__text::before {
  border-color: transparent transparent transparent #008486;
}

.Button__inner,
a.Button__inner {
  display: block;
  width: 100%;
  padding: 22px 60px;
  text-decoration: none;
}

@media only screen and (max-width: 559px) {

  .Button__inner,
  a.Button__inner {
    padding: 12px 40px;
  }
}

.Button__text {
  position: relative;
  display: inline-block;
  padding-left: 22px;
  color: #fff;
  font-weight: normal;
  line-height: 1.4;
  font-size: 1.4rem;
  vertical-align: middle;
}

.Button__text::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .45em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #fff;
}

.Button__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.Button__wrap.-right {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.Button__wrap.-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.HeadingLevel1+.Button__wrap {
  margin-top: 20px;
}

.ButtonList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  list-style-type: none;
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .ButtonList {
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .ButtonList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.ButtonList _:-ms-lang(x), .ButtonList {
  margin-left: -25px;
}

@media only screen and (max-width: 559px) {
  .ButtonList _:-ms-lang(x), .ButtonList {
    margin-left: -26px;
  }
}

.ButtonList li {
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .ButtonList li {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .ButtonList li {
    width: 100%;
    margin-left: 0;
  }
}

.ButtonList li _:-ms-lang(x), .ButtonList li {
  width: calc((100% - 25px * 2) / 2);
  margin-left: 25px;
}

@media only screen and (max-width: 559px) {
  .ButtonList li _:-ms-lang(x), .ButtonList li {
    width: calc((100% - 26px * 2) / 2);
    margin-left: 26px;
  }
}

.ButtonList li:nth-child(-n+2) {
  margin-top: 0;
}

@media only screen and (max-width: 559px) {
  .ButtonList li:not(:first-child) {
    margin-top: 16px;
  }
}

.ButtonList .Button {
  width: 100%;
  margin-top: 0;
}

@media print, screen and (min-width: 560px) {
  .SiteSearch__box+.ButtonList {
    margin-top: 70px;
  }
}

@media only screen and (max-width: 559px) {
  .SiteSearch__box+.ButtonList {
    margin-top: 54px;
  }
}

/* ===== Figure ===== */
.Figure {
  margin: 0;
  text-align: center;
}

@media only screen and (max-width: 559px) {
  .Figure .CardGrid.-column2.-column1SPView .CardGrid__item:not(:first-child) {
    margin-top: 20px;
  }
}

.Figure a {
  display: inline-block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Figure a:hover {
  opacity: .8;
}

.Card__caption {
  margin: 9px 0;
  text-align: center;
  color: #333;
  word-wrap: break-word;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Card__caption+.Figure__text {
  margin-top: 0;
}

.Figure__text {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.FigureGallery__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style-type: none;
}

@media only screen and (max-width: 559px) {
  .FigureGallery__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.FigureGallery__list li {
  width: 100%;
  margin-top: 38px;
}

@media only screen and (max-width: 559px) {
  .FigureGallery__list li {
    width: 100%;
    height: 100%;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(1) {
    width: 50%;
    margin-right: 24px;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(2) {
    width: 44%;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(3) {
    width: 22%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(4) {
    width: 33%;
    padding: 0 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(5) {
    width: 45%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureGallery__list li:nth-child(6) {
    width: 45%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}

.FigureModal__link {
  position: relative;
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

@media print, screen and (min-width: 560px) {
  .FigureModal__link:hover {
    cursor: pointer;
    opacity: .8;
  }
}

@media only screen and (max-width: 559px) {
  .FigureModal__link:hover {
    cursor: inherit;
  }
}

@media only screen and (max-width: 559px) {
  .FigureModal__link::before, .FigureModal__link::after {
    display: none;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureModal__link::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    z-index: 1;
    background-color: #fff;
  }
}

@media print, screen and (min-width: 560px) {
  .FigureModal__link::after {
    content: "";
    position: absolute;
    bottom: 13px;
    right: 13px;
    display: inline-block;
    width: 21px;
    height: 21px;
    overflow: hidden;
    line-height: 1;
    vertical-align: top;
    z-index: 2;
    background: url(/assets/images/icons/link_zoom.svg) 0 0 no-repeat;
  }
}

.FigureModal__caption {
  margin: 15px 0 0;
  font-weight: normal;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.FigureModal__image {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.FigureCarousel__image {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.FigureCarousel__caption {
  margin: 15px 0 0;
  font-weight: normal;
  text-align: center;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

/* ===== Card ===== */
.Card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.Card>.Js-Scrollable__wrap {
  margin-top: 0;
}

.Card .Card__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin-top: 19px;
}

.Card__heading {
  margin: 0;
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Card__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Card__heading {
    font-size: 1.6rem;
  }
}

.Card__heading .Link {
  padding-left: 0;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Card__heading .Link {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Card__heading .Link {
    font-size: 1.6rem;
  }
}

.Card__heading .Link::before {
  display: none;
}

.Card__heading .Link::after {
  content: "";
  display: inline-block;
  margin: 0 0 4px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.Card__heading .Link[target="_blank"]::after {
  display: none;
}

.Card__heading+.ListLink,
.Card__heading+.Card__text {
  margin-top: 13px;
}

.Card__heading+.Card__listLabel {
  margin-top: 10px;
}

.Card__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Card__listLabel+.Card__text {
  margin-top: 18px;
}

.Card__text+.ListLink {
  margin-top: 9px;
}

.Card__text+.Card__listLabel {
  margin-top: 10px;
}

.Card__listLabel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.Card__listLabel li {
  margin: 8px 16px 0 0;
  line-height: 1;
}

.Card__listLabel+.ListLink {
  margin-top: 18px;
}

.Card__listLabelIcon {
  display: inline-block;
  padding: 6px 12px;
  line-height: 1;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
  background-color: #f5f5f5;
}

.Card__image {
  width: 100%;
  height: 100%;
}

.Card__image a {
  display: inline-block;
  width: 100%;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Card__image a:hover {
  opacity: .8;
}

.Card .Card__image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.CardContentgroup {
  margin-top: 18px;
}

.CardContentgroup .Card__text+.ListLink {
  margin-top: 11px;
}

.CardContentgroup__heading {
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

.CardContentgroup__heading+.Card__text,
.CardContentgroup__heading+.ListLink {
  margin-top: 13px;
}

@media only screen and (max-width: 559px) {
  .CardHorizontal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 560px) {
  .CardHorizontal::after {
    content: "";
    display: block;
    clear: both;
  }
}

.CardHorizontal+.Text.-note,
.CardHorizontal+.List.-note {
  margin-top: 13px;
}

@media print, screen and (min-width: 560px) {

  .CardHorizontal+.Text,
  .CardHorizontal+.List,
  .CardHorizontal+.ListLink,
  .CardHorizontal+.Box,
  .CardHorizontal+.Button,
  .CardHorizontal+.Js-Scrollable__wrap {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .CardHorizontal+.Text,
  .CardHorizontal+.List,
  .CardHorizontal+.ListLink,
  .CardHorizontal+.Box,
  .CardHorizontal+.Button,
  .CardHorizontal+.Js-Scrollable__wrap {
    margin-top: 28px;
  }
}

.CardHorizontal.-ration1to1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 560px) {
  .CardHorizontal.-ration1to1::after {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  .CardHorizontal.-ration1to1 .CardHorizontal__body {
    width: calc(50% - 14px);
    margin: 0 14px 0 0;
  }
}

@media only screen and (max-width: 959px) {
  .CardHorizontal.-ration1to1 .CardHorizontal__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .CardHorizontal.-ration1to1 .CardHorizontal__image {
    float: initial;
    width: calc(50% - 14px);
    max-width: 50%;
    margin: 0 0 0 14px;
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 959px) {
  .CardHorizontal.-ration1to1 .CardHorizontal__image {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    height: 100%;
    margin: 16px 0 0;
  }
}

.CardHorizontal+.CardHorizontal {
  margin-top: 50px;
}

@media only screen and (max-width: 559px) {
  .CardHorizontal+.CardHorizontal {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CardHorizontal__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin: 0;
  }
}

.CardHorizontal__image {
  margin-left: 24px;
  margin-bottom: 20px;
}

@media print, screen and (min-width: 560px) {
  .CardHorizontal__image {
    float: right;
    max-width: 30%;
  }
}

@media only screen and (max-width: 559px) {
  .CardHorizontal__image {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    height: 100%;
    margin: 16px 0 0;
    text-align: center;
  }
}

.CardHorizontal__heading {
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .CardHorizontal__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .CardHorizontal__heading {
    font-size: 1.6rem;
  }
}

.CardHorizontal__heading a {
  position: relative;
}

.CardHorizontal__heading a span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0 5px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

@media only screen and (max-width: 559px) {
  .CardHorizontal__heading a span::after {
    margin: 0 0 4px 16px;
  }
}

.CardHorizontal__heading.-linkIcon a .Link__text::after {
  display: none;
}

.CardHorizontal__heading.-linkIcon a .IconPdf {
  margin-right: 12px;
}

.CardHorizontal__heading.-linkIcon .Link {
  font-size: 1.8rem;
}

.CardHorizontal__headingSub {
  display: block;
  margin: 17px 0 19px;
  color: #333;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.CardHorizontal__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.CardHorizontal__heading+.CardHorizontal__text {
  margin-top: 21px;
}

.CardHorizontal__text+.List,
.CardHorizontal__text+.ListLink {
  margin-top: 14px;
}

.CardHorizontal__text+.CardHorizontal__text,
.Image+.CardHorizontal__text,
.List+.CardHorizontal__text,
.ListLink+.CardHorizontal__text {
  margin-top: 24px;
}

.CardHorizontal__text+.CardHorizontal__text {
  margin-top: 24px;
}

.CardHorizontal__text+.Image {
  margin-top: 24px;
}

/*.CardGraphic {
  .Image {
    //text-align: center;

    img {
      //max-width: 100%;
    }
  }

  .Js-ModalImage {
    + .ModalImage__link {
      margin-top: 20px;
    }
  }
}*/
.CardGraphic__heading {
  margin-bottom: 10px;
  letter-spacing: .03em;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #333;
}

.CardGraphic__headingLevel2 {
  display: inline-block;
  position: relative;
  padding-left: 24px;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #333;
}

.CardGraphic__headingLevel2::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 0;
  width: 6px;
  height: 6px;
  background: #333;
}

.CardGraphic__headingLevel2+.Image {
  margin-top: 12px;
}

/*.CardGraphic__body {
  .Image {
    + .List.-note {
      margin-top: 17px;
    }
  }
}*/
.CardGrid {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
}

.CardGrid+.Text.-note,
.CardGrid+.List.-note {
  margin-top: 13px;
}

.CardGrid+.Text,
.CardGrid+.List,
.CardGrid+.ListLink,
.CardGrid+.Box,
.CardGrid+.Button,
.CardGrid+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .CardGrid+.Text,
  .CardGrid+.List,
  .CardGrid+.ListLink,
  .CardGrid+.Box,
  .CardGrid+.Button,
  .CardGrid+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .CardGrid+.CardGrid,
  .CardGrid+.CardHorizontal,
  .CardGrid+.Grid,
  .CardGrid+.Figure,
  .CardGrid+.Definitionlist,
  .CardGrid+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .CardGrid+.CardGrid,
  .CardGrid+.CardHorizontal,
  .CardGrid+.Grid,
  .CardGrid+.Figure,
  .CardGrid+.Definitionlist,
  .CardGrid+.Media {
    margin-top: 28px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index.-column2 .CardGrid__item {
    margin-left: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .CardGrid.-index+.CardGrid.-index {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .CardGrid.-index+.CardGrid.-index {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index+.CardGrid.-index {
    margin-top: 30px;
  }
}

@media print, screen and (min-width: 560px) {
  .HeadingLevel2+.CardGrid.-index {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {
  .HeadingLevel2+.CardGrid.-index {
    margin-top: 28px;
  }
}

.CardGrid.-column1 {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-left: 0;
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column3 {
    width: 100%;
    margin-left: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column1SPView {
    width: 100%;
    margin-left: 0;
  }
}

.CardGrid.-zaxis {
  margin-left: 0;
}

.CardGrid.-zaxis .CardGrid__item {
  width: auto;
  margin: 24px 24px 0 0;
}

.CardGrid.-zaxis .CardGrid__item:nth-child(-n+1) {
  margin-top: 24px;
}

.SectionLevel3 .CardGrid.-zaxis .CardGrid__item {
  margin: 14px 24px 0 0;
}

.CardGrid.-zaxis .CardGrid__item .Image img {
  width: auto;
  max-height: 78px;
}

.CardGrid.-maxWidth40 {
  max-width: 40%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth50 {
  max-width: 50%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth60 {
  max-width: 60%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth70 {
  max-width: 70%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth80 {
  max-width: 80%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth90 {
  max-width: 90%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidth800 {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidthFull {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.CardGrid.-maxWidthFull img {
  width: 100%;
}

.CardGrid+.CardGrid {
  margin-top: 20px;
}

.CardGrid__item {
  height: 100%;
  text-align: center;
  margin-left: 24px;
}

@media only screen and (max-width: 559px) {
  .CardGrid__item {
    width: 100%;
  }
}

.CardGrid__item .List {
  text-align: left;
}

.CardGrid.-index .CardGrid__item {
  text-align: left;
}

@media print, screen and (min-width: 960px) {
  .CardGrid.-index .CardGrid__item {
    margin-top: 50px;
    width: calc((100% - 24px * 3) / 3);
    /* IE11 */
  }

  .CardGrid.-index .CardGrid__item _:-ms-lang(x), .CardGrid.-index .CardGrid__item {
    width: calc((100% - 25px * 3) / 3);
  }

  .CardGrid.-index .CardGrid__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .CardGrid.-index .CardGrid__item {
    margin-top: 40px;
    width: calc((100% - 24px * 2) / 2);
    /* IE11 */
  }

  .CardGrid.-index .CardGrid__item _:-ms-lang(x), .CardGrid.-index .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-index .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index .CardGrid__item {
    width: 100%;
    margin-left: 0;
    margin-top: 30px;
  }

  .CardGrid.-index .CardGrid__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .CardGrid.-index.-column2 .CardGrid__item {
    margin-top: 50px;
    width: calc((100% - 24px * 2) / 2);
    /* IE11 */
  }

  .CardGrid.-index.-column2 .CardGrid__item _:-ms-lang(x), .CardGrid.-index.-column2 .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-index.-column2 .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index.-column2 .CardGrid__item {
    width: 100%;
  }

  .CardGrid.-index.-column2 .CardGrid__item:not(:first-child) {
    margin-top: 30px;
  }
}

@media print, screen and (min-width: 560px) {
  .CardGrid.-index.-column3 .CardGrid__item {
    margin-top: 50px;
  }
}

@media print, screen and (min-width: 960px) {
  .CardGrid.-index.-column3 .CardGrid__item {
    width: calc((100% - 24px * 3) / 3);
    /* IE11 */
  }

  .CardGrid.-index.-column3 .CardGrid__item _:-ms-lang(x), .CardGrid.-index.-column3 .CardGrid__item {
    width: calc((100% - 25px * 3) / 3);
  }

  .CardGrid.-index.-column3 .CardGrid__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .CardGrid.-index.-column3 .CardGrid__item {
    width: calc((100% - 24px * 2) / 2);
    /* IE11 */
  }

  .CardGrid.-index.-column3 .CardGrid__item _:-ms-lang(x), .CardGrid.-index.-column3 .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-index.-column3 .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-index.-column3 .CardGrid__item {
    width: 100%;
  }

  .CardGrid.-index.-column3 .CardGrid__item:not(:first-child) {
    margin-top: 30px;
  }
}

.CardGrid .CardGrid__item:nth-child(-n+1) {
  margin-top: 0;
}

.CardGrid.-column1 .CardGrid__item {
  width: 100%;
  margin-top: 50px;
  margin-left: 0;
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column1 .CardGrid__item {
    width: 100%;
    margin-top: 30px;
  }
}

.CardGrid.-column1 .CardGrid__item:nth-child(-n+1) {
  margin-top: 0;
}

.CardGrid.-column2 .CardGrid__item {
  width: calc((100% - 24px * 2) / 2);
  margin-left: 24px;
  /* IE11 */
}

.CardGrid.-column2 .CardGrid__item _:-ms-lang(x), .CardGrid.-column2 .CardGrid__item {
  width: calc((100% - 25px * 2) / 2);
}

.CardGrid.-column2 .CardGrid__item:nth-child(-n+2) {
  margin-top: 0;
}

@media print, screen and (min-width: 560px) {
  .CardGrid.-column2 .CardGrid__item {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column2 .CardGrid__item {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column2.-column1SPView .CardGrid__item {
    width: 100%;
    margin-left: 0;
  }

  .CardGrid.-column2.-column1SPView .CardGrid__item:nth-child(-n+1) {
    margin-top: 0;
  }

  .CardGrid.-column2.-column1SPView .CardGrid__item:nth-child(2) {
    margin-top: 30px;
  }
}

@media print, screen and (min-width: 960px) {
  .CardGrid.-column3 .CardGrid__item {
    width: calc((100% - 24px * 3) / 3);
    /* IE11 */
  }

  .CardGrid.-column3 .CardGrid__item _:-ms-lang(x), .CardGrid.-column3 .CardGrid__item {
    width: calc((100% - 25px * 3) / 3);
  }

  .CardGrid.-column3 .CardGrid__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .CardGrid.-column3 .CardGrid__item {
    width: calc((100% - 24px * 2) / 2);
    /* IE11 */
  }

  .CardGrid.-column3 .CardGrid__item _:-ms-lang(x), .CardGrid.-column3 .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-column3 .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .CardGrid.-column3 .CardGrid__item {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column3 .CardGrid__item {
    margin-top: 30px;
    margin-left: 0;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column3.-column1SPView .CardGrid__item {
    width: 100%;
    margin-left: 0;
  }

  .CardGrid.-column3.-column1SPView .CardGrid__item:nth-child(-n+1) {
    margin-top: 0;
  }

  .CardGrid.-column3.-column1SPView .CardGrid__item:nth-child(2), .CardGrid.-column3.-column1SPView .CardGrid__item:nth-child(3) {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column3.-column2SPView .CardGrid__item {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
    /* IE11 */
  }

  .CardGrid.-column3.-column2SPView .CardGrid__item _:-ms-lang(x), .CardGrid.-column3.-column2SPView .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-column3.-column2SPView .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }

  .CardGrid.-column3.-column2SPView .CardGrid__item:nth-child(3) {
    margin-top: 30px;
  }
}

.CardGrid.-column4 .CardGrid__item {
  width: calc((100% - 24px * 4) / 4);
  /* IE11 */
}

.CardGrid.-column4 .CardGrid__item _:-ms-lang(x), .CardGrid.-column4 .CardGrid__item {
  width: calc((100% - 25px * 4) / 4);
}

.CardGrid.-column4 .CardGrid__item:nth-child(-n+4) {
  margin-top: 0;
}

@media print, screen and (min-width: 560px) {
  .CardGrid.-column4 .CardGrid__item {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column4 .CardGrid__item {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column4.-column1SPView .CardGrid__item {
    width: 100%;
    margin-left: 0;
    margin-left: 24px;
  }

  .CardGrid.-column4.-column1SPView .CardGrid__item:nth-child(-n+1) {
    margin-top: 0;
  }

  .CardGrid.-column4.-column1SPView .CardGrid__item:nth-child(2), .CardGrid.-column4.-column1SPView .CardGrid__item:nth-child(3), .CardGrid.-column4.-column1SPView .CardGrid__item:nth-child(4) {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CardGrid.-column4.-column2SPView .CardGrid__item {
    width: calc((100% - 24px * 2) / 2);
    /* IE11 */
  }

  .CardGrid.-column4.-column2SPView .CardGrid__item _:-ms-lang(x), .CardGrid.-column4.-column2SPView .CardGrid__item {
    width: calc((100% - 25px * 2) / 2);
  }

  .CardGrid.-column4.-column2SPView .CardGrid__item:nth-child(-n+2) {
    margin-top: 0;
  }

  .CardGrid.-column4.-column2SPView .CardGrid__item:nth-child(3), .CardGrid.-column4.-column2SPView .CardGrid__item:nth-child(4) {
    margin-top: 30px;
  }
}

.CardGrid .Box,
.CardHorizontal .Box {
  margin-top: 0;
}

.Card__button {
  width: 117px;
  margin-top: 25px;
  border: 1px solid #008486;
  background-color: #fff;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Card__button:hover {
  opacity: .8;
}

a.Card__buttonInner {
  display: block;
  width: 100%;
  padding: 10px 26px;
  text-decoration: none;
}

.Card__buttonText {
  position: relative;
  display: inline-block;
  padding-left: 22px;
  color: #008486;
  font-size: 1.6rem;
  line-height: 1.5;
  vertical-align: middle;
}

.Card__buttonText::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

/* ===== Image ===== */
.Image {
  width: 100%;
}

.Image img {
  max-width: 100%;
  height: auto;
}

.Image a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Image a:hover, .Image a:focus {
  cursor: pointer;
  opacity: .8;
}

.Js-PopupImage {
  display: inline-block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Js-PopupImage:hover img {
  opacity: .8;
}

.SDGsIconWrap {
  width: 100%;
}

.SDGsIconWrap img {
  width: auto;
  height: 70px;
}

.SDGsIconWrap.-size02 img {
  width: auto;
  height: 140px;
}

/* ===== Icon ===== */
.IconBlank,
.IconPdf,
.IconZip,
.IconExcel,
.IconModal,
.IconCorporationLogo,
.IconCorporationLogoCOJP,
.IconGnetwork,
.IconBackArrow,
.IconFooterFacebook,
.IconFooterYouTube,
.IconFooterLinkedIn,
.IconLogoFacebook,
.IconLogoTwitter,
.IconLogoInstagram,
.IconLogoYoutube,
.IconLogoLinkedIn {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  line-height: 1;
}

.IconBlank {
  margin-left: 16px;
  margin-bottom: 3px;
  width: 20px;
  height: 15px;
  background: url(/assets/images/icons/link_blank_green.svg) 0 0 no-repeat;
  background-size: 20px 15px;
}

.Button .IconBlank,
.Hero .IconBlank,
.Footer__inner .IconBlank {
  background: url(/assets/images/icons/link_blank_white.svg) 0 0 no-repeat;
}

.IconPdf {
  width: 22px;
  height: 24px;
  margin-left: 16px;
  background: url(/assets/images/icons/link_pdf_green.svg) 0 0 no-repeat;
}

.Button .IconPdf {
  background: url(/assets/images/icons/link_pdf_white.svg) 0 0 no-repeat;
}

.IconZip {
  width: 22px;
  height: 24px;
  margin-left: 16px;
  background: url(/assets/images/icons/link_zip_green.svg) 0 0 no-repeat;
}

.Button .IconZip {
  background: url(/assets/images/icons/link_zip_white.svg) 0 0 no-repeat;
}

.IconExcel {
  width: 22px;
  height: 24px;
  margin-left: 16px;
  background: url(/assets/images/icons/link_excel_green.svg) 0 0 no-repeat;
}

.Button .IconExcel {
  background: url(/assets/images/icons/link_excel_white.svg) 0 0 no-repeat;
}

.IconModal {
  width: 16.5px;
  height: 16.5px;
  margin-left: 16px;
  overflow: hidden;
  line-height: 1;
  background: url(/assets/images/icons/link_modal.svg) 0 0 no-repeat;
}

.IconZoom {
  position: relative;
  display: inline-block;
  width: 23px;
  height: 23px;
  margin-left: 16px;
  overflow: hidden;
  line-height: 1;
  vertical-align: top;
  background: url(/assets/images/icons/link_zoom.svg) 0 0 no-repeat;
}

.IconCorporationLogo {
  width: 180px;
  height: 40px;
  background: url(../images/logo_kubota.svg) 0 0 no-repeat;
}

@media only screen and (max-width: 959px) {
  .IconCorporationLogo {
    width: 160px;
    height: 35px;
  }
}

@media only screen and (max-width: 599px) {
  .IconCorporationLogo {
    width: 130px;
    height: 29px;
  }
}

.IconCorporationLogoCOJP {
  width: 140px;
  height: 24px;
  background: url(/assets/images/icons/logo_kubota_cojp.svg) 0 0 no-repeat;
}

.IconGnetwork {
  width: 22px;
  height: 22px;
  background: url(/assets/images/icons/header_gnetwork.svg) 0 0 no-repeat;
}

.IconBackArrow {
  width: 9px;
  height: 9px;
  margin-bottom: 2px;
  background: url(/assets/images/icons/arrow_back.svg) 0 0 no-repeat;
}

.IconLogoFacebook {
  width: 26px;
  height: 26px;
  background: url(/assets/images/icons/facebook_icon.svg) 0 0 no-repeat;
}

.IconLogoTwitter {
  width: 30px;
  height: 25px;
  background: url(/assets/images/icons/twitter_icon.svg) 0 0 no-repeat;
}

.IconLogoInstagram {
  width: 26px;
  height: 26px;
  background: url(/assets/images/icons/instagram_icon.png) 0 0 no-repeat;
  background-size: 26px 26px;
}

.IconLogoYoutube {
  width: 35px;
  height: 24px;
  background: url(/assets/images/icons/youtube_icon.svg) 0 0 no-repeat;
}

.IconLogoLinkedIn {
  width: 35px;
  height: 24px;
  background: url(/assets/images/icons/linkedin_logo.svg) 0 0 no-repeat;
}

/* ===== Media ===== */
.Media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.Media__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  width: 100%;
  margin-top: 19px;
}

@media only screen and (max-width: 559px) {
  .Media__body {
    margin-top: 10px;
  }
}

.Media__body .ListLink:first-child {
  margin-top: 0;
}

.Media__body .ListLink+.Media__text {
  margin-top: 14px;
}

.Media__heading {
  margin: 0;
  color: #333;
  font-weight: normal;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Media__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Media__heading {
    font-size: 1.6rem;
  }
}

.Media__heading a:hover {
  text-decoration: underline;
}

.Media__heading a .Link__text::after {
  content: "";
  display: inline-block;
  width: .6em;
  height: .6em;
  border-top: solid 1px #008486;
  border-right: solid 1px #008486;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.MediaHorizontal__heading {
  margin: 0;
  color: #333;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media only screen and (max-width: 559px) {
  .MediaHorizontal__heading {
    font-size: 1.7rem;
  }
}

.Media__text,
.MediaHorizontal__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Media__heading+.Media__text,
.MediaHorizontal__heading+.Media__text, .Media__heading+.MediaHorizontal__text,
.MediaHorizontal__heading+.MediaHorizontal__text {
  margin-top: 10px;
}

.Media__text+.ListLink,
.MediaHorizontal__text+.ListLink {
  margin-top: 14px;
}

.SectionLevel2 .Media__body .Media__text+.ListLink {
  margin-top: 14px;
}

.Media__image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  height: 100%;
}

.Media__image.-noLink .Image::after {
  display: none;
}

.Media__image .Image {
  position: relative;
}

.Media__image .Image::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 31px;
  height: 25px;
  background: url(/assets/images/icons/arrow_video.svg) 0 0 no-repeat;
  background-size: 31px 25px;
  z-index: 1;
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
}

.Media__image a {
  display: block;
}

.Media__image a:hover {
  opacity: .7;
}

.Media .Media__image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.Media__contentGroup {
  position: relative;
  margin-top: 28px;
  padding-top: 26px;
}

@media only screen and (max-width: 559px) {
  .Media__contentGroup {
    margin-top: 16px;
    padding-top: 16px;
  }
}

.Media__contentGroup::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #008486;
}

.MediaHorizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 559px) {
  .MediaHorizontal {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.MediaHorizontal__body {
  -webkit-box-flex: 2;
  -ms-flex: 2;
  flex: 2;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

@media print, screen and (min-width: 560px) {
  .MediaHorizontal__body {
    margin-left: 12px;
  }
}

@media only screen and (max-width: 559px) {
  .MediaHorizontal__body {
    margin-top: 15px;
  }
}

.MediaHorizontal__image {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin-right: 12px;
}

.Media__iframe {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.Media__iframe iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border: none;
}

@media print, screen and (min-width: 668px) {
  .Media__iframe.sml iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 70%;
    height: 70%;
    border: none;
  }
}

/* ===== Definitionlist ===== */
.Definitionlist {
  color: #333;
}

.Definitionlist+.Text.-note,
.Definitionlist+.List.-note {
  margin-top: 13px;
}

.Definitionlist+.Text,
.Definitionlist+.List,
.Definitionlist+.ListLink,
.Definitionlist+.Box,
.Definitionlist+.Button,
.Definitionlist+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .Definitionlist+.Text,
  .Definitionlist+.List,
  .Definitionlist+.ListLink,
  .Definitionlist+.Box,
  .Definitionlist+.Button,
  .Definitionlist+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .Definitionlist+.CardGrid,
  .Definitionlist+.CardHorizontal,
  .Definitionlist+.Grid,
  .Definitionlist+.Figure,
  .Definitionlist+.Definitionlist,
  .Definitionlist+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .Definitionlist+.CardGrid,
  .Definitionlist+.CardHorizontal,
  .Definitionlist+.Grid,
  .Definitionlist+.Figure,
  .Definitionlist+.Definitionlist,
  .Definitionlist+.Media {
    margin-top: 28px;
  }
}

.Definitionlist+.Definitionlist {
  margin-top: 22px;
}

.Box .Definitionlist+.Text.-note,
.Box .Definitionlist+.List.-note {
  margin-top: 13px;
}

.Box .Definitionlist+.Text,
.Box .Definitionlist+.List,
.Box .Definitionlist+.ListLink,
.Box .Definitionlist+.Box,
.Box .Definitionlist+.Button,
.Box .Definitionlist+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .Box .Definitionlist+.Text,
  .Box .Definitionlist+.List,
  .Box .Definitionlist+.ListLink,
  .Box .Definitionlist+.Box,
  .Box .Definitionlist+.Button,
  .Box .Definitionlist+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .Box .Definitionlist+.CardGrid,
  .Box .Definitionlist+.CardHorizontal,
  .Box .Definitionlist+.Grid,
  .Box .Definitionlist+.Figure,
  .Box .Definitionlist+.Definitionlist,
  .Box .Definitionlist+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .Box .Definitionlist+.CardGrid,
  .Box .Definitionlist+.CardHorizontal,
  .Box .Definitionlist+.Grid,
  .Box .Definitionlist+.Figure,
  .Box .Definitionlist+.Definitionlist,
  .Box .Definitionlist+.Media {
    margin-top: 28px;
  }
}

.Box__heading .Definitionlist+ {
  margin-top: 20px;
}

.Definitionlist.-nextHeadingLevel01 {
  margin-top: 38px;
}

.Definitionlist.-nextHeadingLevel01 .Definitionlist__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Definitionlist.-nextHeadingLevel01 .Definitionlist__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Definitionlist.-nextHeadingLevel01 .Definitionlist__heading {
    font-size: 1.6rem;
  }
}

.Definitionlist.-error404 .Definitionlist__heading {
  font-weight: bold;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Definitionlist.-error404 .Definitionlist__text {
  margin-top: 22px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Definitionlist__heading {
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Definitionlist__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Definitionlist__heading {
    font-size: 1.6rem;
  }
}

.Definitionlist__heading+.Definitionlist {
  margin-top: 22px;
}

.Table .Definitionlist__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Table .Definitionlist__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Table .Definitionlist__heading {
    font-size: 1.6rem;
  }
}

.Definitionlist__headingLevel2 {
  margin-bottom: 16px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Definitionlist__body {
  margin-top: 18px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Definitionlist__body+.Definitionlist__heading {
  margin-top: 35px;
}

.Definitionlist__body+.Definitionlist__headingLevel2 {
  margin-top: 24px;
}

.Definitionlist__body .Text:nth-of-type(1),
.Definitionlist__body .List:nth-of-type(1),
.Definitionlist__body .ListLink:nth-of-type(1),
.Definitionlist__body .Box:nth-of-type(1),
.Definitionlist__body .Definitionlist:nth-of-type(1) {
  margin-top: 0;
}

/* ===== Box ===== */
.Box {
  padding: 37px 40px;
  word-wrap: break-word;
  background-color: #f5f5f5;
}

.Box+.Text.-note,
.Box+.List.-note {
  margin-top: 13px;
}

.Box+.Text,
.Box+.List,
.Box+.ListLink,
.Box+.Box,
.Box+.Button,
.Box+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .Box+.Text,
  .Box+.List,
  .Box+.ListLink,
  .Box+.Box,
  .Box+.Button,
  .Box+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .Box+.CardGrid,
  .Box+.CardHorizontal,
  .Box+.Grid,
  .Box+.Figure,
  .Box+.Definitionlist,
  .Box+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .Box+.CardGrid,
  .Box+.CardHorizontal,
  .Box+.Grid,
  .Box+.Figure,
  .Box+.Definitionlist,
  .Box+.Media {
    margin-top: 28px;
  }
}

.IndexList+.Box.-list {
  margin-top: 40px;
}

.Box.-withHeadingLevel1 {
  margin-top: 38px;
}

.List+.Box.-acrobatReader,
.ListLink+.Box.-acrobatReader {
  margin-top: 66px;
}

@media print, screen and (min-width: 560px) {
  .Box.-contact {
    margin-top: 90px;
  }
}

@media only screen and (max-width: 559px) {
  .Box.-contact {
    margin-top: 60px;
  }
}

@media print, screen and (min-width: 560px) {
  .Box.-contactMulti {
    margin-top: 90px;
  }
}

@media only screen and (max-width: 559px) {
  .Box.-contactMulti {
    margin-top: 60px;
  }
}

.Box .Text:first-child {
  margin-top: 0;
}

.Box .Text+.Text {
  margin-top: 16px;
}

.Box .Text+.Text.-note {
  margin-top: 12px;
}

.Box .List:first-child,
.Box .ListLink:first-child,
.Box .Definitionlist:first-child {
  margin-top: 0;
}

.Box .Definitionlist__body .Text:first-child {
  margin-top: 0;
}

.Box+.Box__nextNote {
  margin-top: 5px;
  text-align: right;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Box__heading {
  margin-bottom: 24px;
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Box__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Box__heading {
    font-size: 1.6rem;
  }
}

.Box__heading+dd .Definitionlist__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Box__heading+dd .Definitionlist__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Box__heading+dd .Definitionlist__heading {
    font-size: 1.6rem;
  }
}

.Box.-withHeadingLevel1 .Box__heading {
  font-size: 2.6rem;
  line-height: 1.4;
}

@media only screen and (max-width: 559px) {
  .Box.-withHeadingLevel1 .Box__heading {
    font-size: 2.4rem;
  }
}

.BoxList__head {
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .BoxList__head {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .BoxList__head {
    font-size: 1.6rem;
  }
}

.BoxList__head+.BoxList__body {
  margin-top: 20px;
}

.BoxList__body .List+.Text,
.BoxList__body .List+.List,
.BoxList__body .List+.ListLink,
.BoxList__body .List+.Box,
.BoxList__body .List+.Button,
.BoxList__body .List+.Js-Scrollable__wrap,
.BoxList__body .ListLink+.Text,
.BoxList__body .ListLink+.List,
.BoxList__body .ListLink+.ListLink,
.BoxList__body .ListLink+.Box,
.BoxList__body .ListLink+.Button,
.BoxList__body .ListLink+.Js-Scrollable__wrap,
.BoxList__body .ListHorizontal+.Text,
.BoxList__body .ListHorizontal+.List,
.BoxList__body .ListHorizontal+.ListLink,
.BoxList__body .ListHorizontal+.Box,
.BoxList__body .ListHorizontal+.Button,
.BoxList__body .ListHorizontal+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .BoxList__body .List+.Text,
  .BoxList__body .List+.List,
  .BoxList__body .List+.ListLink,
  .BoxList__body .List+.Box,
  .BoxList__body .List+.Button,
  .BoxList__body .List+.Js-Scrollable__wrap,
  .BoxList__body .ListLink+.Text,
  .BoxList__body .ListLink+.List,
  .BoxList__body .ListLink+.ListLink,
  .BoxList__body .ListLink+.Box,
  .BoxList__body .ListLink+.Button,
  .BoxList__body .ListLink+.Js-Scrollable__wrap,
  .BoxList__body .ListHorizontal+.Text,
  .BoxList__body .ListHorizontal+.List,
  .BoxList__body .ListHorizontal+.ListLink,
  .BoxList__body .ListHorizontal+.Box,
  .BoxList__body .ListHorizontal+.Button,
  .BoxList__body .ListHorizontal+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

.BoxSigunature__heading {
  margin-bottom: 24px;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .BoxSigunature__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .BoxSigunature__heading {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 559px) {
  .BoxSigunature__heading {
    margin-bottom: 26px;
  }
}

.BoxSigunature__body {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.BoxSigunature__body .Text+.ListLink {
  margin-top: 24px;
}

@media only screen and (max-width: 559px) {
  .BoxSigunature__body .Text+.ListLink {
    margin-top: 26px;
  }
}

.BoxSigunature__body .Link {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.BoxSigunature__end {
  margin-top: 24px;
  text-align: right;
}

@media only screen and (max-width: 559px) {
  .BoxSigunature__end {
    margin-top: 26px;
  }
}

.BoxContact+.BoxContact {
  margin-top: 32px;
}

.BoxContact+.ListLink,
.BoxContact+.ListLink:first-child {
  margin-top: 16px;
}

.BoxContact__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .BoxContact__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .BoxContact__heading {
    font-size: 1.6rem;
  }
}

.BoxContact__body {
  margin-top: 14px;
}

.BoxContact__body .BoxContact__list {
  list-style: none;
}

.BoxContact__body .BoxContact__list li {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.BoxContact__body .BoxContact__list li:not(:first-child) {
  margin-top: 6px;
}

.BoxAcrobatReader {
  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: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

@media only screen and (max-width: 559px) {
  .BoxAcrobatReader {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.BoxAcrobatReader__body {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 560px) {
  .BoxAcrobatReader__body {
    margin-left: 16px;
  }
}

@media only screen and (max-width: 559px) {
  .BoxAcrobatReader__body {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 18px;
  }
}

.BoxAcrobatReader__image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.BoxAcrobatReader__image img {
  width: 159px;
  height: 39px;
}

/* ===== ApplicationBox ===== */
.ApplicationBox {
  margin-top: 50px;
  padding: 45px 50px;
  text-align: center;
  border: 1px solid #008486;
}

@media only screen and (max-width: 559px) {
  .ApplicationBox {
    padding: 24px 25px;
  }
}

.ApplicationBox p {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .ApplicationBox p {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .ApplicationBox p {
    font-size: 1.6rem;
  }
}

/* ===== Grid ===== */
.Grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
  list-style-type: none;
  /* IE11 */
}

@media only screen and (max-width: 559px) {
  .Grid {
    margin-left: -25px;
  }
}

.Grid _:-ms-lang(x), .Grid {
  margin-left: -25px;
}

@media only screen and (max-width: 559px) {
  .Grid _:-ms-lang(x), .Grid {
    margin-left: -26px;
  }
}

.Grid+.Text.-note,
.Grid+.List.-note {
  margin-top: 13px;
}

@media print, screen and (min-width: 560px) {

  .Grid+.Text,
  .Grid+.List,
  .Grid+.ListLink,
  .Grid+.Box,
  .Grid+.Button,
  .Grid+.Js-Scrollable__wrap {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .Grid+.Text,
  .Grid+.List,
  .Grid+.ListLink,
  .Grid+.Box,
  .Grid+.Button,
  .Grid+.Js-Scrollable__wrap {
    margin-top: 28px;
  }
}

.Grid .CardGrid,
.Grid .CardHorizontal,
.Grid .Grid {
  margin-top: 0;
}

.Grid .Box {
  margin-top: 0;
}

.Grid__item {
  margin-top: 56px;
  margin-left: 24px;
}

@media only screen and (max-width: 559px) {
  .Grid__item {
    margin-top: 40px;
    margin-left: 25px;
  }
}

.-column1 .Grid__item:nth-child(-n+1) {
  margin-top: 0;
}

.-column1 .Grid__item {
  width: 100%;
}

.-column2 .Grid__item {
  width: calc((100% - 24px * 2) / 2);
  /* IE11 */
}

.-column2 .Grid__item:nth-child(-n+2) {
  margin-top: 0;
}

@media only screen and (max-width: 559px) {
  .-column2 .Grid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

.-column2 .Grid__item _:-ms-lang(x), .-column2 .Grid__item {
  width: calc((100% - 25px * 2) / 2);
}

@media only screen and (max-width: 559px) {
  .-column2 .Grid__item _:-ms-lang(x), .-column2 .Grid__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

.-column3 .Grid__item {
  /* IE11 */
}

.-column3 .Grid__item:nth-child(-n+3) {
  margin-top: 0;
}

@media print, screen and (min-width: 960px) {
  .-column3 .Grid__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column3 .Grid__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .-column3 .Grid__item {
    width: 100%;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .-column3 .Grid__item _:-ms-lang(x), .-column3 .Grid__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column3 .Grid__item _:-ms-lang(x), .-column3 .Grid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .-column3 .Grid__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column3 .Grid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .-column3 .Grid__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

.-column4 .Grid__item {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .-column4 .Grid__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column4 .Grid__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .-column4 .Grid__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .-column4 .Grid__item {
    width: calc((100% - 24px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column4 .Grid__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .-column4 .Grid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

.-column4 .Grid__item _:-ms-lang(x), .-column4 .Grid__item {
  width: calc((100% - 25px * 4) / 4);
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column4 .Grid__item _:-ms-lang(x), .-column4 .Grid__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .-column4 .Grid__item _:-ms-lang(x), .-column4 .Grid__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

@media only screen and (max-width: 959px) {
  .-column1SPView .Grid__item {
    width: 100%;
  }
}

@media only screen and (max-width: 559px) {
  .-column1SPView .Grid__item:not(:first-child) {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 559px) {
  .-column1SPView .Grid__item {
    width: 100%;
    margin-left: 0;
  }
}

@media only screen and (max-width: 959px) {
  .-column1TBView .Grid__item {
    width: 100%;
  }
}

@media only screen and (max-width: 959px) {
  .-column1TBView .Grid__item:not(:first-child) {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 959px) {
  .-column1TBView .Grid__item {
    width: 100%;
    margin-left: 0;
  }
}

.-column2TBView .Grid__item {
  /* IE11 */
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column2TBView .Grid__item:not(:nth-child(-n+2)) {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column2TBView .Grid__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .-column2TBView .Grid__item _:-ms-lang(x), .-column2TBView .Grid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

.-column2SPView .Grid__item {
  /* IE11 */
}

@media only screen and (max-width: 559px) {
  .-column2SPView .Grid__item:not(:nth-child(-n+2)) {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 559px) {
  .-column2SPView .Grid__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .-column2SPView .Grid__item _:-ms-lang(x), .-column2SPView .Grid__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

@media only screen and (max-width: 959px) {
  .Grid.-column1TBView {
    margin-left: 0;
  }
}

@media only screen and (max-width: 959px) {
  .Grid.-column1TBView .Image {
    text-align: center;
  }
}

@media only screen and (max-width: 559px) {
  .Grid.-column1SPView {
    margin-left: 0;
  }
}

@media only screen and (max-width: 559px) {
  .Grid.-column1SPView .Image {
    text-align: center;
  }
}

/* ===== Modal ===== */
.ModalText,
.ModalImage,
.ModalGallery,
.ModalVideo,
.ModalYoutube {
  overflow-y: hidden;
}

.ModalText.mfp-bg,
.ModalImage.mfp-bg,
.ModalGallery.mfp-bg,
.ModalVideo.mfp-bg,
.ModalYoutube.mfp-bg {
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  background-color: #333333;
}

.ModalText.mfp-bg.mfp-ready,
.ModalImage.mfp-bg.mfp-ready,
.ModalGallery.mfp-bg.mfp-ready,
.ModalVideo.mfp-bg.mfp-ready,
.ModalYoutube.mfp-bg.mfp-ready {
  opacity: 1;
}

.ModalText.mfp-bg.mfp-removing,
.ModalImage.mfp-bg.mfp-removing,
.ModalGallery.mfp-bg.mfp-removing,
.ModalVideo.mfp-bg.mfp-removing,
.ModalYoutube.mfp-bg.mfp-removing {
  opacity: 0;
}

.ModalText .mfp-container,
.ModalImage .mfp-container,
.ModalGallery .mfp-container,
.ModalVideo .mfp-container,
.ModalYoutube .mfp-container {
  padding: 0;
}

.ModalText .mfp-container:hover,
.ModalImage .mfp-container:hover,
.ModalGallery .mfp-container:hover,
.ModalVideo .mfp-container:hover,
.ModalYoutube .mfp-container:hover {
  cursor: pointer;
}

.ModalText.mfp-wrap.mfp-ready .mfp-content,
.ModalImage.mfp-wrap.mfp-ready .mfp-content,
.ModalGallery.mfp-wrap.mfp-ready .mfp-content,
.ModalVideo.mfp-wrap.mfp-ready .mfp-content,
.ModalYoutube.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.ModalText.mfp-wrap.mfp-removing .mfp-content,
.ModalImage.mfp-wrap.mfp-removing .mfp-content,
.ModalGallery.mfp-wrap.mfp-removing .mfp-content,
.ModalVideo.mfp-wrap.mfp-removing .mfp-content,
.ModalYoutube.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

@media only screen and (max-width: 559px) {

  .ModalText.mfp-wrap,
  .ModalImage.mfp-wrap,
  .ModalGallery.mfp-wrap,
  .ModalVideo.mfp-wrap,
  .ModalYoutube.mfp-wrap {
    position: fixed !important;
    top: 0 !important;
  }
}

.ModalText.mfp-wrap .mfp-content,
.ModalImage.mfp-wrap .mfp-content,
.ModalGallery.mfp-wrap .mfp-content,
.ModalVideo.mfp-wrap .mfp-content,
.ModalYoutube.mfp-wrap .mfp-content {
  height: auto !important;
  padding: 0;
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.ModalText.mfp-wrap .mfp-content:hover,
.ModalImage.mfp-wrap .mfp-content:hover,
.ModalGallery.mfp-wrap .mfp-content:hover,
.ModalVideo.mfp-wrap .mfp-content:hover,
.ModalYoutube.mfp-wrap .mfp-content:hover {
  cursor: default;
}

.ModalText .mfp-content,
.ModalImage .mfp-content,
.ModalGallery .mfp-content,
.ModalVideo .mfp-content,
.ModalYoutube .mfp-content {
  width: 100%;
}

.ModalText .mfp-close,
.ModalImage .mfp-close,
.ModalGallery .mfp-close,
.ModalVideo .mfp-close,
.ModalYoutube .mfp-close {
  opacity: 1;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.ModalText .mfp-close:hover,
.ModalImage .mfp-close:hover,
.ModalGallery .mfp-close:hover,
.ModalVideo .mfp-close:hover,
.ModalYoutube .mfp-close:hover {
  opacity: .8;
}

.ModalText .mfp-content,
.ModalImage .mfp-content,
.ModalGallery .mfp-content,
.ModalVideo .mfp-content,
.ModalYoutube .mfp-content {
  padding: 40px 30px !important;
}

@media only screen and (max-width: 559px) {

  .ModalText .mfp-content,
  .ModalImage .mfp-content,
  .ModalGallery .mfp-content,
  .ModalVideo .mfp-content,
  .ModalYoutube .mfp-content {
    padding: 40px 0 !important;
  }
}

.Modal__inner {
  position: relative;
}

.Modal__inner:hover {
  cursor: pointer;
}

.Modal__content {
  max-width: 1600px;
  margin: 76px 50px;
}

@media only screen and (min-width: 1601px) {
  .Modal__content {
    margin: 0 auto;
  }
}

@media only screen and (max-width: 559px) {
  .Modal__content {
    margin: 70px 30px;
  }
}

@media only screen and (max-width: 559px) {
  .Modal__content {
    margin: 70px 15px;
  }
}

.Modal__button {
  position: absolute;
  top: -76px;
  right: 0;
  width: 56px !important;
  height: 56px !important;
  text-align: right;
}

@media only screen and (max-width: 559px) {
  .Modal__button {
    top: -70px;
    right: 30px;
    width: 50px !important;
    height: 50px !important;
  }
}

.Modal__buttonInner.mfp-close {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  right: 0 !important;
  text-decoration: none;
  text-align: center;
  padding: 0 !important;
  font-style: normal;
  font-size: 0;
  line-height: 1;
  opacity: 1;
  cursor: pointer !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid #fff;
}

.Modal__buttonInner.mfp-close:focus {
  opacity: .6;
}

.Modal__buttonInner.mfp-close::before, .Modal__buttonInner.mfp-close::after {
  content: "";
  position: absolute;
  top: 17px;
  left: 26px;
  width: 1px;
  height: 20px;
  background-color: #fff;
}

@media only screen and (max-width: 559px) {
  .Modal__buttonInner.mfp-close::before, .Modal__buttonInner.mfp-close::after {
    top: 14px;
    left: 24px;
    height: 18px;
  }
}

.Modal__buttonInner.mfp-close::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.Modal__buttonInner.mfp-close::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.Modal__title {
  margin-top: 15px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #fff;
}

.ModalVideo .mfp-inline-holder.mfp-container {
  overflow-y: auto;
}

.ModalVideo .mfp-inline-holder .mfp-close {
  top: 0;
}

.ModalText__content {
  background-color: #fff;
}

.ModalText__contentInner {
  padding: 60px 24px;
}

.ModalText__contentInner>.SectionLevel2,
.ModalText__contentInner>.SectionLevel3 {
  padding-top: 0;
}

.ModalYoutube .mfp-iframe-holder.mfp-container {
  overflow-y: auto;
}

.ModalYoutube .mfp-iframe-holder .mfp-close {
  top: 0;
}

.ModalYoutube__iframe {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  text-align: left;
  background-color: #000;
}

.ModalYoutube__iframe iframe {
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  border: none;
}

.ModalVideo .mfp-container {
  padding: 40px 30px;
}

@media only screen and (max-width: 559px) {
  .ModalVideo .mfp-container {
    padding: 40px 0;
  }
}

.ModalVideo video {
  width: 100%;
}

.ModalImage .mfp-img,
.ModalGallery .mfp-img {
  padding: 0;
}

.ModalImage .mfp-image-holder .mfp-content {
  max-width: 1600px;
}

.ModalImage .Modal__img {
  background: transparent;
}

.Modal__imgInner {
  background-color: #fff;
}

@media print, screen and (min-width: 960px) {
  .Modal__imgInner {
    padding: 40px;
  }
}

@media only screen and (max-width: 959px) {
  .Modal__imgInner {
    padding: 20px;
  }
}

.ModalGallery .mfp-container {
  position: absolute;
  width: auto;
  height: auto;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin: 20px 0;
  padding: 0;
}

.ModalGallery .mfp-arrow {
  width: 30px;
  height: 80px;
  margin: 0;
  padding: 0;
  opacity: 1;
  border: none;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.ModalGallery .mfp-arrow:hover {
  opacity: .8;
  margin: 0;
  padding: 0;
}

.ModalGallery .mfp-arrow::before {
  margin: 0;
  padding: 0;
  opacity: 1;
  width: 30px;
  height: 80px;
  border: none;
}

.ModalGallery .mfp-arrow::after {
  display: none;
}

.ModalGallery .mfp-arrow-left {
  left: -84px;
}

.ModalGallery .mfp-arrow-left::before {
  background: url(/assets/images/icons/arrow_modal_gallery_prev.svg) 0 0 no-repeat;
}

.ModalGallery .mfp-arrow-right {
  right: -84px;
}

.ModalGallery .mfp-arrow-right::before {
  background: url(/assets/images/icons/arrow_modal_gallery_next.svg) 0 0 no-repeat;
}

.Js-ModalImage {
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Js-ModalImage:hover, .Js-ModalImage:focus {
  cursor: pointer;
  opacity: .8;
}

.Js-ModalImage .Image+.ModalImage__link {
  margin-top: 14px;
}

.ModalImage__link {
  text-align: left;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #008486;
}

.ModalImage__link:link {
  color: #008486;
  text-decoration: none;
}

.ModalImage__link:visited {
  color: #471f99;
  text-decoration: none;
}

.ModalImage__link:hover, .ModalImage__link:focus {
  color: #00a8a9;
  text-decoration: none;
}

.ModalImage__link:active {
  color: #008486;
  text-decoration: none;
}

.ModalImage__linkText {
  text-decoration: underline;
}

/* ===== Table ===== */
.Js-Scrollable__wrap {
  position: relative;
}

@media print, screen and (min-width: 560px) {

  .CardGrid .Js-Scrollable__wrap,
  .CardHorizontal .Js-Scrollable__wrap,
  .Grid .Js-Scrollable__wrap {
    margin-top: 0;
  }
}

.Js-Scrollable__wrap+.Text,
.Js-Scrollable__wrap+.Box,
.Js-Scrollable__wrap+.Js-Scrollable__wrap {
  margin-top: 24px;
}

.Js-Scrollable__wrap+.List,
.Js-Scrollable__wrap+.ListLink {
  margin-top: 15px;
}

.Js-Scrollable__wrap+.Definitionlist {
  margin-top: 42px;
}

.ProductInfo__sectionBody .Js-Scrollable__wrap {
  margin-top: 20px;
}

.Table {
  width: 100%;
  border-spacing: 0;
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  overflow: auto;
}

.Table .Link,
.Table .List {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Table th,
.Table td {
  position: relative;
  padding: 20px 15px 21px;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Table th::before,
.Table td::before {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  background-color: #dedede;
  top: 0;
  left: 0;
}

.Table th .List,
.Table td .List {
  margin-top: 0;
}

.Table th .List+.List,
.Table td .List+.List {
  margin-top: 8px;
}

.Table th .Text,
.Table td .Text {
  margin-top: 0;
}

.Table th .Text+.Text,
.Table td .Text+.Text {
  margin-top: 8px;
}

.Table th {
  position: relative;
  text-align: left;
  vertical-align: middle;
  font-weight: bold;
  color: #333;
  background: #fff url(/assets/images/table/img_table_border.gif) no-repeat left top/1px 100%;
}

.Table th.Tabel__parentTh {
  padding: 20px 15px 21px 27px;
  background: #fff url(/assets/images/table/img_table_border_parentth.gif) no-repeat left top/8px 100%;
}

.Table td {
  text-align: left;
  vertical-align: middle;
  background: #f5f5f5 url(/assets/images/table/img_table_border.gif) no-repeat left top/1px 100%;
}

.Table td.Table__tdImageCenter {
  text-align: center;
  vertical-align: middle;
  background-color: #fff;
}

.Table td .Text:nth-of-type(1),
.Table td .List:nth-of-type(1),
.Table td .ListLink:nth-of-type(1),
.Table td .Box:nth-of-type(1),
.Table td .Definitionlist:nth-of-type(1) {
  margin-top: 0;
}

.Table .Table__tdImageCenterHeading+.Table__tdImageCenterImage {
  margin-top: 20px;
}

.Table .Table__tdImageCenterImage .Image {
  width: auto;
}

@media only screen and (max-width: 559px) {
  .Table .Table__tdSPViewWidth50 {
    width: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .Table .Table__tdSPViewWidth100 {
    width: 100px;
  }
}

@media only screen and (max-width: 559px) {
  .Table .Table__tdSPViewWidth200 {
    width: 200px;
  }
}

.Table .-right {
  text-align: right;
}

.Table .-left {
  text-align: left;
}

.Table .-center {
  text-align: center;
}

.Table.-sizeS th,
.Table.-sizeS td {
  font-size: 1.2rem;
}

.Table.-sizeS .Text,
.Table.-sizeS .List,
.Table.-sizeS .Link {
  font-size: 1.2rem;
}

@media print, screen and (min-width: 560px) {

  .Table.-sizeS.-activeSP th,
  .Table.-sizeS.-activeSP td {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 559px) {

  .Table.-sizeS.-activeSP th,
  .Table.-sizeS.-activeSP td {
    padding: 10px 8px 11px;
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 559px) {
  .Table.-sizeS.-activeSP th.Tabel__parentTh {
    padding: 10px 8px 11px 16px;
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 560px) {

  .Table.-sizeS.-activeSP .Text,
  .Table.-sizeS.-activeSP .List,
  .Table.-sizeS.-activeSP .Link {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 559px) {

  .Table.-sizeS.-activeSP .Text,
  .Table.-sizeS.-activeSP .List,
  .Table.-sizeS.-activeSP .Link {
    font-size: 1.2rem;
  }
}

.Table.-verticalThead, .Table.-verticalTheadNest, .Table.-verticalCategory, .Table.-verticalTheadAlternate, .Table.-verticalTheadTotal, .Table.-socialMedia {
  border-top: 1px solid #dedede;
}

.Table.-verticalThead thead tr:first-child th:first-child::after, .Table.-verticalTheadNest thead tr:first-child th:first-child::after, .Table.-verticalCategory thead tr:first-child th:first-child::after, .Table.-verticalTheadAlternate thead tr:first-child th:first-child::after, .Table.-verticalTheadTotal thead tr:first-child th:first-child::after, .Table.-socialMedia thead tr:first-child th:first-child::after {
  height: 100%;
}

.Table.-vertical tbody th.Tabel__parentTh, .Table.-verticalThead tbody th.Tabel__parentTh, .Table.-verticalTheadNest tbody th.Tabel__parentTh, .Table.-verticalCategory tbody th.Tabel__parentTh, .Table.-socialMedia tbody th.Tabel__parentTh {
  background-color: #fff;
  background-image: url(/assets/images/table/img_table_border.gif), url(/assets/images/table/img_table_border_parentth_02.gif);
  background-position: left top, 1px top;
  background-repeat: no-repeat, no-repeat;
  background-size: 1px 100%, 8px 100%;
}

.Table.-vertical thead tr:first-child th,
.Table.-vertical tbody tr:first-child th {
  padding: 32px 15px 21px;
}

.Table.-vertical thead tr:first-child th::before,
.Table.-vertical tbody tr:first-child th::before {
  width: 100%;
  height: 8px;
  background-color: #008486;
}

.Table.-vertical thead tr:first-child th::after,
.Table.-vertical tbody tr:first-child th::after {
  top: 8px;
  height: calc(100% - 8px);
  background-color: #dedede;
}

.Table.-vertical thead tr:first-child th::before {
  width: 100%;
  height: 8px;
  background-color: #008486;
}

.Table.-vertical thead tr:first-child th::after {
  top: 8px;
  height: calc(100% - 8px);
  background-color: #dedede;
}

.Table.-vertical thead+tbody th {
  font-weight: normal;
}

.Table.-vertical thead+tbody th::before {
  height: 1px;
  background-color: #dedede;
}

.Table.-vertical thead+tbody th::after {
  top: 0;
  height: 100%;
}

.Table.-vertical thead+tbody tr:first-child th::before {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  background-color: #dedede;
  top: 0;
  left: 0;
}

.Table.-vertical thead+tbody tr:first-child th::after {
  display: none;
}

.Table.-ecoproducts thead+tbody th {
  font-weight: normal;
}

.Table.-vertical thead tr:first-child th, .Table.-verticalThead thead tr:first-child th, .Table.-verticalTheadNest thead tr:first-child th, .Table.-verticalCategory thead tr:first-child th, .Table.-verticalTheadAlternate thead tr:first-child th, .Table.-verticalTheadTotal thead tr:first-child th, .Table.-socialMedia thead tr:first-child th {
  padding-top: 28px;
}

.Table.-vertical thead tr:first-child th::before, .Table.-verticalThead thead tr:first-child th::before, .Table.-verticalTheadNest thead tr:first-child th::before, .Table.-verticalCategory thead tr:first-child th::before, .Table.-verticalTheadAlternate thead tr:first-child th::before, .Table.-verticalTheadTotal thead tr:first-child th::before, .Table.-socialMedia thead tr:first-child th::before {
  left: 0;
  width: 100%;
  height: 8px;
  background-color: #008486;
  border-left: 1px solid #dedede;
}

.Table.-vertical thead tr:first-child th:first-child::before, .Table.-verticalThead thead tr:first-child th:first-child::before, .Table.-verticalTheadNest thead tr:first-child th:first-child::before, .Table.-verticalCategory thead tr:first-child th:first-child::before, .Table.-verticalTheadAlternate thead tr:first-child th:first-child::before, .Table.-verticalTheadTotal thead tr:first-child th:first-child::before, .Table.-socialMedia thead tr:first-child th:first-child::before {
  width: calc(100% + 1px);
  margin-left: -1px;
}

.Table.-vertical thead tr:first-child th:last-child::before, .Table.-verticalThead thead tr:first-child th:last-child::before, .Table.-verticalTheadNest thead tr:first-child th:last-child::before, .Table.-verticalCategory thead tr:first-child th:last-child::before, .Table.-verticalTheadAlternate thead tr:first-child th:last-child::before, .Table.-verticalTheadTotal thead tr:first-child th:last-child::before, .Table.-socialMedia thead tr:first-child th:last-child::before {
  width: calc(100% + 1px);
  margin-right: -1px;
}

.Table.-vertical thead tr th.Tabel__parentTh, .Table.-verticalThead thead tr th.Tabel__parentTh, .Table.-verticalTheadNest thead tr th.Tabel__parentTh, .Table.-verticalCategory thead tr th.Tabel__parentTh, .Table.-verticalTheadAlternate thead tr th.Tabel__parentTh, .Table.-verticalTheadTotal thead tr th.Tabel__parentTh, .Table.-socialMedia thead tr th.Tabel__parentTh {
  background-color: #fff;
  background-image: url(/assets/images/table/img_table_border.gif), url(/assets/images/table/img_table_border_parentth_02.gif);
  background-position: left top, 1px top;
  background-repeat: no-repeat, no-repeat;
  background-size: 1px 100%, 8px 100%;
}

.Table.-vertical.-sizeS thead tr:first-child th, .Table.-verticalThead.-sizeS thead tr:first-child th, .Table.-verticalTheadNest.-sizeS thead tr:first-child th, .Table.-verticalCategory.-sizeS thead tr:first-child th, .Table.-verticalTheadAlternate.-sizeS thead tr:first-child th, .Table.-verticalTheadTotal.-sizeS thead tr:first-child th, .Table.-socialMedia.-sizeS thead tr:first-child th {
  padding-top: 18px;
}

@media print, screen and (min-width: 560px) {
  .Table.-vertical.-activeSP thead tr:first-child th, .Table.-verticalThead.-activeSP thead tr:first-child th, .Table.-verticalTheadNest.-activeSP thead tr:first-child th, .Table.-verticalCategory.-activeSP thead tr:first-child th, .Table.-verticalTheadAlternate.-activeSP thead tr:first-child th, .Table.-verticalTheadTotal.-activeSP thead tr:first-child th, .Table.-socialMedia.-activeSP thead tr:first-child th {
    padding-top: 28px;
  }
}

@media only screen and (max-width: 559px) {
  .Table.-vertical.-activeSP thead tr:first-child th, .Table.-verticalThead.-activeSP thead tr:first-child th, .Table.-verticalTheadNest.-activeSP thead tr:first-child th, .Table.-verticalCategory.-activeSP thead tr:first-child th, .Table.-verticalTheadAlternate.-activeSP thead tr:first-child th, .Table.-verticalTheadTotal.-activeSP thead tr:first-child th, .Table.-socialMedia.-activeSP thead tr:first-child th {
    padding-top: 18px;
  }
}

.Table.-verticalThead thead tr:first-child th, .Table.-verticalTheadNest thead tr:first-child th, .Table.-socialMedia thead tr:first-child th {
  padding-top: 32px;
}

.Table.-verticalCategory th.Tabel__parentTh {
  background: #f5f5f5 url(/assets/images/table/img_table_border.gif) no-repeat left top/1px 100%;
}

.Table.-verticalCategory th.Table__verticalCategoryHeading+.Table__verticalCategoryHeading {
  border-left: 1px solid #008486;
}

.Table.-verticalCategory th.Table__verticalCategoryHeading+.Table__verticalCategoryHeading::before {
  width: calc(100% + 2px);
  margin-left: -1px;
}

.Table.-verticalCategory tr:first-child th.Table__verticalCategoryHeading+.Table__verticalCategoryHeading::before {
  width: calc(100% + 2px);
  margin-left: -1px;
}

.Table.-verticalCategory tr.Table__verticalCategoryBorder th,
.Table.-verticalCategory tr.Table__verticalCategoryBorder td {
  position: relative;
}

.Table.-verticalCategory tr.Table__verticalCategoryBorder th::before,
.Table.-verticalCategory tr.Table__verticalCategoryBorder td::before {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  background-color: #008486;
  top: 0;
  left: 0;
}

.Table.-verticalTheadAlternate thead th,
.Table.-verticalTheadAlternate thead td {
  background-color: #fff;
}

.Table.-verticalTheadAlternate tbody th {
  font-weight: normal;
}

.Table.-verticalTheadAlternate tbody:nth-child(odd) th,
.Table.-verticalTheadAlternate tbody:nth-child(odd) td {
  background-color: #eee;
}

.Table.-verticalTheadAlternate tbody:nth-child(even) th,
.Table.-verticalTheadAlternate tbody:nth-child(even) td {
  background: #f5f5f5 url(/assets/images/table/img_table_border.gif) no-repeat left top/1px 100%;
}

.Table.-verticalTheadTotal tbody th.-left,
.Table.-verticalTheadTotal tbody td.-left {
  text-align: left;
}

.Table.-verticalTheadTotal tbody th {
  font-weight: normal;
  background-color: #fff;
}

.Table.-verticalTheadTotal tbody td {
  text-align: right;
  vertical-align: middle;
  background: #f5f5f5 url(/assets/images/table/img_table_border.gif) no-repeat left top/1px 100%;
}

.Table.-verticalTheadTotal tfoot th,
.Table.-verticalTheadTotal tfoot td {
  font-weight: bold;
}

.Table.-verticalTheadTotal tfoot th.-left,
.Table.-verticalTheadTotal tfoot td.-left {
  text-align: left;
}

.Table.-verticalTheadTotal tfoot td {
  text-align: right;
  background-color: #eee;
}

@media print, screen and (min-width: 560px) {
  .Table.-forOssPage {
    table-layout: fixed;
    width: 100%;
    min-width: 100%;
  }
}

@media print, screen and (min-width: 560px) {

  .Table.-forOssPage th,
  .Table.-forOssPage td {
    word-break: break-all;
  }
}

@media print, screen and (min-width: 560px) {
  .Table.-forOssPage td {
    width: 20%;
    min-width: 20%;
    overflow: hidden;
  }
}

.Table .Text~.List {
  margin-top: 8px;
}

.Table .Text~.Definitionlist {
  margin-top: 35px;
}

.Table .Text~.Definitionlist:nth-of-type(1) {
  margin-top: 35px;
}

.Table~.List {
  margin-top: 16px;
}

.Table~.List li:not(:first-child) {
  margin-top: 2px;
}

.Table .Definitionlist:nth-of-type(1) {
  margin-top: 0;
}

.Table__caption {
  text-align: left;
  margin-bottom: 5px;
}

.Table__heading {
  display: block;
  text-align: left;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Table__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Table__heading {
    font-size: 1.6rem;
  }
}

.Table__heading strong {
  font-weight: normal;
}

.Table__heading+.Js-Scrollable__wrap {
  margin-top: 18px;
}

.Table__captionData {
  margin-top: 2px;
  caption-side: top;
  text-align: right;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Table__captionNote {
  margin-top: 11px;
  text-align: right;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Table .Table__colgroupOther {
  border-left: 1px solid #008486;
}

.Tabel__incellDefinitionlistHeding {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.Tabel__incellDefinitionlistBody {
  margin-top: 20px;
}

.Table__label {
  display: block;
  min-width: 158px;
  margin-top: 10px;
  padding: 4px 5px;
  text-align: center;
  font-weight: normal;

  line-height: 1.7;
  font-size: 1.2rem;
}

.Table__label.-productsResumed {
  color: #f00;
  background-color: #fff;
  border: 1px solid #f00;
}

.TableIncellPoint {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.TableIncellPoint .TableIncellPoint__heading {
  min-width: 125px;
  padding: 2px 16px 0 0;
}

.TableIncellPoint .TableIncellPoint__labelList {
  list-style: none;
}

.TableIncellPoint .TableIncellPoint__labelList li {
  display: block;
}

.TableIncellPoint .TableIncellPoint__labelList li:not(:first-child) {
  margin-top: 10px;
}

.TableIncellPoint .TableIncellPoint__labelListIcon {
  display: inline-block;
  padding: 5px 8px;
  font-size: 1.4rem;
  line-height: 1;
  color: #fff;
}

.TableIncellPoint .TableIncellPoint__labelListIcon.-energy {
  background-color: #007d3e;
}

.TableIncellPoint .TableIncellPoint__labelListIcon.-reducing {
  background-color: #a644a6;
}

.TableIncellPoint .TableIncellPoint__labelListIcon.-resources {
  background-color: #3c6fa2;
}

.TableIncellPoint .TableIncellPoint__labelListIcon.-others {
  background-color: #818b8b;
}

.Table__logo {
  margin: 0 0 2px 15px;
  vertical-align: middle;
}

.Table td.Table__cellObliqueLine {
  background-image: url("/assets/images/table/img_table_border.gif"), url("/assets/images/table/img_obliqueline.svg");
  background-color: #f5f5f5;
  background-position: left top, left top;
  background-repeat: no-repeat, no-repeat;
  background-size: 1px 100%, 100% 100%;
}

.Table td.Table__tdPoint {
  vertical-align: middle;
}

.Table.-pattern02 th,
.Table.-pattern02 td {
  padding: 11px 8px;
  font-size: 1.2rem;
}

.Table.-pattern02 th,
.Table.-pattern02 td {
  min-width: 80px;
}

.Table.-pattern02 th.Tabel__parentTh {
  padding: 11px 8px 11px 16px;
}

.Table.-pattern02.-vertical thead tr:first-child th,
.Table.-pattern02.-vertical tbody tr:first-child th {
  padding: 17px 8px 11px;
}

.Table.-pattern02.-verticalThead thead tr:first-child th,
.Table.-pattern02.-verticalTheadNest thead tr:first-child th,
.Table.-pattern02.-socialMedia thead tr:first-child th,
.Table.-pattern02.-vertical.-activeSP thead tr:first-child th,
.Table.-pattern02.-verticalThead.-activeSP thead tr:first-child th,
.Table.-pattern02.-verticalTheadNest.-activeSP thead tr:first-child th,
.Table.-pattern02.-verticalCategory.-activeSP thead tr:first-child th,
.Table.-pattern02.-verticalTheadAlternate.-activeSP thead tr:first-child th,
.Table.-pattern02.-verticalTheadTotal.-activeSP thead tr:first-child th,
.Table.-pattern02.-socialMedia.-activeSP thead tr:first-child th {
  padding-top: 17px;
}

.Table.-pattern02.-sizeS.-activeSP th,
.Table.-pattern02.-sizeS.-activeSP td {
  font-size: 1.2rem;
}

.Table.-pattern02 .TableIncellPoint .TableIncellPoint__labelListIcon {
  font-size: 1.2rem;
}

.Table.-pattern02 .Text,
.Table.-pattern02 .Link,
.Table.-pattern02 .List,
.Table.-pattern02 .ListLink,
.Table.-pattern02 .ListHorizontal,
.Table.-pattern02 .Card__caption {
  font-size: 1.2rem;
}

.Table.-pattern02 .TextSuperscript.-noteNumber {
  font-size: .8em;
}

.Table.-pattern02 .TextSuperscript.-note {
  font-size: 1.2em;
}

/* ===== Index ===== */
.IndexList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -60px;
}

@media only screen and (max-width: 559px) {
  .IndexList {
    margin-left: 0;
  }
}

.HeadingLevel1+.SiteContent__section .IndexList {
  margin-top: 50px;
}

.HeadingLevel1+.IndexList {
  margin-top: 50px;
}

.IndexList+.Box {
  margin-top: 50px;
}

.SectionLevel2+.IndexList {
  padding-top: 90px;
}

@media only screen and (max-width: 559px) {
  .SectionLevel2+.IndexList {
    padding-top: 60px;
  }
}

.Text+.IndexList {
  margin-top: 56px;
}

@media only screen and (max-width: 559px) {
  .Text+.IndexList {
    margin-top: 28px;
  }
}

.IndexList__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media print, screen and (min-width: 700px) {
  .IndexList__item {
    width: calc((100% - 60px * 3) / 3);
    padding-top: 40px;
    margin-left: 60px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 699px) {
  .IndexList__item {
    width: calc((100% - 60px * 2) / 2);
    padding-top: 40px;
    margin-left: 60px;
  }
}

@media only screen and (max-width: 559px) {
  .IndexList__item {
    width: 100%;
  }
}

@media print, screen and (min-width: 700px) {
  .IndexList__item:nth-child(-n+3) {
    padding-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 699px) {
  .IndexList__item:nth-child(-n+2) {
    padding-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .IndexList__item:not(:first-child) {
    padding-top: 40px;
    margin-left: 0;
  }
}

.IndexList__heading {
  position: relative;
  padding: 0;
  margin: 0;
  color: #008486;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .IndexList__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .IndexList__heading {
    font-size: 1.6rem;
  }
}

.IndexList__heading a {
  position: relative;
}

.IndexList__heading a::after {
  content: "";
  display: inline-block;
  margin: 0 0 4px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.IndexList__heading a[target="_blank"]::after {
  display: none;
}

.IndexList__body {
  margin-top: 20px;
}

/* ===== IndexCardList ===== */
.IndexCardList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
}

@media only screen and (max-width: 559px) {
  .IndexCardList {
    margin-left: 0;
  }
}

.LatestNewsArea+.IndexCardList {
  margin-top: 50px;
}

@media only screen and (max-width: 559px) {
  .LatestNewsArea+.IndexCardList {
    margin-top: 20px;
  }
}

.IndexCardList__item {
  margin-left: 24px;
  padding-top: 50px;
}

@media print, screen and (min-width: 560px) {
  .IndexCardList__item {
    margin-left: 24px;
  }
}

.IndexCardList.-column2 .IndexCardList__item {
  width: calc((100% - 24px * 2) / 2);
  /* IE11 */
}

.IndexCardList.-column2 .IndexCardList__item _:-ms-lang(x), .IndexCardList.-column2 .IndexCardList__item {
  width: calc((100% - 25px * 2) / 2);
}

@media only screen and (max-width: 559px) {
  .IndexCardList.-column2 .IndexCardList__item {
    width: 100%;
    margin-left: 0;
  }
}

.IndexCardList.-column3 .IndexCardList__item {
  width: calc((100% - 24px * 3) / 3);
  /* IE11 */
  /* IE11 */
}

.IndexCardList.-column3 .IndexCardList__item _:-ms-lang(x), .IndexCardList.-column3 .IndexCardList__item {
  width: calc((100% - 25px * 3) / 3);
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexCardList.-column3 .IndexCardList__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexCardList.-column3 .IndexCardList__item _:-ms-lang(x), .IndexCardList.-column3 .IndexCardList__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .IndexCardList.-column3 .IndexCardList__item {
    width: 100%;
    margin-left: 0;
  }
}

.IndexHeadingLevel1 {
  position: relative;
  margin: 0;
  letter-spacing: .03em;
  color: #333;
}

.IndexHeadingLevel1 a {
  position: relative;
}

.IndexHeadingLevel1 a::after {
  content: "";
  display: inline-block;
  margin: 0 0 6px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.IndexHeadingLevel1 a[target="_blank"]::after {
  display: none;
}

.IndexHeadingLevel1+.List.-number {
  margin-top: 37px;
}

.IndexHeadingLevel1+.Text {
  margin-top: 35px;
}

.IndexHeadingLevel2 {
  position: relative;
  margin: 0;
  letter-spacing: .03em;
  color: #333;
}

.IndexHeadingLevel2::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #008486;
}

.IndexHeadingLevel2 a {
  position: relative;
}

.IndexHeadingLevel2 a::after {
  content: "";
  display: inline-block;
  margin: 0 0 7px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.IndexHeadingLevel2 a[target="_blank"]::after {
  display: none;
}

.IndexHeadingLevel2+.List.-number {
  margin-top: 37px;
}

.IndexHeadingLevel2+.Text {
  margin-top: 35px;
}

.IndexHeadingLevel1 {
  font-weight: normal;
  line-height: 1.4;
  padding: 0 0 13px 0;
}

@media print, screen and (min-width: 560px) {
  .IndexHeadingLevel1 {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .IndexHeadingLevel1 {
    font-size: 1.6rem;
  }
}

.IndexHeadingLevel2 {
  font-weight: normal;
  line-height: 1.4;
  padding: 0 0 11px 0;
}

@media print, screen and (min-width: 560px) {
  .IndexHeadingLevel2 {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .IndexHeadingLevel2 {
    font-size: 1.6rem;
  }
}

.IndexCardList__body {
  margin-top: 25px;
}

.IndexCardList__body .Button {
  max-width: 100%;
  margin-top: 34px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexCardList__body .Button__inner {
    padding: 22px 30px;
  }
}

.IndexCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 560px) {
  .IndexCard {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 559px) {
  .IndexCard {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 560px) {
  .IndexCard__body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}

@media only screen and (max-width: 559px) {
  .IndexCard__body {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin: 0;
  }
}

.IndexCard__image {
  width: 82px;
  margin: 0 24px 24px 0;
}

@media only screen and (max-width: 559px) {
  .IndexCard__image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    height: 100%;
  }
}

.IndexCard__image img {
  width: 100%;
}

.IndexCard__image a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.IndexCard__image a:hover {
  opacity: .8;
}

.IndexCard__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.IndexCardBanner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 560px) {
  .IndexCardBanner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 959px) {
  .IndexCardBanner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 960px) {
  .IndexCardBanner__image {
    width: 50%;
    padding-right: 12px;
  }
}

@media only screen and (max-width: 959px) {
  .IndexCardBanner__image {
    width: 100%;
    height: 100%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

.IndexCardBanner__image a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.IndexCardBanner__image a:hover {
  opacity: .8;
}

@media print, screen and (min-width: 960px) {
  .IndexCardBanner__body {
    width: 50%;
    padding-left: 12px;
  }
}

@media only screen and (max-width: 959px) {
  .IndexCardBanner__body {
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 24px;
  }
}

.IndexCardBanner__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

/* ===== IndexLead ===== */
.IndexLead {
  max-width: 1060px;
  margin: 0 auto;
  padding: 95px 50px 60px;
  text-align: center;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexLead {
    padding: 70px 28px 20px;
  }
}

@media only screen and (max-width: 559px) {
  .IndexLead {
    padding: 70px 15px 20px;
  }
}

.IndexLead__heading {
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .IndexLead__heading {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .IndexLead__heading {
    font-size: 2.4rem;
  }
}

.IndexLead__heading strong {
  font-weight: normal;
}

.IndexLead__text {
  margin-top: 32px;
  color: #008486;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media only screen and (max-width: 959px) {
  .IndexLead__text {
    margin-top: 20px;
  }
}

.IndexSitemapArea {
  padding-top: 50px;
  text-align: center;
}

.IndexSitemapArea .Link {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.IndexBannerArea {
  padding: 16px 0 0;
}

.IndexBannerAreaList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style-type: none;
}

@media print, screen and (min-width: 560px) {
  .IndexBannerAreaList {
    margin: 0 auto;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

@media print, screen and (min-width: 960px) {
  .IndexBannerAreaList {
    max-width: 800px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexBannerAreaList {
    max-width: 400px;
  }
}

@media only screen and (max-width: 559px) {
  .IndexBannerAreaList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.IndexBannerAreaList li {
  max-width: 140px;
}

@media print, screen and (min-width: 560px) {
  .IndexBannerAreaList li {
    margin: 24px 30px 0;
  }
}

@media print, screen and (min-width: 960px) {
  .IndexBannerAreaList li {
    width: calc((100% - 60px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexBannerAreaList li {
    width: calc((100% - 60px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .IndexBannerAreaList li:not(:first-child) {
    margin: 24px 0 0;
  }
}

.IndexBannerAreaList a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.IndexBannerAreaList a:hover {
  opacity: .8;
}

.IrNewsArea {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
}

@media only screen and (max-width: 559px) {
  .IrNewsArea {
    margin-left: 0;
  }
}

.IrNewsArea .NewsIndexList__body+.NewsIndexList__body {
  margin-top: 38px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IrNewsArea .NewsList__item {
    display: inline-block;
  }
}

.IrNewsArea .NewsList__item:not(:first-child) {
  margin-top: 16px;
}

@media only screen and (max-width: 959px) {
  .IrNewsArea .NewsList__date {
    display: inline-block;
    width: auto;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NewsList__item:not(:first-child) .IrNewsArea .NewsList__date {
    padding-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .IrNewsArea .NewsList__label {
    display: inline-block;
    min-width: 145px;
    padding-right: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NewsList__item:not(:first-child) .IrNewsArea .NewsList__label {
    padding-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .IrNewsArea .NewsList__text {
    display: block;
    margin-top: 6px;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsList__item:not(:first-child) .IrNewsArea .NewsList__text {
    padding-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NewsList__item:not(:first-child) .IrNewsArea .NewsList__text {
    padding-top: 0;
  }
}

.IrNewsArea .LinkMore {
  margin-top: 16px;
  padding-top: 11px;
  border-top: 1px solid #DEDEDE;
}

.IrNewsArea__item {
  width: calc((100% - 24px * 2) / 2);
  margin-left: 24px;
  padding-top: 97px;
}

@media only screen and (max-width: 559px) {
  .IrNewsArea__item {
    width: 100%;
    margin-left: 0;
    padding-top: 56px;
  }
}

/* ===== IrPickupArea ===== */
.IrPickupArea {
  padding-top: 56px;
}

.IrPickupArea .Card__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .IrPickupArea .Card__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .IrPickupArea .Card__heading {
    font-size: 1.6rem;
  }
}

.IrPickupArea__card {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
}

@media only screen and (max-width: 559px) {
  .IrPickupArea__card {
    margin-left: 0;
  }
}

.IrPickupArea__cardItem {
  padding-top: 50px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .IrPickupArea__cardItem {
    width: calc((100% - 24px * 4) / 4);
    margin-left: 24px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IrPickupArea__cardItem {
    width: calc((100% - 24px * 3) / 3);
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .IrPickupArea__cardItem {
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .IrPickupArea__cardItem _:-ms-lang(x), .IrPickupArea__cardItem {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IrPickupArea__cardItem _:-ms-lang(x), .IrPickupArea__cardItem {
    width: calc((100% - 25px * 3) / 3);
  }
}

.IrPickupArea__cardItem .Image img {
  width: 100%;
}

/* ===== IrLinkArea ===== */
.IrLinkArea {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
}

@media print, screen and (min-width: 560px) {
  .IrLinkArea {
    padding-top: 88px;
  }
}

@media only screen and (max-width: 559px) {
  .IrLinkArea {
    margin-left: 0;
  }
}

.IrLinkArea__item {
  width: calc((100% - 24px * 4) / 4);
  margin-left: 24px;
  padding-top: 50px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IrLinkArea__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .IrLinkArea__item {
    width: 100%;
    margin-left: 0;
  }
}

.IrLinkArea__item .ListLink {
  margin-top: 34px;
}

@media only screen and (max-width: 559px) {
  .IrLinkArea__item .ListLink {
    margin-top: 29px;
  }
}

/* ===== OtherInfoArea ===== */
.OtherInfoArea {
  padding-top: 120px;
}

@media only screen and (max-width: 559px) {
  .OtherInfoArea {
    padding-top: 60px;
  }
}

.OtherInfoArea .ListLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style-type: none;
  margin-top: 26px;
  font-size: 1.4rem;
}

.OtherInfoArea .ListLink li {
  margin-top: 0;
  margin-bottom: 3px;
}

.OtherInfoArea .ListLink li:not(:last-child) {
  margin-right: 42px;
}

.OtherInfoArea__inner {
  padding: 40px 60px 34px;
  border: 1px solid #dedede;
}

@media only screen and (max-width: 559px) {
  .OtherInfoArea__inner {
    padding: 40px 40px 34px;
  }
}

.OtherInfoArea__heading {
  position: relative;
  padding: 0 0 12px 0;
  margin: 0;
  color: #008486;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

.OtherInfoArea__heading::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #008486;
}

/* ===== SriArea ===== */
.SriArea {
  padding-top: 65px;
  text-align: center;
}

@media only screen and (max-width: 559px) {
  .SriArea {
    padding-top: 70px;
  }
}

.SriArea__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SriArea__heading {
    font-size: 2.2rem;
  }
}

@media only screen and (max-width: 559px) {
  .SriArea__heading {
    font-size: 1.8rem;
  }
}

.SriArea__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1600px;
  margin: 24px auto 0;
  list-style: none;
}

@media print, screen and (min-width: 560px) {
  .SriArea__list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media only screen and (max-width: 559px) {
  .SriArea__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 16px;
  }
}

.SriArea__list li {
  margin: 14px 12px;
}

@media print, screen and (min-width: 560px) {
  .SriArea__list li {
    margin: 14px 12px 0;
  }
}

.SriArea__list a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.SriArea__list a:hover {
  opacity: .8;
}

.SriArea__list img {
  height: auto;
}

.SriArea__date {
  margin-top: 12px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

/* ===== Sitemap ===== */
.HeadingLevel1+.Sitemap, .HeadingLevel1+.CategorySitemap {
  margin-top: 50px;
}

.Sitemap__item:not(:first-child) {
  padding-top: 90px;
}

@media only screen and (max-width: 559px) {
  .Sitemap__item:not(:first-child) {
    padding-top: 50px;
  }
}

.CategorySitemap__item:not(:first-child) {
  padding-top: 54px;
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__item:not(:first-child) {
    padding-top: 45px;
  }
}

.Sitemap__heading,
.CategorySitemap__heading {
  position: relative;
  margin: 0;
  letter-spacing: .03em;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
  padding: 0 0 40px 0;
}

@media print, screen and (min-width: 560px) {

  .Sitemap__heading,
  .CategorySitemap__heading {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {

  .Sitemap__heading,
  .CategorySitemap__heading {
    font-size: 2.4rem;
  }
}

@media only screen and (max-width: 559px) {

  .Sitemap__heading,
  .CategorySitemap__heading {
    padding: 0;
  }
}

.Sitemap__heading a,
.CategorySitemap__heading a {
  position: relative;
}

.Sitemap__heading a::after,
.CategorySitemap__heading a::after {
  content: "";
  display: inline-block;
  margin: 0 0 5px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.Sitemap__heading a[target="_blank"]::after,
.CategorySitemap__heading a[target="_blank"]::after {
  display: none;
}

.Sitemap__heading::after,
.CategorySitemap__heading::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #008486;
}

.CategorySitemap__heading {
  padding: 0 0 16px 0;
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__heading {
    padding: 0 0 13px 0;
  }
}

.Sitemap__headingLevel2,
.CategorySitemap__headingLevel2 {
  position: relative;
  margin: 0;
  letter-spacing: .03em;
  color: #333;
}

.Sitemap__headingLevel2>a,
.CategorySitemap__headingLevel2>a {
  position: relative;
}

.Sitemap__headingLevel2>a::after,
.CategorySitemap__headingLevel2>a::after {
  content: "";
  display: inline-block;
  margin: 0 0 2px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.Sitemap__headingLevel2>a[target="_blank"]::after,
.CategorySitemap__headingLevel2>a[target="_blank"]::after {
  display: none;
}

.CategorySitemap__headingLevel2 {
  list-style-type: none;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__headingLevel2 {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__headingLevel2 {
    font-size: 1.6rem;
  }
}

.CategorySitemap__headingLevel2:not(:first-child) {
  margin-top: 34px;
}

.CategorySitemap__headingLevel3 {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
  position: relative;
  display: inline-block;
  padding-left: 22px;
}

.CategorySitemap__headingLevel3::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.Sitemap__body {
  margin-top: 35px;
}

.Sitemap__body .ListLink {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0;
}

@media print, screen and (min-width: 560px) {
  .Sitemap__body .ListLink {
    margin-left: -40px;
  }
}

@media only screen and (max-width: 559px) {
  .Sitemap__body .ListLink {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
  }
}

.Sitemap__body .ListLink li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .Sitemap__body .ListLink li {
    width: calc((100% - 40px * 4) / 4);
    margin-left: 40px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Sitemap__body .ListLink li {
    width: calc((100% - 40px * 2) / 2);
    margin-left: 40px;
  }
}

@media print, screen and (min-width: 960px) {
  .Sitemap__body .ListLink li _:-ms-lang(x), .Sitemap__body .ListLink li {
    width: calc((100% - 41px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Sitemap__body .ListLink li _:-ms-lang(x), .Sitemap__body .ListLink li {
    width: calc((100% - 41px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .Sitemap__body .ListLink li:not(:first-child) {
    margin-top: 4px;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .Sitemap__body .ListLink li:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Sitemap__body .ListLink li:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__body {
    margin-top: 35px;
  }
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__body {
    margin-top: 24px;
  }
}

.CategorySitemap__body .ListLink {
  list-style-type: none;
}

.CategorySitemap__body .ListLink:not(:first-child) {
  margin-top: 12px;
  margin-left: 0;
}

.CategorySitemap__layerLower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__layerLower {
    margin-left: -40px;
  }
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__layerLower {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__layerLower.-typeList .CategorySitemap__layerLowerItem {
    margin-top: 18px;
  }
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__layerLower.-typeList .CategorySitemap__layerLowerItem {
    margin-top: 9px;
  }
}

.CategorySitemap__layerLowerItem {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* IE11 */
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__layerLowerItem {
    width: calc((100% - 40px * 3) / 3);
    margin-left: 40px;
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .CategorySitemap__layerLowerItem {
    margin-top: 19px;
  }
}

@media print, screen and (min-width: 560px) {
  .CategorySitemap__layerLowerItem _:-ms-lang(x), .CategorySitemap__layerLowerItem {
    width: calc((100% - 41px * 3) / 3);
  }
}

.CategorySitemap__layerLowerItem .ListLink {
  padding-left: 24px;
}

.CategorySitemap__layerLowerItem .ListLink li {
  width: 100%;
}

/* ===== Board ===== */
.GMap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}

.GMap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  border: none;
}

/* ===== News ===== */
.NewsHeadingLevel1,
.NewsHeadingLevel2,
.NewsHeadingLevel3,
.NewsHeadingLevel4,
.NewsHeadingLevel5 {
  letter-spacing: .03em;
}

.NewsHeadingLevel1 {
  margin-bottom: 50px;
}

.NewsHeadingLevel1+.SectionLevel2 {
  padding-top: 0;
}

.NewsHeadingLevel1__inner {
  position: relative;
  margin: 0;
  padding: 0 0 33px;
  border-bottom: 1px solid #e5e5e5;
}

.NewsHeadingLevel1__inner::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -1px;
  background-color: #008486;
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel1__inner {
    padding: 0 0 17px;
  }
}

.NewsHeadingLevel1__body {
  color: #008486;
  font-weight: normal;
  line-height: 1.3;
}

@media print, screen and (min-width: 560px) {
  .NewsHeadingLevel1__body {
    font-size: 3.7rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel1__body {
    font-size: 2.6rem;
  }
}

.NewsHeadingLevel1__sub {
  display: block;
  margin-top: 14px;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #333;
}

.NewsHeadingLevel2 {
  position: relative;
  padding: 0 0 35px 0;
}

.NewsHeadingLevel2::after {
  content: "";
  display: inline-block;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #008486;
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel2 {
    padding: 0 0 30px;
  }
}

.NewsHeadingLevel2__body {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsHeadingLevel2__body {
    font-size: 3.1rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel2__body {
    font-size: 2.4rem;
  }
}

.NewsHeadingLevel3__body {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsHeadingLevel3__body {
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel3__body {
    font-size: 2.1rem;
  }
}

.NewsHeadingLevel4__body {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsHeadingLevel4__body {
    font-size: 2.1rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel4__body {
    font-size: 1.8rem;
  }
}

.NewsHeadingLevel5__body {
  margin: 0;
  color: #008486;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsHeadingLevel5__body {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel5__body {
    font-size: 1.6rem;
  }
}

.NewsArticle__date {
  margin-top: 15px;
  text-align: right;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
  color: #666;
}

.NewsArticle__summaryStart {
  margin: 40px 0;
  text-align: center;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NewsArticle__summaryEnd {
  margin: 40px 0 0;
  text-align: right;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NewsArticle__summaryEnd+.Text {
  margin-top: 40px;
}

/* ===== NewsIndexList ===== */
.SectionLevel2 .NewsIndexList__wrap {
  padding: 0 0 70px;
}

@media only screen and (max-width: 559px) {
  .SectionLevel2 .NewsIndexList__wrap {
    padding: 0 0 60px;
  }
}

.NewsIndexList__wrapHeadingBody {
  margin: 0;
  letter-spacing: .03em;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsIndexList__wrapHeadingBody {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsIndexList__wrapHeadingBody {
    font-size: 2.1rem;
  }
}

.NewsIndexList__wrapHeading {
  margin-bottom: 24px;
}

/* ===== NewsList ===== */
.NewsList {
  list-style-type: none;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 560px) {
  .NewsList {
    display: table;
    width: 100%;
    border-collapse: collapse;
  }
}

.NewsList+.Text.-note,
.NewsList+.List.-note {
  margin-top: 13px;
}

.NewsList+.Text,
.NewsList+.List,
.NewsList+.ListLink,
.NewsList+.Box,
.NewsList+.Button,
.NewsList+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .NewsList+.Text,
  .NewsList+.List,
  .NewsList+.ListLink,
  .NewsList+.Box,
  .NewsList+.Button,
  .NewsList+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .NewsList+.CardGrid,
  .NewsList+.CardHorizontal,
  .NewsList+.Grid,
  .NewsList+.Figure,
  .NewsList+.Definitionlist,
  .NewsList+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .NewsList+.CardGrid,
  .NewsList+.CardHorizontal,
  .NewsList+.Grid,
  .NewsList+.Figure,
  .NewsList+.Definitionlist,
  .NewsList+.Media {
    margin-top: 28px;
  }
}

.IndexHeadingLevel1+.NewsList {
  margin-top: 34px;
}

.Text+.NewsList {
  margin-top: 50px;
}

@media print, screen and (min-width: 560px) {
  .NewsList__item {
    display: table-row;
    width: 100%;
  }
}

@media only screen and (max-width: 559px) {
  .NewsList__item:not(:first-child) {
    margin-top: 22px;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsList__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsList__head .NewsList__date {
    display: block;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsList__head .NewsList__label {
    display: block;
    margin-top: 5px;
    padding-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsList__item:not(:first-child) .NewsList__head .NewsList__label {
    padding-top: 0;
  }
}

.NewsList__date {
  white-space: nowrap;
  min-width: 145px;
  padding-right: 26px;
}

@media print, screen and (min-width: 560px) {
  .NewsList__date {
    display: table-cell;
    width: 1%;
    vertical-align: top;
  }
}

@media only screen and (max-width: 559px) {
  .NewsList__date {
    display: inline-block;
  }
}

@media print, screen and (min-width: 560px) {
  .NewsList__item:not(:first-child) .NewsList__date {
    padding-top: 14px;
  }
}

@media print, screen and (min-width: 560px) {
  .NewsList__label {
    display: table-cell;
    width: 1%;
    vertical-align: top;
    min-width: 153px;
    padding-right: 18px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsList__label {
    display: inline-block;
    min-width: 145px;
  }
}

@media print, screen and (min-width: 560px) {
  .NewsList__item:not(:first-child) .NewsList__label {
    padding-top: 14px;
  }
}

.NewsList__labelInner {
  display: inline-block;
  width: 100%;
  padding: 7px 2px 5px;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 560px) {
  .NewsList__text {
    display: table-cell;
    width: 90%;
    vertical-align: top;
  }
}

@media only screen and (max-width: 559px) {
  .NewsList__text {
    display: block;
    margin-top: 6px;
  }
}

@media print, screen and (min-width: 560px) {
  .NewsList__item:not(:first-child) .NewsList__text {
    padding-top: 14px;
  }
}

/* ===== NewsIndexList ===== */
.NewsIndexList {
  margin-top: 20px;
}

.NewsIndexList+.LinkMore {
  margin-top: 16px;
}

@media print, screen and (min-width: 560px) {
  .NewsIndexList:not(:first-child) {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsIndexList:not(:first-child) {
    margin-top: 26px;
  }
}

@media print, screen and (min-width: 560px) {
  .NewsIndexList .NewsList__item {
    display: inline-block;
  }
}

.NewsIndexList .NewsList__item .NewsList__label {
  padding-top: 6px;
}

.NewsIndexList .NewsList__item .NewsList__date {
  padding-top: 6px;
}

@media print, screen and (min-width: 960px) {
  .NewsIndexList .NewsList__head {
    display: inline-block;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsIndexList .NewsList__head .NewsList__date {
    display: block;
  }
}

.NewsIndexList .NewsList__head .NewsList__label {
  padding-top: 0;
}

@media print, screen and (min-width: 960px) {
  .NewsIndexList .NewsList__head .NewsList__label {
    display: block;
    margin-top: 0;
  }
}

.NewsIndexList .NewsList__date {
  display: inline-block;
  width: auto;
}

@media print, screen and (min-width: 560px) {
  .NewsIndexList .NewsList__date {
    padding-top: 0;
  }
}

.NewsIndexList .NewsList__label {
  display: inline-block;
  min-width: 145px;
  width: auto;
  padding-top: 0;
}

.NewsIndexList .NewsList__text {
  display: block;
  width: auto;
  margin-top: 6px;
  padding-top: 0;
}

.NewsIndexList .NewsList__item:not(:first-child) .NewsList__text {
  padding-top: 0;
}

.NewsIndexList__head {
  margin: 0;
  font-weight: normal;
  line-height: 1.4;
  font-weight: normal;
  color: #333;
}

@media print, screen and (min-width: 560px) {
  .NewsIndexList__head {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsIndexList__head {
    font-size: 1.6rem;
  }
}

.NewsIndexList__body {
  margin-top: 23px;
}

/* ===== NewsRadioBox ===== */
.NewsRadioBox {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NewsRadioBox.-multi .Text+.NewsRadioBoxList {
  margin-top: 18px;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBox.-multi .Text+.NewsRadioBoxList {
    margin-top: 20px;
  }
}

.NewsRadioBox.-multi .NewsRadioBoxList {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.NewsRadioBox.-multi .NewsRadioBoxList__heading {
  font-weight: bold;
}

.NewsRadioBox.-multi .NewsRadioBoxList__heading {
  margin: 0 0 12px 0;
}

.NewsRadioBox.-multi .NewsRadioBoxList+.NewsRadioBoxList {
  margin-top: 24px;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBox.-multi .NewsRadioBoxList+.NewsRadioBoxList {
    margin-top: 20px;
  }
}

.Text+.NewsRadioBox {
  margin-top: 24px;
}

.NewsRadioBox__lead {
  margin-bottom: 14px;
  font-weight: bold;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBox__lead {
    margin-bottom: 20px;
  }
}

.NewsRadioBoxList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBoxList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}

.NewsRadioBoxList+.NewsRadioBoxList {
  margin-top: 8px;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBoxList+.NewsRadioBoxList {
    margin-top: 20px;
  }
}

.NewsRadioBoxList__heading {
  margin-right: 43px;
}

@media only screen and (max-width: 559px) {
  .NewsRadioBoxList__heading {
    margin: 0 0 12px 0;
  }
}

.NewsRadioBoxList__list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 28px;
}

/* ===== LatestNewsArea ===== */
@media print, screen and (min-width: 560px) {
  .LatestNewsArea {
    padding-top: 56px;
  }
}

@media only screen and (max-width: 559px) {
  .LatestNewsArea {
    padding-top: 46px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LatestNewsArea .NewsList__item {
    display: inline-block;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LatestNewsArea .NewsList__item:not(:first-child) {
    margin-top: 22px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {

  .LatestNewsArea .NewsList__item:not(:first-child) .NewsList__date,
  .LatestNewsArea .NewsList__item:not(:first-child) .NewsList__label,
  .LatestNewsArea .NewsList__item:not(:first-child) .NewsList__text {
    padding-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .LatestNewsArea .NewsList__date {
    display: inline-block;
    width: auto;
  }
}

@media print, screen and (min-width: 560px) {
  .LatestNewsArea .NewsList__label {
    display: inline-block;
    width: auto;
  }
}

@media only screen and (max-width: 959px) {
  .LatestNewsArea .NewsList__text {
    display: block;
    width: auto;
    margin-top: 6px;
  }
}

.LatestNewsArea .NewsList {
  margin-top: 20px;
}

.LatestNewsArea .LinkMore {
  margin-top: 16px;
  padding-top: 11px;
  border-top: 1px solid #DEDEDE;
}

/* ===== NewsRoomList ===== */
.NewsRoomList {
  list-style-type: none;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NewsRoomList+.LinkMore {
  margin-top: 16px;
  padding-top: 11px;
  border-top: 1px solid #DEDEDE;
}

.NewsRoomList__item:not(:first-child) {
  margin-top: 18px;
}

.NewsRoomList__date {
  white-space: nowrap;
}

@media print, screen and (min-width: 560px) {
  .NewsRoomList__text {
    margin-top: 6px;
  }
}

/* ===== NewsContactBox ===== */
.NewsContactBox {
  padding: 36px 40px;
  word-wrap: break-word;
  background-color: #f5f5f5;
}

@media only screen and (max-width: 559px) {
  .NewsContactBox {
    padding: 22px 26px;
  }
}

.NewsList+.NewsContactBox {
  margin-top: 66px;
}

.NewsContactBox__heading {
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsContactBox__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsContactBox__heading {
    font-size: 1.6rem;
  }
}

.NewsContactBox__body {
  margin-top: 26px;
}

.NewsContactBox__body .ListLink {
  margin-top: 0;
}

.ListLink+.NewsContactBox__address {
  margin-top: 30px;
}

.NewsContactBox__address+.List.-note {
  margin-top: 26px;
}

@media only screen and (max-width: 559px) {
  .NewsContactBox__address .-column1SPView .Grid__item:nth-child(-n+2) {
    margin-top: 10px;
  }
}

.NewsContactBox__addressName {
  margin-bottom: 16px;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NewsContactBox__addressList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  list-style-type: none;
}

@media only screen and (max-width: 559px) {
  .NewsContactBox__addressList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.NewsContactBox__addressList li {
  margin-right: 50px;
}

@media only screen and (max-width: 559px) {
  .NewsContactBox__addressList li {
    margin-top: 16px;
    margin-right: 0;
  }
}

@media only screen and (max-width: 559px) {
  .NewsContactBox__addressList li:first-child {
    margin-top: 0;
  }
}

/* ===== News ===== */
@media only screen and (max-width: 559px) {
  .ProductInfo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 560px) {
  .ProductInfo::after {
    content: "";
    display: block;
    clear: both;
  }
}

.ProductInfo+.ProductInfo {
  margin-top: 50px;
}

@media only screen and (max-width: 559px) {
  .ProductInfo+.ProductInfo {
    margin-top: 30px;
  }
}

.SectionLevel3 .ProductInfo+.ProductInfo {
  margin-top: 30px;
}

@media only screen and (max-width: 559px) {
  .ProductInfo__body {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 20px;
  }
}

.ProductInfo__image {
  margin-left: 24px;
  margin-bottom: 20px;
}

@media print, screen and (min-width: 560px) {
  .ProductInfo__image {
    float: right;
    max-width: 30%;
  }
}

@media only screen and (max-width: 559px) {
  .ProductInfo__image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin: 0;
  }
}

.ProductInfo__section+.ProductInfo__section {
  margin-top: 30px;
}

.ProductInfo__sectionLevel2 {
  margin-top: 20px;
}

.ProductInfo__heading {
  font-weight: normal;
  line-height: 1.4;
  color: #333;
}

@media print, screen and (min-width: 560px) {
  .ProductInfo__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .ProductInfo__heading {
    font-size: 1.6rem;
  }
}

.ProductInfo__headingLevel2 {
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.8rem;
  color: #333;
}

.ProductInfo__sectionBody {
  margin-top: 20px;
}

.ProductInfo__sectionBody .Text:first-child,
.ProductInfo__sectionBody .List:first-child,
.ProductInfo__sectionBody .ListLink:first-child,
.ProductInfo__sectionBody .Box:first-child,
.ProductInfo__sectionBody .CardGrid:first-child,
.ProductInfo__sectionBody .CardHorizontal:first-child,
.ProductInfo__sectionBody .Grid:first-child,
.ProductInfo__sectionBody .Figure:first-child {
  margin-top: 0;
}

.ProductInfo__sectionBody .Text~.Text,
.ProductInfo__sectionBody .Text~.List,
.ProductInfo__sectionBody .Text~.ListLink,
.ProductInfo__sectionBody .Text~.Box,
.ProductInfo__sectionBody .Text~.CardGrid,
.ProductInfo__sectionBody .Text~.CardHorizontal,
.ProductInfo__sectionBody .Text~.Grid,
.ProductInfo__sectionBody .Text~.Figure,
.ProductInfo__sectionBody .List~.Text,
.ProductInfo__sectionBody .List~.List,
.ProductInfo__sectionBody .List~.ListLink,
.ProductInfo__sectionBody .List~.Box,
.ProductInfo__sectionBody .List~.CardGrid,
.ProductInfo__sectionBody .List~.CardHorizontal,
.ProductInfo__sectionBody .List~.Grid,
.ProductInfo__sectionBody .List~.Figure,
.ProductInfo__sectionBody .ListLink~.Text,
.ProductInfo__sectionBody .ListLink~.List,
.ProductInfo__sectionBody .ListLink~.ListLink,
.ProductInfo__sectionBody .ListLink~.Box,
.ProductInfo__sectionBody .ListLink~.CardGrid,
.ProductInfo__sectionBody .ListLink~.CardHorizontal,
.ProductInfo__sectionBody .ListLink~.Grid,
.ProductInfo__sectionBody .ListLink~.Figure,
.ProductInfo__sectionBody .Box~.Text,
.ProductInfo__sectionBody .Box~.List,
.ProductInfo__sectionBody .Box~.ListLink,
.ProductInfo__sectionBody .Box~.Box,
.ProductInfo__sectionBody .Box~.CardGrid,
.ProductInfo__sectionBody .Box~.CardHorizontal,
.ProductInfo__sectionBody .Box~.Grid,
.ProductInfo__sectionBody .Box~.Figure,
.ProductInfo__sectionBody .CardGrid~.Text,
.ProductInfo__sectionBody .CardGrid~.List,
.ProductInfo__sectionBody .CardGrid~.ListLink,
.ProductInfo__sectionBody .CardGrid~.Box,
.ProductInfo__sectionBody .CardGrid~.CardGrid,
.ProductInfo__sectionBody .CardGrid~.CardHorizontal,
.ProductInfo__sectionBody .CardGrid~.Grid,
.ProductInfo__sectionBody .CardGrid~.Figure,
.ProductInfo__sectionBody .CardHorizontal~.Text,
.ProductInfo__sectionBody .CardHorizontal~.List,
.ProductInfo__sectionBody .CardHorizontal~.ListLink,
.ProductInfo__sectionBody .CardHorizontal~.Box,
.ProductInfo__sectionBody .CardHorizontal~.CardGrid,
.ProductInfo__sectionBody .CardHorizontal~.CardHorizontal,
.ProductInfo__sectionBody .CardHorizontal~.Grid,
.ProductInfo__sectionBody .CardHorizontal~.Figure,
.ProductInfo__sectionBody .Grid~.Text,
.ProductInfo__sectionBody .Grid~.List,
.ProductInfo__sectionBody .Grid~.ListLink,
.ProductInfo__sectionBody .Grid~.Box,
.ProductInfo__sectionBody .Grid~.CardGrid,
.ProductInfo__sectionBody .Grid~.CardHorizontal,
.ProductInfo__sectionBody .Grid~.Grid,
.ProductInfo__sectionBody .Grid~.Figure,
.ProductInfo__sectionBody .Figure~.Text,
.ProductInfo__sectionBody .Figure~.List,
.ProductInfo__sectionBody .Figure~.ListLink,
.ProductInfo__sectionBody .Figure~.Box,
.ProductInfo__sectionBody .Figure~.CardGrid,
.ProductInfo__sectionBody .Figure~.CardHorizontal,
.ProductInfo__sectionBody .Figure~.Grid,
.ProductInfo__sectionBody .Figure~.Figure {
  margin-top: 14px;
}

.ProductInfo__sectionBody .Text+.Text,
.ProductInfo__sectionBody .Text+.List,
.ProductInfo__sectionBody .Text+.ListLink,
.ProductInfo__sectionBody .Text+.Box,
.ProductInfo__sectionBody .Text+.CardGrid,
.ProductInfo__sectionBody .Text+.CardHorizontal,
.ProductInfo__sectionBody .Text+.Grid,
.ProductInfo__sectionBody .Text+.Figure,
.ProductInfo__sectionBody .List+.Text,
.ProductInfo__sectionBody .List+.List,
.ProductInfo__sectionBody .List+.ListLink,
.ProductInfo__sectionBody .List+.Box,
.ProductInfo__sectionBody .List+.CardGrid,
.ProductInfo__sectionBody .List+.CardHorizontal,
.ProductInfo__sectionBody .List+.Grid,
.ProductInfo__sectionBody .List+.Figure,
.ProductInfo__sectionBody .ListLink+.Text,
.ProductInfo__sectionBody .ListLink+.List,
.ProductInfo__sectionBody .ListLink+.ListLink,
.ProductInfo__sectionBody .ListLink+.Box,
.ProductInfo__sectionBody .ListLink+.CardGrid,
.ProductInfo__sectionBody .ListLink+.CardHorizontal,
.ProductInfo__sectionBody .ListLink+.Grid,
.ProductInfo__sectionBody .ListLink+.Figure,
.ProductInfo__sectionBody .Box+.Text,
.ProductInfo__sectionBody .Box+.List,
.ProductInfo__sectionBody .Box+.ListLink,
.ProductInfo__sectionBody .Box+.Box,
.ProductInfo__sectionBody .Box+.CardGrid,
.ProductInfo__sectionBody .Box+.CardHorizontal,
.ProductInfo__sectionBody .Box+.Grid,
.ProductInfo__sectionBody .Box+.Figure,
.ProductInfo__sectionBody .CardGrid+.Text,
.ProductInfo__sectionBody .CardGrid+.List,
.ProductInfo__sectionBody .CardGrid+.ListLink,
.ProductInfo__sectionBody .CardGrid+.Box,
.ProductInfo__sectionBody .CardGrid+.CardGrid,
.ProductInfo__sectionBody .CardGrid+.CardHorizontal,
.ProductInfo__sectionBody .CardGrid+.Grid,
.ProductInfo__sectionBody .CardGrid+.Figure,
.ProductInfo__sectionBody .CardHorizontal+.Text,
.ProductInfo__sectionBody .CardHorizontal+.List,
.ProductInfo__sectionBody .CardHorizontal+.ListLink,
.ProductInfo__sectionBody .CardHorizontal+.Box,
.ProductInfo__sectionBody .CardHorizontal+.CardGrid,
.ProductInfo__sectionBody .CardHorizontal+.CardHorizontal,
.ProductInfo__sectionBody .CardHorizontal+.Grid,
.ProductInfo__sectionBody .CardHorizontal+.Figure,
.ProductInfo__sectionBody .Grid+.Text,
.ProductInfo__sectionBody .Grid+.List,
.ProductInfo__sectionBody .Grid+.ListLink,
.ProductInfo__sectionBody .Grid+.Box,
.ProductInfo__sectionBody .Grid+.CardGrid,
.ProductInfo__sectionBody .Grid+.CardHorizontal,
.ProductInfo__sectionBody .Grid+.Grid,
.ProductInfo__sectionBody .Grid+.Figure,
.ProductInfo__sectionBody .Figure+.Text,
.ProductInfo__sectionBody .Figure+.List,
.ProductInfo__sectionBody .Figure+.ListLink,
.ProductInfo__sectionBody .Figure+.Box,
.ProductInfo__sectionBody .Figure+.CardGrid,
.ProductInfo__sectionBody .Figure+.CardHorizontal,
.ProductInfo__sectionBody .Figure+.Grid,
.ProductInfo__sectionBody .Figure+.Figure {
  margin-top: 14px;
}

.ProductInfo__sectionBody .Table~.List {
  margin-top: 16px;
}

/* ===== NewsArea ===== */
.NewsArea__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .NewsArea__inner {
    margin-left: -24px;
    padding-top: 128px;
  }
}

@media only screen and (max-width: 959px) {
  .NewsArea__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NewsArea__inner {
    padding-top: 120px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsArea__inner {
    padding-top: 60px;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsArea__inner _:-ms-lang(x), .NewsArea__inner {
    margin-left: -25px;
  }
}

.NewsArea__inner .LinkMore {
  margin-top: 16px;
}

.NewsArea__section {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .NewsArea__section {
    width: calc(35% - 24px);
    margin-left: 24px;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsArea__section _:-ms-lang(x), .NewsArea__section {
    width: calc(35% - 25px);
    margin-left: 25px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsArea__section:not(:first-child) {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 959px) {
  .NewsArea__section {
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .NewsArea__section:nth-child(-n+3) {
    margin-top: 0;
  }
}

.NewsArea__section.-small {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .NewsArea__section.-small {
    width: calc(30% - 24px);
  }
}

@media print, screen and (min-width: 960px) {
  .NewsArea__section.-small _:-ms-lang(x), .NewsArea__section.-small {
    width: calc(30% - 25px);
  }
}

.NewsArea__section .NewsList__date {
  min-width: 119px;
  padding-right: 14px;
}

.NewsArea__section .NewsList__label {
  min-width: 120px;
}

@media only screen and (max-width: 959px) {
  .NewsArea__section+.NewsArea__section {
    margin-top: 60px;
  }
}

.NewsArea__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 26px;
}

.NewsArea__headingBody {
  letter-spacing: .03em;
}

.NewsArea__headingMain {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsArea__headingMain {
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 559px) {
  .NewsArea__headingMain {
    font-size: 2.1rem;
  }
}

/* ===== ImportantNotice ===== */
@media print, screen and (min-width: 960px) {
  .ImportantNoticeArea {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 959px) {
  .ImportantNoticeArea {
    margin-top: 50px;
  }
}

.ImportantNoticeArea .ListLink {
  margin-top: 0;
}

.ImportantNoticeArea__inner {
  padding: 17px 40px 16px;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 960px) {
  .ImportantNoticeArea__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.ImportantNoticeArea__heading {
  color: #008486;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

@media print, screen and (min-width: 960px) {
  .ImportantNoticeArea__heading {
    margin: 0 86px 0 0;
  }
}

@media only screen and (max-width: 959px) {
  .ImportantNoticeArea__heading {
    margin: 0 0 9px 0;
  }
}

.ImportantNoticeArea__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  list-style: none;
}

.ImportantNoticeArea__body.ListLink:not(.-zaxis) li {
  margin-top: 0;
}

/* ===== InTheNews ===== */
@media print, screen and (min-width: 560px) {
  .InTheNews {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNews {
    margin-top: 40px;
  }
}

.InTheNews__inner {
  padding: 40px;
  background-color: #f5f5f5;
}

.InTheNews__headingBody {
  color: #008486;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.5;
  font-size: 1.6rem;
}

.InTheNews__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 25px;
  padding: 0;
  list-style: none;
}

@media print, screen and (min-width: 960px) {
  .InTheNews__card {
    margin-left: -24px;
  }
}

@media print, screen and (min-width: 560px) {
  .InTheNews__card {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 25px;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNews__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.InTheNews__cardItem {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .InTheNews__cardItem {
    width: calc((100% - 24px * 2) / 2);
    margin: 26px 0 0 24px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .InTheNews__cardItem {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 959px) {
  .InTheNews__cardItem {
    width: 100%;
    height: 100%;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNews__cardItem {
    margin-top: 30px;
  }
}

@media print, screen and (min-width: 960px) {
  .InTheNews__cardItem _:-ms-lang(x), .InTheNews__cardItem {
    width: calc((100% - 25px * 2) / 2);
    margin: 26px 0 0 25px;
  }
}

@media print, screen and (min-width: 960px) {
  .InTheNews__cardItem:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .InTheNews__cardItem:first-child {
    margin-top: 0;
  }
}

.InTheNewsCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 560px) {
  .InTheNewsCard {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNewsCard {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.InTheNewsCard__image {
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  height: 100%;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

@media print, screen and (min-width: 560px) {
  .InTheNewsCard__image {
    width: 160px;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNewsCard__image {
    width: 100%;
  }
}

.InTheNewsCard__image:hover {
  opacity: .8;
}

.InTheNewsCard__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

@media print, screen and (min-width: 560px) {
  .InTheNewsCard__body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 16px;
  }
}

@media only screen and (max-width: 559px) {
  .InTheNewsCard__body {
    margin-top: 16px;
  }
}

.InTheNewsCard__label {
  color: #333;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.InTheNewsCard__text {
  margin-top: 7px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

/* ===== EventNewsList ===== */
.EventNewsList__item+.EventNewsList__item {
  margin-top: 14px;
}

.EventNewsList__head {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.EventNewsList__body {
  margin-top: 5px;
}

.EventNewsList__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  list-style: none;
}

.EventNewsList__detail li:not(:first-child) {
  margin-left: 24px;
}

.EventNewsList__detail.ListLink:not(.-zaxis) li {
  margin-top: 0;
}

.EventNewsList__link {
  margin-top: 12px;
}

/* ===== HighlightArea ===== */
.HighlightArea__inner {
  max-width: 1600px;
  margin: 0 auto;
}

@media print, screen and (min-width: 960px) {
  .HighlightArea__inner {
    padding: 6px 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HighlightArea__inner {
    padding: 6px 0;
  }
}

@media only screen and (max-width: 559px) {
  .HighlightArea__inner {
    padding: 4px 0;
  }
}

.HighlightArea__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 39px;
}

.HighlightArea__headingBody {
  letter-spacing: .03em;
}

.HighlightArea__headingMain {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .HighlightArea__headingMain {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .HighlightArea__headingMain {
    font-size: 2.1rem;
  }
}

.HighlightArea__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin-left: -24px;
  padding: 0;
  /* IE11 */
}

.HighlightArea__card _:-ms-lang(x), .HighlightArea__card {
  margin-left: -25px;
}

.HighlightArea__card .Link__text {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.HighlightArea__cardItem {
  margin-top: 26px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .HighlightArea__cardItem {
    width: calc((100% - 24px * 4) / 4);
    margin-left: 24px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HighlightArea__cardItem {
    width: calc((100% - 24px * 3) / 3);
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .HighlightArea__cardItem {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
  }
}

@media print, screen and (min-width: 960px) {
  .HighlightArea__cardItem _:-ms-lang(x), .HighlightArea__cardItem {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HighlightArea__cardItem _:-ms-lang(x), .HighlightArea__cardItem {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .HighlightArea__cardItem _:-ms-lang(x), .HighlightArea__cardItem {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .HighlightArea__cardItem:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .HighlightArea__cardItem:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .HighlightArea__cardItem:nth-child(-n+2) {
    margin-top: 0;
  }
}

.HighlightAreaCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.HighlightAreaCard .LinkMore {
  list-style: none;
  margin-top: 2px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.HighlightAreaCard__image {
  display: block;
  height: 100%;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.HighlightAreaCard__image:hover {
  opacity: .8;
}

.HighlightAreaCard .HighlightAreaCard__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin-top: 14px;
}

.HighlightAreaCard__text {
  margin: 0;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

/* ===== IndexNav ===== */
.IndexNav ul {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -24px;
}

@media print, screen and (min-width: 960px) {
  .IndexNav ul {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media only screen and (max-width: 959px) {
  .IndexNav ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media print, screen and (min-width: 960px) {
  .IndexNav li {
    margin-top: 0;
    width: calc((100% - 24px * 6) / 6);
    max-width: 204px;
    margin-left: 24px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .IndexNav li {
    margin-top: 28px;
    margin-left: 24px;
    width: calc((100% - 24px * 3) / 3);
    /* IE11 */
  }

  .IndexNav li _:-ms-lang(x), .IndexNav li {
    width: calc((100% - 25px * 3) / 3);
  }

  .IndexNav li:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .IndexNav li {
    margin-top: 28px;
    margin-left: 25px;
    width: calc((100% - 25px * 2) / 2);
    /* IE11 */
  }

  .IndexNav li _:-ms-lang(x), .IndexNav li {
    width: calc((100% - 26px * 2) / 2);
  }

  .IndexNav li:nth-child(-n+2) {
    margin-top: 0;
  }
}

.IndexNav a {
  text-decoration: none;
}

.Text+.IndexNav {
  margin-top: 80px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Text+.IndexNav {
    margin-top: 70px;
  }
}

@media only screen and (max-width: 559px) {
  .Text+.IndexNav {
    margin-top: 50px;
  }
}

a.IndexNavCard {
  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%;
  text-align: center;
  -webkit-transition: opacity .2s;
  transition: opacity .2s;
}

a.IndexNavCard:hover {
  opacity: .8;
}

@media print, screen and (min-width: 960px) {
  a.IndexNavCard:hover .IndexNavCard__icon span {
    top: 3px;
  }
}

.IndexNavCard__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin-top: 19px;
}

@media only screen and (max-width: 559px) {
  .IndexNavCard__body {
    margin-top: 10px;
  }
}

.IndexNavCard__heading {
  margin: 0;
  letter-spacing: .03em;
  font-size: 2.1rem;
  line-height: 1.5;
  color: #008486;
  font-weight: normal;
}

@media only screen and (max-width: 559px) {
  .IndexNavCard__heading {
    font-size: 1.6rem;
  }
}

.IndexNavCard__image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  height: 100%;
}

.IndexNavCard__icon {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  position: relative;
  width: 100%;
  height: 7px;
  margin-top: 14px;
  text-align: center;
}

.IndexNavCard__icon span {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -12px;
  display: inline-block;
  width: 24px;
  height: 7px;
  overflow: hidden;
  line-height: 1;
  vertical-align: bottom;
  background: url(/assets/images/icons/arrow_index_scroll.svg) 0 0 no-repeat;
  -webkit-transition: top .2s;
  transition: top .2s;
}

/* ===== ArticleSignature ===== */
.ArticleSignature {
  text-align: right;
  margin-top: 24px;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.ArticleSignature__top+.ArticleSignature__bottom {
  margin-top: 24px;
}

.ArticleSignature__position {
  font-size: 1.4rem;
  line-height: 1.7;
}

.ArticleSignature__name {
  margin-top: 6px;
  font-size: 2.2rem;
  line-height: 1.5;
}

@media only screen and (max-width: 559px) {
  .ArticleSignature__name {
    margin-top: 5px;
  }
}

/* ===== OtherStoriesNav ===== */
#OtherStoriesNav {
  margin-top: 100px;
}

@media only screen and (max-width: 559px) {
  #OtherStoriesNav {
    margin-top: 55px;
  }
}

#OtherStoriesNav.-dok {
  margin-top: 140px;
}

@media only screen and (max-width: 559px) {
  #OtherStoriesNav.-dok {
    margin-top: 90px;
  }
}

.OtherStoriesNav__inner {
  margin: 0 auto;
  max-width: 1600px;
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesNav__inner {
    padding: 0 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OtherStoriesNav__inner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__inner {
    padding: 0 15px;
  }
}

.OtherStoriesNav__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

.OtherStoriesNav__head span {
  position: relative;
  color: #008486;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .OtherStoriesNav__head span {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__head span {
    font-size: 2.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__head span {
    margin: 0 28px;
    padding: 0 10px;
    background-color: #fff;
  }
}

.OtherStoriesNav__head span::before, .OtherStoriesNav__head span::after {
  content: "";
  display: inline-block;
  height: 1px;
  position: absolute;
  top: .6em;
  background-color: #008486;
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesNav__head span::before, .OtherStoriesNav__head span::after {
    width: 60px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OtherStoriesNav__head span::before, .OtherStoriesNav__head span::after {
    width: 40px;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__head span::before, .OtherStoriesNav__head span::after {
    width: 30px;
  }
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesNav__head span::before {
    left: -90px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OtherStoriesNav__head span::before {
    left: -60px;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__head span::before {
    left: -28px;
  }
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesNav__head span::after {
    right: -90px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OtherStoriesNav__head span::after {
    right: -60px;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNav__head span::after {
    right: -28px;
  }
}

.OtherStoriesNav__body {
  margin-top: 36px;
}

.OtherStoriesNavList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style-type: none;
  margin-left: -24px;
  /* IE11 */
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNavList {
    margin-left: -25px;
  }
}

.OtherStoriesNavList _:-ms-lang(x), .OtherStoriesNavList {
  margin-left: -25px;
}

@media only screen and (max-width: 559px) {
  .OtherStoriesNavList _:-ms-lang(x), .OtherStoriesNavList {
    margin-left: -26px;
  }
}

.OtherStoriesNavList .OtherStoriesNavList__item {
  position: relative;
  margin-top: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-left: 24px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
  color: #008486;
  overflow: hidden;
  width: calc((100% - 24px * 4) / 4);
  /* IE11 */
  /* IE11 */
  /* IE11 */
}

.OtherStoriesNavList .OtherStoriesNavList__item _:-ms-lang(x), .OtherStoriesNavList .OtherStoriesNavList__item {
  width: calc((100% - 25px * 4) / 4);
}

@media only screen and (min-width: 960px) and (max-width: 1419px) {
  .OtherStoriesNavList .OtherStoriesNavList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (min-width: 960px) and (max-width: 1419px) {
  .OtherStoriesNavList .OtherStoriesNavList__item _:-ms-lang(x), .OtherStoriesNavList .OtherStoriesNavList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (min-width: 761px) and (max-width: 959px) {
  .OtherStoriesNavList .OtherStoriesNavList__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (min-width: 761px) and (max-width: 959px) {
  .OtherStoriesNavList .OtherStoriesNavList__item _:-ms-lang(x), .OtherStoriesNavList .OtherStoriesNavList__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 760px) {
  .OtherStoriesNavList .OtherStoriesNavList__item {
    width: 100%;
    margin-top: 30px;
    margin-left: 25px;
  }
}

@media only screen and (min-width: 1420px) {
  .OtherStoriesNavList .OtherStoriesNavList__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1419px) {
  .OtherStoriesNavList .OtherStoriesNavList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 761px) and (max-width: 959px) {
  .OtherStoriesNavList .OtherStoriesNavList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 760px) {
  .OtherStoriesNavList .OtherStoriesNavList__item:first-child {
    margin-top: 0;
  }
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__imageInner::after {
  background-color: rgba(255, 255, 255, 0.84);
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__body {
  border-bottom: 2px solid #008486;
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__heading {
  color: #008486;
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__heading::before {
  border-color: transparent transparent transparent #008486;
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__label li {
  background-color: #008486;
}

.OtherStoriesNavList .OtherStoriesNavList__item.-current .OtherStoriesListCard__label li span {
  color: #fff;
}

.OtherStoriesListCard {
  position: relative;
}

.OtherStoriesListCard::before {
  content: "";
  display: block;
  padding-top: 65%;
}

.OtherStoriesListCard a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.OtherStoriesListCard a:hover {
  opacity: .8;
}

.OtherStoriesListCard__body {
  position: relative;
  height: 100%;
  z-index: 2;
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesListCard__body {
    padding: calc(10px + ((1vw - 9.6px) *(10/6.4)));
  }
}

@media only screen and (min-width: 1600px) {
  .OtherStoriesListCard__body {
    padding: 20px 16px 20px 18px;
  }
}

@media only screen and (max-width: 959px) {
  .OtherStoriesListCard__body {
    padding: 20px 16px 20px 18px;
  }
}

.OtherStoriesListCard__heading {
  display: inline-block;
  position: relative;
  padding-left: 22px;
  color: #fff;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .OtherStoriesListCard__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .OtherStoriesListCard__heading {
    font-size: 1.6rem;
  }
}

.OtherStoriesListCard__heading::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .5em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #fff;
}

.OtherStoriesListCard__heading span {
  display: block;
}

.OtherStoriesListCard__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 26px;
  line-height: 1;
}

@media print, screen and (min-width: 960px) {
  .OtherStoriesListCard__label {
    margin-top: calc(6px + ((1vw - 9.6px) * (12 / 6.4)));
  }
}

.OtherStoriesListCard__label li {
  display: inline-block;
  padding: 5px 14px 4px;
  background-color: #fff;
}

.OtherStoriesListCard__label li:not(:last-child) {
  margin-right: 12px;
}

.OtherStoriesListCard__label li span {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.2rem;
}

.OtherStoriesListCard__image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  height: 100%;
  z-index: 1;
}

.OtherStoriesListCard__imageInner {
  position: relative;
  width: 100%;
  height: 100%;
}

.OtherStoriesListCard__imageInner::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.48);
}

.OtherStoriesListCard__imageInner img {
  height: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* ===== Address ===== */
.Address {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
  font-style: normal;
}

.Address__head {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Address__head+.Address__tel {
  margin-top: 2px;
}

.Address__head+.Address__fax {
  margin-top: 2px;
}

/* ===== Signature ===== */
.Signature {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.HeadingLevel1+.Signature {
  margin-top: 10px;
}

.Signature__date {
  margin-top: 10px;
  text-align: right;
}

.Signature__position {
  margin-top: 10px;
  text-align: right;
}

.Signature__name {
  margin-top: 2px;
  text-align: right;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Signature__name {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Signature__name {
    font-size: 2.1rem;
  }
}

/* ===== FaqList ===== */
.FaqList {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.HeadingLevel2+.FaqList {
  margin-top: 60px;
}

.FaqList__item:not(:first-child) {
  margin-top: 50px;
}

@media only screen and (max-width: 559px) {
  .FaqList__item:not(:first-child) {
    margin-top: 28px;
  }
}

.FaqList__Q,
.FaqList__A {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 559px) {

  .FaqList__Q,
  .FaqList__A {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.FaqList__A {
  margin-top: 20px;
}

.FaqList__icon {
  display: inline-block;
  text-align: center;
  width: 80px;
  height: 26px;
  margin-right: 16px;
  padding: 5px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
}

.FaqList__Q .FaqList__icon {
  background-color: #008486;
}

.FaqList__A .FaqList__icon {
  background-color: #666;
}

@media print, screen and (min-width: 560px) {
  .FaqList__text {
    width: calc(100% - 96px);
    margin-top: 2px;
  }
}

@media only screen and (max-width: 559px) {
  .FaqList__text {
    width: 100%;
    margin-top: 8px;
  }
}

/* ===== OurTech ===== */
.OurTechList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .OurTechList {
    margin: 50px 0 0 -24px;
  }
}

@media only screen and (max-width: 559px) {
  .OurTechList {
    margin: 30px 0 0 -25px;
  }
}

.OurTechList__item {
  margin-top: 40px;
  margin-left: 24px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

@media print, screen and (min-width: 960px) {
  .OurTechList__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OurTechList__item {
    width: 100%;
  }
}

@media only screen and (max-width: 559px) {
  .OurTechList__item {
    margin-left: 25px;
  }
}

@media only screen and (max-width: 959px) {
  .OurTechList__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .OurTechList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

.OurTechCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 559px) {
  .OurTechCard {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.OurTechCard .IconZoom {
  margin-left: 12px;
}

@media print, screen and (min-width: 560px) {
  .OurTechCard__body {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
  }
}

@media print, screen and (min-width: 560px) {
  .OurTechCard__image {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .OurTechCard__image {
    width: 50%;
    height: 100%;
    margin: 13px auto 0;
    text-align: center;
  }
}

.OurTechCard__image .ListLink {
  margin-top: 14px;
}

.OurTechCard__heading {
  margin: 0;
  letter-spacing: .03em;
  font-size: 2.2rem;
  line-height: 1.5;
  color: #333;
}

@media only screen and (max-width: 559px) {
  .OurTechCard__heading {
    font-size: 1.6rem;
  }
}

.OurTechCard__heading a {
  position: relative;
  text-decoration: underline;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
}

.OurTechCard__heading a span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0 3px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.OurTechCard__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.OurTechCard__heading+.OurTechCard__text {
  margin-top: 14px;
}

.OurTechCard__text+.Text.-note,
.OurTechCard__text+.List.-note {
  margin-top: 13px;
}

.OurTechCard__text+.Text,
.OurTechCard__text+.List,
.OurTechCard__text+.ListLink,
.OurTechCard__text+.Box,
.OurTechCard__text+.Button,
.OurTechCard__text+.Js-Scrollable__wrap {
  margin-top: 20px;
}

@media only screen and (max-width: 559px) {

  .OurTechCard__text+.Text,
  .OurTechCard__text+.List,
  .OurTechCard__text+.ListLink,
  .OurTechCard__text+.Box,
  .OurTechCard__text+.Button,
  .OurTechCard__text+.Js-Scrollable__wrap {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 560px) {

  .OurTechCard__text+.CardGrid,
  .OurTechCard__text+.CardHorizontal,
  .OurTechCard__text+.Grid,
  .OurTechCard__text+.Figure,
  .OurTechCard__text+.Definitionlist,
  .OurTechCard__text+.Media {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 559px) {

  .OurTechCard__text+.CardGrid,
  .OurTechCard__text+.CardHorizontal,
  .OurTechCard__text+.Grid,
  .OurTechCard__text+.Figure,
  .OurTechCard__text+.Definitionlist,
  .OurTechCard__text+.Media {
    margin-top: 28px;
  }
}

/* ===== FeaturesList ===== */
.FeaturesList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .FeaturesList {
    margin: 50px 0 0 -24px;
    padding-bottom: 70px;
  }
}

@media only screen and (max-width: 559px) {
  .FeaturesList {
    margin: 30px 0 0 -25px;
    padding-bottom: 60px;
  }
}

.FeaturesList__item {
  margin-top: 30px;
  margin-left: 24px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .FeaturesList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .FeaturesList__item {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .FeaturesList__item {
    margin-top: 38px;
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .FeaturesList__item _:-ms-lang(x), .FeaturesList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .FeaturesList__item _:-ms-lang(x), .FeaturesList__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .FeaturesList__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .FeaturesList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .FeaturesList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

/* ===== LineupList ===== */
.LineupList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .LineupList {
    margin: 50px 0 0 -24px;
  }
}

@media only screen and (max-width: 559px) {
  .LineupList {
    margin: 30px 0 0 -25px;
  }
}

@media print, screen and (min-width: 960px) {
  .LineupList.-column3 {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.LineupList.-column3 .LineupList__item {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .LineupList.-column3 .LineupList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media print, screen and (min-width: 960px) {
  .LineupList.-column3 .LineupList__item _:-ms-lang(x), .LineupList.-column3 .LineupList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

.LineupList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 30px;
  margin-left: 24px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .LineupList__item {
    width: calc((100% - 24px * 4) / 4);
  }
}

@media only screen and (max-width: 959px) {
  .LineupList__item {
    margin-top: 38px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LineupList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .LineupList__item {
    width: calc((100% - 25px * 2) / 2);
    margin-left: 25px;
  }
}

.LineupList__item _:-ms-lang(x), .LineupList__item {
  width: calc((100% - 25px * 4) / 4);
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LineupList__item _:-ms-lang(x), .LineupList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .LineupList__item _:-ms-lang(x), .LineupList__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

@media only screen and (max-width: 559px) {
  .LineupList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LineupList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .LineupList__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

.LineupList__item .Image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  width: 100%;
  height: 100%;
}

.LineupList__item .Image img {
  width: 100%;
}

.LineupList__item a {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: color .2s ease-in-out, opacity .2s ease-in-out;
  transition: color .2s ease-in-out, opacity .2s ease-in-out;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.LineupList__item a:hover, .LineupList__item a:focus {
  cursor: pointer;
  opacity: .8;
}

.LineupList__item a .Link__text {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.LineupList__item a .Card__caption {
  position: relative;
  text-decoration: underline;
  color: #008486;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
}

.LineupList__item a .Card__caption:link {
  color: #008486;
}

.LineupList__item a .Card__caption:visited {
  color: #471f99;
}

.LineupList__item a .Card__caption:hover, .LineupList__item a .Card__caption:focus {
  color: #00a8a9;
}

.LineupList__item a .Card__caption:active {
  color: #008486;
}

.LineupList__item a .Card__caption::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0 2px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.LineupList__item .Figure {
  width: 100%;
}

/* ===== ApplicationList ===== */
.ApplicationList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .ApplicationList {
    margin: 50px 0 0 -24px;
  }
}

@media only screen and (max-width: 559px) {
  .ApplicationList {
    margin: 30px 0 0 0;
  }
}

.ApplicationList__item {
  margin-top: 30px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .ApplicationList__item {
    width: calc((100% - 24px * 3) / 3);
    margin-left: 24px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .ApplicationList__item {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .ApplicationList__item {
    width: 100%;
    margin-top: 38px;
  }
}

@media print, screen and (min-width: 960px) {
  .ApplicationList__item _:-ms-lang(x), .ApplicationList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .ApplicationList__item _:-ms-lang(x), .ApplicationList__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .ApplicationList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .ApplicationList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .ApplicationList__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

.ApplicationList__item .Figure {
  text-align: left;
}

.ApplicationList__item .Card__caption {
  font-weight: normal;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
  color: #333;
  text-align: left;
}

@media print, screen and (min-width: 560px) {
  .ApplicationList__item .Card__caption {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .ApplicationList__item .Card__caption {
    font-size: 1.6rem;
  }
}

.ApplicationList__item a {
  display: block;
  -webkit-transition: color .2s ease-in-out, opacity .2s ease-in-out;
  transition: color .2s ease-in-out, opacity .2s ease-in-out;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.ApplicationList__item a:hover, .ApplicationList__item a:focus {
  cursor: pointer;
  opacity: .8;
}

.ApplicationList__item a .Link__text {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.ApplicationList__item a .Card__caption {
  position: relative;
  text-decoration: underline;
  color: #008486;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
}

.ApplicationList__item a .Card__caption:link {
  color: #008486;
}

.ApplicationList__item a .Card__caption:visited {
  color: #471f99;
}

.ApplicationList__item a .Card__caption:hover, .ApplicationList__item a .Card__caption:focus {
  color: #00a8a9;
}

.ApplicationList__item a .Card__caption:active {
  color: #008486;
}

.ApplicationList__item a .Card__caption::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0 4px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

/* ===== SelectLocalArea ===== */
.SelectLocalArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 1600px;
  padding: 0 28px;
}

@media only screen and (max-width: 559px) {
  .SelectLocalArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 15px;
  }
}

#SelectLocalAreaUpper {
  max-width: initial;
  padding: 70px 50px 90px;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 1601px) {
  #SelectLocalAreaUpper {
    margin: -47px calc(-1 * (100vw - 100%) / 2) 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #SelectLocalAreaUpper {
    padding: 70px 28px 90px;
  }
}

@media only screen and (max-width: 559px) {
  #SelectLocalAreaUpper {
    padding: 54px 15px 60px;
  }
}

#SelectLocalAreaUpper+#FeaturesArea {
  margin-top: -90px;
}

@media only screen and (max-width: 559px) {
  #SelectLocalAreaUpper+#FeaturesArea {
    margin-top: -60px;
  }
}

#SelectLocalAreaBottom {
  padding: 120px 50px 0;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #SelectLocalAreaBottom {
    padding: 120px 28px 0;
  }
}

@media only screen and (max-width: 559px) {
  #SelectLocalAreaBottom {
    padding: 54px 15px 0;
  }
}

.SelectLocal__heading {
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SelectLocal__heading {
    font-size: 2.2rem;
  }
}

@media only screen and (max-width: 559px) {
  .SelectLocal__heading {
    font-size: 1.8rem;
  }
}

.SelectLocal__body {
  margin-top: 25px;
}

@media only screen and (max-width: 559px) {
  .SelectLocal__body {
    text-align: center;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SelectLocal__pulldownWrap form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.SelectLocal__pulldown {
  position: relative;
  min-width: 462px;
  height: 62px;
  line-height: 62px;
  padding: 0 90px 0 38px;
  font-size: 1.8rem;
  vertical-align: top;
  text-align: center;
  margin: 0 auto;
  color: #333;
  border: 1px solid #333;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff url(/assets/images/icons/arrow_selectlocalarea_pulldown_arrow.svg) 100% 50% no-repeat;
  background-size: 80px auto;
  z-index: 2;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SelectLocal__pulldown {
    width: 70%;
    min-width: auto;
  }
}

@media only screen and (max-width: 559px) {
  .SelectLocal__pulldown {
    width: 100%;
    max-width: 100%;
    min-width: auto;
    height: 57px;
    line-height: 57px;
    padding: 0 40px;
    font-size: 1.6rem;
  }
}

.SelectLocal__pulldown::-ms-expand {
  display: none;
}

@media print, screen and (min-width: 560px) {
  #SelectLocalAreaUpper .SelectLocal__pulldown {
    background-color: #fff;
  }
}

.SelectLocal__button {
  width: 154px;
  height: 62px;
  margin-left: 14px;
  vertical-align: top;
  font-weight: normal;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  background-color: #008486;
  border: 1px solid #008486;
  -webkit-transition: background-color .2s ease-in-out;
  transition: background-color .2s ease-in-out;
}

.SelectLocal__button:hover {
  border: 1px solid #00a8a9;
  background-color: #00a8a9;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .SelectLocal__button {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 30%;
  }
}

@media only screen and (max-width: 559px) {
  .SelectLocal__button {
    width: 106px;
    height: 46px;
    margin-top: 20px;
    font-size: 2rem;
  }
}

.SelectLocal__button span {
  position: relative;
}

.SelectLocal__button span::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 16px 4px 0;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent transparent transparent #fff;
}

/* ===== OurStoriesSupplement ===== */
#OurStoriesSupplement {
  position: relative;
  max-width: 1600px;
  margin: 140px auto 0;
  height: auto;
  line-height: 0;
  z-index: 2;
}

@media only screen and (max-width: 559px) {
  #OurStoriesSupplement {
    margin: 55px auto 0;
  }
}

.OurStoriesSupplement__inner {
  width: 100%;
  position: relative;
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__inner {
    display: table;
  }
}

.OurStoriesSupplement__body {
  color: #fff;
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__body {
    display: table-cell;
    width: 45%;
    vertical-align: bottom;
  }
}

@media only screen and (max-width: 959px) {
  .OurStoriesSupplement__body {
    width: 100%;
  }
}

.OurStoriesSupplement__bodyInner {
  padding: 46px 50px 0;
  background-color: #008486;
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__bodyInner {
    padding: calc(20px + ((1vw - 9.6px) *(26/6.4))) calc(24px + ((1vw - 9.6px) *(26/6.4))) 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OurStoriesSupplement__bodyInner {
    padding: 46px 28px 0;
  }
}

@media only screen and (max-width: 559px) {
  .OurStoriesSupplement__bodyInner {
    padding: 36px 15px 10px;
  }
}

.OurStoriesSupplement__heading {
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: .03em;
  color: #fff;
}

@media print, screen and (min-width: 560px) {
  .OurStoriesSupplement__heading {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .OurStoriesSupplement__heading {
    font-size: 2.1rem;
  }
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__heading {
    font-size: calc(23px + ((1vw - 9.6px) * (7 / 6.4)));
  }
}

.OurStoriesSupplement__text {
  margin-top: 14px;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__image {
    display: table-cell;
    width: 55%;
    vertical-align: bottom;
  }
}

.OurStoriesSupplement__withLead {
  margin: 0 auto;
  max-width: 1600px;
  height: auto;
  color: #fff;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__withLead {
    margin-top: -4px;
  }
}

@media print, screen and (min-width: 960px) {
  .OurStoriesSupplement__withLead .OurStoriesSupplement__withLeadText {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 50px;
    -moz-column-gap: 50px;
    column-gap: 50px;
  }
}

.OurStoriesSupplement__withLead .OurStoriesSupplement__withLeadInner {
  max-width: 100%;
}

.OurStoriesSupplement__withLead .Link::before {
  border-color: transparent transparent transparent #fff;
}

.OurStoriesSupplement__withLead .Link:link {
  color: #fff;
  text-decoration: none;
}

.OurStoriesSupplement__withLead .Link:visited {
  color: #471f99;
  text-decoration: none;
}

.OurStoriesSupplement__withLead .Link:hover, .OurStoriesSupplement__withLead .Link:focus {
  color: #00a8a9;
  text-decoration: none;
}

.OurStoriesSupplement__withLead .Link:active {
  color: #fff;
  text-decoration: none;
}

.OurStoriesSupplement__withLeadInner {
  max-width: 1024px;
  padding: 50px;
  text-align: left;
  background-color: #008486;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .OurStoriesSupplement__withLeadInner {
    padding: 36px 28px;
  }
}

@media only screen and (max-width: 559px) {
  .OurStoriesSupplement__withLeadInner {
    padding: 24px 15px;
  }
}

.OurStoriesSupplement__withLeadText+.List.-note,
.OurStoriesSupplement__withLeadText+.ListLink {
  margin-top: 18px;
}

.OurStoriesSupplement__withLeadText+.List.-note+.ListLink,
.OurStoriesSupplement__withLeadText+.ListLink+.ListLink {
  margin-top: 4px;
}

/* ===== Products ===== */
.ProductsFigure {
  text-align: center;
}

.ProductsFigure .Image img {
  width: 100%;
}

.ProductsFigure__caption {
  margin-top: 12px;
  text-align: center;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.ProductsFigure__label {
  margin-top: 12px;
  padding: 8px;
  text-align: center;
  color: #fff;
  background-color: #008486;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

/* ===== SDGsIconList ===== */
.SDGsIconList__heading {
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SDGsIconList__heading {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .SDGsIconList__heading {
    font-size: 2.1rem;
  }
}

.SDGsIconList__body {
  margin-top: 15px;
}

.SDGsIconList__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  list-style-type: none;
}

.SDGsIconList__list li {
  margin: 5px 5px 0 0;
}

.SDGsIconList__list li:last-child {
  margin-right: 0;
}

.SDGsIconList__list img {
  max-width: 100%;
  width: 100%;
}

.SDGsIconList.-environment {
  padding-top: 60px;
}

@media only screen and (max-width: 559px) {
  .SDGsIconList.-environment {
    padding-top: 50px;
  }
}

.SDGsIconList.-environment .SDGsIconList__list li {
  width: 70px;
  height: 70px;
}

.SDGsIconList.-environment .SDGsIconList__list li.-iconSmall {
  width: 35px;
  height: 35px;
}

/* ===== PrizeBox ===== */
.PrizeBox {
  position: relative;
  border: 4px solid #ab7d07;
}

.PrizeBox:after {
  content: '';
  display: block;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  position: absolute;
  top: 4px;
  left: 4px;
  right: 4px;
  bottom: 4px;
  border: 1px solid #ab7d07;
}

.PrizeBox+.PrizeBox {
  margin-top: 40px;
}

.Js-Scrollable__wrap+.PrizeBox {
  margin-top: 40px;
}

.PrizeBox__inner {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 0.9fr 1.1fr;
  grid-template-columns: 0.9fr 1.1fr;
  -ms-grid-rows: 1.4fr 0.6fr;
  grid-template-rows: 1.4fr 0.6fr;
  grid-template-areas: "PrizeBox__body PrizeBox__image""PrizeBox__button PrizeBox__image";
  margin: -4px;
  padding: 80px 40px;
  border: 1px solid #ab7d07;
  background: url(/photocontest/common/images/prizebox_bg_top_left.png) left top no-repeat, url(/photocontest/common/images/prizebox_bg_top_right.png) right top no-repeat, url(/photocontest/common/images/prizebox_bg_bottom_right.png) right bottom no-repeat, url(/photocontest/common/images/prizebox_bg_bottom_left.png) left bottom no-repeat;
}

@media only screen and (max-width: 959px) {
  .PrizeBox__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 40px 40px 60px;
  }
}

.PrizeBox__inner:before {
  content: '';
  display: block;
  width: 100%;
  height: 24px;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/photocontest/common/images/prizebox_bg_top_center.png) 50% 0 no-repeat;
}

.PrizeBox__inner:after {
  content: '';
  display: block;
  width: 100%;
  height: 24px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(/photocontest/common/images/prizebox_bg_bottom_center.png) 50% 0 no-repeat;
}

.PrizeBox__body {
  padding-right: 30px;
  text-align: center;
  position: relative;
  z-index: 1;
}

@media print, screen and (min-width: 960px) {
  .PrizeBox__body {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: PrizeBox__body;
  }
}

@media only screen and (max-width: 959px) {
  .PrizeBox__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-top: 16px;
    padding-right: 0;
  }
}

.PrizeBox__theme {
  text-align: center;
}

.PrizeBox__themeLabel {
  display: inline-block;
  padding: 2px 8px;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
}

.PrizeBox__themeLabel.-themeA {
  background-color: #1E5419;
}

.PrizeBox__themeLabel.-themeA_02 {
  background-color: #ea6000;
}

.PrizeBox__themeLabel.-themeB {
  background-color: #222167;
}

.PrizeBox__themeLabel.-themeB_02 {
  background-color: #00469b;
}

.PrizeBox__themeLabel.-themeC {
  background-color: #9b2016;
}

.PrizeBox__themeName {
  margin-top: 4px;
  font-size: 1.4rem;
  font-weight: bold;
}

.PrizeBox__prizeName {
  margin-top: 4px;
}

.PrizeBox__table {
  width: 100%;
  margin-top: 14px;
  border-spacing: 0;
  font-weight: normal;
  line-height: 1.4;
  line-height: 1.5;
}

@media print, screen and (min-width: 560px) {
  .PrizeBox__table {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .PrizeBox__table {
    font-size: 1.6rem;
  }
}

.PrizeBox__table th,
.PrizeBox__table td {
  text-align: left;
  border-bottom: 1px dotted #ccc;
}

.PrizeBox__table th {
  width: 20%;
  padding: 10px 30px 10px 14px;
  font-size: 1.2rem;
  color: #8E8610;
  white-space: nowrap;
}

.PrizeBox__table td {
  padding: 10px 0;
}

.PrizeBox__button {
  display: inline-block;
  position: relative;
  z-index: 1;
  margin-top: 40px;
  text-align: center;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

@media print, screen and (min-width: 960px) {
  .PrizeBox__button {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    grid-area: PrizeBox__button;
  }
}

@media only screen and (max-width: 959px) {
  .PrizeBox__button {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
}

.PrizeBox__button:hover {
  opacity: .8;
}

.PrizeBox__image {
  position: relative;
  z-index: 1;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  .PrizeBox__image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
    grid-area: PrizeBox__image;
  }
}

@media only screen and (max-width: 959px) {
  .PrizeBox__image {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 16px;
  }
}

.PrizeBox__image .Image {
  display: inline-block;
  width: auto;
  max-width: 400px;
  padding: 7px;
  border: 1px solid #ccc;
}

/* ===== Anniversary ===== */
.AnniversaryOverview {
  padding: 40px;
  border: 1px solid #008486;
  background-color: #fff;
}

.Text+.AnniversaryOverview {
  margin-top: 25px;
}

.NewsHeadingLevel1~.AnniversaryOverview {
  margin: 56px 0;
}

@media only screen and (max-width: 559px) {
  .NewsHeadingLevel1~.AnniversaryOverview {
    margin: 28px 0;
  }
}

.AnniversaryOverview .Definitionlist__heading {
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .AnniversaryOverview .Definitionlist__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .AnniversaryOverview .Definitionlist__heading {
    font-size: 1.6rem;
  }
}

.AnniversaryOverview .Definitionlist__body {
  margin-top: 10px;
}

.AnniversaryOverview .Definitionlist__body+.Definitionlist__heading {
  margin-top: 30px;
}

.Overview__cardHorizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 960px) {
  .Overview__cardHorizontal {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 959px) {
  .Overview__cardHorizontal {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print, screen and (min-width: 960px) {
  .Overview__cardHorizontalBody {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 34px;
  }
}

@media only screen and (max-width: 959px) {
  .Overview__cardHorizontalBody {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 40px;
  }
}

.Overview__cardHorizontalBody h2 {
  margin-bottom: 38px;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .Overview__cardHorizontalBody h2 {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .Overview__cardHorizontalBody h2 {
    font-size: 2.1rem;
  }
}

@media only screen and (max-width: 959px) {
  .Overview__cardHorizontalBody h2 {
    margin-bottom: 28px;
  }
}

.Overview__cardHorizontalImage {
  width: 180px;
  height: 100%;
}

@media only screen and (max-width: 959px) {
  .Overview__cardHorizontalImage {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin: 0 auto;
  }
}

.AnniversaryTopics {
  margin-top: 60px;
}

.AnniversaryTopics .Image {
  width: 100%;
  max-width: 676px;
  margin-top: 40px;
}

.AnniversaryTopics__heading {
  margin-bottom: 26px;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .AnniversaryTopics__heading {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .AnniversaryTopics__heading {
    font-size: 2.1rem;
  }
}

.AnniversaryBanner {
  margin-top: 90px;
}

.AnniversaryBanner+.AnniversaryBanner {
  margin-top: 60px;
}

.AnniversaryBanner .Text+.CardGrid {
  margin-top: 30px;
}

.AnniversaryBanner .CardGrid.-column3 {
  margin: 0 auto;
  text-align: center;
}

/* ===== NameList ===== */
.NameList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -24px;
  list-style-type: none;
  /* IE11 */
}

@media only screen and (max-width: 559px) {
  .NameList {
    margin-left: -25px;
  }
}

.NameList _:-ms-lang(x), .NameList {
  margin-left: -25px;
}

@media only screen and (max-width: 559px) {
  .NameList _:-ms-lang(x), .NameList {
    margin-left: -26px;
  }
}

.HeadingLevel2+.NameList {
  margin-top: 40px;
}

.NameList li {
  margin-top: 40px;
  padding-bottom: 20px;
  margin-left: 24px;
  border-bottom: 1px solid #008486;
  /* IE11 */
  width: calc((100% - 24px * 6) / 6);
  /* IE11 */
}

@media only screen and (max-width: 559px) {
  .NameList li {
    margin-top: 40px;
    margin-left: 25px;
  }
}

.NameList li _:-ms-lang(x), .NameList li {
  margin-left: 25px;
}

@media only screen and (max-width: 559px) {
  .NameList li _:-ms-lang(x), .NameList li {
    margin-left: 26px;
  }
}

@media print, screen and (min-width: 960px) {
  .NameList li:nth-child(-n+6) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NameList li:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .NameList li:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NameList li {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (max-width: 559px) {
  .NameList li {
    width: calc((100% - 25px * 2) / 2);
  }
}

.NameList li _:-ms-lang(x), .NameList li {
  width: calc((100% - 25px * 6) / 6);
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .NameList li _:-ms-lang(x), .NameList li {
    width: calc((100% - 26px * 4) / 4);
  }
}

@media only screen and (max-width: 559px) {
  .NameList li _:-ms-lang(x), .NameList li {
    width: calc((100% - 26px * 2) / 2);
  }
}

.NameList li span {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

/* ===== PhotocontestContact ===== */
.PhotocontestContact__image {
  margin-top: 30px;
  text-align: center;
}

/* ===== LNav ===== */
#LNav {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media print, screen and (min-width: 960px) {
  .SiteContentTypeColumn2 #LNav {
    width: 30%;
  }
}

@media only screen and (max-width: 959px) {
  .SiteContentTypeColumn2 #LNav {
    position: absolute;
    top: 0;
    width: 100%;
    background-color: #dedede;
  }
}

@media only screen and (max-width: 959px) {
  .LNav__inner {
    position: relative;
    width: 100%;
    z-index: 3;
  }

  .LNav__inner.-opened {
    position: fixed;
    top: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: #fff;
    z-index: 100;
  }
}

@media print, screen and (min-width: 960px) {
  .LNav__inner {
    position: -webkit-sticky;
    position: sticky;
    top: 174px;
  }
}

/* SP View */
@media only screen and (max-width: 959px) {
  .LNavAccordionSP__body {
    display: none;
    background: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .LNavAccordionSP__body.-opened {
    overflow-y: scroll;
    overscroll-behavior-y: contain;
  }
}

@media only screen and (max-width: 959px) {
  #LNav.-fixed .LNav__inner {
    position: fixed;
    top: 0;
  }
}

@media print, screen and (min-width: 960px) {
  #LNav.-fixed .LNav__inner {
    height: calc(100vh - 80px - 134px);
    -webkit-transition: .5s ease .2s;
    transition: .5s ease .2s;
    -webkit-transition-property: height, top, -webkit-transform;
    transition-property: height, top, -webkit-transform;
    transition-property: height, top, transform;
    transition-property: height, top, transform, -webkit-transform;
  }

  #LNav.-fixed .LNavAccordionSP__body {
    height: 100%;
    overflow-y: auto;
    overscroll-behavior-y: contain;
  }

  #LNav.-fixed.-scrollDown .LNav__inner {
    top: 40px;
    height: calc(100vh - 80px);
  }
}

.LNavAccordionSP__button {
  width: 100%;
  padding: 8px 20px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #333;
  font-weight: bold;
  text-align: right;
  background-color: #dedede;
}

@media only screen and (max-width: 959px) {
  .LNavAccordionSP__button {
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media print, screen and (min-width: 960px) {
  .LNavAccordionSP__button {
    display: none;
  }
}

.LNavAccordionSP__button span {
  position: relative;
  padding-right: 20px;
}

.LNavAccordionSP__button span::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 6px;
  right: 0;
  width: 12px;
  height: 6px;
  overflow: hidden;
  line-height: 1;
  vertical-align: middle;
  background: url(/assets/images/icons/arrow_gnav.svg) 0 0 no-repeat;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: -webkit-transform .2s ease .15s;
  transition: -webkit-transform .2s ease .15s;
  transition: transform .2s ease .15s;
  transition: transform .2s ease .15s, -webkit-transform .2s ease .15s;
}

.LNavAccordionSP__button.-opened span::after {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

.LNav__heading {
  background-color: #fff;
}

@media only screen and (max-width: 959px) {
  .LNav__heading {
    padding: 30px 20px 0;
  }
}

.LNav__headingLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  padding-bottom: 34px;
  font-weight: normal;
  line-height: 1.4;
  font-weight: bold;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

@media print, screen and (min-width: 560px) {
  .LNav__headingLink {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .LNav__headingLink {
    font-size: 1.6rem;
  }
}

.LNav__headingLink:hover, .LNav__headingLink:focus {
  cursor: pointer;
  opacity: .8;
}

@media only screen and (max-width: 959px) {
  .LNav__headingLink {
    padding-bottom: 30px;
  }
}

.LNav__headingText {
  position: relative;
  color: #008486;
}

.LNav__headingText::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 12px;
  margin: 0 12px 2px 0;
  border-style: solid;
  border-width: 6px 0 6px 17px;
  border-color: transparent transparent transparent #008486;
}

.LNav__body {
  line-height: 1.4;
  font-size: 1.4rem;
  background-color: #fff;
}

@media only screen and (max-width: 959px) {
  .LNav__body {
    padding: 0 20px 100px;
  }
}

.LNavAccordionPC__button,
.LNavList__link,
.LNavContentgroup__link,
.LNavContentgroup>.Lnav__link,
.Layer3List .Lnav__link {
  display: block;
  border-bottom: 1px solid #dedede;
}

.LNavList {
  border-top: 1px solid #008486;
  border-bottom: 1px solid #008486;
}

.LNavList__item:last-child .Layer2__link {
  border-bottom: none;
}

.LNavList__heading {
  width: 100%;
  padding: 17px 17px 17px 20px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #333;
  font-weight: bold;
  border-bottom: 1px solid #dedede;
}

.LNavList__heading+.LayerList {
  border-bottom: 1px solid #008486;
}

.LNavList__heading+.LayerList li:last-child .Lnav__link {
  border-bottom: none;
}

.LNavList__heading~.LNavAccordionPC__wrap:last-child {
  border-bottom: 1px solid #008486;
}

.LNavList__heading~.LNavAccordionPC__wrap:last-child .LNavAccordionPC__button {
  border-bottom: none;
}

.LNavList__heading~.LNavAccordionPC__wrap:last-child .LNavAccordionPC__button+.LNavContentgroup {
  border-top: 1px solid #dedede;
}

.Layer2__link {
  position: relative;
  display: block;
  width: 100%;
  padding: 16px 20px 17px;
  text-align: left;
  border-bottom: 1px solid #dedede;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Layer2__link:hover {
  opacity: .8;
}

.Layer2__link span {
  color: #008486;
}

.LNavList,
.Layer3List,
.Layer4List {
  list-style: none;
  margin: 0;
  padding: 0;
}

.LNavList__link {
  padding: 13px 17px 13px 20px;
}

.Layer3List>li .Lnav__link {
  padding: 19px 17px 19px 40px;
}

.Layer4List>li .Lnav__link {
  padding: 13px 17px 13px 94px;
}

.Layer4List__link.-current {
  background-color: #dedede;
}

.LNavContentgroup .Layer3List>li>.Lnav__link {
  padding: 15px 17px 15px 68px;
}

.LNavContentgroup>.Lnav__link {
  padding: 15px 17px 15px 40px;
}

.LNavContentgroup__link {
  padding: 15px 17px 15px 20px;
}

.-currentParent {
  position: relative;
}

.-currentParent::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
  background-color: #008486;
}

.LNavContentgroup {
  background-color: #f1f1f1;
}

.Lnav__link {
  position: relative;
  color: #008486;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Lnav__link:visited, .Lnav__link:hover, .Lnav__link:focus, .Lnav__link:active {
  color: #008486;
}

.Lnav__link:hover {
  opacity: .8;
}

.Lnav__link.-current {
  font-weight: bold;
}

.Lnav__link.-current::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 2px;
  margin: -5px 16px 1px 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.LNavAccordionPC__body {
  display: none;
}

.-currentParent .LNavAccordionPC__body {
  display: block;
}

.LNavAccordionPC__button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  padding: 18px 52px 19px 40px;
  text-align: left;
  color: #333;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.LNavAccordionPC__button:hover, .LNavAccordionPC__button:focus {
  cursor: pointer;
  opacity: .8;
}

.LNavAccordionPC__button .IconAccdPlus {
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 24px;
  height: 24px;
  margin-top: -13px;
  overflow: hidden;
  line-height: 1;
  vertical-align: middle;
  background: url(/assets/images/icons/icon_accd_plus.svg) 0 0 no-repeat;
  -webkit-transition: -webkit-transform .5s ease-in-out;
  transition: -webkit-transform .5s ease-in-out;
  transition: transform .5s ease-in-out;
  transition: transform .5s ease-in-out, -webkit-transform .5s ease-in-out;
}

.LNavAccordionPC__button.-opened .IconAccdPlus {
  background: url(/assets/images/icons/icon_accd_minus.svg) 0 0 no-repeat;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

/* ===== LNavBottom ===== */
.SiteContent+#LNavBottom, .SiteContent+#LNavBottomNews {
  margin-top: 120px;
}

@media only screen and (max-width: 559px) {
  .SiteContent+#LNavBottom, .SiteContent+#LNavBottomNews {
    margin-top: 90px;
  }
}

@media print, screen and (min-width: 560px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList {
    margin: 20px 0 0 -80px;
  }
}

@media only screen and (max-width: 559px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList {
    margin: 3px 0 0;
  }
}

@media print, screen and (min-width: 560px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList__item,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList__item {
    margin: 13px 0 0 80px;
  }
}

@media only screen and (max-width: 559px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList__item,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList__item {
    margin-top: 13px;
  }
}

@media print, screen and (min-width: 560px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList__item .LNavBottomList,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList__item .LNavBottomList {
    margin: 20px 0 0 0;
  }
}

@media only screen and (max-width: 559px) {

  #LNavBottom.LowerLayerLNav .LNavBottomList__item .LNavBottomList,
  #LNavBottomNews.LowerLayerLNav .LNavBottomList__item .LNavBottomList {
    margin: 3px 0 0;
  }
}

@media print, screen and (min-width: 560px) {

  #LNavBottom.PhotocontestNav .LNavBottomList,
  #LNavBottomNews.PhotocontestNav .LNavBottomList {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 559px) {

  #LNavBottom.PhotocontestNav .LNavBottomList,
  #LNavBottomNews.PhotocontestNav .LNavBottomList {
    margin-top: 3px;
  }
}

#LNavBottom.PhotocontestNav .LNavBottomList__item,
#LNavBottomNews.PhotocontestNav .LNavBottomList__item {
  margin-top: 13px;
}

.LNavBottom__inner {
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 960px) {
  .LNavBottom__inner {
    padding: 56px 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LNavBottom__inner {
    padding: 56px 28px;
  }
}

@media only screen and (max-width: 559px) {
  .LNavBottom__inner {
    padding: 56px 15px;
  }
}

.LNavBottom__heading {
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: .03em;
  border-bottom: 1px solid #fff;
}

@media print, screen and (min-width: 560px) {
  .LNavBottom__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .LNavBottom__heading {
    font-size: 1.6rem;
  }
}

.LNavBottom__heading a {
  position: relative;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.LNavBottom__heading a::after {
  content: "";
  display: inline-block;
  margin: 0 0 2px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.LNavBottom__heading a:hover {
  opacity: .8;
}

.LNavBottom__heading a.-lnavbottomCurrent span {
  color: #999;
}

.LNavBottom__heading a.-lnavbottomCurrent::after {
  border-color: transparent transparent transparent #999;
}

.LNavBottom__heading span {
  position: relative;
  display: inline-block;
  padding-bottom: 14px;
  color: #008486;
}

.LNavBottom__heading span::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -1px;
  background-color: #008486;
}

@media only screen and (max-width: 559px) {
  .LNavBottom__body {
    margin-top: 3px;
  }
}

.LNavBottom__body a {
  display: inline-block;
  position: relative;
  padding-left: 22px;
  color: #008486;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.LNavBottom__body a:hover {
  opacity: .8;
}

.LNavBottom__body a.-lnavbottomCurrent {
  color: #999;
}

.LNavBottom__body a.-lnavbottomCurrent::before {
  border-color: transparent transparent transparent #999;
}

.LNavBottom__body a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .45em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.LNavBottomList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 560px) {
  .LNavBottomList {
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .LNavBottomList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
  }
}

.LNavBottomList__wrap.-bottom {
  position: relative;
  margin: 28px 0 0 0;
  padding-top: 20px;
  border-top: 1px solid #fff;
}

@media only screen and (max-width: 559px) {
  .LNavBottomList__wrap.-bottom .LNavBottomList__item:first-child {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .LNavBottomList__wrap.-bottom .LNavBottomList__item:not(:first-child) {
    margin-top: 13px;
  }
}

.LNavBottomList__item {
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 960px) {

  .SustainabilityLNav .LNavBottomList__item,
  .ProductsLNav .LNavBottomList__item,
  .CorporateLNav .LNavBottomList__item,
  .PhotocontestNav .LNavBottomList__item {
    width: calc((100% - 24px * 4) / 4);
  }

  .InnovationLNav .LNavBottomList__item {
    width: calc((100% - 24px * 5) / 5);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {

  .InnovationLNav .LNavBottomList__item,
  .SustainabilityLNav .LNavBottomList__item,
  .ProductsLNav .LNavBottomList__item,
  .CorporateLNav .LNavBottomList__item,
  .PhotocontestNav .LNavBottomList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media print, screen and (min-width: 960px) {

  .InnovationLNav .LNavBottomList__item,
  .SustainabilityLNav .LNavBottomList__item,
  .ProductsLNav .LNavBottomList__item,
  .NewsLNav .LNavBottomList__item {
    margin-top: 30px;
  }
}

@media print, screen and (min-width: 960px) {
  .CorporateLNav .LNavBottomList__item {
    margin-top: 0;
  }
}

.ProductsLNav .LNavBottomList__item {
  margin-top: 30px;
}

@media print, screen and (min-width: 560px) {
  .LNavBottomList__item {
    margin-left: 24px;
  }
}

@media only screen and (max-width: 559px) {
  .LNavBottomList__item {
    height: 100%;
    margin-top: 25px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
}

.LNavBottomListLayer2__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  width: 100%;
  vertical-align: bottom;
  margin-bottom: 21px;
  padding-bottom: 7px;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: .03em;
  border-bottom: 1px solid #333;
}

.LNavBottomListLayer2__heading span {
  color: #333;
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .LNavBottomListLayer2__body {
    margin-top: 20px;
  }
}

.LNavBottomListLayer2__body ul {
  list-style-type: none;
}

.LNavBottomListLayer2__body ul li {
  margin-top: 13px;
  font-size: 1.4rem;
  line-height: 1.4;
}

.LNavBottomListLayer2__body ul li a {
  color: #008486;
}

.NewsYearLNav__contentGroup {
  margin-top: 26px;
}

@media only screen and (max-width: 559px) {
  .NewsYearLNav__contentGroup.-byYears .NewsYearLNav__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

.NewsYearLNav__heading {
  font-size: 1.4rem;
  line-height: 1.4;
  color: #333;
}

.NewsYearLNav__body {
  margin-top: 2px;
}

.NewsYearLNav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 560px) {
  .NewsYearLNav__list {
    margin-left: -40px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsYearLNav__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
  }
}

.NewsYearLNav__list li {
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .NewsYearLNav__list li {
    margin: 16px 0 0 40px;
  }
}

@media only screen and (max-width: 559px) {
  .NewsYearLNav__list li {
    width: 100%;
    height: 100%;
    margin-top: 16px;
  }
}

.-byYears .NewsYearLNav__list {
  margin-left: -40px;
}

@media only screen and (max-width: 559px) {
  .-byYears .NewsYearLNav__list li {
    width: calc(50% - 40px);
    margin: 16px 0 0 40px;
  }
}

@media print, screen and (min-width: 560px) {
  .CorporateLNav .LNavBottomList__item {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
}

@media only screen and (max-width: 559px) {
  .CorporateLNav .LNavBottomList__item {
    width: 100%;
    margin-top: 0;
  }
}

.InnovationLNav,
.SustainabilityLNav {
  margin-top: 140px;
}

@media only screen and (max-width: 559px) {

  .InnovationLNav,
  .SustainabilityLNav {
    margin-top: 90px;
  }
}

@media print, screen and (min-width: 560px) {

  .InnovationLNav .LNavBottom__body,
  .SustainabilityLNav .LNavBottom__body {
    margin-top: 0;
  }
}

.InnovationLNav .LNavBottomList__item,
.SustainabilityLNav .LNavBottomList__item {
  margin-top: 25px;
}

@media only screen and (max-width: 559px) {

  .InnovationLNav .LNavBottomList__item,
  .SustainabilityLNav .LNavBottomList__item {
    width: 100%;
  }
}

.ProductsLNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1600px;
  margin: 120px auto 0;
  background-color: #f5f5f5;
}

@media only screen and (max-width: 559px) {
  .ProductsLNav {
    margin-top: 60px;
  }
}

.ProductsLNav .LNavBottomList__item {
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .ProductsLNav .LNavBottomList__item {
    width: calc((100% - 24px * 7) / 7);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item {
    width: calc((100% - 24px * 4) / 4);
    margin-top: 26px;
  }
}

@media print, screen and (min-width: 960px) {
  .ProductsLNav .LNavBottomList__item _:-ms-lang(x), .ProductsLNav .LNavBottomList__item {
    width: calc((100% - 25px * 7) / 7);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item _:-ms-lang(x), .ProductsLNav .LNavBottomList__item {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (max-width: 559px) {
  .ProductsLNav .LNavBottomList__item {
    width: 100%;
  }
}

.ProductsLNav .LNavBottomList__item.-column2ViewTB {
  /* IE11 */
}

@media only screen and (min-width: 700px) and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item.-column2ViewTB {
    width: calc((100% - 24px * 2) / 2);
  }
}

@media only screen and (min-width: 700px) and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item.-column2ViewTB _:-ms-lang(x), .ProductsLNav .LNavBottomList__item.-column2ViewTB {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media only screen and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__heading {
    margin-bottom: 11px;
  }
}

.ProductsLNav .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__body {
  margin-left: -24px;
}

@media only screen and (max-width: 959px) {
  .ProductsLNav .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__body {
    margin-top: 0;
  }
}

@media only screen and (max-width: 699px) {
  .ProductsLNav .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__body {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.ProductsLNav .LNavBottomList__item.-column2ViewTB .LNavBottomListLayer2__body ul {
  margin-left: 24px;
}

@media only screen and (min-width: 960px) {
  .ProductsLNav .LNavBottomList {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
}

.ProductsLNavListLayer2 {
  list-style-type: none;
}

.ProductsLNavListLayer2__item:not(:first-child) {
  margin-top: 19px;
}

.ProductsLNavListLayer3 {
  list-style-type: none;
  padding-left: 30px;
}

.ProductsLNavListLayer3__item {
  margin-top: 20px;
}

/* ===== Navi ===== */
.NavPageAnchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 50px 0 0;
}

@media only screen and (max-width: 559px) {
  .NavPageAnchor {
    margin: 30px 0 0;
  }
}

.NavPageAnchor li {
  position: relative;
  padding-right: 28px;
  margin: 0 40px 16px 0;
}

.NavPageAnchor li::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  right: 0;
  width: 14px;
  height: 6.6px;
  background: url(/assets/images/icons/arrow_nav_anchorlink.svg) 50% 100% no-repeat;
}

.NavPageAnchor li span {
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.NavPageAnchor.-vertical {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.NavPageAnchor.-vertical li {
  margin: 0 0 16px 0;
}

.NavPageAnchor.-pagelink li {
  position: relative;
  padding: 0 0 0 24px;
  margin: 0 40px 16px 0;
}

.NavPageAnchor.-pagelink li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10.2px;
  background: url(/assets/images/icons/arrow_nav_pagelink.svg) 50% 100% no-repeat;
}

.NavPageAnchor.-pagelink li::after {
  display: none;
}

.HeadingLevel1+.NavPageAnchor.-pagelink {
  margin-top: 50px;
}

.NavPageAnchor.-pagelink+.NewsList {
  margin-top: 34px;
}

.NavPageAnchor.-anchorlinkUp li {
  position: relative;
  padding-right: 28px;
  margin: 0 40px 16px 0;
}

.NavPageAnchor.-anchorlinkUp li::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  right: 0;
  width: 14px;
  height: 6.6px;
  background: url(/assets/images/icons/arrow_nav_anchorlink.svg) 50% 100% no-repeat;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.List li .NavPageAnchor li {
  padding-left: 0;
}

.List li .NavPageAnchor li::before {
  display: none;
}

/* ===== InitiativeMenu ===== */
.SiteContent+.InitiativeMenu {
  margin-top: 120px;
}

@media only screen and (max-width: 559px) {
  .SiteContent+.InitiativeMenu {
    margin-top: 90px;
  }
}

.InitiativeMenu ul {
  list-style: none;
}

.InitiativeMenu__inner {
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
  background-color: #f5f5f5;
}

@media print, screen and (min-width: 960px) {
  .InitiativeMenu__inner {
    padding: 56px 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .InitiativeMenu__inner {
    padding: 56px 28px;
  }
}

@media only screen and (max-width: 559px) {
  .InitiativeMenu__inner {
    padding: 56px 15px;
  }
}

.InitiativeMenu__heading {
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: .03em;
  color: #333;
  border-bottom: 1px solid #fff;
}

@media print, screen and (min-width: 560px) {
  .InitiativeMenu__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .InitiativeMenu__heading {
    font-size: 1.6rem;
  }
}

.InitiativeMenu__heading span {
  position: relative;
  display: inline-block;
  padding-bottom: 14px;
}

.InitiativeMenu__heading span::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -1px;
  background-color: #008486;
}

@media only screen and (max-width: 559px) {
  .InitiativeMenu__body {
    margin-top: 3px;
  }
}

.InitiativeMenu__body a {
  display: inline-block;
  position: relative;
  padding-left: 22px;
  color: #008486;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.InitiativeMenu__body a:hover {
  opacity: .8;
}

.InitiativeMenu__body a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .45em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.InitiativeMenuList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 560px) {
  .InitiativeMenuList {
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .InitiativeMenuList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 3px;
  }
}

.InitiativeMenuList__item {
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .InitiativeMenuList__item {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-top: 33px;
    margin-left: 24px;
  }
}

@media print, screen and (min-width: 960px) {
  .InitiativeMenuList__item {
    width: calc((100% - 24px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .InitiativeMenuList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .InitiativeMenuList__item {
    width: 100%;
    height: 100%;
    margin-top: 13px;
  }
}

@media print, screen and (min-width: 960px) {
  .InitiativeMenuList__item:nth-of-type(2) {
    width: calc((100% - 24px * 4) / 4 - 24px);
  }
}

@media print, screen and (min-width: 960px) {
  .InitiativeMenuList__item:nth-of-type(3) {
    width: calc((100% - 24px * 4) / 4 + 24px);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .InitiativeMenuList__item:nth-of-type(4) {
    margin-top: 60px;
  }
}

.InitiativeMenuList__item li:not(:first-child) {
  margin-top: 13px;
}

.InitiativeMenuList.-bottom {
  position: relative;
  margin: 28px 0 0 0;
  padding-top: 20px;
  border-top: 1px solid #fff;
}

@media only screen and (max-width: 559px) {
  .InitiativeMenuList.-bottom .InitiativeMenuList__item {
    margin-top: 13px;
  }
}

/* ===== RelatedInfo ===== */
#RelatedInfo {
  margin-top: 124px;
}

@media only screen and (max-width: 559px) {
  #RelatedInfo {
    margin-top: 52px;
  }
}

#RelatedInfo.-center .RelatedInfoList {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.RelatedInfo__inner {
  margin: 0 auto;
  max-width: 1600px;
}

@media print, screen and (min-width: 960px) {
  .RelatedInfo__inner {
    padding: 0 50px;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedInfo__inner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedInfo__inner {
    padding: 0 15px;
  }
}

.RelatedInfo__heading {
  letter-spacing: .03em;
  color: #333;
  text-align: center;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .RelatedInfo__heading {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedInfo__heading {
    font-size: 2.4rem;
  }
}

.RelatedInfo__body {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 20px;
}

@media print, screen and (min-width: 960px) {
  .RelatedInfo__body {
    margin-left: -24px;
  }
}

.RelatedInfoList__item {
  margin-top: 40px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .RelatedInfoList__item {
    width: calc((100% - 24px * 2) / 2);
    margin-left: 24px;
  }
}

@media only screen and (max-width: 959px) {
  .RelatedInfoList__item {
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedInfoList__item _:-ms-lang(x), .RelatedInfoList__item {
    width: calc((100% - 25px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedInfoList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 959px) {
  .RelatedInfoList__item:nth-child(-n+1) {
    margin-top: 0;
  }
}

/* ===== RelatedInfoCard ===== */
.RelatedInfoCard {
  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;
}

.RelatedInfoCard__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-left: 12px;
  text-align: left;
}

.RelatedInfoCard__image {
  width: 222px;
  margin: 4px 12px 0 0;
  text-align: left;
}

@media only screen and (max-width: 559px) {
  .RelatedInfoCard__image {
    width: 140px;
  }
}

.RelatedInfoCard__image a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.RelatedInfoCard__image a:hover {
  opacity: .8;
}

.RelatedInfoCard__heading .Link {
  display: inline-block;
  padding-right: 22px;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .RelatedInfoCard__heading .Link {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedInfoCard__heading .Link {
    font-size: 1.6rem;
  }
}

.RelatedInfoCard__heading .Link::after {
  content: "";
  display: inline-block;
  margin: 0 0 2px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.RelatedInfoCard__heading .Link[target="_blank"]::after {
  display: none;
}

.RelatedInfoCard__text {
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

@media only screen and (max-width: 559px) {
  .RelatedInfoCard__text {
    display: none;
  }
}

.RelatedInfoCard__heading+.RelatedInfoCard__text {
  margin-top: 10px;
}

/* ===== RelatedProducts ===== */
#RelatedProducts {
  margin-top: 124px;
}

@media only screen and (max-width: 559px) {
  #RelatedProducts {
    margin-top: 52px;
  }
}

#RelatedProducts.-center .RelatedProducts__body {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#OurStoriesSupplement+#RelatedProducts .RelatedProducts__inner {
  border-top: none;
  padding: 0 50px;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #OurStoriesSupplement+#RelatedProducts .RelatedProducts__inner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  #OurStoriesSupplement+#RelatedProducts .RelatedProducts__inner {
    padding: 0 15px;
  }
}

.RelatedProducts__inner {
  margin: 0 auto;
  max-width: 1600px;
  padding: 90px 50px 0;
  border-top: 1px solid #dedede;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedProducts__inner {
    padding: 60px 28px 0;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProducts__inner {
    padding: 60px 15px 0;
  }
}

.RelatedProducts__heading {
  letter-spacing: .03em;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
  text-align: center;
}

@media print, screen and (min-width: 560px) {
  .RelatedProducts__heading {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProducts__heading {
    font-size: 2.4rem;
  }
}

.RelatedProducts__body {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  margin-top: 20px;
}

@media print, screen and (min-width: 560px) {
  .RelatedProducts__body {
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProducts__body {
    margin-left: -25px;
  }
}

.RelatedProductsList__item {
  margin-top: 42px;
  margin-left: 24px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .RelatedProductsList__item {
    width: calc((100% - 24px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedProductsList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProductsList__item {
    width: calc((100% - 25px * 2) / 2);
    margin-left: 25px;
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedProductsList__item _:-ms-lang(x), .RelatedProductsList__item {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedProductsList__item _:-ms-lang(x), .RelatedProductsList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProductsList__item _:-ms-lang(x), .RelatedProductsList__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedProductsList__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedProductsList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProductsList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

/* ===== RelatedProductsCard ===== */
.RelatedProductsCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.RelatedProductsCard__body {
  text-align: left;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin-top: 14px;
}

.RelatedProductsCard__image {
  text-align: left;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  height: 100%;
}

.RelatedProductsCard__image a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.RelatedProductsCard__image a:hover {
  opacity: .8;
}

.RelatedProductsCard__heading .Link {
  display: inline-block;
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .RelatedProductsCard__heading .Link {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedProductsCard__heading .Link {
    font-size: 1.6rem;
  }
}

.RelatedProductsCard__heading .Link::after {
  content: "";
  display: inline-block;
  margin: 0 0 4px 16px;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

.RelatedProductsCard__heading .Link[target="_blank"]::after {
  display: none;
}

/* ===== RelatedContentList ===== */
.RelatedContentList {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 560px) {
  .RelatedContentList {
    margin-top: 56px;
    margin-left: -24px;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedContentList {
    margin-top: 28px;
    margin-left: -25px;
  }
}

.RelatedContentList__item {
  margin-top: 42px;
  margin-left: 24px;
  /* IE11 */
}

@media print, screen and (min-width: 960px) {
  .RelatedContentList__item {
    width: calc((100% - 24px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedContentList__item {
    width: calc((100% - 24px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .RelatedContentList__item {
    width: calc((100% - 25px * 2) / 2);
    margin-left: 25px;
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedContentList__item _:-ms-lang(x), .RelatedContentList__item {
    width: calc((100% - 25px * 4) / 4);
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedContentList__item _:-ms-lang(x), .RelatedContentList__item {
    width: calc((100% - 25px * 3) / 3);
  }
}

@media only screen and (max-width: 559px) {
  .RelatedContentList__item _:-ms-lang(x), .RelatedContentList__item {
    width: calc((100% - 26px * 2) / 2);
  }
}

@media print, screen and (min-width: 960px) {
  .RelatedContentList__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .RelatedContentList__item:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 559px) {
  .RelatedContentList__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

/* ===== SiteContent ===== */
.SiteContent__related {
  margin: 0 auto;
}

@media print, screen and (min-width: 560px) {
  .SiteContent__related {
    max-width: 1600px;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 559px) {
  .SiteContent__related {
    padding: 0 30px 118px;
  }
}

@media print, screen and (min-width: 560px) {
  .SiteContent+.SiteContent__related {
    margin-top: 87px;
  }
}

@media only screen and (max-width: 559px) {
  .SiteContent+.SiteContent__related {
    margin-top: 54px;
  }
}

/* ===== require ===== */
.form-Require {
  display: inline-block;
  width: 75px;
  height: 23px;
  margin-left: 12px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #fff;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  background-color: #008486;
}

/* ===== Any ===== */
.form-Any {
  display: inline-block;
  width: 75px;
  height: 23px;
  margin-left: 12px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #333;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  background-color: #e9e9e9;
}

.form-Any.flag-pclabel {
  display: inline-block;
}

.form-Any.flag-splabel {
  display: none;
}

@media only screen and (max-width: 559px) {
  .form-Any {
    margin-left: 0;
  }

  .form-Any.flag-pclabel {
    display: none;
  }

  .form-Any.flag-splabel {
    display: inline-block;
    margin-left: 12px;
  }
}

/* ===== Form common ===== */
input::-webkit-input-placeholder {
  color: #666;
}

input::-moz-placeholder {
  color: #666;
}

input:-ms-input-placeholder {
  color: #666;
}

input::-ms-input-placeholder {
  color: #666;
}

input::placeholder {
  color: #666;
}

/* IE */
input:-ms-input-placeholder {
  color: #666;
}

/* Edge */
input::-ms-input-placeholder {
  color: #666;
}

.InputRadio,
.form-Radio,
.form-Checkbox,
.form-Pulldown,
.form-Inputext,
.form-Inputextarea {
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.InputRadio:hover,
.form-Radio:hover,
.form-Checkbox:hover,
.form-Pulldown:hover,
.form-Inputext:hover,
.form-Inputextarea:hover {
  opacity: .8;
}

.InputRadio::-webkit-input-placeholder, .form-Radio::-webkit-input-placeholder, .form-Checkbox::-webkit-input-placeholder, .form-Pulldown::-webkit-input-placeholder, .form-Inputext::-webkit-input-placeholder, .form-Inputextarea::-webkit-input-placeholder {
  color: #666;
}

.InputRadio::-moz-placeholder, .form-Radio::-moz-placeholder, .form-Checkbox::-moz-placeholder, .form-Pulldown::-moz-placeholder, .form-Inputext::-moz-placeholder, .form-Inputextarea::-moz-placeholder {
  color: #666;
}

.InputRadio:-ms-input-placeholder, .form-Radio:-ms-input-placeholder, .form-Checkbox:-ms-input-placeholder, .form-Pulldown:-ms-input-placeholder, .form-Inputext:-ms-input-placeholder, .form-Inputextarea:-ms-input-placeholder {
  color: #666;
}

.InputRadio::-ms-input-placeholder, .form-Radio::-ms-input-placeholder, .form-Checkbox::-ms-input-placeholder, .form-Pulldown::-ms-input-placeholder, .form-Inputext::-ms-input-placeholder, .form-Inputextarea::-ms-input-placeholder {
  color: #666;
}

.InputRadio::placeholder,
.form-Radio::placeholder,
.form-Checkbox::placeholder,
.form-Pulldown::placeholder,
.form-Inputext::placeholder,
.form-Inputextarea::placeholder {
  color: #666;
}

.form-Radio:focus,
.form-Checkbox:focus,
.form-Pulldown:focus,
.form-Inputext:focus,
.form-Inputextarea:focus,
input.SiteSearch__input:focus {
  -webkit-box-shadow: 0 0 0 2px #a3cec9;
  box-shadow: 0 0 0 2px #a3cec9;
  outline: none;
}

.form-Label+.InputRadio,
.form-Label+.form-Radio,
.form-Label+.form-Checkbox,
.form-Label+.form-Pulldown,
.form-Label+.form-Inputext,
.form-Label+.form-Inputextarea {
  margin-top: 6px;
}

.form-Note {
  margin-bottom: 6px;
  font-size: 1.4rem;
  color: #666;
}

/* ===== radio ===== */
input[type=radio] {
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: absolute;
}

.InputRadio+label,
.form-Radio+label {
  padding-left: 40px;
  position: relative;
  margin-right: 20px;
  line-height: 28px;
  display: inline-block;
  vertical-align: middle;
}

.InputRadio+label::before,
.form-Radio+label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 28px;
  height: 28px;
  border: 2px solid #333;
  border-radius: 50%;
  background-color: #fff;
}

.InputRadio:checked+label::before,
.form-Radio:checked+label::before {
  border: 2px solid #008486;
}

.InputRadio:checked+label::after,
.form-Radio:checked+label::after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 7px;
  width: 14px;
  height: 14px;
  background: #008486;
  border-radius: 50%;
}

/* ===== checkbox ===== */
.form-CheckboxWrap {
  position: relative;
}

.form-Checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  overflow: hidden;
  padding: 0;
  clip: rect(0, 0, 0, 0);
}

.form-Checkbox:focus+label::before {
  -webkit-box-shadow: 0 0 0 2px #a3cec9;
  box-shadow: 0 0 0 2px #a3cec9;
}

.form-Checkbox:checked+.form-Checkbox__text::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 2px;
  left: calc((28px / 2) - (((18px / 12) * 5) / 2));
  width: calc(((18px / 12) * 5));
  height: 18px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1;
}

.form-Checkbox:checked+.form-Checkbox__text::before {
  content: '';
  border: 2px solid #008486;
  background-color: #008486;
}

.form-Checkbox__text {
  display: inline-block;
  padding: 3px 0 0 44px;
  border-radius: 4px;
  vertical-align: top;
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 1.7;
}

.form-Checkbox__text::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 28px;
  height: 28px;
  border: 2px solid #333;
  border-radius: 4px;
  background-color: #fff;
}

/* ===== pulldown ===== */
.form-Pulldown {
  position: relative;
  width: 100%;
  height: 40px;
  line-height: 40px;
  padding: 0 45px 0 20px;
  font-size: 1.4rem;
  vertical-align: top;
  text-align: left;
  margin: 0 auto;
  color: #666;
  border: 1px solid #dedede;
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff url(/assets/images/form/pulldown_arrow.svg) 100% 50% no-repeat;
  background-size: 43px auto;
  z-index: 2;
}

/* ===== input text ===== */
.form-Inputext {
  width: 100%;
  min-width: 240px;
  height: 40px;
  line-height: 40px;
  padding: 0 14px;
  font-size: 1.4rem;
  vertical-align: top;
  color: #333;
  border: 1px solid #dedede;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

.form-Inputextarea {
  width: 100%;
  padding: 14px;
  font-size: 1.4rem;
  vertical-align: top;
  color: #333;
  border: 1px solid #dedede;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

/* ===== error ===== */
.form-StateError {
  background-color: #ffe8e8;
}

.form-ErrorComent {
  margin-top: 10px;
}

.form-ErrorComent__text {
  font-size: 1.4rem;
  color: #ff0000;
}

.form-ErrorComent__text+.form-ErrorComent__text {
  margin-top: 4px;
}

.form-ErrorComent__icon {
  font-size: 1.4rem;
  color: #ff0000;
}

.ContactGroup__head .form-ErrorComent__icon {
  margin-left: 7px;
}

.form-ErrorComent__text .form-ErrorComent__icon {
  margin-right: 7px;
}

/* ===== RadioBoxList__list ===== */
.RadioBoxList__list {
  list-style: none;
  height: 28px;
}

.RadioBoxList__list li:not(:first-child) {
  margin-top: 14px;
}

/* ===== CheckBoxList__list ===== */
.CheckBoxList__list {
  list-style: none;
  height: 28px;
}

.CheckBoxList__list li:not(:first-child) {
  margin-top: 14px;
}

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: .8;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.mfp-container::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container::before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #ccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #ccc;
}

.mfp-preloader a:hover {
  color: #fff;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: .65;
  padding: 0 0 18px 10px;
  color: #fff;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #fff;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: .65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highwhite: transparent;
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow::before,
.mfp-arrow::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}

.mfp-arrow::after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}

.mfp-arrow::before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: .7;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left::after {
  border-right: 17px solid #fff;
  margin-left: 31px;
}

.mfp-arrow-left::before {
  margin-left: 25px;
  border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right::after {
  border-left: 17px solid #fff;
  margin-left: 39px;
}

.mfp-arrow-right::before {
  border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure::after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {

  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }

  .mfp-img-mobile .mfp-figure::after {
    top: 0;
    bottom: 0;
  }

  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }

  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}

/* overlay at start */
.Js-ModalWrap.mfp-bg {
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

/* overlay animate in */
.Js-ModalWrap.mfp-bg.mfp-ready {
  opacity: .8;
}

/* overlay animate out */
.Js-ModalWrap.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.Js-ModalWrap.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

/* content animate it */
.Js-ModalWrap.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

/* content animate out */
.Js-ModalWrap.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

/* ===== slick(common) ===== */
.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-highwhite: 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-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track::before, .slick-track::after {
  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(original) ===== */
.JS-CarouselGindex .slick-dots li,
.AreaCarousel__inner .slick-dots li,
.Js-HeroImgListH1 .slick-dots li,
.Js-HeroImgList .slick-dots li {
  width: 12px;
  height: 12px;
  margin: 0 13px;
  line-height: 1;
  position: relative;
  display: inline-block;
  padding: 0;
  cursor: pointer;
}

.JS-CarouselGindex .slick-dots li button,
.AreaCarousel__inner .slick-dots li button,
.Js-HeroImgListH1 .slick-dots li button,
.Js-HeroImgList .slick-dots li button {
  width: 12px;
  height: 12px;
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  background: transparent;
}

.JS-CarouselGindex .slick-dots li button::before,
.AreaCarousel__inner .slick-dots li button::before,
.Js-HeroImgListH1 .slick-dots li button::before,
.Js-HeroImgList .slick-dots li button::before {
  font-family: "";
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  padding: 0;
  content: "" !important;
  text-align: center;
  opacity: 1;
  border-radius: 6px;
  background-color: #b3b3b3;
}

.JS-CarouselGindex .slick-dots li.slick-active button::before,
.AreaCarousel__inner .slick-dots li.slick-active button::before,
.Js-HeroImgListH1 .slick-dots li.slick-active button::before,
.Js-HeroImgList .slick-dots li.slick-active button::before {
  opacity: 1;
  background-color: #008486;
}

@font-face {

  .JS-CarouselGindex,
  .AreaCarousel__inner,
  .Js-HeroImgListH1,
  .Js-HeroImgList {
    font-family: "";
  }
}

.JS-CarouselGindex .slick-prev,
.JS-CarouselGindex .slick-next,
.AreaCarousel__inner .slick-prev,
.AreaCarousel__inner .slick-next,
.Js-HeroImgListH1 .slick-prev,
.Js-HeroImgListH1 .slick-next,
.Js-HeroImgList .slick-prev,
.Js-HeroImgList .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  padding: 0;
  cursor: pointer;
  border: none;
  background: transparent;
}

.JS-CarouselGindex .slick-prev:hover,
.JS-CarouselGindex .slick-prev:focus,
.JS-CarouselGindex .slick-next:hover,
.JS-CarouselGindex .slick-next:focus,
.AreaCarousel__inner .slick-prev:hover,
.AreaCarousel__inner .slick-prev:focus,
.AreaCarousel__inner .slick-next:hover,
.AreaCarousel__inner .slick-next:focus,
.Js-HeroImgListH1 .slick-prev:hover,
.Js-HeroImgListH1 .slick-prev:focus,
.Js-HeroImgListH1 .slick-next:hover,
.Js-HeroImgListH1 .slick-next:focus,
.Js-HeroImgList .slick-prev:hover,
.Js-HeroImgList .slick-prev:focus,
.Js-HeroImgList .slick-next:hover,
.Js-HeroImgList .slick-next:focus {
  color: transparent;
  background: transparent;
}

.JS-CarouselGindex .slick-prev:hover::before,
.JS-CarouselGindex .slick-prev:focus::before,
.JS-CarouselGindex .slick-next:hover::before,
.JS-CarouselGindex .slick-next:focus::before,
.AreaCarousel__inner .slick-prev:hover::before,
.AreaCarousel__inner .slick-prev:focus::before,
.AreaCarousel__inner .slick-next:hover::before,
.AreaCarousel__inner .slick-next:focus::before,
.Js-HeroImgListH1 .slick-prev:hover::before,
.Js-HeroImgListH1 .slick-prev:focus::before,
.Js-HeroImgListH1 .slick-next:hover::before,
.Js-HeroImgListH1 .slick-next:focus::before,
.Js-HeroImgList .slick-prev:hover::before,
.Js-HeroImgList .slick-prev:focus::before,
.Js-HeroImgList .slick-next:hover::before,
.Js-HeroImgList .slick-next:focus::before {
  opacity: 1;
}

.JS-CarouselGrandTop {
  opacity: 0;
  -webkit-transition: opacity .7s ease-in-out;
  transition: opacity .7s ease-in-out;
}

.JS-CarouselGrandTop.slick-initialized {
  opacity: 1;
}

.Js-HeroImgListH1,
.Js-HeroImgList {
  opacity: 0;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Js-HeroImgListH1.slick-initialized,
.Js-HeroImgList.slick-initialized {
  opacity: 1;
}

.Js-BannerSlider.slick-initialized {
  visibility: visible;
}

.Js-BannerSlider .slick-dots,
.Js-HeroImgListH1 .slick-dots,
.Js-HeroImgList .slick-dots,
.JS-CarouselGrandTop .slick-dots {
  width: 100%;
  line-height: unset;
}

.Js-BannerSlider .slick-dots li,
.Js-HeroImgListH1 .slick-dots li,
.Js-HeroImgList .slick-dots li,
.JS-CarouselGrandTop .slick-dots li {
  padding: 0;
  line-height: 1;
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.Js-BannerSlider .slick-dots li button,
.Js-HeroImgListH1 .slick-dots li button,
.Js-HeroImgList .slick-dots li button,
.JS-CarouselGrandTop .slick-dots li button {
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  background: transparent;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.Js-BannerSlider .slick-dots li button:hover,
.Js-HeroImgListH1 .slick-dots li button:hover,
.Js-HeroImgList .slick-dots li button:hover,
.JS-CarouselGrandTop .slick-dots li button:hover {
  opacity: .8;
}

.Js-BannerSlider .slick-dots li button::before,
.Js-HeroImgListH1 .slick-dots li button::before,
.Js-HeroImgList .slick-dots li button::before,
.JS-CarouselGrandTop .slick-dots li button::before {
  font-family: "";
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 6px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  content: "" !important;
  text-align: center;
  opacity: 1;
  border-radius: 0;
}

.Js-BannerSlider .slick-prev,
.Js-BannerSlider .slick-next,
.Js-HeroImgListH1 .slick-prev,
.Js-HeroImgListH1 .slick-next,
.Js-HeroImgList .slick-prev,
.Js-HeroImgList .slick-next,
.JS-CarouselGrandTop .slick-prev,
.JS-CarouselGrandTop .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  bottom: 0;
  display: block;
  width: 10px;
  height: 10.12px;
  margin-top: -10px;
  padding: 0;
  cursor: pointer;
  border: none;
  background: transparent;
}

.Js-BannerSlider .slick-prev,
.Js-HeroImgListH1 .slick-prev,
.Js-HeroImgList .slick-prev,
.JS-CarouselGrandTop .slick-prev {
  left: 50%;
  background: url(/assets/images/banner/arrow_slider_prev.svg) no-repeat 50% 50%;
}

.Js-BannerSlider .slick-next,
.Js-HeroImgListH1 .slick-next,
.Js-HeroImgList .slick-next,
.JS-CarouselGrandTop .slick-next {
  right: 50%;
  background: url(/assets/images/banner/arrow_slider_next.svg) no-repeat 50% 50%;
}

.Js-BannerSlider .slick-prev:hover,
.Js-BannerSlider .slick-prev:focus,
.Js-BannerSlider .slick-next:hover,
.Js-BannerSlider .slick-next:focus,
.Js-HeroImgListH1 .slick-prev:hover,
.Js-HeroImgListH1 .slick-prev:focus,
.Js-HeroImgListH1 .slick-next:hover,
.Js-HeroImgListH1 .slick-next:focus,
.Js-HeroImgList .slick-prev:hover,
.Js-HeroImgList .slick-prev:focus,
.Js-HeroImgList .slick-next:hover,
.Js-HeroImgList .slick-next:focus,
.JS-CarouselGrandTop .slick-prev:hover,
.JS-CarouselGrandTop .slick-prev:focus,
.JS-CarouselGrandTop .slick-next:hover,
.JS-CarouselGrandTop .slick-next:focus {
  opacity: .8;
}

.Js-BannerSlider .slick-prev:hover::before,
.Js-BannerSlider .slick-prev:focus::before,
.Js-BannerSlider .slick-next:hover::before,
.Js-BannerSlider .slick-next:focus::before,
.Js-HeroImgListH1 .slick-prev:hover::before,
.Js-HeroImgListH1 .slick-prev:focus::before,
.Js-HeroImgListH1 .slick-next:hover::before,
.Js-HeroImgListH1 .slick-next:focus::before,
.Js-HeroImgList .slick-prev:hover::before,
.Js-HeroImgList .slick-prev:focus::before,
.Js-HeroImgList .slick-next:hover::before,
.Js-HeroImgList .slick-next:focus::before,
.JS-CarouselGrandTop .slick-prev:hover::before,
.JS-CarouselGrandTop .slick-prev:focus::before,
.JS-CarouselGrandTop .slick-next:hover::before,
.JS-CarouselGrandTop .slick-next:focus::before {
  opacity: 1;
}

.Js-BannerSlider .slick-dots {
  margin-top: 30px;
  text-align: center;
}

.Js-BannerSlider .slick-dots li {
  width: 82px;
  height: 4px;
}

@media print, screen and (min-width: 560px) {
  .Js-BannerSlider .slick-dots li {
    width: 82px;
    margin: 0 8px;
  }
}

@media only screen and (max-width: 559px) {
  .Js-BannerSlider .slick-dots li {
    margin: 0 5px;
  }
}

.Js-BannerSlider .slick-dots li button::before {
  background-color: #b3b3b3;
}

.Js-BannerSlider .slick-dots li.slick-active button::before {
  opacity: 1;
  background-color: #008486;
}

.Js-HeroImgListH1 .slick-list,
.Js-HeroImgList .slick-list,
.JS-CarouselGrandTop .slick-list {
  background-color: #fff;
}

@media only screen and (max-width: 959px) {

  .Js-HeroImgListH1 .slick-list,
  .Js-HeroImgList .slick-list,
  .JS-CarouselGrandTop .slick-list {
    background-color: transparent;
  }
}

@media print, screen and (min-width: 960px) {

  .Js-HeroImgListH1 .slick-dots,
  .Js-HeroImgList .slick-dots,
  .JS-CarouselGrandTop .slick-dots {
    text-align: left;
  }
}

@media only screen and (max-width: 959px) {

  .Js-HeroImgListH1 .slick-dots,
  .Js-HeroImgList .slick-dots,
  .JS-CarouselGrandTop .slick-dots {
    padding-bottom: 30px;
  }
}

.Js-HeroImgListH1 .slick-dots li,
.Js-HeroImgList .slick-dots li,
.JS-CarouselGrandTop .slick-dots li {
  width: 29px;
  height: 16px;
  margin: 0 8px;
}

.Js-HeroImgListH1 .slick-dots li button::before,
.Js-HeroImgList .slick-dots li button::before,
.JS-CarouselGrandTop .slick-dots li button::before {
  background-color: #fff;
}

@media only screen and (max-width: 959px) {

  .Js-HeroImgListH1 .slick-dots li button::before,
  .Js-HeroImgList .slick-dots li button::before,
  .JS-CarouselGrandTop .slick-dots li button::before {
    background-color: #dedede;
  }
}

@media print, screen and (min-width: 960px) {

  .Js-HeroImgListH1 .slick-dots li.slick-active button::before,
  .Js-HeroImgList .slick-dots li.slick-active button::before,
  .JS-CarouselGrandTop .slick-dots li.slick-active button::before {
    background-color: #00A8A9;
  }
}

@media only screen and (max-width: 959px) {

  .Js-HeroImgListH1 .slick-dots li.slick-active button::before,
  .Js-HeroImgList .slick-dots li.slick-active button::before,
  .JS-CarouselGrandTop .slick-dots li.slick-active button::before {
    background-color: #008486;
  }
}

.Js-HeroImgListH1 .slick-prev,
.Js-HeroImgListH1 .slick-next,
.Js-HeroImgList .slick-prev,
.Js-HeroImgList .slick-next,
.JS-CarouselGrandTop .slick-prev,
.JS-CarouselGrandTop .slick-next {
  bottom: -2px;
}

@media print, screen and (min-width: 960px) {
  .Js-HeroImgList .slick-dots {
    position: absolute;
    right: 42px;
    bottom: 15px;
    text-align: right;
  }
}

@media only screen and (max-width: 959px) {
  .Js-HeroImgList .slick-dots {
    bottom: 24px;
    padding: 30px 0 0;
    text-align: center;
  }
}

@media print, screen and (min-width: 960px) {
  .Js-HeroImgListH1 .slick-dots {
    position: absolute;
    bottom: 34px;
    right: 17px;
    left: 50px;
    margin-left: -13px;
    text-align: left;
  }
}

@media only screen and (max-width: 1099px) {
  .Js-HeroImgListH1 .slick-dots {
    bottom: 20px;
  }
}

@media only screen and (max-width: 959px) {
  .Js-HeroImgListH1 .slick-dots {
    bottom: 24px;
    text-align: center;
  }
}

.JS-CarouselGrandTop .slick-dots {
  position: absolute;
  bottom: 26px;
  padding-bottom: 0;
  text-align: center;
}

.JS-CarouselGrandTop .slick-dots li {
  width: 58px;
}

/* ===== BannerList ===== */
@media print, screen and (min-width: 560px) {
  .BannerListArea {
    margin: 0 -12px;
  }
}

.BannerList {
  list-style: none;
}

@media print, screen and (min-width: 560px) {
  .BannerList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 60px;
  }
}

@media only screen and (max-width: 559px) {
  .BannerList {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 559px) {
  .BannerList.slick-initialized {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.BannerList.-slickOperationStop {
  visibility: visible;
}

@media print, screen and (min-width: 560px) {
  .BannerList.-slickOperationStop li {
    width: calc(100% / 3);
  }
}

@media only screen and (max-width: 559px) {
  .BannerList.-slickOperationStop li:not(:first-child) {
    margin-top: 26px;
  }
}

.BannerList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media print, screen and (min-width: 560px) {
  .BannerList__item {
    padding: 0 12px;
  }
}

.BannerList__image {
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  height: 100%;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.BannerList__image:hover {
  opacity: .8;
}

.BannerList__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.BannerList__text {
  margin-top: 14px;
  color: #333;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
}

.Js-BannerSlider {
  visibility: hidden;
}

/* ===== ScrollToTop ===== */
.ScrollToTop {
  opacity: 0;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
  display: block;
  position: fixed;
  right: 30px;
  bottom: 0;
  width: 70px;
  height: 70px;
  margin-bottom: 30px;
  line-height: 70px;
  text-align: center;
  color: #fff;
  background-color: var(--color-primary);
  z-index: -1;
}

@media only screen and (max-width: 559px) {
  .ScrollToTop {
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
}

.ScrollToTop.-disabled {
  opacity: 0;
}

.ScrollToTop.-stop, .ScrollToTop.-fadeIn {
  opacity: 1;
  z-index: 99;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.ScrollToTop.-stop:hover, .ScrollToTop.-stop:focus, .ScrollToTop.-fadeIn:hover, .ScrollToTop.-fadeIn:focus {
  cursor: pointer;
  opacity: .8;
}

.ScrollToTop.-stop {
  position: absolute;
  top: -100px;
}

@media only screen and (max-width: 559px) {
  .ScrollToTop.-stop {
    top: -70px;
  }
}

#pageTop {
  position: fixed;
  bottom: 0;
  right: 0;
  font-size: 14px;
  line-height: 1;
  z-index: 99;
}

#pageTop a {
  display: flex;
  width: 60px;
  height: 60px;
  background-image: url(../images/arrow_pagetop.svg);
  text-indent: -9999px;
  background-color: var(--color-primary);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 17px 9px;
}


@media only screen and (max-width: 559px) {
  .ScrollToTop__icon {
    width: 9px;
    height: 7px;
  }
}

/* ===== scroll-hint ===== */
@-webkit-keyframes scroll-hint-appear {
  0% {
    -webkit-transform: translateX(40px);
    transform: translateX(40px);
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  50%, 100% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
    opacity: 0;
  }
}

@keyframes scroll-hint-appear {
  0% {
    -webkit-transform: translateX(40px);
    transform: translateX(40px);
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  50%, 100% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
    opacity: 0;
  }
}

.Js-Scrollable__wrap {
  position: relative;
}

.Js-scrollable__shadow {
  content: '';
  display: block;
  top: 0;
  width: 30px;
  height: 100%;
  border: solid 1px #dedede;
  border-bottom-color: transparent;
  border-top: none;
  position: absolute;
  opacity: 0;
  -webkit-transition: opacity .1s;
  transition: opacity .1s;
  z-index: 1;
  pointer-events: none;
}

.Js-scrollable__shadow.-left {
  background: transparent -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0)), color-stop(11%, rgba(255, 255, 255, 0.203)), color-stop(24%, rgba(255, 255, 255, 0.411)), color-stop(37%, rgba(255, 255, 255, 0.592)), color-stop(50%, rgba(255, 255, 255, 0.737)), color-stop(63%, rgba(255, 255, 255, 0.854)), color-stop(75%, rgba(255, 255, 255, 0.933)), color-stop(88%, rgba(255, 255, 255, 0.984)), to(white)) 0% 0% no-repeat padding-box;
  background: transparent -webkit-linear-gradient(right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.203) 11%, rgba(255, 255, 255, 0.411) 24%, rgba(255, 255, 255, 0.592) 37%, rgba(255, 255, 255, 0.737) 50%, rgba(255, 255, 255, 0.854) 63%, rgba(255, 255, 255, 0.933) 75%, rgba(255, 255, 255, 0.984) 88%, white 100%) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.203) 11%, rgba(255, 255, 255, 0.411) 24%, rgba(255, 255, 255, 0.592) 37%, rgba(255, 255, 255, 0.737) 50%, rgba(255, 255, 255, 0.854) 63%, rgba(255, 255, 255, 0.933) 75%, rgba(255, 255, 255, 0.984) 88%, white 100%) 0% 0% no-repeat padding-box;
  left: 0;
  border-right: none;
}

.Js-scrollable__shadow.-right {
  background: transparent -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(11%, rgba(255, 255, 255, 0.203)), color-stop(24%, rgba(255, 255, 255, 0.411)), color-stop(37%, rgba(255, 255, 255, 0.592)), color-stop(50%, rgba(255, 255, 255, 0.737)), color-stop(63%, rgba(255, 255, 255, 0.854)), color-stop(75%, rgba(255, 255, 255, 0.933)), color-stop(88%, rgba(255, 255, 255, 0.984)), to(white)) 0% 0% no-repeat padding-box;
  background: transparent -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.203) 11%, rgba(255, 255, 255, 0.411) 24%, rgba(255, 255, 255, 0.592) 37%, rgba(255, 255, 255, 0.737) 50%, rgba(255, 255, 255, 0.854) 63%, rgba(255, 255, 255, 0.933) 75%, rgba(255, 255, 255, 0.984) 88%, white 100%) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.203) 11%, rgba(255, 255, 255, 0.411) 24%, rgba(255, 255, 255, 0.592) 37%, rgba(255, 255, 255, 0.737) 50%, rgba(255, 255, 255, 0.854) 63%, rgba(255, 255, 255, 0.933) 75%, rgba(255, 255, 255, 0.984) 88%, white 100%) 0% 0% no-repeat padding-box;
  right: 0;
  border-top: none;
  border-left: none;
}

.is-left-scrollable .Js-scrollable__shadow.-left,
.is-right-scrollable .Js-scrollable__shadow.-right {
  opacity: 1;
}

.scroll-hint-icon {
  position: absolute;
  top: 15%;
  left: calc(50% - 60px);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 64px;
  height: 64px;
  line-height: 64px;
  -webkit-transition: opacity .2s;
  transition: opacity .2s;
  opacity: 0;
  text-align: center;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  display: none;
  font-size: 10px;
  color: #fff;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: .8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 38px;
  color: #fff;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  display: none;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  -webkit-animation: scroll-hint-appear 1.2s linear;
  animation: scroll-hint-appear 1.2s linear;
  -webkit-animation-iteration-count: 2;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: rgba(0, 0, 0, 0.6);
}

.scroll-hint-icon-white:before {
  background-image: url(/assets/images/icons/table_scroll_hint.svg);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

/* ===== Socialmedia ===== */
.SocialMediaSection {
  margin-top: 50px;
}

.SocialMediaHeading+.SocialMediaTable {
  margin-top: 16px;
}

.SocialMediaHeading__body {
  margin: 0;
  font-weight: normal;
  color: #333;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SocialMediaHeading__body {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .SocialMediaHeading__body {
    font-size: 2.1rem;
  }
}

.SocialMediaTable {
  width: 100%;
  border: 1px solid #dedede;
  border-bottom: none;
}

.SocialMediaTable dt {
  width: 100%;
  padding: 12px 22px 14px;
  letter-spacing: .03em;
  font-size: 2rem;
  line-height: 1.5;
  color: #333;
  border-bottom: 1px solid #dedede;
  background-color: #fff;
}

.SocialMediaTable dd {
  width: 100%;
  padding: 12px 22px 14px;
  border-bottom: 1px solid #dedede;
  background-color: #f5f5f5;
}

.SocialMediaTable+.SocialMediaTable {
  margin-top: 24px;
}

.SocialMediaTable__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.SocialMediaTable__logo {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 26px;
  margin: 0 16px 0 0;
  vertical-align: middle;
}

.SocialMediaTable__logo.IconLogoLinkedIn {
  height: 22px;
  background-size: 26px 22px;
}

.Tabel__parentTh .SocialMediaTable__logo {
  margin: 0 0 0 16px;
}

.Tabel__parentTh .IconLogoFacebook {
  width: 24px;
  height: 24px;
  margin: 0 0 3px 16px;
}

.Tabel__parentTh .IconLogoTwitter {
  width: 29.14px;
  height: 24px;
}

.Tabel__parentTh .IconLogoInstagram {
  width: 24px;
  height: 24px;
  margin: 0 0 2px 16px;
  background-size: 24px 24px;
}

.Tabel__parentTh .IconLogoYoutube {
  width: 28.67px;
  height: 20px;
  margin: 0 0 3px 16px;
}

/* ===== SnsShareButton ===== */
.SnsShareButton {
  text-align: center;
  margin-top: 50px;
  padding-top: 30px;
  border-top: 2px solid #7f7f7f;
}

.SnsShareButton__heading {
  letter-spacing: .03em;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SnsShareButton__heading {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .SnsShareButton__heading {
    font-size: 1.6rem;
  }
}

.SnsShareButtonList {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 18px;
}

@media only screen and (max-width: 559px) {
  .SnsShareButtonList {
    margin-top: 16px;
  }
}

.SnsShareButtonList li {
  margin: 0 10px;
}

.SnsShareButtonList a {
  display: block;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}

.SnsShareButtonList a:hover {
  opacity: .8;
}

.SnsShareButtonList__icon {
  position: relative;
  display: inline-block;
  width: 32px;
  height: 32px;
}

.SnsShareButtonList__facebook .SnsShareButtonList__icon {
  background: url(/assets/images/icons/facebook_share.svg) 0 0 no-repeat;
}

.SnsShareButtonList__twitter .SnsShareButtonList__icon {
  background: url(/assets/images/icons/twitter_share.svg) 0 0 no-repeat;
}

.SnsShareButtonList__linkedin .SnsShareButtonList__icon {
  background: url(/assets/images/icons/linkedin_share.svg) 0 0 no-repeat;
}

/* ===== SiteSearch ===== */
.SiteSearch {
  position: relative;
  margin: 0 auto;
  padding: 0 0 10px 0;
  border: 0;
  border-bottom: 2px solid #009ea7;
}

.SiteSearch::before {
  content: "";
  position: absolute;
  bottom: 10px;
  display: inline-block;
  width: 1px;
  height: 36px;
  background: #008486;
}

input::-webkit-input-placeholder {
  color: #999;
}

input::-moz-placeholder {
  color: #999;
}

input:-ms-input-placeholder {
  color: #999;
}

input::-ms-input-placeholder {
  color: #999;
}

input::placeholder {
  color: #999;
}

/* IE */
input:-ms-input-placeholder {
  color: #999;
}

/* Edge */
input::-ms-input-placeholder {
  color: #999;
}

input.SiteSearch__input {
  display: inline-block;
  width: calc(100% - 30px);
  vertical-align: middle;
  padding: 0 0 2px 14px;
  color: #333;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic Pro", Meiryo, Arial, sans-serif;
  border: none;
}

input.SiteSearch__input::-ms-clear {
  visibility: visible;
}

@media print, screen and (min-width: 560px) {
  input.SiteSearch__input {
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 559px) {
  input.SiteSearch__input {
    font-size: 2.1rem;
  }
}

.SiteSearch__button {
  -webkit-appearance: none;
  border-radius: 0;
  text-transform: uppercase;
  cursor: pointer;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  width: 24px;
  height: 24px;
  background: url(/assets/images/icons/header_search_site.svg) 0 0 no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 959px) {
  .SiteSearch__button {
    position: absolute;
    bottom: 15px;
    right: 0;
    display: inline-block;
  }
}

.SiteSearch__box {
  margin-top: 60px;
}

.SiteSearch__box input.SiteSearch__input {
  padding: 0 14px;
  font-weight: normal;
  line-height: 1.4;
}

@media print, screen and (min-width: 560px) {
  .SiteSearch__box input.SiteSearch__input {
    font-size: 2.8rem;
  }
}

@media only screen and (max-width: 559px) {
  .SiteSearch__box input.SiteSearch__input {
    font-size: 2.1rem;
  }
}

@media only screen and (max-width: 959px) {

  #ss-suggest-frame1,
  #ss-suggest-frame2 {
    z-index: 99 !important;
  }
}

/* ===== AlertJsOff ===== */
#AlertJsOff {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 101;
  padding: 17px 0;
  background: #fdd;
}

.AlertJsOff__inner {
  max-width: 1600px;
  padding-left: 50px;
}

.AlertJsOff__text {
  margin: 0 auto;
  color: #f00;
}

/* ===== cookie-banner (onetrust-consent-sdk) ===== */
#onetrust-consent-sdk #onetrust-banner-sdk {
  border-top: 1px solid #333 !important;
  background-color: #fff !important;
}

#onetrust-banner-sdk {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

#onetrust-banner-sdk .ot-sdk-row {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  position: relative !important;
}

@media print, screen and (min-width: 960px) {
  #onetrust-banner-sdk .ot-sdk-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

@media only screen and (max-width: 959px) {
  #onetrust-banner-sdk .ot-sdk-row {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
}

#onetrust-banner-sdk .ot-sdk-eight.ot-sdk-columns,
#onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
  float: none !important;
}

@media only screen and (max-width: 959px) {

  #onetrust-banner-sdk .ot-sdk-eight.ot-sdk-columns,
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
    width: 100% !important;
  }
}

/*-- 内側 --*/
@media print, screen and (min-width: 560px) {

  #onetrust-banner-sdk .ot-sdk-container,
  #onetrust-pc-sdk .ot-sdk-container,
  #ot-sdk-cookie-policy .ot-sdk-container {
    max-width: 1600px !important;
    margin: 0 auto !important;
  }
}

@media print, screen and (min-width: 960px) {

  #onetrust-banner-sdk .ot-sdk-container,
  #onetrust-pc-sdk .ot-sdk-container,
  #ot-sdk-cookie-policy .ot-sdk-container {
    padding: 30px 50px !important;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {

  #onetrust-banner-sdk .ot-sdk-container,
  #onetrust-pc-sdk .ot-sdk-container,
  #ot-sdk-cookie-policy .ot-sdk-container {
    padding: 30px 28px !important;
  }
}

@media only screen and (max-width: 559px) {

  #onetrust-banner-sdk .ot-sdk-container,
  #onetrust-pc-sdk .ot-sdk-container,
  #ot-sdk-cookie-policy .ot-sdk-container {
    width: 100% !important;
    padding: 30px 15px !important;
  }
}

/*-- テキストエリア（左） --*/
#onetrust-banner-sdk:not(.ot-iab-2) #onetrust-group-container {
  max-width: 900px !important;
}

@media print, screen and (min-width: 960px) {
  #onetrust-banner-sdk:not(.ot-iab-2) #onetrust-group-container {
    width: auto !important;
  }
}

@media only screen and (max-width: 959px) {
  #onetrust-banner-sdk:not(.ot-iab-2) #onetrust-group-container {
    padding: 0 45px 0 0 !important;
  }
}

/*-- 本文 --*/
#onetrust-banner-sdk #onetrust-policy {
  margin: 0 !important;
}

#onetrust-consent-sdk #onetrust-policy-title,
#onetrust-consent-sdk #onetrust-policy-text,
#onetrust-consent-sdk .ot-b-addl-desc,
#onetrust-consent-sdk .ot-dpd-desc,
#onetrust-consent-sdk .ot-dpd-title,
#onetrust-consent-sdk #onetrust-policy-text *:not(.onetrust-vendors-list-handler),
#onetrust-consent-sdk .ot-dpd-desc *:not(.onetrust-vendors-list-handler),
#onetrust-consent-sdk #onetrust-banner-sdk #banner-options * {
  color: #333 !important;
  font-weight: normal !important;
  line-height: 1.7 !important;
  font-size: 1.4rem !important;
}

#onetrust-consent-sdk #onetrust-policy-text *:not(.onetrust-vendors-list-handler) a,
#onetrust-consent-sdk #onetrust-banner-sdk a[href] {
  color: #008486 !important;
  text-decoration: underline !important;
}

#onetrust-consent-sdk #onetrust-policy-text *:not(.onetrust-vendors-list-handler) a:hover,
#onetrust-consent-sdk #onetrust-banner-sdk a[href]:hover {
  color: #00a8a9 !important;
}

#onetrust-banner-sdk #onetrust-policy-title,
#onetrust-banner-sdk #onetrust-policy-text {
  float: none !important;
  padding: 0 !important;
}

/*-- ボタンエリア（右） --*/
#onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  position: initial !important;
  left: 0;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  -webkit-transform: none !important;
  transform: none !important;
}

@media print, screen and (min-width: 960px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-box-flex: 1 !important;
    -ms-flex: 1 !important;
    flex: 1 !important;
    min-width: 510px !important;
    padding: 0 0 0 24px !important;
  }
}

@media only screen and (max-width: 959px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
    margin-top: 26px !important;
  }
}

@media only screen and (max-width: 559px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group-parent {
    margin-top: 16px !important;
  }
}

.vertical-align-content#onetrust-banner-sdk #onetrust-button-group-parent,
:not(.ot-iab-2).vertical-align-content#onetrust-banner-sdk #onetrust-button-group-parent {
  position: static !important;
}

#onetrust-banner-sdk.ot-buttons-fw #onetrust-pc-btn-handler.cookie-setting-link {
  text-align: left !important;
}

/*-- テキストリンク --*/
#onetrust-consent-sdk #onetrust-pc-btn-handler.cookie-setting-link {
  position: relative !important;
  border-color: transparent !important;
  background-color: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: normal !important;
  line-height: 1.7 !important;
  font-size: 1.4rem !important;
  color: #008486 !important;
  -webkit-transition: opacity 0.2s ease-in-out !important;
  transition: opacity 0.2s ease-in-out !important;
}

#onetrust-consent-sdk #onetrust-pc-btn-handler.cookie-setting-link::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .6em;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #008486;
}

#onetrust-consent-sdk #onetrust-pc-btn-handler.cookie-setting-link:hover {
  color: #00a8a9 !important;
}

#onetrust-banner-sdk p {
  margin: 0 !important;
}

/*-- ボタンエリア --*/
#onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group {
  margin-top: 0 !important;
}

@media print, screen and (min-width: 960px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group {
    text-align: right !important;
    margin-right: 45px !important;
  }
}

@media only screen and (max-width: 959px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    width: auto !important;
    text-align: center !important;
    margin-right: 0 !important;
  }
}

#onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group button {
  width: auto !important;
}

#onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group button:first-child {
  padding: 0 0 0 23px !important;
}

@media print, screen and (min-width: 960px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group button:last-of-type {
    margin: 0 0 0 30px !important;
  }
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group button:last-of-type {
    margin: 28px 0 0 0 !important;
  }
}

@media only screen and (max-width: 559px) {
  #onetrust-banner-sdk.ot-buttons-fw:not(.ot-iab-2) #onetrust-button-group button:last-of-type {
    margin: 18px 0 0 0 !important;
  }
}

/*-- ボタン --*/
#onetrust-accept-btn-handler {
  position: relative !important;
  min-width: 205px !important;
  font-size: 1.4rem !important;
  line-height: 1.4 !important;
  font-weight: normal !important;
  padding: 13px 26px 12px 46px !important;
  color: #fff !important;
  border: 1px solid #008486 !important;
  border-radius: 0 !important;
  background-color: #008486 !important;
  -webkit-transition: background-color 0.2s ease-in-out !important;
  transition: background-color 0.2s ease-in-out !important;
}

#onetrust-accept-btn-handler::before {
  content: "" !important;
  display: inline-block !important;
  position: absolute !important;
  top: 50% !important;
  left: 25px !important;
  -webkit-transform: translate(0, -50%) !important;
  transform: translate(0, -50%) !important;
  width: 0 !important;
  height: 0 !important;
  border-style: solid !important;
  border-width: 3px 0 3px 7px !important;
  border-color: transparent transparent transparent #fff !important;
}

#onetrust-accept-btn-handler:hover {
  border: 1px solid #00a8a9 !important;
  background-color: #00a8a9 !important;
}

#onetrust-banner-sdk .ot-sdk-container:after,
#onetrust-banner-sdk .ot-sdk-row:after,
#onetrust-banner-sdk .ot-sdk-u-cf,
#onetrust-pc-sdk .ot-sdk-container:after,
#onetrust-pc-sdk .ot-sdk-row:after,
#onetrust-pc-sdk .ot-sdk-u-cf,
#ot-sdk-cookie-policy .ot-sdk-container:after,
#ot-sdk-cookie-policy .ot-sdk-row:after,
#ot-sdk-cookie-policy .ot-sdk-u-cf {
  display: none !important;
}

/*-- closeボタン --*/
#onetrust-banner-sdk #onetrust-close-btn-container {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  float: none !important;
  width: 15px !important;
  height: 15px !important;
  -webkit-transform: none !important;
  transform: none !important;
  margin-left: 0 !important;
}

@media only screen and (max-width: 559px) {
  #onetrust-banner-sdk #onetrust-close-btn-container {
    display: block !important;
  }
}

#onetrust-banner-sdk .ot-close-icon,
#onetrust-pc-sdk .ot-close-icon {
  position: relative !important;
  background-image: none !important;
}

#onetrust-banner-sdk .onetrust-close-btn-handler.onetrust-close-btn-ui.banner-close-button.ot-mobile.ot-close-icon {
  height: 0;
}

#onetrust-banner-sdk .onetrust-close-btn-ui.onetrust-lg {
  position: relative !important;
  top: 0 !important;
  -webkit-transform: none !important;
  transform: none !important;
}

#onetrust-banner-sdk .onetrust-close-btn-ui.onetrust-lg::before, #onetrust-banner-sdk .onetrust-close-btn-ui.onetrust-lg::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 1px !important;
  height: 20px !important;
  background-color: #008486 !important;
}

#onetrust-banner-sdk .onetrust-close-btn-ui.onetrust-lg::before {
  -webkit-transform: rotate(45deg) !important;
  transform: rotate(45deg) !important;
}

#onetrust-banner-sdk .onetrust-close-btn-ui.onetrust-lg::after {
  -webkit-transform: rotate(135deg) !important;
  transform: rotate(135deg) !important;
}

/*-- Privacy Policy リンク --*/
#ot-sdk-btn.ot-sdk-show-settings.Link {
  padding: 0 0 0 22px;
  cursor: pointer;
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
  color: #008486;
  font-weight: normal;
  line-height: 1.7;
  font-size: 1.4rem;
  text-decoration: underline;
  border: none;
}

#ot-sdk-btn.ot-sdk-show-settings.Link:hover, #ot-sdk-btn.ot-sdk-show-settings.Link:focus {
  color: #00a8a9;
  text-decoration: underline;
  background-color: transparent;
}


/* ===== Footer ===== */
#Footer {
  width: 100%;
  background-color: #008486;
  font-size: 1.4rem;
}

.Footer__inner {
  max-width: 1600px;
  margin: 0 auto;
  padding: 50px 100px;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Footer__inner {
    padding: 0 28px;
  }
}

@media only screen and (max-width: 559px) {
  #Footer {
    padding-bottom: 60px;
  }

  .Footer__inner {
    padding: 0 15px;
  }
}

.Footer__bottom {}

@media only screen and (min-width: 560px) and (max-width: 959px) {
  .Footer__bottom {
    padding: 24px 0 21px;
  }
}

@media only screen and (max-width: 559px) {
  .Footer__bottom {
    padding: 24px 0 21px;
  }
}