@import url(base.css);
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:400&subset=japanese");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:300&display=swap&subset=japanese");
span.half {
  margin-left: -.5em; }

.header .menu-trigger, .header .menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }
.header .menu-trigger {
  position: fixed;
  z-index: 1000;
  top: 34px;
  right: 86px;
  width: 40px;
  height: 28px; }
  .header .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #66932e;
    border-radius: 1px; }
    .header .menu-trigger span:nth-of-type(1) {
      top: 0; }
    .header .menu-trigger span:nth-of-type(2) {
      top: 14px; }
    .header .menu-trigger span:nth-of-type(3) {
      bottom: 0; }
.header .menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(13px) rotate(-45deg);
  transform: translateY(13px) rotate(-45deg); }
.header .menu-trigger.active span:nth-of-type(2) {
  opacity: 0; }
.header .menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-13px) rotate(45deg);
  transform: translateY(-13px) rotate(45deg); }

.mail-button {
  z-index: 500;
  position: relative;
  margin-top: 45px; }

.mail-button a {
  position: absolute;
  right: 6%;
  width: 90px;
  height: 90px;
  display: block;
  background: #7cab60;
  border-radius: 50%;
  text-align: center;
  padding-top: 26px; }
  .mail-button a:hover {
    background: #74bf92; }

.headline {
  position: relative;
  width: 100%;
  height: 27.57vw;
  z-index: -100; }
  .headline .bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -200;
    width: 70%; }
  .headline .headline-img {
    position: absolute;
    top: 7.187vw;
    left: 21.6%;
    width: 78.4%; }
  .headline .headline-ttl {
    position: absolute;
    font-weight: 500;
    color: #fff;
    font-size: 26px;
    letter-spacing: 2px;
    top: 15.4vw;
    left: 24.4%; }
  .headline .headline-ttl-en {
    position: absolute;
    top: 18.7vw;
    left: 21%;
    display: block;
    width: 180px;
    line-height: 32px;
    background: #fff;
    color: #66922e;
    padding-left: 42px;
    letter-spacing: 1.5px;
    font-size: 16px; }
    .headline .headline-ttl-en:before {
      content: "";
      border-top: #000 1px solid;
      width: 17px;
      display: block;
      position: absolute;
      top: 50%;
      left: -17px; }

.pnkz {
  margin-top: -12px;
  position: relative; }
  .pnkz ul {
    position: absolute;
    top: 0;
    left: 10%; }

.area-ttl {
  font-size: 24px;
  letter-spacing: .3px;
  text-align: center; }

.top-area {
  margin-top: 120px;
  height: 547px; }
  .top-area .inner {
    width: 1100px;
    margin: 0 auto;
    position: relative; }
    .top-area .inner .imgbox .img1 {
      position: absolute;
      width: 500px;
      height: 339px;
      top: 0;
      left: 0;
      box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); }
    .top-area .inner .imgbox .img2 {
      position: absolute;
      width: 300px;
      height: 300px;
      top: 131px;
      left: 308px;
      box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); }
    .top-area .inner .txtbox {
      position: absolute;
      top: 99px;
      right: -8px;
      width: 405px; }
      .top-area .inner .txtbox .catch {
        font-family: 'Noto Serif JP', serif;
        font-size: 24px;
        font-weight: 300;
        line-height: 46px;
        margin-bottom: 27px;
        letter-spacing: 4.9px; }
      .top-area .inner .txtbox .top-txt {
        font-size: 14px;
        line-height: 29px;
        letter-spacing: .3px;
        width: 395px; }

.catch-line {
  background: url("../img/company/catch-bg.jpg") no-repeat;
  background-size: cover;
  padding: 89px 0 80px;
  margin-bottom: 53px; }
  .catch-line .catch {
    color: #fff;
    font-size: 28px;
    text-align: center;
    letter-spacing: .5px; }

.about {
  margin-bottom: 71px; }
  .about .about-list {
    width: 1000px;
    margin: 39px auto 0; }
    .about .about-list li {
      font-size: 14px;
      border: #ccc 1px solid;
      border-bottom: none;
      font-family: 'Noto Sans JP', sans-serif;
      letter-spacing: .8px; }
      .about .about-list li .corp {
        margin-left: 3em;
        color: #66932e; }
        .about .about-list li .corp:hover {
          opacity: .6; }
      .about .about-list li:last-child {
        border-bottom: #ccc 1px solid; }
      .about .about-list li .list-item {
        display: inline-block;
        background: rgba(102, 146, 46, 0.1);
        width: 235px;
        margin-right: 31px;
        padding: 18px 17px 21px; }
        .about .about-list li .list-item .small-space {
          margin-right: .3em; }

.map .link-btn a {
  display: block;
  width: 300px;
  font-size: 14px;
  padding: 17px 0;
  border: #66932e 1px solid;
  background: #fff;
  color: #66932e;
  position: relative;
  margin: 28px auto;
  text-align: center; }
  .map .link-btn a .fa-chevron-right {
    position: absolute;
    top: 40%;
    left: 15px; }
  .map .link-btn a:hover {
    background: #66932e;
    color: #fff; }
.map .g-map {
  margin: 0 0 80px; }

@media screen and (max-width: 768px) {
  .header .menu-trigger {
    top: 15px;
    right: 15px; }

  .mail-button a {
    display: none; }

  .headline .headline-ttl {
    font-size: 20px;
    top: 13vw;
    left: 24.4%; }
  .headline .headline-ttl-en {
    top: 20vw;
    left: 5%;
    width: 140px;
    line-height: 23px;
    padding-left: 30px;
    font-size: 14px; }
    .headline .headline-ttl-en:before {
      left: -14px; }

  .pnkz {
    margin-top: 5px; }
    .pnkz ul {
      left: 0; }

  .area-ttl {
    font-size: 18px; }

  .top-area {
    margin: 0 0 50px;
    height: auto; }
    .top-area .inner {
      width: 100%;
      padding: 0 15px; }
      .top-area .inner .imgbox {
        display: none; }
      .top-area .inner .txtbox {
        position: relative;
        top: 0;
        right: 0;
        width: 100%; }
        .top-area .inner .txtbox .catch {
          font-size: 18px;
          line-height: 35px;
          margin-bottom: 20px;
          letter-spacing: 2px;
          text-align: center; }
        .top-area .inner .txtbox .top-txt {
          width: 100%;
          text-align: center;
          letter-spacing: 0; }

  .catch-line {
    padding: 50px 0;
    margin-bottom: 20px; }
    .catch-line .catch {
      font-size: 18px; }

  .about {
    margin-bottom: 50px;
    padding: 0 15px; }
    .about .about-list {
      width: 100%;
      margin: 20px auto 0; }
      .about .about-list li {
        display: block;
        padding: 0 15px 15px;
        line-height: 24px; }
        .about .about-list li .corp {
          margin: 0;
          display: block; }
          .about .about-list li .corp:hover {
            opacity: 1; }
        .about .about-list li .list-item {
          display: block;
          width: calc(100% + 30px);
          margin: 0 0 15px -15px;
          padding: 15px; }

  .map .g-map {
    margin: 20px 0 50px; } }

/*# sourceMappingURL=company.css.map */
