/*! Global Styles */
/*! powered by Basic Assets : v1.0.7 */

/* 基础设置 */
@-ms-viewport {
  width: device-width;
}

html {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", "Inter", "Yuji Mai", "Yuji Syuku", "Lato", "sans-serif";
}

/* 通用重置 */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, figure, header, main, footer, menu, nav, section,
time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: inherit;
  vertical-align: baseline;
  background-color: rgba(255, 255, 255, 0);
}

article, aside, figure, header, main, footer, nav, section, details, summary {
  display: block;
}

html * {
  max-height: 999999px;
}

*, *::after, *::before {
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0);
  z-index: 1;
}

:invalid, :-moz-submit-invalid, :-moz-ui-invalid {
  box-shadow: none;
}

img, object, embed {
  max-width: 100%;
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: rgba(0, 0, 0, 0);
  font-style: inherit;
  font-weight: inherit;
  text-decoration: none;
  line-height: 1.25;
}

a:hover {
  transition: .5s;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  white-space: pre-line;
  word-wrap: break-word;
  font-size: 1em;
}

.is-clickable, label,
input[type=button], input[type=submit], input[type=file], input[type=range], button {
  cursor: pointer;
}

button, input, select, textarea {
  margin: 0;
  font-size: 100%;
  font: inherit;
}

button, input[type=button] {
  width: auto;
  overflow: visible;
}

