@charset "UTF-8";
/*
@mixin font-en{
  font-family: 'Montserrat',sans-serif;
  font-weight: 400;
} */
/* @mixin font($size:10px,$line:$size) {
    font-size: $size/$root-font-size+rem;
    line-height: $line/$size;
} */
@media all and (max-width: 768px) {
  .pc {
    display: none !important; } }

@media all and (min-width: 768px) {
  .sp {
    display: none !important; } }

@-webkit-keyframes arrow-line {
  0% {
    height: 0px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  20% {
    height: 52px; }
  25% {
    height: 52px;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  100% {
    height: 52px;
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes arrow-line {
  0% {
    height: 0px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  20% {
    height: 52px; }
  25% {
    height: 52px;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  100% {
    height: 52px;
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@-webkit-keyframes arrow-side {
  0% {
    height: 0px; }
  15% {
    height: 0px; }
  25% {
    height: 10px; }
  100% {
    height: 10px; } }

@keyframes arrow-side {
  0% {
    height: 0px; }
  15% {
    height: 0px; }
  25% {
    height: 10px; }
  100% {
    height: 10px; } }

@-webkit-keyframes arrow-line-d {
  0% {
    height: 0px;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  20% {
    height: 52px; }
  25% {
    height: 52px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  100% {
    height: 52px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@keyframes arrow-line-d {
  0% {
    height: 0px;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  20% {
    height: 52px; }
  25% {
    height: 52px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); }
  100% {
    height: 52px;
    -webkit-transform: translateY(6px);
    transform: translateY(6px); } }

@-webkit-keyframes arrow-side-d {
  0% {
    height: 0px;
    bottom: 15px; }
  15% {
    height: 0px;
    bottom: 15px; }
  25% {
    height: 10px;
    bottom: 8px; }
  100% {
    height: 10px;
    bottom: 8px; } }

@keyframes arrow-side-d {
  0% {
    height: 0px;
    bottom: 15px; }
  15% {
    height: 0px;
    bottom: 15px; }
  25% {
    height: 10px;
    bottom: 8px; }
  100% {
    height: 10px;
    bottom: 8px; } }

@-webkit-keyframes page-opacity {
  0% {
    opacity: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); }
  100% {
    opacity: 1;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); } }

@keyframes page-opacity {
  0% {
    opacity: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); }
  100% {
    opacity: 1;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); } }

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size:100%;
  /* font: inherit; */
  font-family: "Helvetica", "Tahoma", "Arial", "Microsoft YaHei", "Heiti SC";
  vertical-align: baseline;}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
    position: relative;
    width: 100%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-size: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    font-weight: 100;
    line-height: 1.2;
    vertical-align: top;
    background-color: #fff;
    color: #3c3c3c;
    font-weight: 400; }
    *,
    *:after,
    *:before {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box; }

a {
      text-decoration: none;
      color: #000; }

a {
      -webkit-transition: all 0.4s linear 0s;
      -moz-transition: all 0.4s linear 0s;
      -ms-transition: all 0.4s linear 0s;
      -o-transition: all 0.4s linear 0s;
      transition: all 0.4s linear 0s; }
.main-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 73px;
  background-color: rgba(255,255,255,0.8);;
  border-bottom: 1px rgba(111, 180, 45, 1) solid;
  z-index: 5;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s; }
  .main-header.index-header {
    border-bottom: 1px rgba(111, 180, 45, 1) solid; }
  .main-header.state-scroll {
    height: 65px; }
    @media all and (max-width: 768px) {
      .main-header.state-scroll {
        height: 48px; } }
    .main-header.state-scroll .main-header-logo {
      top: 10px;
      width: 86px;
      height: 41px; }
      @media all and (max-width: 768px) {
        .main-header.state-scroll .main-header-logo {
          top: 10px;
          left: 40px;
          width: 53px;
          height: 25px; } }
    .main-header.state-scroll .main-header-logoJp {
      top: 24px;
      }
      @media all and (max-width: 768px) {
        .main-header.state-scroll .main-header-logoJp {
          top: 17px; } }
    .main-header.state-scroll .main-header-entry a {
      width: 167px;
      height: 47px;
      line-height: 46px; }
      @media all and (max-width: 768px) {
        .main-header.state-scroll .main-header-entry a {
          width: 93px;
          height: 29px;
          font-size: 10px;
          line-height: 29px; } }
  .main-header .nomal {
    opacity: 1;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity);
    -webkit-transition: all 0.3s linear 0s;
    -moz-transition: all 0.3s linear 0s;
    -ms-transition: all 0.3s linear 0s;
    -o-transition: all 0.3s linear 0s;
    transition: all 0.3s linear 0s; }
  .main-header .active {
    opacity: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity);
    -webkit-transition: all 0.3s linear 0s;
    -moz-transition: all 0.3s linear 0s;
    -ms-transition: all 0.3s linear 0s;
    -o-transition: all 0.3s linear 0s;
    transition: all 0.3s linear 0s; }
  /* .main-header.index-header {
    background:none; } */
    .main-header.index-header.open {
      background-color: #fff; }
  @media all and (max-width: 768px) {
    .main-header {
      height: 48px;
      border-bottom: 1px #e4e4e4 solid; } }
  .main-header .main-header-menuBtn {
    display: none; }
    @media all and (max-width: 768px) {
      .main-header .main-header-menuBtn {
        position: absolute;
        display: block;
        top: 15px;
        left: 12px;
        width: 19px;
        height: 17px; }
        .main-header .main-header-menuBtn a {
          display: block;
          width: 19px;
          height: 17px; }
        .main-header .main-header-menuBtn img {
          position: absolute;
          top: 0;
          left: 0; } }
  .main-header.open .nomal {
    opacity: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); }
  .main-header.open .active {
    opacity: 1;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=$opacity); }
  .main-header .main-header-logo {
    position: absolute;
    top: 14px;
    left: 55px;
    width: 149px;
    height: 45px;
    -webkit-transition: all 0.3s linear 0s;
    -moz-transition: all 0.3s linear 0s;
    -ms-transition: all 0.3s linear 0s;
    -o-transition: all 0.3s linear 0s;
    transition: all 0.3s linear 0s; }
    @media all and (max-width: 768px) {
      .main-header .main-header-logo {
        top: 11px;
        left: 18px;
        width: 83px;
        height: 25px; } }
    .main-header .main-header-logo img {
      width: 100%;
      height: auto; }
  .main-header .main-header-logoJp {
    position: absolute;
    top: 20px;
    right: 140px;
    width: 162px;
    height: 17px;
    color: #6fb42d;
    -webkit-transition: all 0.1s linear 0s;
    -moz-transition: all 0.1s linear 0s;
    -ms-transition: all 0.1s linear 0s;
    -o-transition: all 0.1s linear 0s;
    transition: all 0.1s linear 0s; }
    @media all and (max-width: 768px) {
      .main-header .main-header-logoJp {
        top: 16px;
        left: 105px;
        /* width: 140px;
        height: auto; */
        font-size: 14px;
        letter-spacing: 2px;} }
    .main-header .main-header-logoJp img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: auto; }
  .main-header .main-header-group {
    position: absolute;
    top: 13px;
    right: 30px;
    color: #6fb42d;
    letter-spacing: 5px;}
    @media all and (max-width: 768px) {
      .main-header .main-header-group {
        display: none; } }
  .main-header .main-header-technoLogo {
    position: absolute;
    top: 39px;
    right: 30px;
    color: #6fb42d;
    letter-spacing: 5px;}
    @media all and (max-width: 768px) {
      .main-header .main-header-technoLogo {
        display: none; } }
  .main-header .main-header-indexEntry {
    position: absolute;display: none;
    top: 13px;
    right: 255px;
    font-family: 'stellar'; }
    @media all and (max-width: 768px) {
      .main-header .main-header-indexEntry {
        top: 8px;
        bottom: auto;
        right: 8px; } }
    .main-header .main-header-indexEntry a {
      display: block;
      width: 167px;
      height: 47px;
      color: #6fb42d;
      font-size: 18px;
      line-height: 44px;
      text-align: center;
      letter-spacing: .1em;
      text-decoration: none;
      border: 1px rgba(111, 185, 45, 1) solid; }
      .main-header .main-header-indexEntry a:hover {
        background-color: #6fb42d;
        color:#fff;
        text-decoration: none;}
      @media all and (max-width: 768px) {
        .main-header .main-header-indexEntry a {
          width: 93px;
          height: 29px;
          font-size: 10px;
          line-height: 29px; } }
  .main-header.open .main-header-indexEntry {
    background-color: #fff;
    border-color: #6fb42d;}
  .main-header .main-header-entry {
    position: absolute;
    top: 8px;
    right: 8px;
    font-family: 'stellar'; }
    @media all and (max-width: 768px) {
      .main-header .main-header-entry {
        top: 8px;
        right: 8px; } }
    .main-header .main-header-entry a {
      display: block;
      width: 187px;
      height: 57px;
      color: #fff;
      font-size: 18px;
      line-height: 60px;
      text-align: center;
      letter-spacing: .1em;
      background-color: #6fb42d; }
      .main-header .main-header-entry a:hover {
        background-color: #6fb42d;
      text-decoration: none; }
      @media all and (max-width: 768px) {
        .main-header .main-header-entry a {
          width: 93px;
          height: 29px;
          font-size: 10px;
          line-height: 29px; } }

.index-nav {
  position: fixed;
  padding-left: 42px;
  top: 72px;
  left: 0;
  width: 100%;
  z-index: 3;
  font-family: 'stellar';
  background-color: rgba(255,255,255,0.8);}
  @media all and (max-width: 768px) {
    .index-nav {
      display: none; } }
  .index-nav ul {
    font-size: 0; }
    .index-nav ul li {
      display: inline-block;
      vertical-align: top;
      *vertical-align: auto;
      *zoom: 1;
      padding: 15px 0 0;
      text-align: center;
      padding-bottom:15px; }
      .index-nav ul li:nth-child(1) {
        margin-right: 28px;
        width: 63px;
        padding-left: 8px;}
      .index-nav ul li:nth-child(2) {
        margin-right: 28px;
        width: 105px;
       padding-left: 8px; }
      .index-nav ul li:nth-child(3) {
        margin-right: 28px;
        width: 105px;
       padding-left: 8px; }
      .index-nav ul li:nth-child(4) {
        margin-right: 28px;
        width: 105px;
       padding-left: 8px;}
      .index-nav ul li:nth-child(5) {
        margin-right: 28px;
        width: 105px;
       padding-left: 8px; }
      .index-nav ul li a {
        color: #6fb42d;
        font-size: 15px;
        letter-spacing: .3em;
        line-height: 1;
        text-decoration: none;
      }
      .index-nav ul li:hover {
        border-top-color: #00290e; }
        .index-nav ul li:hover a {
          color: #00290e;
          font-size: 16px;
          text-decoration: none;}
      .index-nav ul li.active {
        border-top-color: #00290e;
      text-decoration: none; }
      .index-nav-sel{
        border-bottom: 3px #6fb42d solid;
        border-top: 3px #6fb42d solid;
      }
        .index-nav-sel:hover{
          border-bottom: 3px #00290e solid;
        }
.main-nav {
  position: fixed;
  padding-left: 42px;
  padding-bottom: 12px;
  top: 71px;
  left: 0;
  width: 100%;
  z-index: 3;
  font-family: 'stellar';
  background-color: #fff;
  -webkit-transition: all 0.1s linear 0s;
  -moz-transition: all 0.1s linear 0s;
  -ms-transition: all 0.1s linear 0s;
  -o-transition: all 0.1s linear 0s;
  transition: all 0.1s linear 0s; }
  .main-nav.state-scroll {
    top: 63px; }
  @media all and (max-width: 768px) {
    .main-nav {
      display: none; } }
  .main-nav ul {
    font-size: 0; }
    .main-nav ul li {
      display: inline-block;
      vertical-align: top;
      *vertical-align: auto;
      *zoom: 1;
      padding: 15px 0 0;
      text-align: center;
      border-top: 3px transparent solid; }
      .main-nav ul li:nth-child(1) {
        margin-right: 28px;
        width: 63px; }
      .main-nav ul li:nth-child(2) {
        margin-right: 28px;
        width: 85px; }
      .main-nav ul li:nth-child(3) {
        margin-right: 28px;
        width: 85px; }
      .main-nav ul li:nth-child(4) {
        margin-right: 28px;
        width: 85px; }
      .main-nav ul li:nth-child(5) {
        margin-right: 28px;
        width: 85px; }
      .main-nav ul li a {
        color: #0d2f62;
        font-size: 15px;
        line-height: 1;
        letter-spacing: .02em; }
      .main-nav ul li:hover {
        border-top-color: #0d2f62;}
      .main-nav ul li.current {
        position: relative; }
        .main-nav ul li.current:after {
          content: "";
          position: absolute;
          left: 0;
          top: -1px;
          width: 100%;
          height: 3px;
          background-color: #0d2f62; }
      .main-nav ul li.active {
        border-top-color: #fff; }

.spmenu {
  display: none;
  position: fixed;
  z-index: 6;
  top: 48px;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: auto; }
  .spmenu .spmenu-wrap {
    position: fixed;
    top: 48px;
    left: 0;
    width: 100%;
    height: calc(100vh - 48px);
    background-color: #fff;
    z-index: 1; }
  .spmenu .spmenu-inner {
    position: relative;
    padding: 58px 0;
    z-index: 2;
    width: 100vw;
    height: auto; }
    .spmenu .spmenu-inner ul li {
      margin-bottom: 40px; }
      .spmenu .spmenu-inner ul li a {
        display: block;
        text-align: center;
        color: #6fb42d;
        font-size: 20px;
        line-height: 1;
        font-family: "stellar"; }
    .spmenu .spmenu-inner .spmenu-banner {
      margin: 58px auto 0;
      width: 297px;
      height: auto; }
      .spmenu .spmenu-inner .spmenu-banner img {
        width: 100%;
        height: auto; }
    .spmenu .spmenu-inner .spmenu-group {
      margin: 58px auto 0;
      width: 132px;
      height: auto; }
      .spmenu .spmenu-inner .spmenu-group img {
        width: 100%;
        height: auto; }
        
.bottom_nav{display: none;}
  
  @media all and (max-width: 768px) {
  	.bottom_nav{
  		display: block;
  		/*overflow: hidden;*/
  		position: fixed;
  		bottom:0;
  		width: 100%;
  		background: white;
    }
    
    .bottom_nav>ul>li{
    	width: 20%;
    	float: left;
    	box-sizing: border-box;
    	text-align: center;	
    	font-weight: bold;
    	font-size: 16px;
    	padding: 10px 0;
    	height:38px;
    	/*overflow: hidden;*/
    	position: relative;
    }
    .bottom_nav ul li span{
    	position: absolute;
    	right:-8px;
    }
    .bottom_nav_kt{position: relative;}
    .bottom_nav_kt01{position: absolute;top: -58px;left: 0px;z-index: 100;background: white;width: 100%;text-align: center;display: none;}
    .bottom_nav>ul>li:hover .bottom_nav_kt01{display: block;}
    .bottom_nav_border{border-bottom: 1px solid #999;}
    .bottom_nav_kt01 li{padding: 5px 0;}
    .bottom_nav ul li span.bottom_nav_shu01{right: -16px;}
    .bottom_nav ul li span.bottom_nav_shu02{right: 1px;}

@media (max-width: 378px){
  	.bottom_nav>ul>li{font-size: 14px;}
  	.bottom_nav_kt01{top: -50px;}
  }