.only-m {
  display: none !important;
}

.indexNavMain {
  width: 100%;
  height: 7.8vw;
  padding: 1.3vw;
  box-sizing: border-box;
  z-index: 999;
}
.indexNavMain .logo {
  float: left;
  display: flex;
}
.indexNavMain .logo img {
  display: block;
  width: auto;
  height: 5.2vw;
}
.indexNavMain .logo p {
  margin-left: 1.2vw;
  font-size: 0.78vw;
  line-height: 5.2vw;
  font-weight: 500;
}
.indexNavMain .logo p i {
  font-style: normal;
}
.indexNavMain .logo:hover {
  opacity: 0.8;
}
.indexNavMain .topNav {
  float: right;
  display: flex;
}
.indexNavMain .topNav li {
  margin-right: 1.56vw;
  font-size: 0.9375vw;
  line-height: 5.2vw;
  text-transform: uppercase;
  position: relative;
  transition: all 0.5s;
}
.indexNavMain .topNav li > a {
  position: relative;
  display: block;
  color: #333;
  font-weight: 700;
}
.indexNavMain .topNav li:hover a {
  color: #530000;
}
.indexNavMain .topNav li a[aria-current=page] {
  color: #530000;
}
.indexNavMain .topNav li a[aria-current=page]::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 1.5vw;
  width: 100%;
  height: 2px;
  background-color: #530000;
}
.indexNavMain .topNav .contact-link {
  width: 13.28vw;
  height: 5.2vw;
  margin-right: 0;
  background-color: #530000;
}
.indexNavMain .topNav .contact-link a {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
}
.indexNavMain .topNav .contact-link a img {
  display: block;
  width: 2vw;
  height: auto;
  filter: invert(1) brightness(2);
}
.indexNavMain .topNav .contact-link a div {
  margin-left: 1vw;
  margin-top: 1.5vw;
  height: 2.2vw;
}
.indexNavMain .topNav .contact-link a div span {
  display: block;
  font-size: 0.625vw;
  line-height: 0.9375vw;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 100;
  color: #ffcc00;
  text-transform: initial;
  letter-spacing: 0.03vw;
}
.indexNavMain .topNav .contact-link a div p {
  font-size: 0.833vw;
  line-height: 1.25vw;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.15vw;
}
.indexNavMain .topNav .contact-link:hover {
  background-color: #410000;
}
.indexNavMain .menu-toggle {
  display: none;
}

.indexBanner {
  position: relative;
  overflow: hidden;
}
.indexBanner .banner-image {
  position: relative;
  width: 100%;
  height: 50vw;
}
.indexBanner .banner-image img {
  display: block;
  position: absolute;
}
.indexBanner .banner-image .img01 {
  width: 55.13vw;
  left: 1vw;
  top: 0;
  z-index: 1;
}
.indexBanner .banner-image .img02 {
  width: 55.078vw;
  right: 1.3vw;
  top: 0;
  z-index: 3;
}
.indexBanner .banner-image .img03 {
  width: 55.13vw;
  left: 1vw;
  bottom: 0;
  z-index: 2;
}
.indexBanner .banner-image .img04 {
  width: 55.078vw;
  right: 1.3vw;
  bottom: 0;
  z-index: 4;
}
.indexBanner .banner-txt {
  position: absolute;
  left: 50%;
  top: 13.7vw;
  width: 58vw;
  margin-left: -29vw;
  z-index: 5;
}
.indexBanner .banner-txt h1 .slogan01 {
  display: flex;
  justify-content: center;
  width: 46.35vw;
  height: 13.6vw;
  margin: 0 auto;
  background: url(../images/sloganBg01.png) no-repeat center center;
  background-size: 100% auto;
}
.indexBanner .banner-txt h1 .slogan01 img {
  display: block;
  width: 36vw;
}
.indexBanner .banner-txt h1 .slogan02 {
  display: flex;
  justify-content: center;
  width: 57.81vw;
  height: 15.05vw;
  margin: -6vw auto -3vw;
  background: url(../images/sloganBg02.png) no-repeat center center;
  background-size: 100% auto;
}
.indexBanner .banner-txt h1 .slogan02 img {
  display: block;
  width: 47.91vw;
}
.indexBanner .banner-txt p {
  width: 47vw;
  height: 9vw;
  overflow: hidden;
  margin: -6vw auto 0;
}
.indexBanner .banner-txt p span {
  display: block;
  width: 48vw;
  height: 2.5vw;
  margin-left: -1vw;
  background-color: rgba(255, 255, 255, 0.9);
  font-size: 1.3vw;
  line-height: 2.5vw;
  text-align: center;
  font-style: italic;
  transform: rotateZ(-7deg) translateY(3vw);
}