input, select {
  vertical-align: middle;
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

select, input, textarea {
  font-size: 100%;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: .35em .75em .625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* 对齐工具类 */
align-left {
  text-align: left !important;
}

align-center {
  text-align: center !important;
}

align-right {
  text-align: right !important;
}

align-justify {
  text-align: justify !important;
}

align-top {
  vertical-align: top !important;
}

align-text-top {
  vertical-align: text-top !important;
}

align-middle {
  vertical-align: middle !important;
}

align-baseline {
  vertical-align: baseline !important;
}

align-text-bottom {
  vertical-align: text-bottom !important;
}

align-bottom {
  vertical-align: bottom !important;
}

@media (min-width: 576px) {
  align-left\:small {
    text-align: left !important;
  }
  align-center\:small {
    text-align: center !important;
  }
  align-right\:small {
    text-align: right !important;
  }
  align-justify\:small {
    text-align: justify !important;
  }
}

@media (min-width: 768px) {
  align-left\:medium {
    text-align: left !important;
  }
  align-center\:medium {
    text-align: center !important;
  }
  align-right\:medium {
    text-align: right !important;
  }
  align-justify\:medium {
    text-align: justify !important;
  }
}

/* 基础组件样式 */
p {
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: 400;
  color: #000;
  letter-spacing: .025em;
}

p span {
  color: #009a53;
}

p strong {
  font-weight: 700;
}

.fu-size {
  font-size: 1.125rem;
  line-height: 1.7em;
}

.s-alignment {
  margin-left: 1rem;
}

.history {
  font-size: 2rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1047px;
  margin: 6rem auto 2.5rem auto;
}

.history::before, .history::after {
  content: "";
  height: 1px;
  background-color: #d5e3dc;
  flex-grow: 1;
}

.history::before {
  margin-right: 1.75rem;
}

.history::after {
  margin-left: 1.75rem;
}

/* 按钮样式 */
.g-btn a {
  color: #fff;
  background-color: #ea5420;
  padding: 1rem 1rem 1rem 2.5rem;
}

@media (min-width: 1047px) {
  .g-btn a {
    margin: 0;
  }
}

.g-btn a:hover {
  transition: .5s;
  background-color: #7a2c11;
}

.g-btn a img {
  margin-left: .875rem;
}

.cp-btn a {
  color: #fff;
  background-color: #ea5420;
  padding: 1rem 1rem 1rem 2.5rem;
}

.cp-btn a:hover {
  transition: .5s;
  background-color: #7a2c11;
}

.cp-btn a img {
  margin-left: .875rem;
}

.u-link-btn {
  text-align: center;
  margin-top: 8rem;
}

.u-link-btn a {
  padding: 1rem 1rem 1rem 2.5rem;
  background-color: #ea5420;
  display: inline-block;
  color: #fff;
}

.u-link-btn a:hover {
  transition: .5s;
  background-color: #7a2c11;
}

.u-link-btn a img {
  margin-left: .875rem;
}

/* 标题样式 */
h2 {
  font-size: 1.5rem;
  font-weight: 500;
  color: #009a53;
  margin-bottom: 2rem;
  line-height: 1.5em;
  padding-left: 2em;
  text-indent: -2em;
}

h2::before {
  content: "";
  border-left: 4px solid #009a53;
  margin-right: 1rem;
}

h2 span {
  margin-right: .5rem;
}

h3 {
  font-size: 1.125rem;
  font-weight: 700;
  color: #222;
  margin: 2rem 0 1rem 0;
  border-bottom: 1px solid #d5e3dc;
  padding-bottom: 1rem;
  line-height: 1.5em;
}

/* 面包屑导航 */
.breadcrumb {
  border: solid 1px #ddd;
  border-width: 1px 0;
}

.breadcrumb ul {
  display: flex;
  margin: auto;
  padding-left: 2.5rem;
}

.breadcrumb ul li {
  list-style: none;
  font-size: .75rem;
  height: 3rem;
  line-height: 3rem;
  margin-right: 3.75rem;
  position: relative;
  white-space: nowrap;
}

.breadcrumb ul li::before, .breadcrumb ul li::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  border-top: 24px solid rgba(0, 0, 0, 0);
  border-right: 24px solid rgba(0, 0, 0, 0);
  border-bottom: 24px solid rgba(0, 0, 0, 0);
}

.breadcrumb ul li::before {
  right: -60px;
  border-left: 15px solid #ccc;
}

.breadcrumb ul li::after {
  right: -59px;
  border-left: 15px solid #fff;
}

.breadcrumb ul li a {
  color: #000;
  text-decoration: none;
}

.breadcrumb ul li a:hover {
  color: #ea5420;
}

.breadcrumb ul li a img {
  margin-right: .5rem;
}

.breadcrumb .active {
  color: #009a53;
}

.breadcrumb .active:hover {
  color: #009a53;
}

/* 头部导航 */
.global-header {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: #000;
  padding: 1.625rem 2rem;
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 15px;
}

.global-header-banner__brand img {
  width: 260px;
}

.global-header__inner {
  display: flex;
  align-items: center;
  min-width: 1000px;
  margin: 0 auto;
}

.global-header__menu {
  padding-top: 0;
  position: relative;
  z-index: 2;
  height: auto;
  width: auto;
  overflow: visible;
  background-color: rgba(0, 0, 0, 0);
  margin-left: auto;
}

.is-navigation-open .global-header__menu {
  height: auto;
}

.global-menu {
  display: flex;
}

.global-menu dl a {
  color: #fff;
}

.global-menu dl a:hover {
  border-bottom: 1px solid #ea5420;
}

.global-menu dl+dl {
  margin-left: 2rem;
}

.global-header-banner {
  display: flex;
  align-items: center;
}

/* 表格样式 */
.about {
  min-width: 1047px;
  margin: 0 auto;
  border-collapse: collapse;
}

.about tbody tr {
  text-align: left;
  letter-spacing: .025em;
  border-bottom: 1px solid #d5e3dc;
}

.about tbody tr th, .about tbody tr td {
  padding: 1.25rem 0;
  border-top: 1px solid #d5e3dc;
}

.about tbody tr th {
  background-color: #eee;
  padding-left: 1rem;
  font-weight: 700;
}

.about tbody tr td {
  text-align: left;
  padding-left: 1rem;
  line-height: 1.5;
}

.u-about {
  margin: 0 auto;
  border-collapse: collapse;
  margin-top: 2rem;
  margin-bottom: 4rem;
  min-width: 1047px;
}

.u-about tbody tr {
  text-align: left;
  letter-spacing: .025em;
  border-bottom: 1px solid #d5e3dc;
}

.u-about tbody tr th, .u-about tbody tr td {
  padding: .5rem 0;
  border-top: 1px solid #d5e3dc;
}

.u-about tbody tr th {
  background-color: #eee;
  font-weight: 500;
  font-size: .875rem;
  border-right: 1px solid #d5e3dc;
  text-align: center;
}

.u-about tbody tr th .th-space {
  margin: 0 .9rem;
}

.u-about tbody tr td {
  text-align: left;
  padding-left: 1rem;
  line-height: 1.5;
  table-layout: fixed;
}

.u-about tbody tr td:last-child {
  border-right: none;
}

.u-about-c {
  border-collapse: collapse;
  margin-top: 2rem;
  margin-bottom: 4rem;
}

.u-about-c tbody tr {
  text-align: left;
  letter-spacing: .025em;
  border-bottom: 1px solid #d5e3dc;
}

.u-about-c tbody tr th, .u-about-c tbody tr td {
  padding: .5rem 0;
  border-top: 1px solid #d5e3dc;
}

.u-about-c tbody tr th {
  background-color: #eee;
  padding-left: 1rem;
  font-weight: 500;
  font-size: .875rem;
}

.u-about-c tbody tr td {
  text-align: center;
  line-height: 1.5;
  table-layout: fixed;
  border-right: 1px solid #d5e3dc;
  border-left: 1px solid #d5e3dc;
}

.u-about-c tbody tr td:last-child {
  border-right: none;
}

.u-about__cell {
  border-collapse: collapse;
  border-spacing: 0;
  width: 50%;
  border-bottom: solid 1px #d5e3dc;
  margin-top: 2rem;
  margin-bottom: 4rem;
}

.u-about__cell thead {
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
}

.u-about__cell thead tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
}

