﻿a {
  color: #e60012;
}
body {
  color: #231815;
  font-family:'Microsoft YaHei';
}
.customAni {
  transition: all 400ms ease-out;
}
#leftSide {
  width: 300px;
  height: 100%;
  position: fixed;
  left: 60px;
  top: 0;
  font-family: DIN;
  min-height: 900px;
}
#leftSide .leftHeader {
  width: 300px;
  height: 150px;
  display: flex;
  padding-top: 50px;
}
#leftSide .leftHeader .logo {
  display: block;
  width: 216px;
  height: 120px;
  overflow: hidden;
  margin-right: 49px;
}
#leftSide .leftHeader .logo img {
  width: 216px;
  /*position: relative;*/
  /*top: -10px;
  /*left: -10px;*/
}
#leftSide .leftHeader .logo2 {
  display: none;
}
#leftSide .leftHeader .language {
  display: flex;
}
#leftSide .leftHeader .language li {
  width: 22px;
  height: 22px;
  line-height: 24px;
  text-align: center;
  font-size: 10px;
  color: #909091;
  cursor: pointer;
  margin-right: 4px;
  transition: all 400ms ease-out;
  transform: scale(0.8);
  margin-top: -2px;
}
#leftSide .leftHeader .language li a {
  display: block;
  width: 24px;
  height: 24px;
  text-align: center;
  line-height: 24px;
}
#leftSide .leftHeader .language li:hover,
#leftSide .leftHeader .language li.current {
  color: #FFF;
  background-color: #e60012;
}
#leftSide .leftHeader .language li:hover a,
#leftSide .leftHeader .language li.current a {
  color: #FFF;
  background-color: #e60012;
}
#leftSide .leftHeader .language li.jp {
  display: none;
}
#rightSide {
  margin-left: 360px;
  margin-top: 50px;
  padding-bottom: 30px;
  animation: fadeInBottom 1s ease 1 0s;
  min-width: 800px;
}
@keyframes fadeInBottom {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.menu {
  font-size: 14px;
  line-height: 18px;
}
.menu li {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.menu li dl {
  width: 105px;
  margin-right: 84px;
}
.menu li a {
  color: #231815;
  padding: 6px 5px 2px 5px;
  display: block;
  margin-bottom: 2px;
  transition: all 400ms ease-out;
}
.menu li a.menuWorks {
  height: 50px;
  width: 50px;
}
.menu li a:hover,
.menu li a.current {
  color: #FFF;
  background-color: #e60012;
}
.menu li p a:hover,
.menu li p a.current {
  text-align: center;
}
.leftFooter {
  font-size: 10px;
  color: #231815;
  position: absolute;
  bottom: 60px;
  line-height: 20px;
  left: 5px;
}
.homeList {
  min-width: 600px;
}
.homeList li {
  position: relative;
  margin-bottom: 15px;
  float: left;
  margin-right: 15px;
}
.homeList li img {
  display: block;
}
.homeList li a {
  position: absolute;
  background-color: #e60012;
  color: #FFF;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: all 400ms ease-out;
  font-family: DIN;
  font-size: 20px;
}
.homeList li a .pName {
  position: absolute;
  top: 20px;
  left: 20px;
  transition: all 400ms ease-out;
  max-width: 210px;
  line-height: 1.4em;
}
.homeList li a .pClass {
  position: absolute;
  transform: rotate(90deg);
  right: -85px;
  top: 20px;
  transform-origin: left top;
  transition: all 400ms ease-out;
  min-width: 105px;
}
.homeList li a .pYear {
  position: absolute;
  left: 20px;
  bottom: 0;
  transform: rotate(-90deg);
  transform-origin: left top;
  transition: all 400ms ease-out;
}
.homeList li.active a {
  opacity: .9;
}
.homeList li.insertItem {
  width: 180px;
  height: 380px;
  overflow: hidden;
  background-color: #e60012;
}
#infscr-loading {
  font-family: DIN;
  bottom: 40px;
  color: #e60012;
  left: 50%;
  opacity: 0.5;
  padding: 10px;
  position: fixed;
  text-align: center;
  width: 300px;
  z-index: 100;
  font-weight: bold;
  font-size: 23px;
  margin-left: -150px;
}
.yearFilter {
  position: relative;
  margin-bottom: 15px;
  width: 200px;
}
.yearFilter #yearFilterBox {
  border: 1px solid #333;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: DIN;
}
.yearFilter #yearFilterBox i {
  font-size: 20px;
}
.yearFilter .yearList {
  opacity: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0;
  font-family: DINB;
}
.yearTitle {
  font-size: 36px;
  font-family: DINB;
  position: relative;
  z-index: 20;
}
#page-nav {
  display: none;
}
.contactContent {
  font-family: "Montserrat", sans-serif;
  letter-spacing: 2px;
}
.contactContent h1 {
  font-size: 36px;
  line-height: 36px;
  height: 145px;
}
.contactContent .contactMap {
  width: 1000px;
  overflow: hidden;
  height: 640px;
  background-color: #eee;
  margin-bottom: 40px;
  position: relative;
}
.contactContent .contactItem {
  max-width: 1000px;
  font-size: 18px;
  margin-bottom: 40px;
}
.contactContent .contactItem table td {
  padding: 5px 15px 5px 0;
  vertical-align: top;
  font-weight: bold;
}
.contactContent .contactItem table td:last-child {
  font-weight: normal;
}
.contactContent .contactItem table td i {
  color: #e60012;
  margin-right: 15px;
  font-weight: normal;
}
.contactContent .contactItem table td em {
  color: #e60012;
  margin-right: 15px;
  font-weight: normal;
}
.contactContent .contactItem table td i + span {
  font-family: DIN;
}
.contactContent .contactItem table td a {
  color: #231815;
  transition: all 400ms ease-out;
}
.contactContent .contactItem table td a:hover {
  color: #e60012;
}
.contactContent .contactNotice {
  font-size: 16px;
  line-height: 1.88em;
  max-width: 970px;
}
.pressYear {
  position: absolute;
  margin-top: -90px;
}
.pressYear a {
  margin-right: 20px;
  color: #000;
}
.pressYear a.current {
  text-decoration: none;
  color: #e60012;
}
.pressYearNum {
  border-bottom: 1px solid #000;
  padding-bottom: 8px;
  margin-bottom: 15px;
}
.pressList {
  max-width: 500px;
}
.pressList li {
  width: 500px;
  margin-bottom: 20px;
}
.pressList li .pressTitle {
  font-family: DINB;
  font-size: 20px;
  left: 1.27em;
}
.pressList li .pressLink {
  color: #e60012;
  padding: 10px 0;
}
.pressList li .pressLink a {
  font-size: 14px;
  text-decoration: underline;
  transition: all 400ms ease-out;
}
.pressList li .pressLink a:hover {
  background-color: #e60012;
  color: #FFF;
}
.pressList li .pressImg {
  width: 500px;
  overflow: hidden;
  padding-top: 10px;
}
.pressList li .pressImg a {
  display: none;
}
.pressList li .pressImg a:nth-child(1) {
  display: block;
}
.newsList {
  max-width: 500px;
}
.newsList li {
  width: 100%;
  margin-bottom: 20px;
  border-bottom: 1px solid #000;
  padding-bottom: 20px;
}
.newsList li .newsHeader h3 {
  font-size: 20px;
  font-family: DIN;
}
.newsList li .newsHeader .newsDate {
  line-height: 16px;
  padding: 5px 0;
  height: 30px;
}
.newsList li .newsHeader .newsDate i {
  color: #e60012;
  margin-right: 5px;
}
.newsList li .newsHeader .newsDate span {
  font-size: 12px;
  position: relative;
  top: -1px;
}
.newsList li .newsContent {
  display: flex;
  flex-wrap: wrap;
}
.newsList li .newsContent .newsListLeft {
  width: 500px;
  overflow: hidden;
  margin: 0 0 10px 0;
}
.newsList li .newsContent .newsListRight {
  width: 500px;
  line-height: 1.65em;
  box-sizing: border-box;
  letter-spacing: 2px;
}
.officeContent {
  width: 1000px;
  overflow: hidden;
  line-height: 1.5em;
  letter-spacing: 2px;
}
.officeContent img {
  width:100%;
}
.officeContent .officeBanner {
  margin-bottom: 10px;
}
.officeContent p {
  padding: 0 0 20px 0;
}
.officeContent .officeList {
  margin: 20px 0;
}
.officeContent .officeList li:first-child {
  vertical-align: top;
  font-size: 16px;
  float: left;
  width: 300px;
}
.officeContent .officeList li:first-child img {
  width: 100%;
}
.officeContent .officeList li:last-child {
  float: left;
  width: 700px;
}
.officeContent .officeList li:last-child .officeInfo {
  padding-left: 60px;
  padding-bottom: 40px;
}
.officeContent .officeList li:last-child .officeInfo h2 {
  font-family: DINB;
  font-size: 24px;
  margin-bottom: 15px;
}
.officeContent .officeList li:last-child .officeInfo p {
  padding: 0;
}
.en .projectsContent .pcIntro {
  letter-spacing: 1px;
}
.en .newsList li .newsContent .newsListRight {
  letter-spacing: 1px;
}
.en .contactContent {
  letter-spacing: 1px;
}
.en .officeContent {
  letter-spacing: 1px;
}
.projectsContent {
  font-family: "Montserrat", sans-serif;
  min-width: 440px;
}
.projectsContent .projectCover {
  max-width: 1000px;
  font-size: 16px;
  position: relative;
  margin-bottom: 15px;
  line-height: 1.65em;
  letter-spacing: 2px;
}
.projectsContent .projectCover img {
  display: block;
  max-width: 100%;
}
.projectsContent .projectCover p {
  padding-bottom: 10px;
}
.projectsContent .projectCover p:last-child {
  padding-bottom: 0;
}
.projectsContent .pcHeader {
  display: flex;
  align-items: flex-end;
  margin-bottom: 40px;
}
.projectsContent .pcHeader h1 {
  font-size: 36px;
  line-height: 36px;
}
.projectsContent .pcHeader span {
  font-size: 14px;
  color: #595757;
  transition: all 400ms ease-out;
  line-height: 18px;
}
.projectsContent .pcHeader span i {
  color: #e60012;
  margin-right: 5px;
}
.projectsContent .pcIntro {
  max-width: 1000px;
  font-size: 16px;
  position: relative;
  margin-bottom: 15px;
  line-height: 1.65em;
  letter-spacing: 2px;
}
.projectsContent .pcIntro .pcIntroBtn {
  position: absolute;
  left: 0;
  top: 0;
  display: none;
}
.projectsContent .pcIntro .pcIntroBtn i {
  font-size: 30px;
  color: #818181;
  cursor: pointer;
}
.projectsContent .pcIntro .pcIntroBtn i:hover {
  color: #e60012;
}
.projectsContent .pcIntro p {
  padding-bottom: 1.25em;
}
.projectsContent .smallimg {
  max-width: 1000px;
  font-size: 16px;
  position: relative;
  margin-bottom: 15px;
  line-height: 1.65em;
  letter-spacing: 2px;
}
.projectsContent .pcImages {
  width: 100%;
}
.projectsContent .pcImages .pcImagesList {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.projectsContent .pcImages .pcImagesList p {
  overflow: hidden;
  margin: 0 20px 20px 0;
}
.projectsContent .pcImages .pcImagesList p img {
  display: block;
  max-width: 100%;
}
.projectsContent .pcInfo {
  background-color: #f6f6f6;
  padding: 20px;
  max-width: 960px;
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: .9em;
}
.projectsContent .pcInfo table td {
  padding: 5px 15px;
}
.projectsContent .pcInfo table td:nth-child(1) {
  font-family: DIN;
  white-space: nowrap;
  vertical-align: top;
}
.projectsContent .pcPage {
  display: flex;
  padding-bottom: 20px;
}
.projectsContent .pcPage a {
  color: #727171;
  margin: 0 40px 0 0;
  transition: all 400ms ease-out;
}
.projectsContent .pcPage span.c9 {
	margin-right: 40px;
}
.projectsContent .pcPage a:hover {
  color: #e60012;
}
.contentH1 {
  font-size: 36px;
  line-height: 36px;
}
@font-face {
  font-family: DIN;
  src: url('../font/DIN Medium.ttf') format("TrueType");
}
@font-face {
  font-family: DINB;
  src: url('../font/DIN Bold.ttf') format("TrueType");
}
@font-face {
  font-family: DINR;
  src: url('../font/DINPro-Regular.otf') format("TrueType");
}
@font-face {
  font-family: Quicksand_Book;
  src: url('../font/Quicksand_Book.otf') format("TrueType");
}
@font-face {
  font-family: MINI-SERIF-REGULAR;
  src: url('../font/MINISerifBold.otf') format("TrueType");
}
@media screen and (max-width: 500px) {
  #leftSide {
    background-color: rgba(248, 249, 249, 0.9);
    width: 100%;
    left: 0;
    z-index: 99;
    min-height: inherit;
    height: 60px;
    overflow: hidden;
  }
  #leftSide .leftHeader {
    padding: 0;
    width: 100%;
    position: relative;
    height: 60px;
  }
  #leftSide .leftHeader .logo {
    display: none;
  }
  #leftSide .leftHeader .logo2 {
    display: block;
    width: 115px;
    height: 55px;
    overflow: hidden;
    top: 18px;
    left: 22px;
    position: absolute;
    background: url(../images/logo.gif) no-repeat;
    background-size: contain;
  }
  #leftSide .leftHeader .logo2:after {
    content: '';
    position: absolute;
    background: url(../images-logo-right.gif) no-repeat;
    display: block;
    width: 50px;
    height: 55px;
    right: 0;
    background-size: contain;
    top: 2px;
  }
  #leftSide .leftHeader .menuBtn {
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    overflow: hidden;
    top: 22px;
    right: 22px;
    transition: all 400ms ease-out;
  }
  #leftSide .leftHeader .menuBtn i {
    display: block;
    width: 24px;
    height: 2px;
    background-color: #e60012;
    position: absolute;
    transition: all 400ms ease-out;
  }
  #leftSide .leftHeader .menuBtn i:nth-child(1) {
    top: 0;
    transform-origin: left bottom;
  }
  #leftSide .leftHeader .menuBtn i:nth-child(2) {
    top: 8px;
  }
  #leftSide .leftHeader .menuBtn i:nth-child(3) {
    top: 16px;
    transform-origin: left top;
  }
  #leftSide .leftHeader .language {
    position: absolute;
    top: 125px;
    right: 22px;
    display: none;
  }
  #leftSide .leftHeader .language li {
    margin: 0 0 10px 0;
    font-size: 14px;
    padding: 2px;
  }
  #leftSide.active {
    height: 100vh;
  }
  #leftSide.active .menuBtn i:nth-child(1) {
    transform: rotate(45deg);
    top: 0;
  }
  #leftSide.active .menuBtn i:nth-child(2) {
    opacity: 0;
    height: 0;
  }
  #leftSide.active .menuBtn i:nth-child(3) {
    transform: rotate(-45deg);
    top: 17px;
  }
  #leftSide.active .language {
    display: block;
  }
  #leftSide.active .menu {
    display: block;
  }
  #leftSide.active .leftFooter {
    display: block;
  }
  .menu {
    font-size: 14px;
    position: absolute;
    left: 15px;
    top: 125px;
    display: none;
    width: 167px;
  }
  .menu li dl {
    margin-right: 0;
    width: 100px;
  }
  .menu li a.menuWorks {
    height: 51px;
  }
  .leftFooter {
    font-size: 12px;
    bottom: 22px;
    right: 22px;
    display: none;
    left: initial;
  }
  #rightSide {
    margin-left: 0;
    margin-top: 65px;
    padding: 15px;
    min-width: inherit;
  }
  #rightSide .homeList {
    min-width: 100%;
    position: relative;
    background: none;
  }
  #rightSide .homeList li {
    margin: 0;
    margin-bottom: 15px;
    border: none;
    width: 100%;
  }
  #rightSide .homeList li img {
    width: 100%;
  }
  #rightSide .homeList li.years {
    height: 15px;
    line-height: 15px;
    margin: 0;
    margin-top: -15px;
  }
  #rightSide .homeList li.years:first-child {
    margin-top: -15px;
  }
  #rightSide .pcIntro {
    font-size: 0.9em;
  }
  #rightSide .projectCover img {
    width: 100%;
  }
  #rightSide .pcImages img {
    width: 100%;
  }
  .yearFilter {
    width: 100%;
    margin-bottom: 30px;
  }
  .contactContent h1 {
    display: none;
  }
  .contactContent .contactMap {
    width: 100%;
    height: 380px;
  }
  .newsList li {
    margin-bottom: 20px;
  }
  .newsList li .newsContent .newsListLeft {
    width: 500px;
    overflow: hidden;
    margin: 0 0 10px 0;
  }
  .newsList li .newsContent .newsListLeft img {
    width: 100%;
  }
  .officeContent {
    width: 100%;
  }
  .officeContent .officeBanner img {
    width: 100%;
  }
  .officeContent .officeList dt {
    width: 100%;
    float: none;
    margin-bottom: 10px;
  }
  .officeContent .officeList dt img {
    width: 100%;
  }
  .officeContent .officeList dd {
    width: 100%;
    float: none;
  }
  .officeContent .officeList dd .officeInfo {
    padding-left: 0;
  }
  .projectsContent {
    min-width: inherit;
  }
  .projectsContent .pcHeader {
    display: block;
  }
  .projectsContent .pcHeader h1 {
    margin-bottom: 10px;
  }
  .projectsContent .pcHeader span {
    margin-left: 0;
    margin-right: 5px;
  }
  .projectsContent .pcImages .pcImagesList {
    margin-right: 0;
  }
  .projectsContent .pcImages .pcImagesList p {
    margin-right: 0;
  }
  .projectsContent .pcImages .pcImagesList img {
    width: 100%;
  }
  .projectsContent .pcInfo {
    padding: 10px;
  }
  .projectsContent .pcInfo > p {
    display: none;
  }
  .projectsContent .pcInfo table td {
    padding: 5px;
  }
  .pressYear {
    position: relative;
    margin-top: 0;
    margin-bottom: 20px;
  }
  .pressList li {
    width: 100%;
  }
  .pressList li .pressImg {
    width: 100%;
    height: auto;
  }
  .pressList li .pressImg a {
    display: block;
  }
  .pressList li img {
    width: 100%;
  }
}
/*分页*/
.list_page {
	text-align: center;
	padding: 0 0 15px 0;
	display: block;
}
.list_page:after {
	content: " ";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	overflow: hidden;
}
.list_page ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-block;
	vertical-align: bottom;
}
.list_page ul li {
	display: inline-block;
	border: solid 1px #ddd;
	border-radius: 4px;
}
.list_page ul a {
	color: #333;
	padding: 8px 12px;
	line-height: 18px;
	display: block;
	transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1) 0s;
	background: #fff;
}
.page_group ul {
	border-right: solid 1px #ddd;
	border-radius: 4px;
}
.page_group ul li {
	border-right: none;
	border-radius: 0;
	float: left;
}
.page_group ul li:not(:first-child):not(:last-child) {
	border-radius: 0;
}
.page_group ul li:first-child {
	border-radius: 4px 0 0 4px;
}
.page_group ul li:last-child {
	border-radius: 0 4px 4px 0;
}
.page_group ul .active a {
	background: #f3f3f3;
	border-radius: 0;
}