.indexTitle {
  position: relative;
}
.indexTitle span {
  display: block;
  font-size: 2.08vw;
  line-height: 3.64vw;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 300;
  color: #333;
  text-transform: uppercase;
}
.indexTitle span strong {
  color: #006900;
  font-weight: 700;
}
.indexTitle h2 {
  font-size: 2.08vw;
  line-height: 3.125vw;
  font-weight: 700;
  color: #111;
  letter-spacing: 0.15vw;
}

.viewMore {
  position: relative;
  display: block;
  width: 17.18vw;
  height: 4.68vw;
  background-color: #111;
  padding-left: 1.7vw;
  letter-spacing: 0.1vw;
  box-sizing: border-box;
  font-size: 0.73vw;
  line-height: 4.68vw;
  color: #fff;
  font-weight: 500;
}
.viewMore::before {
  content: "";
  position: absolute;
  right: -2.5vw;
  top: 1.45vw;
  width: 4.66vw;
  height: 1.8vw;
  background: url(../images/arr02.png) no-repeat;
  background-size: auto 100%;
  transition: all 0.5s;
}
.viewMore::after {
  content: "";
  position: absolute;
  right: 0;
  top: 1.45vw;
  width: 2.16vw;
  height: 1.8vw;
  background: url(../images/arr03.png) no-repeat left center;
  background-size: auto 100%;
  transition: all 0.5s;
}
.viewMore:hover {
  background-color: #222222;
  color: #fff;
}
.viewMore:hover::before {
  right: -3vw;
}
.viewMore:hover::after {
  width: 1.66vw;
}

.indexAbout {
  position: relative;
  width: 100%;
  height: 49.2vw;
  margin-top: 5.2vw;
  overflow: hidden;
}
.indexAbout .indexTitle {
  float: right;
  width: 16vw;
  height: 35vw;
  margin-right: 10vw;
  margin-top: 5.2vw;
}
.indexAbout .indexTitle span {
  float: right;
  writing-mode: vertical-rl;
  margin-left: 2vw;
}
.indexAbout .indexTitle span strong {
  display: block;
  font-size: 4.16vw;
}
.indexAbout .indexTitle h2 {
  float: right;
  writing-mode: vertical-rl;
}
.indexAbout p {
  float: right;
  height: 33vw;
  margin-right: 6vw;
  font-size: 0.9375vw;
  line-height: 2vw;
  font-weight: 500;
  color: #333;
  writing-mode: vertical-rl;
  letter-spacing: 0.1vw;
}
.indexAbout p span:nth-of-type(2) {
  color: #111;
  text-transform: uppercase;
}
.indexAbout p span:nth-of-type(1) {
  color: #111;
}
.indexAbout .viewMore {
  position: absolute;
  left: 50%;
  bottom: 0;
}
.indexAbout .img {
  position: absolute;
  left: 0;
  bottom: 2.34vw;
  width: 74vw;
  z-index: -1;
}