.u-about__cell thead th, .u-about__cell thead td {
  border-top: solid 1px #d5e3dc;
  padding: 8px;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.5;
}

.u-about__cell thead th {
  background-color: #eee;
  display: table-cell;
  vertical-align: inherit;
  font-weight: bold;
  text-align: -internal-center;
}

.u-about__cell tbody {
  display: table-row-group;
  vertical-align: middle;
  border-color: inherit;
}

.u-about__cell tbody tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
}

.u-about__cell tbody th, .u-about__cell tbody td {
  border-top: solid 1px #d5e3dc;
  padding: .5rem 1rem;
  line-height: 1.5;
}

.u-about__cell tbody th {
  text-align: left;
  background-color: #eee;
  font-weight: 500;
  font-size: .875rem;
}

.u-about__cell tbody td {
  text-align: center;
  border-left: 1px solid #d5e3dc;
}

.u-about__cell tbody .th-sedondary {
  background-color: #f9f9f9;
}

.u-about__cell tbody .spacer {
  border-top: none;
  width: 32px;
}

/* 英雄区域 */
.jumbotron {
  position: relative;
  background-image: url(../images/main-bg.jpg?rnd=1);
  background-size: cover;
  height: 771px;
  min-width: 1047px;
}

.jumbotron__title {
  position: relative;
  top: 353px;
  z-index: 2;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 1300px;
  padding-left: 4.625rem;
}

.jumbotron__title h1 {
  font-size: 2.25rem;
  font-family: "Noto Sans JP";
  font-weight: 700;
  position: relative;
  z-index: 9;
  line-height: 1.125em;
}

.jumbotron__title h1 .ul-g span, .jumbotron__title h1 .ul-o span {
  display: inline-block;
  position: relative;
  overflow: hidden;
  -webkit-animation: title--text 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
  animation: title--text 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
}

.jumbotron__title h1 .ul-g span::after, .jumbotron__title h1 .ul-o span::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  -webkit-animation: title--effect 1.25s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal both;
  animation: title--effect 1.25s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal both;
  z-index: 0;
}

.jumbotron__title h1 .ul-g {
  position: relative;
}

.jumbotron__title h1 .ul-g::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 8px;
  width: 100%;
  height: 8px;
  background-color: #009a53;
  z-index: -1;
  -webkit-animation: border--effect 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
  animation: border--effect 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
}

.jumbotron__title h1 .ul-o {
  position: relative;
}