.indexVision {
  position: relative;
  width: 77.6vw;
  margin: 5vw auto;
}
.indexVision .indexTitle {
  margin-bottom: 2.08vw;
}
.indexVision .logo-g {
  position: absolute;
  width: 32vw;
  top: 0;
  right: 4.94vw;
  z-index: 2;
}
.indexVision .list li {
  position: relative;
  margin-bottom: 15.8vw;
}
.indexVision .list li .img-l img {
  display: block;
  width: 100%;
}
.indexVision .list li .tag {
  position: absolute;
  top: 3.1vw;
  left: -1.69vw;
  width: 3.38vw;
  z-index: 2;
}
.indexVision .list li .tag img {
  display: block;
  width: 100%;
}
.indexVision .list li .txt {
  position: absolute;
  left: 4.94vw;
  top: 2.5vw;
  width: 33vw;
}
.indexVision .list li .txt h3 {
  font-size: 1.67vw;
  line-height: 3.125vw;
  font-weight: 500;
  color: #111;
  letter-spacing: 0.15vw;
}
.indexVision .list li .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 500;
  margin-top: 1.875vw;
  text-align: justify;
  letter-spacing: 0.1vw;
}
.indexVision .list li .img-s {
  position: absolute;
  right: 4.94vw;
  top: 20.8vw;
  height: 20.8vw;
}
.indexVision .list li:nth-child(2n) .txt {
  left: inherit;
  right: 4.94vw;
}
.indexVision .list li:nth-child(2n) .img-s {
  right: inherit;
  left: 4.94vw;
}
.indexVision .list li:nth-child(2n) .tag {
  left: inherit;
  right: -1.69vw;
  top: 2vw;
}

.indexVoice {
  position: relative;
  padding: 0 1.3vw;
  box-sizing: border-box;
  overflow: hidden;
}
.indexVoice .indexTitle {
  margin-left: 9.9vw;
  margin-bottom: 5.2vw;
}
.indexVoice .stomers {
  position: absolute;
  width: 38vw;
  top: 5.2vw;
  right: 6.14vw;
  z-index: 2;
}
.indexVoice .list li {
  position: relative;
}
.indexVoice .list li .img {
  float: left;
  position: relative;
  width: 54.5vw;
}
.indexVoice .list li .img img {
  display: block;
  width: 100%;
}
.indexVoice .list li .img::after {
  content: "";
  position: absolute;
  left: 1.59vw;
  top: 1.59vw;
  width: 54.42vw;
  height: 27.6vw;
  background: url(../images/indexVoiceImgbg.png) no-repeat center center;
  background-size: 100% auto;
  z-index: -1;
}
.indexVoice .list li .tag {
  position: absolute;
  right: 2.5vw;
  top: -0.9vw;
  width: 7.4vw;
  height: 3.1vw;
  background: url(../images/tagBg.png) no-repeat center center;
  background-size: 100% auto;
  font-size: 1.04vw;
  line-height: 3.1vw;
  color: #fff;
  text-align: center;
  font-weight: 500;
}
.indexVoice .list li .tag span {
  display: block;
  transform: rotateZ(-7deg);
}
.indexVoice .list li .txt {
  float: right;
  width: 33vw;
  margin-right: 4.94vw;
  margin-top: 1vw;
}
.indexVoice .list li .txt h3 {
  font-size: 1.67vw;
  line-height: 3.125vw;
  font-weight: 500;
  color: #111;
  letter-spacing: 0.15vw;
}
.indexVoice .list li .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 500;
  margin-top: 1.875vw;
  text-align: justify;
  letter-spacing: 0.1vw;
}
.indexVoice .list li .txt div {
  font-size: 0.833vw;
  line-height: 1.875vw;
  margin-top: 1.875vw;
  font-weight: 700;
}
.indexVoice .list li:nth-child(2n) {
  transform: translateY(-5vw);
}
.indexVoice .list li:nth-child(2n) .txt {
  float: left;
  margin-left: 4.94vw;
  margin-right: 0;
  margin-top: 8vw;
}
.indexVoice .list li:nth-child(2n) .img {
  float: right;
}
.indexVoice .list li:nth-child(2n) .img::after {
  left: -1.59vw;
}
.indexVoice .list li:nth-child(2n) .tag {
  right: inherit;
  left: 2.6vw;
  top: 4.5vw;
}
.indexVoice .viewMore {
  margin: 2vw auto 5.2vw;
}

.indexPhilosophy {
  position: relative;
  height: 46vw;
}
.indexPhilosophy .indexTitle {
  padding-top: 10vw;
  text-align: center;
  z-index: 3;
}
.indexPhilosophy .txt {
  position: relative;
  margin-top: 1.875vw;
  z-index: 3;
}
.indexPhilosophy .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 500;
  letter-spacing: 0.1vw;
  text-align: center;
}
.indexPhilosophy .txt .viewMore {
  margin: 6vw auto 0;
}
.indexPhilosophy .leftImg {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 46vw;
  padding-top: 2.65vw;
  background: url(../images/indexPhilosophyBg01.png) no-repeat left top;
  background-size: 50vw auto;
  box-sizing: border-box;
}
.indexPhilosophy .leftImg img {
  display: block;
  width: 48.958%;
  margin-bottom: 1.15vw;
}
.indexPhilosophy .rightImg {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 46vw;
  padding-top: 5.2vw;
  background: url(../images/indexPhilosophyBg02.png) no-repeat right top;
  background-size: 50vw auto;
  box-sizing: border-box;
}
.indexPhilosophy .rightImg img {
  float: right;
  width: 48.958%;
  margin-bottom: 1.15vw;
  margin-left: 10%;
}

.indexContact {
  position: relative;
  width: 67.7vw;
  height: 21.9vw;
  padding-left: 4.94vw;
  margin: 5.05vw auto;
  background: #530000;
  border-radius: 1.04vw;
  box-sizing: border-box;
}
.indexContact .logo-w {
  position: absolute;
  right: 3.4vw;
  top: 3.85vw;
  width: 15.88vw;
  opacity: 0.2;
}
.indexContact .viewMore {
  position: absolute;
  right: 7.55vw;
  top: 11.2vw;
  background-color: #fff;
  color: #111;
}
.indexContact .viewMore::before {
  background-image: url(../images/arr03.png);
}
.indexContact .viewMore::after {
  background-image: url(../images/arr02.png);
}
.indexContact .viewMore:hover {
  background-color: #ebebeb;
  color: #111;
}
.indexContact span {
  display: block;
  padding-top: 2.29vw;
  font-size: 3.125vw;
  line-height: 6.5vw;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.5);
}
.indexContact p {
  font-size: 0.9375vw;
  line-height: 2.08vw;
  font-weight: 300;
  color: #fff;
  letter-spacing: 0.1vw;
}
.indexContact .p01 {
  font-weight: 700;
}
.indexContact h2 {
  font-size: 2.08vw;
  line-height: 3.125vw;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.15vw;
}

.indexFooter {
  position: relative;
  width: 100%;
  height: 32.8vw;
  padding-top: 10.41vw;
  box-sizing: border-box;
}
.indexFooter .bg {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  z-index: -1;
}
.indexFooter .main {
  width: 67.7vw;
  height: 18.02vw;
  margin: 0 auto;
}
.indexFooter .left {
  float: left;
  display: flex;
}
.indexFooter .left .logo {
  width: 5.83vw;
}
.indexFooter .left .logo img {
  display: block;
  width: 100%;
  height: auto;
}
.indexFooter .left .logo:hover {
  opacity: 0.8;
}
.indexFooter .left p {
  margin-left: 4.06vw;
  margin-top: 1.6vw;
  font-size: 0.78vw;
  line-height: 1.56vw;
  font-weight: 500;
}
.indexFooter .left p i {
  font-style: normal;
}
.indexFooter .right {
  float: right;
  margin-top: 1.6vw;
}
.indexFooter .right .menu {
  display: flex;
}
.indexFooter .right .menu a {
  margin-right: 1.67vw;
  font-size: 0.9375vw;
  line-height: 1.56vw;
  font-weight: 700;
  color: #333;
}
.indexFooter .right .menu a:last-child {
  margin-right: 0;
}
.indexFooter .right p {
  font-size: 0.78vw;
  line-height: 1.56vw;
  font-weight: 500;
  letter-spacing: 0.1vw;
}
.indexFooter .copyright {
  font-size: 0.73vw;
  line-height: 2.3vw;
  text-align: center;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 500;
  color: #111;
  letter-spacing: 0.1vw;
}