.jumbotron__title h1 .ul-o::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 8px;
  width: 100%;
  height: 8px;
  /*background-color: #ea5420;*/
  z-index: -1;
  -webkit-animation: border--effect 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
  animation: border--effect 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
}

.jumbotron__title h1 .ul-g span::after {
  background-color: #009a53;
}

.jumbotron__title h1 .ul-o span::after {
  background-color: #fff;
}

.jumbotron__title h1+h1 {
  margin-top: -0.5rem;
}

.jumbotron__title p {
  font-size: 1rem;
  line-height: 1.25;
  font-family: "Inter";
  color: #fff;
  letter-spacing: .025em;
  text-align: left;
  -webkit-animation: title--text--p 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
  animation: title--text--p 1.85s cubic-bezier(0.75, 0, 0.175, 1) 0s 1 normal forwards;
}

@-webkit-keyframes title--text--p {
  0% {
    color: rgba(255, 255, 255, 0);
  }
  51% {
    color: rgba(255, 255, 255, 0);
  }
  100% {
    color: #fff;
  }
}

@keyframes title--text--p {
  0% {
    color: rgba(255, 255, 255, 0);
  }
  51% {
    color: rgba(255, 255, 255, 0);
  }
  100% {
    color: #fff;
  }
}

@-webkit-keyframes title--text {
  0% {
    color: rgba(255, 255, 255, 0);
  }
  40% {
    color: rgba(255, 255, 255, 0);
  }
  68% {
    color: #fff;
  }
  100% {
    color: #fff;
  }
}

@keyframes title--text {
  0% {
    color: rgba(255, 255, 255, 0);
  }
  40% {
    color: rgba(255, 255, 255, 0);
  }
  68% {
    color: #fff;
  }
  100% {
    color: #fff;
  }
}

@-webkit-keyframes border--effect {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  68% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}

@keyframes border--effect {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  68% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes title--effect {
  0% {
    width: 0%;
    left: 0%;
  }
  50% {
    width: 100%;
    left: 0%;
  }
  100% {
    left: 100%;
  }
}

@keyframes title--effect {
  0% {
    width: 0%;
    left: 0%;
  }
  50% {
    width: 100%;
    left: 0%;
  }
  100% {
    left: 100%;
  }
}

.u-jumbotron__photo, .u-jumbotron-o__photo {
  position: relative;
  top: 0;
  left: 0;
  height: 408px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: #000;
  min-width: 1047px;
}

.u-jumbotron__title, .u-jumbotron-o__title {
  position: absolute;
  top: 208px;
  left: 0%;
  right: 0;
  margin: 0 auto;
  text-align: center;
  min-width: 1047px;
  display: block;
}

.u-jumbotron__title p, .u-jumbotron-o__title p {
  font-size: 2.25rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
}

.u-jumbotron__title .title-border, .u-jumbotron-o__title .title-border {
  margin: 0 auto;
  padding-bottom: 1rem;
  border-bottom: solid 4px #ea5420;
  position: relative;
  width: 128px;
  margin-top: .5rem;
}

.u-jumbotron__title .title-border::after, .u-jumbotron-o__title .title-border::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 4px #009a53;
  bottom: -4px;
  width: 50%;
}

.u-jumbotron__photo {
  background-image: url(../images/u-jumbotron__01.png);
}

.u-jumbotron-o__photo {
  background-image: url(../images/u-jumbotron__02x.jpg);
}

/* 主内容区 */
.main-content {
  min-width: 1047px;
}

.main-content__title {
  margin-top: 8rem;
  margin-bottom: 4rem;
  text-align: center;
}

.main-content__title h1 {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: .05em;
}

.main-content__title p {
  font-family: "Inter";
  color: #009a53;
  letter-spacing: .025em;
}

.space {
  padding-left: 1.25rem;
  text-indent: -1.25rem;
  display: inline-block;
}

.u-main-content {
  width: 1047px;
  padding-top: 8rem;
  margin: 0 auto;
}

.u-main-content p {
  color: #555;
}

.u-main-content__text ol {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.u-main-content__text ol li {
  color: #555;
  padding-left: 3.25rem;
  text-indent: -3.25rem;
  line-height: 1.5em;
}

.u-main-content__text ol li span {
  color: #555;
  margin-right: .5rem;
}

.u-main-content__text ol li strong {
  font-weight: 500;
  padding-bottom: .25rem;
  color: #000;
  line-height: 2em;
}

.u-main-content__text ol li+li {
  margin-top: .5rem;
}

.u-main-content__text .list-s {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.u-main-content__text .list-s li {
  color: #555;
  padding-left: 1.65rem;
  text-indent: -1.65rem;
  line-height: 1.5em;
}

.u-main-content__text .list-s li .middle-dot {
  content: "";
  width: 6px;
  height: 6px;
  line-height: 6px;
  background-color: #555;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  display: inline-block;
}

.u-main-content__text .list-s li .middle-dot2 {
  content: "";
  margin-left: 1.25rem;
  width: 6px;
  height: 6px;
  line-height: 6px;
  background-color: rgba(0, 0, 0, 0);
  border-radius: 50%;
  color: #fff;
  text-align: center;
  display: inline-block;
  border: 1px solid #555;
}

.u-main-content__text .list-s li span {
  color: #555;
  margin-right: .5rem;
}

.u-main-content__text .list-s li strong {
  font-weight: 500;
  padding-bottom: .25rem;
  color: #000;
  line-height: 2em;
}

.u-main-content__text .list-s li+li {
  margin-top: .5rem;
}

.u-main-content__text--r {
  margin-right: auto;
  margin-top: 5rem;
  justify-content: flex-end;
}

.u-main-content__text--r p {
  font-size: .875rem;
  line-height: 1.5em;
  text-align: right;
}

.u-main-content__text--r .revision-date {
  margin-bottom: 1rem;
}

.u-main-content__text+.u-main-content__text {
  margin-top: 4rem;
}

/* 消息区域 */
.message-section__inner {
  min-width: 1047px;
}

.message-section__detail {
  margin: 0 auto;
  text-align: left;
  padding: 4rem 8.75rem;
}

.message-section__detail p+p {
  margin-top: 1.5rem;
}

.message-section .ceo-photo {
  margin: 0 auto;
  position: relative;
  height: 448px;
  background-image: url(../images/t1.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.message-section .ceo-photo__text {
  position: absolute;
  top: 40%;
  left: 36%;
  text-align: left;
  color: #fff;
  font-family: "Noto Sans JP";
  max-width: 768px;
  display: flex;
  flex-direction: column;
}

.message-section .ceo-photo__text--inner {
  max-width: 768px;
  margin: 0 auto;
}

.message-section .ceo-photo__text .position {
  background-color: #009a53;
  padding: .25rem .5rem;
  display: inline-block;
}

.message-section .ceo-photo__text .name {
  font-family: "Yuji Syuku";
  background-color: #009a53;
  padding: .5rem .5rem;
  font-size: 2.5rem;
  margin-top: .5rem;
  width: auto;
}

/* 企业理念区域 */
.corporate-philosophy-section {
  position: relative;
  margin: 0 auto;
}

.corporate-philosophy-section .cp-bg {
  background-color: #171717;
  min-width: 1047px;
  height: 986px;
  align-items: center;
  display: flex;
}

.corporate-philosophy-section .cp-bg img {
  margin-right: auto;
}

.corporate-philosophy-section__detail {
  min-width: 1047px;
  display: flex;
  position: absolute;
  top: 8rem;
  left: calc(50% - 524px);
  margin: 0 auto;
}

.corporate-philosophy-section__detail--text {
  padding-left: 4rem;
}

.corporate-philosophy-section__detail--text .main-content__title {
  text-align: left;
}

.corporate-philosophy-section__detail--text .main-content__title h1 {
  color: #fff;
}

.corporate-philosophy-section__detail--text .main-content__title p {
  color: #009a53;
}

.corporate-philosophy-section__detail--text p {
  width: 420px;
  text-align: left;
  color: #fff;
  letter-spacing: .05em;
  margin-bottom: 3rem;
}

.corporate-philosophy-section__detail--photo {
  position: absolute;
  margin-left: 10rem;
  top: 8rem;
  right: 0;
  width: 520px;
}

.cp-b-img__1, .cp-b-img__2 {
  min-width: 1047px;
  height: 448px;
  background-repeat: no-repeat;
  background-size: cover;
}

.cp-b-img__1 {
  background-image: url(../images/cp-img_01.png);
}

.cp-b-img__2 {
  background-image: url(../images/cp-img_02.jpg);
}

/* 企业简介区域 */
.corporate-profile-section {
  margin: 0 auto;
}

/* 时间线表格 */
.timeline-table {
  min-width: 1047px;
  display: table;
  border-collapse: collapse;
  line-height: 1.25em;
  margin: 0 auto 8rem auto;
}
.timeline-table__inner {
  padding-bottom: 3rem;
  border-bottom: 1px solid #d5e3dc;
}

.timeline-table dl {
  display: table-row;
}

.timeline-table dl:first-child dd::before {
  height: calc(100% - .625em);
}

.timeline-table dl:last-child dd::before {
  height: calc(100% - .625em);
  bottom: 1.25em;
}

.timeline-table dt, .timeline-table dd {
  position: relative;
  display: table-cell;
}

.timeline-table dt::before, .timeline-table dt::after,
.timeline-table dd::before, .timeline-table dd::after {
  display: block;
  padding: 0;
  margin: 0;
  position: absolute;
  content: "";
  background-color: #009a53;
}

.timeline-table dt {
  width: calc(120px + 3rem);
  white-space: nowrap;
  padding-right: 3rem;
  padding-bottom: 1.25rem;
  z-index: 1;
}

.timeline-table dt::before {
  width: 2rem;
  height: 2px;
  top: calc(.625em - 1px);
  left: auto;
  right: -1rem;
}

.timeline-table dt::after {
  margin-top: 0;
  left: auto;
  right: -4px;
  top: calc(.625em - 4px);
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.timeline-table dd {
  padding-left: 3rem;
  padding-bottom: 1rem;
  z-index: 0;
}

.timeline-table dd::before {
  left: -1px;
  bottom: 0;
  width: 2px;
  height: 100%;
  background-color: #d9d9d9;
  z-index: 0;
}

.timeline-table dd span {
  padding-top: .5rem;
  display: inline-block;
}

/* 联系我们区域 */
.access-section {
  width: 1047px;
  margin: 0 auto;
}

.access-section__detail {
  display: flex;
}

.access-section__detail .access-map {
  margin-right: 25px;
  width: 50%;
}

.access-section__detail .access-text {
  display: inline-block;
  text-align: left;
  width: 515px;
}

.access-section__detail .access-text p {
  line-height: 1.5;
}

.access-section__detail .access-text p a {
  color: #009a53;
  border-bottom: 1px solid #009a53;
}

.access-section__detail .access-text p a:hover {
  color: #ea5420;
  border-bottom: 1px solid #ea5420;
}

.access-section__detail .access-text__address, .access-section__detail .access-text__traffic {
  background-color: #f9f9f9;
  padding: 3.5rem 0;
  display: flex;
  padding-left: 2.5rem;
}

.access-section__detail .access-text__address::before {
  content: "";
  background-image: url(../images/map-pin.png);
  width: 20px;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 1rem;
}

.access-section__detail .access-text__traffic {
  margin-top: 2rem;
}

.access-section__detail .access-text__traffic::before {
  content: "";
  background-image: url(../images/map-train.png);
  width: 20px;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 1rem;
}

.contact-section {
  margin-top: 8rem;
}

.contact-section__inner {
  background-color: #000;
  min-width: 1047px;
}

.contact-section__content {
  min-width: 1047px;
  display: flex;
  padding: 3.5rem 0;
  align-items: center;
  margin: 0 auto;
  justify-content: space-between;
}

@media (min-width: 1152px) {
  .contact-section__content {
    width: 1152px;
  }
}

.contact-section__content .c-logo img {
  width: 260px;
}

.contact-section__content .c-tell p {
  line-height: 1.25;
  color: #fff;
  font-size: .875rem;
  align-items: center;
  display: flex;
}

.contact-section__content .c-tell p span {
  font-size: 1.5rem;
  color: #fff;
  margin-left: 1rem;
  font-family: "Inter";
}

.contact-section__content .c-tell p small {
  font-size: .75rem;
}

/* 页脚 */
.footer-section {
  background-color: #222;
  min-width: 1047px;
}

.footer-section__inner {
  display: flex;
  padding-top: 5rem;
  padding-bottom: 4rem;
  min-width: 1047px;
  margin: 0 auto;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, .3);
}

@media (min-width: 1152px) {
  .footer-section__inner {
    width: 1157px;
    padding-left: 0rem;
    padding-right: 0rem;
  }
}

.footer-section__text {
  display: flex;
  margin:0px auto;
}

.footer-section__text .m-list li a, .footer-section__text .d-list li a {
  color: #fff;
}

.footer-section__text .m-list li a:hover, .footer-section__text .d-list li a:hover {
  color: #ea5420;
}

.footer-section__text .m-list li+li, .footer-section__text .d-list li+li {
  margin-top: 1.5rem;
}

.footer-section__text .m-list+.m-list, .footer-section__text .d-list+.m-list {
  margin: 0 7.375rem;
}

.footer-section__text .m-list li a {
  font-size: .9375rem;
}

.footer-section__text .d-list li a {
  font-size: .875rem;
  display: block;
  position: relative;
  color: #fff;
  padding-left: 1rem;
}

.footer-section__text .d-list li a::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border: 1px solid currentColor;
  border-left-color: rgba(0, 0, 0, 0);
  border-top-color: rgba(0, 0, 0, 0);
  transform: rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -4px;
}

.footer-section__text .d-list li img {
  margin-left: .5rem;
}

.footer-section__text .d-list li:first-child a:last-child {
  margin-left: 1.25rem;
  margin-top: -0.5rem;
}

.footer-section__text .d-list li:first-child a:last-child::after {
  transform: rotate(90deg);
  color: rgba(255, 255, 255, .3);
  width: 7px;
  height: 7px;
}

.footer-section__banner img {
  background-color: #fff;
  margin-right: 0;
  text-align: right;
  width: 256px;
}

.footer-section__banner img:hover {
  background-color: rgba(255, 255, 255, .7);
  transition: .5s;
}

.footer-section .copylight {
  text-align: center;
  margin: 0 auto;
  width: 1047px;
  color: #fff;
  padding-top: 2.5rem;
  padding-bottom: 4rem;
  font-size: .75rem;
}

/* 卡片组件 */
.d-card__cell {
  background-color: #fff;
  box-shadow: 0px 0px 16px -8px rgba(0, 0, 0, .6);
  padding: 4rem 0;
  margin: 0 auto;
}

@media (min-width: 1047px) {
  .d-card__cell {
    width: 1047px;
  }
}

.d-card__cell .emphasis-text {
  text-align: center;
}

.d-card__cell .emphasis-text img {
  width: 50%;
}

.d-card__column--3 {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}

@media (min-width: 1047px) {
  .d-card__column--3 {
    width: 1047px;
  }
}

.d-card__cell--3 {
  background-color: #fff;
  box-shadow: 0px 0px 16px -8px rgba(0, 0, 0, .6);
  padding: 2rem 1.5rem;
  width: 327.6666666667px;
  margin: 0 auto;
}

.d-card__cell--3:nth-child(2) {
  margin: 0 2rem;
}

.d-card__cell--3 .d-card-text__head {
  color: #009a53;
  text-align: center;
  margin-bottom: 1.25rem;
}

.d-card__cell--3 .d-card-text__head--num {
  font-family: "Lato";
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.2;
}

.d-card__cell--3 .d-card-text__head--title {
  font-size: 1.5rem;
  font-weight: 700;
}

.d-card__cell--3 .d-card-text__body p {
  line-height: 1.5;
  padding-left: 1.25em;
  text-indent: -1.25em;
}

.d-card__cell--3 .d-card-text__body p::before {
  content: "・";
  margin-right: .25rem;
}

.d-card__cell--3 .d-card-text__body p+p {
  margin-top: .5rem;
}

/* 汉堡菜单 */
.hamburger-trigger {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
  border: none;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  font-size: 1em;
  text-decoration: none;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0);
  border: none;
  outline: none;
  padding: 0;
  letter-spacing: inherit;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 1.15;
  border-radius: 4px;
  width: 64px;
  height: 64px;
  color: #009a53;
  background-color: #fff;
}

.hamburger-trigger__icon-bar::before, .hamburger-trigger__icon-bar::after,
.hamburger-trigger__icon::before, .hamburger-trigger__icon::after {
  display: block;
  padding: 0;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  content: "";
}

.hamburger-trigger__icon {
  display: block;
  padding: 0;
  margin: auto;
  position: relative;
  width: 24px;
  height: 16px;
}

.hamburger-trigger__icon::before, .hamburger-trigger__icon::after {
  transition: transform .5s;
}

.hamburger-trigger__icon-bar {
  display: block;
  padding: 0;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: width .5s;
}

.hamburger-trigger__icon-bar::before {
  bottom: auto;
}

.hamburger-trigger__icon-bar::after {
  top: auto;
}

.is-navigation-open .hamburger-trigger__icon::before, .is-navigation-open .hamburger-trigger__icon-bar, .is-navigation-open .hamburger-trigger__icon::after {
  margin: auto;
  transform-origin: center center;
}

.is-navigation-open .hamburger-trigger__icon::before {
  transform: rotate(45deg);
  margin-top: auto;
}

.is-navigation-open .hamburger-trigger__icon-bar {
  width: 0;
}

.is-navigation-open .hamburger-trigger__icon::after {
  transform: rotate(-45deg);
  margin-bottom: auto;
}

.hamburger-trigger__text {
  display: block;
  position: relative;
  width: 100%;
  height: 1.15em;
  flex-grow: 1;
  font-weight: bold;
  margin-top: 4px;
  font-size: .6875em;
}

.hamburger-trigger__text::before, .hamburger-trigger__text::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: top .5s, opacity .5s;
}

.hamburger-trigger__text::before {
  top: 0;
  opacity: 1;
  content: "MENU";
}

.hamburger-trigger__text::after {
  top: -1em;
  opacity: 0;
  content: "CLOSE";
}

.is-navigation-open .hamburger-trigger__text::before {
  top: -1em;
  opacity: 0;
}

.is-navigation-open .hamburger-trigger__text::after {
  top: 0;
  opacity: 1;
}

.js-fix-wrapper {
  padding: 0;
  margin: 0;
  position: relative;
}

.is-navigation-open .js-fix-wrapper {
  position: fixed;
  top: 64px;
  left: 0;
  width: 100%;
  height: calc(100vh - 64px);
}

/* 其他样式 */
.block {
  display: flex;
}

.block__element {
  display: block;
}

.block.is-hoge {
  display: block;
}

.block .element {
  display: block;
}

.block:hover {
  background-color: #009a53;
}

@media (max-width: 1050px) {
    .timeline-table {
      min-width: 0;width:96%;margin:0px 2%;
    }
    .history{width:100%;}
    .main-content{min-width:100%;}
    .jumbotron{min-width:100%;}
    .message-section__inner{min-width:100%;}
    .corporate-philosophy-section .cp-bg{min-width:100%;}
    .corporate-philosophy-section__detail{min-width:100%;}
    .cp-b-img__1, .cp-b-img__2{min-width:100%;}
    .access-section{width:100%;}
    .contact-section__inner{min-width:100%;}
    .contact-section__content{min-width:100%;}
    .footer-section{min-width:100%;}
    .footer-section__inner{min-width:0px;width:96%;margin:0px 2%}
    .footer-section .copylight{width:100%;}
    .about{min-width:0;width:96%;margin:0px 2%;}
    .global-header__inner{width:98%;margin:0px 1%;min-width:0}
    .u-main-content{width:96%;margin:0px 2%}

}
/*# sourceMappingURL=global.min.css.map */