.subBanner {
  position: relative;
  height: 19.5vw;
  background: url(../images/subBannerBg.jpg) no-repeat center top;
  background-size: 100% 100%;
}
.subBanner h1 {
  padding-left: 6.25vw;
  margin-top: 3vw;
  font-size: 3.125vw;
  line-height: 4.8vw;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.5vw;
}
.subBanner .pageTitle {
  padding-right: 4.68vw;
  font-size: 0.78vw;
  line-height: 3.125vw;
  color: #fff;
  font-weight: 100;
  text-transform: uppercase;
  text-align: right;
}
.subBanner .title-en {
  position: absolute;
  left: 6.25vw;
  bottom: 0;
  font: bold 5.94vw/4.2vw "Barlow Condensed";
  color: #fff;
  text-transform: uppercase;
  opacity: 0.1;
}

.breadcrum {
  padding-left: 6.25vw;
  font-size: 0.78vw;
  line-height: 1.4vw;
  color: #fff;
  font-weight: 300;
  letter-spacing: 0.1vw;
}
.breadcrum a {
  display: inline-block;
  text-decoration: underline;
  color: #fff;
}

.pageIntro {
  width: 48vw;
  padding: 5.6vw;
  margin: 0 auto;
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 700;
  letter-spacing: 0.1vw;
}

.subStory01, .subStory05 {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 5.2vw;
  box-sizing: border-box;
}
.subStory01 .titleBox, .subStory05 .titleBox {
  position: relative;
  width: 100%;
  padding: 0 6.25vw;
  box-sizing: border-box;
}
.subStory01 .titleBox h2, .subStory05 .titleBox h2 {
  font-size: 2.08vw;
  line-height: 3.125vw;
  font-weight: 700;
  color: #111;
}
.subStory01 .titleBox p, .subStory05 .titleBox p {
  margin-bottom: 1.4vw;
  font: 300 2.08vw/1.77vw "Barlow Condensed";
  text-transform: uppercase;
}
.subStory01 .titleBox p span, .subStory05 .titleBox p span {
  font-weight: 700;
  color: #006900;
}
.subStory01 .titleBox .title-en, .subStory05 .titleBox .title-en {
  position: absolute;
  right: 6.25vw;
  top: 3.125vw;
  font: bold 5.94vw/6.25vw "Barlow Condensed";
  color: #e8e8e8;
  text-transform: uppercase;
}
.subStory01 .img, .subStory05 .img {
  width: 49.48%;
  margin-left: 6.25%;
  margin-top: 4.48vw;
}
.subStory01 .img img, .subStory05 .img img {
  display: block;
  width: 100%;
}
.subStory01 .txt, .subStory05 .txt {
  width: 33.07%;
  margin-left: 4.95%;
  margin-top: 3.8vw;
}
.subStory01 .txt h3, .subStory05 .txt h3 {
  margin-bottom: 1.875vw;
  font-size: 1.67vw;
  line-height: 3.125vw;
  font-weight: 500;
  color: #111;
  text-transform: uppercase;
  letter-spacing: 0.15vw;
}
.subStory01 .txt p, .subStory05 .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.15vw;
}
.subStory01 .txt p span, .subStory05 .txt p span {
  font-weight: 700;
}

.subStory02 {
  position: relative;
  padding: 10.3vw 4.68vw 3.2vw 19.53vw;
  background-color: #006900;
  box-sizing: border-box;
}
.subStory02 h2 {
  position: absolute;
  left: 9.6vw;
  top: 5.2vw;
  font-size: 3.125vw;
  line-height: 4.16vw;
  font-weight: 700;
  letter-spacing: 0.15vw;
  color: #fff;
  writing-mode: vertical-rl;
}
.subStory02 h2 i {
  display: inline-block;
  height: 4.16vw;
  margin-top: -0.8vw;
  transform: rotateZ(-90deg);
  font-style: normal;
  text-align: center;
}
.subStory02 .text-en {
  position: absolute;
  left: 6.25vw;
  top: 5.2vw;
  font: 700 2.08vw/1.77vw "Barlow Condensed";
  color: #003d00;
  text-transform: uppercase;
  writing-mode: vertical-lr;
}
.subStory02 .title-en {
  position: absolute;
  right: 4.68vw;
  top: 5.2vw;
  font: bold 4.16vw/4.16vw "Barlow Condensed";
  color: #005d00;
  text-transform: uppercase;
  text-align: right;
}
.subStory02 .img {
  width: 100%;
}
.subStory02 .img img {
  float: left;
  width: 47.76%;
}
.subStory02 .img img:nth-child(2) {
  margin-left: 4.48%;
  margin-top: 5.2vw;
}
.subStory02 .img p {
  float: left;
  margin: -3vw 0 0 1.56vw;
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.1vw;
  color: #fff;
}
.subStory02 .txt {
  position: relative;
  margin-top: 5.2vw;
}
.subStory02 .txt h3 {
  width: 36.2vw;
  font-size: 1.67vw;
  line-height: 3.125vw;
  font-weight: 500;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.15vw;
}
.subStory02 .txt p {
  width: 36.2vw;
  margin-bottom: 1.975vw;
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.1vw;
  color: #fff;
}
.subStory02 .txt p:last-child {
  position: absolute;
  right: 1.56vw;
  bottom: 10vw;
  width: 33vw;
}

.subStory03, .subStory04 {
  padding: 0 6.25%;
  box-sizing: border-box;
}
.subStory03 h2, .subStory04 h2 {
  position: relative;
  font-size: 2.08vw;
  line-height: 12.4vw;
  font-weight: 700;
  text-align: center;
  color: #111;
  letter-spacing: 0.15vw;
  z-index: 2;
}
.subStory03 .title-en, .subStory04 .title-en {
  display: block;
  margin-top: -10.4vw;
  font: bold 5.94vw/10.4vw "Barlow Condensed";
  color: #e8e8e8;
  text-transform: uppercase;
  text-align: center;
}
.subStory03 > p, .subStory04 > p {
  width: 48vw;
  margin: 0 auto 2vw;
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 700;
  letter-spacing: 0.15vw;
}
.subStory03 .list, .subStory04 .list {
  display: flex;
  width: 100%;
}
.subStory03 .list li, .subStory04 .list li {
  width: 32.14%;
}
.subStory03 .list li .img img, .subStory04 .list li .img img {
  display: block;
  width: 100%;
}
.subStory03 .list li .txt, .subStory04 .list li .txt {
  padding: 1.14vw 1.875vw 0;
}
.subStory03 .list li .txt h3, .subStory04 .list li .txt h3 {
  font-size: 1.67vw;
  line-height: 3.125vw;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.15vw;
}
.subStory03 .list li .txt p, .subStory04 .list li .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.1vw;
}
.subStory03 .list li .txt p span, .subStory04 .list li .txt p span {
  font-weight: 700;
}
.subStory03 .list li:nth-child(3n+2), .subStory04 .list li:nth-child(3n+2) {
  margin-left: 1.79%;
  margin-right: 1.79%;
}
.subStory03 .stepList, .subStory04 .stepList {
  display: flex;
  width: 80.73vw;
  margin: 0 auto 9.8vw;
}
.subStory03 .stepList li, .subStory04 .stepList li {
  width: 22.58%;
  margin-left: 1.93%;
}
.subStory03 .stepList li .img img, .subStory04 .stepList li .img img {
  display: block;
  height: 5.2vw;
  margin: 0 auto 1vw;
}
.subStory03 .stepList li .txt, .subStory04 .stepList li .txt {
  text-align: center;
}
.subStory03 .stepList li .txt h3, .subStory04 .stepList li .txt h3 {
  font-size: 1.45vw;
  line-height: 3.33vw;
  font-weight: 500;
  letter-spacing: 0.15vw;
}
.subStory03 .stepList li .txt p, .subStory04 .stepList li .txt p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.1vw;
}

.subAbout02 .txt {
  margin-top: 0;
}

.subAbout02 .txt h3:nth-of-type(1) {
  margin-bottom: 1vw;
}

.subAbout02 .txt p:last-child {
  bottom: 15vw;
}

.subAbout03 .list {
  width: 80.73vw;
  margin: 0 auto 5vw;
}
.subAbout03 .list li {
  width: 47.09%;
  margin-left: 1.94%;
  margin-right: 0;
}

.subAbout04 h2 {
  line-height: 13.32vw;
}
.subAbout04 .title-en {
  line-height: 6.66vw;
  margin-top: -13.5vw;
  margin-bottom: 2vw;
}
.subAbout04 .stepList {
  display: flex;
  width: 100%;
  margin-top: 4vw;
}
.subAbout04 .stepList li {
  width: 32.14%;
}
.subAbout04 .stepList li h3 {
  text-transform: uppercase;
  letter-spacing: 0.15vw;
}

.subNews .titleBox {
  position: relative;
  width: 100%;
  padding: 0 6.25vw;
  box-sizing: border-box;
}
.subNews .titleBox p {
  margin-bottom: 1vw;
  font: 300 2.08vw/1.77vw "Barlow Condensed";
  text-transform: uppercase;
}
.subNews .titleBox p span {
  font-weight: 700;
  color: #006900;
}
.subNews .titleBox .title-en {
  display: block;
  margin-bottom: 0.5vw;
  font: bold 5.94vw/6.25vw "Barlow Condensed";
  color: #e8e8e8;
  text-align: right;
  text-transform: uppercase;
}
.subNews .newsList {
  display: flex;
  flex-wrap: wrap;
  width: 80.83vw;
  margin: 0 auto;
}
.subNews .newsList li {
  width: 22.58%;
  margin-left: 1.93%;
  margin-bottom: 3.85vw;
}
.subNews .newsList li a {
  display: block;
  width: 100%;
}
.subNews .newsList li .img {
  width: 100%;
  aspect-ratio: 7/4;
  object-fit: cover;
  overflow: hidden;
}
.subNews .newsList li .img img {
  display: block;
  width: 100%;
  height: auto;
  transition: all 0.5s;
}
.subNews .newsList li time {
  display: block;
  margin-top: 0.62vw;
  font-size: 0.65vw;
  line-height: 1.45vw;
  font-weight: 700;
  color: #333;
}
.subNews .newsList li h3 {
  font-size: 0.833vw;
  line-height: 1.67vw;
  font-weight: 700;
  text-align: justify;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.subNews .newsList li:hover img {
  transform: scale(1.08);
}

.voicePage .indexContact {
  display: none;
}

.pageNav {
  width: 77.6vw;
  margin: 0 auto;
  border-top: 0.18vw solid #000;
  font-size: 1.04vw;
  line-height: 2.5vw;
  font-weight: 500;
  color: #000;
}
.pageNav .pageNum {
  float: left;
  display: flex;
}
.pageNav .pageNum a {
  padding: 0 0.6vw;
}
.pageNav .pageNum .active {
  color: #c9c9c9;
}
.pageNav .pageBtn {
  float: right;
  display: flex;
  border-bottom: 1px solid #ddd;
}
.pageNav .pageBtn a {
  position: relative;
  color: #c9c9c9;
}
.pageNav .pageBtn .prev::before {
  content: "";
  position: absolute;
  right: -80%;
  bottom: -1px;
  width: 0;
  height: 1px;
  background-color: #000;
  transition: all 0.5s;
}
.pageNav .pageBtn .prev:hover {
  color: #000;
}
.pageNav .pageBtn .prev:hover::before {
  width: 180%;
}
.pageNav .pageBtn .next::before {
  content: "";
  position: absolute;
  left: -80%;
  bottom: -1px;
  width: 0;
  height: 1px;
  background-color: #000;
  transition: all 0.5s;
}
.pageNav .pageBtn .next:hover {
  color: #000;
}
.pageNav .pageBtn .next:hover::before {
  width: 180%;
}

.subSystem {
  width: 48vw;
  margin: -3vw auto 0;
}
.subSystem h2 {
  font-size: 2.08vw;
  line-height: 7.3vw;
  color: #006900;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
}
.subSystem .title-en {
  font-family: "Barlow Condensed";
}
.subSystem .list {
  border-bottom: 1px solid #c7c7c7;
  margin-bottom: 3vw;
}
.subSystem .list li {
  position: relative;
  padding: 1.35vw 10vw 1.35vw 0;
  border-top: 1px solid #c7c7c7;
}
.subSystem h4 {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 700;
}
.subSystem p {
  font-size: 0.833vw;
  line-height: 1.25vw;
  font-weight: 400;
  color: #666;
}
.subSystem .tag {
  display: flex;
  margin-bottom: 0.5vw;
}
.subSystem .tag span {
  padding: 0 1.25vw;
  margin-right: 1.2vw;
  background-color: #006900;
  border-radius: 0.26vw;
  font-size: 0.73vw;
  line-height: 1.25vw;
  color: #fff;
  font-weight: 700;
}
.subSystem .price {
  position: absolute;
  right: 0;
  top: 50%;
  width: 9vw;
  margin-top: -1vw;
  font-size: 1.61vw;
  line-height: 2vw;
  font-weight: 700;
}

.subSystem02 h2 {
  width: 48vw;
  margin: 0 auto;
  font-size: 2.08vw;
  line-height: 7.3vw;
  color: #006900;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
}
.subSystem02 .info {
  width: 48vw;
  margin: 0 auto 1.25vw;
}
.subSystem02 p {
  font-size: 0.833vw;
  line-height: 1.25vw;
  font-weight: 400;
  letter-spacing: 0.15vw;
}
.subSystem02 p span {
  font-weight: 700;
}
.subSystem02 img {
  display: block;
  width: 100%;
}

.news-article {
  width: 58vw;
  margin: 7vw auto;
}
.news-article .article-meta {
  display: flex;
  margin-bottom: 0.5vw;
}
.news-article .article-meta .tag {
  padding: 0 1.67vw;
  margin-right: 1vw;
  background-color: #006900;
  font: 500 1.56vw/2.76vw "Barlow Condensed";
  color: #fff;
}
.news-article .article-meta time {
  font-size: 0.9375vw;
  line-height: 2.76vw;
  font-weight: 700;
  color: #333;
}
.news-article h1 {
  font-size: 3.125vw;
  line-height: 4.68vw;
  font-weight: 700;
  letter-spacing: 0.15vw;
}
.news-article .breadcrum {
  padding: 2vw 0;
  margin-bottom: 0.5vw;
  color: #333;
  font-weight: 500;
}
.news-article .breadcrum a {
  color: #333;
}
.news-article .newImg01 {
  display: block;
  width: 100%;
  margin-bottom: 1.875vw;
}
.news-article .article-text {
  text-transform: uppercase;
}
.news-article .article-text p {
  font-size: 0.9375vw;
  line-height: 1.875vw;
  font-weight: 400;
  color: #666;
  margin-bottom: 1.875vw;
  letter-spacing: 0.1vw;
}
.news-article .article-text h3 {
  font-size: 1.25vw;
  line-height: 1.875vw;
  font-weight: 700;
  color: #333;
  margin-bottom: 1.875vw;
  letter-spacing: 0.15vw;
}
.news-article .article-text img {
  display: block;
  width: 48vw;
  margin: 4vw auto;
}
.news-article .article-text a {
  color: #006900;
  font-weight: 700;
}

.articlePage .pageNav {
  padding-bottom: 2vw;
}/*# sourceMappingURL=index-pc.css.map */