@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Abel&family=Noto+Serif+JP:wght@200;300&display=swap");
/*
------------------

 .clearfix

------------------
*/
/* line 11, common.scss */
.clearfix {
  zoom: 1; }

/* line 14, common.scss */
.clearfix:after {
  content: "";
  display: block;
  clear: both; }

/*
------------------

 Lib.

------------------
*/
/* line 26, common.scss */
.hover .btn:hover {
  opacity: 0.75;
  cursor: pointer; }

/* line 30, common.scss */
.fl {
  float: left; }

/* line 33, common.scss */
.fr {
  float: right; }

/* line 36, common.scss */
.forPC {
  display: block; }

/* line 39, common.scss */
.forSP {
  display: none; }

/* line 42, common.scss */
.btn-right {
  position: relative; }

/* line 45, common.scss */
.btn-right:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: 0;
  height: 0;
  margin-top: -3px;
  margin-left: 5px;
  border-left: 4px solid #000;
  border-top: 2px solid transparent;
  border-bottom: 2px solid transparent;
  border-right: 2px solid transparent; }

/* line 60, common.scss */
.refrect-ud {
  -webkit-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -moz-transform: scaleY(-1);
  transform: scaleY(-1);
  filter: FlipV;
  -ms-filter: "FlipV"; }

@media screen and (max-width: 430px) {
  /* line 69, common.scss */
  .forPC {
    display: none; }

  /* line 72, common.scss */
  .forSP {
    display: block; }

  /* line 75, common.scss */
  .fl, .fr {
    float: none; } }
/*
------------------

 basic

------------------
*/
/* line 89, common.scss */
html {
  overflow: auto;
  /* font-size:62.5%;*/
  /*10px*/
  width: 100%;
  height: 100%;
  -webkit-overflow-scrolling: touch;
  /*font-size: 1.6rem;*/
  font-size: calc(4px + 6 * ((100vw - 320px) / 1120));
  /*
  最初の16px…最小値として使うフォント
  次の数字の8…最大値の24pxから最小値の16pxを引いた数値（単位無し）
  100vw…ビューポート幅（画面枠が代入）
  最後の1120…最大画面幅（1440px）から最小画面幅（320px）を差し引いた数値
  https://lpeg.info/html/css_calc_font.html
  */ }
  @media screen and (max-width: 430px) {
    /* line 89, common.scss */
    html {
      font-size: calc(10px + 6 * ((100vw - 320px) / 1120)); } }

/* line 109, common.scss */
body {
  background-color: #fff;
  width: 100%;
  height: 100%;
  color: #231815;
  -webkit-overflow-scrolling: touch;
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.1rem;
  font-size: 1.6rem; }

/* SP MENU */
/* line 124, common.scss */
div#icon-menu {
  display: none;
  transform: scale(1);
  position: fixed;
  right: 50px;
  top: 50px;
  /*background-color: rgba(255,255,255,0.5);*/
  z-index: 9999;
  padding: 15px 15px 12px 12px;
  border-bottom-right-radius: 5px; }
  @media screen and (max-width: 430px) {
    /* line 124, common.scss */
    div#icon-menu {
      right: 20px;
      top: 20px;
      display: block; } }

/* line 140, common.scss */
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }

/* line 146, common.scss */
.menu-trigger {
  position: relative;
  width: 50px;
  height: 22px; }
  /* line 150, common.scss */
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #ddd;
    border-radius: 4px; }
    /* line 157, common.scss */
    .menu-trigger span:nth-of-type(1) {
      top: 0; }
    /* line 160, common.scss */
    .menu-trigger span:nth-of-type(2) {
      top: 10px; }
    /* line 163, common.scss */
    .menu-trigger span:nth-of-type(3) {
      bottom: 0; }

/* line 169, common.scss */
.menu-trigger.active span:nth-of-type(1) {
  width: 45%;
  -webkit-transform: translate3d(0, 3px, 0) rotate(35deg);
  transform: translate3d(0, 3px, 0) rotate(35deg); }
/* line 174, common.scss */
.menu-trigger.active span:nth-of-type(2) {
  -webkit-transform: translate3d(-1px, 0, 0) rotate(-35deg);
  transform: translate3d(-1px, 0, 0) rotate(-35deg); }
/* line 178, common.scss */
.menu-trigger.active span:nth-of-type(3) {
  width: 45%;
  -webkit-transform: translate3d(22px, -3px, 0) rotate(35deg);
  transform: translate3d(22px, -3px, 0) rotate(35deg); }

/* line 187, common.scss */
div#menu-sp {
  width: 200px;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
  background-color: #fff; }
  @media screen and (max-width: 999px) {
    /* line 187, common.scss */
    div#menu-sp {
      width: 20%; } }
  @media screen and (max-width: 430px) {
    /* line 187, common.scss */
    div#menu-sp {
      display: none;
      width: 100%; } }
  /* line 203, common.scss */
  div#menu-sp div.logo-cont {
    padding: 50px 0;
    text-align: center;
    width: 100%; }
    /* line 204, common.scss */
    div#menu-sp div.logo-cont img {
      width: 21%;
      height: auto; }
    @media screen and (max-width: 999px) {
      /* line 203, common.scss */
      div#menu-sp div.logo-cont {
        padding: 10% 0; } }
    @media screen and (max-width: 430px) {
      /* line 203, common.scss */
      div#menu-sp div.logo-cont {
        padding: 2rem 0; }
        /* line 215, common.scss */
        div#menu-sp div.logo-cont img {
          width: 43px;
          height: auto; } }
  /* line 223, common.scss */
  div#menu-sp ul.menu {
    display: block;
    padding: 0; }
    /* line 227, common.scss */
    div#menu-sp ul.menu a {
      text-decoration: none;
      color: #231815; }
    /* line 231, common.scss */
    div#menu-sp ul.menu li {
      position: relative;
      font-size: 1.8rem;
      letter-spacing: 0.2em;
      text-align: left;
      width: 75%;
      float: none;
      padding: 1.5rem 0 1.5rem 25%; }
      /* line 240, common.scss */
      div#menu-sp ul.menu li span {
        font-size: 1rem;
        letter-spacing: 0.2rem;
        font-family: "Abel", sans-serif; }
      /* line 245, common.scss */
      div#menu-sp ul.menu li:hover {
        border-left: 10px solid #349539;
        color: #349539; }
      /* line 249, common.scss */
      div#menu-sp ul.menu li:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 90%;
        width: 0;
        height: 0;
        margin-top: -3px;
        margin-left: 5px;
        border-left: 4px solid #231815;
        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-right: 2px solid transparent; }
    /* line 265, common.scss */
    div#menu-sp ul.menu li.active {
      border-left: 10px solid #349539;
      color: #349539;
      padding-left: 20%; }
    @media screen and (max-width: 999px) {
      /* line 271, common.scss */
      div#menu-sp ul.menu li {
        padding: 7% 0 7% 10%; } }
    @media screen and (max-width: 430px) {
      /* line 223, common.scss */
      div#menu-sp ul.menu {
        bottom: 100px;
        left: 30px; }
        /* line 278, common.scss */
        div#menu-sp ul.menu li {
          width: 100%;
          font-size: 1.8rem;
          padding: 5% 0 5% 50px;
          border-bottom: thin solid #ccc; }
          /* line 283, common.scss */
          div#menu-sp ul.menu li:after {
            left: 85%; }
        /* line 287, common.scss */
        div#menu-sp ul.menu li.active {
          padding-left: 40px; } }
  /* line 293, common.scss */
  div#menu-sp ul.snsmenu {
    position: absolute;
    bottom: 6rem;
    width: 50%;
    margin-left: 25%;
    display: table; }
    /* line 299, common.scss */
    div#menu-sp ul.snsmenu li {
      display: table-cell;
      text-align: center;
      width: 50%; }
      /* line 303, common.scss */
      div#menu-sp ul.snsmenu li img {
        width: 60%;
        height: auto; }
    @media screen and (max-width: 999px) {
      /* line 293, common.scss */
      div#menu-sp ul.snsmenu {
        bottom: 1rem; }
        /* line 311, common.scss */
        div#menu-sp ul.snsmenu li img {
          width: 50%; } }
    @media screen and (max-width: 430px) {
      /* line 293, common.scss */
      div#menu-sp ul.snsmenu {
        width: auto;
        margin-left: 40px;
        bottom: 4rem; }
        /* line 320, common.scss */
        div#menu-sp ul.snsmenu li {
          padding: 0 1rem; }
          /* line 322, common.scss */
          div#menu-sp ul.snsmenu li img {
            width: 30px; } }
  /* line 328, common.scss */
  div#menu-sp p.copyright {
    font-size: 10px;
    font-family: "Abel", sans-serif;
    color: #231815;
    position: absolute;
    bottom: 15px;
    width: 80%;
    margin-left: 10%;
    text-align: center; }
    @media screen and (max-width: 999px) {
      /* line 328, common.scss */
      div#menu-sp p.copyright {
        display: none; } }
    @media screen and (max-width: 430px) {
      /* line 328, common.scss */
      div#menu-sp p.copyright {
        margin-left: 0;
        text-align: right;
        right: 1rem;
        width: auto;
        bottom: 1rem; } }

/* line 350, common.scss */
.hoverobj {
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1); }

/* line 354, common.scss */
div#loader-bg, div#orientation-guide {
  background-color: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center; }

/* line 364, common.scss */
div#orientation-guide {
  display: none; }
  /* line 366, common.scss */
  div#orientation-guide img {
    width: 50px;
    height: auto; }

/* line 371, common.scss */
.loader,
.loader:after {
  border-radius: 50%;
  width: 3em;
  height: 3em;
  color: #fff; }

/* line 378, common.scss */
.loader {
  color: #fff;
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 0.5em solid rgba(214, 214, 214, 0.2);
  border-right: 0.5em solid rgba(214, 214, 214, 0.2);
  border-bottom: 0.5em solid rgba(214, 214, 214, 0.2);
  border-left: 0.5em solid #d6d6d6;
  -webkit-transform: translateZ(0) scale(0.1);
  -ms-transform: translateZ(0) scale(0.1);
  transform: translateZ(0) scale(0.1);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
/* line 416, common.scss */
div#wrapper {
  width: 100%;
  height: 100%;
  /*overflow: hidden;*/ }

/* line 422, common.scss */
div#container {
  width: calc(100% - 200px);
  margin-left: 200px;
  overflow: hidden; }
  @media screen and (max-width: 999px) {
    /* line 422, common.scss */
    div#container {
      width: 80%;
      margin-left: 20%; } }
  @media screen and (max-width: 430px) {
    /* line 422, common.scss */
    div#container {
      width: 100%;
      margin-left: 0; } }

/* line 436, common.scss */
section#mainimg {
  position: relative;
  width: 100%;
  /* height: 100vh; */ }
  /* line 441, common.scss */
  section#mainimg div.logo-cont {
    width: 100px;
    position: absolute;
    top: 0;
    right: 100px;
    background-color: #fff;
    z-index: 3;
    padding: 30px 0 20px;
    text-align: center; }
    /* line 450, common.scss */
    section#mainimg div.logo-cont p {
      text-align: center; }
      /* line 451, common.scss */
      section#mainimg div.logo-cont p img {
        width: 60px;
        height: auto; }
    /* line 457, common.scss */
    section#mainimg div.logo-cont h1 {
      font-family: "Noto Serif JP", serif;
      writing-mode: vertical-rl;
      font-size: 4rem;
      letter-spacing: 2rem;
      color: #231815;
      display: inline-block;
      margin-top: 30px; }
    @media screen and (max-width: 999px) {
      /* line 441, common.scss */
      section#mainimg div.logo-cont {
        width: 10%;
        right: 10%;
        padding: 3% 0 2%; }
        /* line 471, common.scss */
        section#mainimg div.logo-cont p img {
          width: 60%; }
        /* line 475, common.scss */
        section#mainimg div.logo-cont h1 {
          margin-top: 30%; } }
    @media screen and (max-width: 430px) {
      /* line 441, common.scss */
      section#mainimg div.logo-cont {
        width: auto;
        position: relative;
        right: 0; }
        /* line 484, common.scss */
        section#mainimg div.logo-cont p img {
          width: 30px; }
        /* line 488, common.scss */
        section#mainimg div.logo-cont h1 {
          font-size: 2rem;
          letter-spacing: 1rem;
          margin-top: 30px; } }
  /* line 496, common.scss */
  section#mainimg ul.slick {
    margin-bottom: 0;
    position: relative;
    width: 100%;
    height: 100vh;
    /*display: none;*/ }
    /* line 502, common.scss */
    section#mainimg ul.slick li.slick-slide {
      height: 100vh;
      overflow: hidden; }
      /* line 505, common.scss */
      section#mainimg ul.slick li.slick-slide img {
        width: auto;
        height: 100vh; }
    @media screen and (max-width: 430px) {
      /* line 496, common.scss */
      section#mainimg ul.slick {
        height: 80vh; }
        /* line 513, common.scss */
        section#mainimg ul.slick li.slick-slide img {
          /* height: 80vh; */
          width: auto; } }
    /* line 519, common.scss */
    section#mainimg ul.slick .slick-dots {
      top: 95vh; }
      @media screen and (max-width: 430px) {
        /* line 519, common.scss */
        section#mainimg ul.slick .slick-dots {
          top: inherit;
          bottom: 10px; } }
      /* line 525, common.scss */
      section#mainimg ul.slick .slick-dots li button:before {
        color: #fff; }
  /* line 530, common.scss */
  section#mainimg h2 {
    position: absolute;
    bottom: 10%;
    left: 5%;
    font-size: 8rem;
    letter-spacing: 1rem;
    font-family: "Abel", sans-serif;
    color: #fff;
    font-weight: bold;
    width: 50%; }
    @media screen and (max-width: 430px) {
      /* line 530, common.scss */
      section#mainimg h2 {
        font-size: 6rem;
        letter-spacing: 0.2rem;
        line-height: 7rem;
        width: 90%;
        bottom: 5%; } }

/* line 551, common.scss */
div#sp-concept-ttl {
  text-align: center;
  padding: 5rem 0 3rem; }
  /* line 554, common.scss */
  div#sp-concept-ttl h3 {
    display: inline-block;
    color: #231815;
    writing-mode: vertical-rl;
    font-size: 3rem;
    line-height: 6rem;
    letter-spacing: 0.6rem;
    text-align: left; }

/* line 564, common.scss */
div#sp-concept-body {
  text-align: center;
  padding: 5rem 0; }
  /* line 567, common.scss */
  div#sp-concept-body p {
    display: inline-block;
    color: #231815;
    writing-mode: vertical-rl;
    font-size: 1.2rem;
    line-height: 3rem;
    letter-spacing: 0.2rem;
    text-align: left; }
    @media screen and (max-width: 430px) {
      /* line 567, common.scss */
      div#sp-concept-body p {
        line-height: 2.5rem; } }

/* line 581, common.scss */
div.wideimg {
  width: 100%;
  position: relative;
  /* CONCEPT */
  /* CONCEPT */ }
  /* line 584, common.scss */
  div.wideimg img {
    width: 100%;
    height: auto;
    vertical-align: bottom; }
    @media screen and (max-width: 430px) {
      /* line 584, common.scss */
      div.wideimg img {
        width: auto;
        height: 80vh;
        margin-left: calc(( 100vw - 100vh * 1.8 * 0.8 ) / 2); } }
  /* line 595, common.scss */
  div.wideimg div.concept-jp-container {
    position: absolute;
    top: 10%;
    right: 10%;
    color: #fff;
    width: 80%; }
    /* line 601, common.scss */
    div.wideimg div.concept-jp-container h3 {
      writing-mode: vertical-rl;
      float: right;
      font-size: 5rem;
      line-height: 10rem;
      letter-spacing: 1rem; }
    /* line 608, common.scss */
    div.wideimg div.concept-jp-container p {
      margin-right: 50px;
      writing-mode: vertical-rl;
      float: right;
      font-size: 2rem;
      letter-spacing: 0.2rem;
      line-height: 4rem; }
    @media screen and (max-width: 999px) {
      /* line 595, common.scss */
      div.wideimg div.concept-jp-container {
        right: 5%; }
        /* line 618, common.scss */
        div.wideimg div.concept-jp-container h3 {
          font-size: 3rem;
          line-height: 5rem;
          letter-spacing: 0.5rem; }
        /* line 623, common.scss */
        div.wideimg div.concept-jp-container p {
          margin-right: 3rem;
          font-size: 1.4rem;
          letter-spacing: 0.2rem;
          line-height: 3rem; } }
    @media screen and (max-width: 430px) {
      /* line 595, common.scss */
      div.wideimg div.concept-jp-container {
        display: none; } }
  /* line 634, common.scss */
  div.wideimg div.concept-eng-container {
    width: 28%;
    position: absolute;
    left: 30px;
    bottom: 30px;
    font-family: "Abel", sans-serif;
    color: #fff; }
    /* line 641, common.scss */
    div.wideimg div.concept-eng-container h3 {
      font-size: 2rem;
      margin-bottom: 30px; }
    /* line 645, common.scss */
    div.wideimg div.concept-eng-container p {
      font-size: 1.6rem; }
    @media screen and (max-width: 430px) {
      /* line 634, common.scss */
      div.wideimg div.concept-eng-container {
        width: 38%; }
        /* line 650, common.scss */
        div.wideimg div.concept-eng-container h3 {
          font-size: 2rem; }
        /* line 653, common.scss */
        div.wideimg div.concept-eng-container p {
          font-size: 1.2rem; } }
  /* line 662, common.scss */
  div.wideimg h2.mainimg-ttl {
    position: absolute;
    top: 10%;
    left: 5%;
    width: 60%;
    font-size: 8rem;
    letter-spacing: 1rem;
    font-family: "Abel", sans-serif;
    color: #fff;
    font-weight: bold; }
    @media screen and (max-width: 430px) {
      /* line 662, common.scss */
      div.wideimg h2.mainimg-ttl {
        font-size: 5.5rem;
        letter-spacing: 0.5rem;
        line-height: 6rem; } }
  /* line 679, common.scss */
  div.wideimg div.todetail {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #fff;
    font-size: 2rem;
    padding: 10px 20px;
    color: #231815;
    letter-spacing: 1rem; }
    /* line 688, common.scss */
    div.wideimg div.todetail:after {
      display: block;
      content: "";
      position: absolute;
      top: 50%;
      left: 90%;
      width: 0;
      height: 0;
      margin-top: -3px;
      margin-left: 5px;
      border-left: 4px solid #231815;
      border-top: 2px solid transparent;
      border-bottom: 2px solid transparent;
      border-right: 2px solid transparent; }
    /* line 703, common.scss */
    div.wideimg div.todetail:hover {
      color: #349539;
      padding-right: 30px; }

@media screen and (max-width: 430px) {
  /* line 710, common.scss */
  div#conceptimg img {
    margin-left: calc(( 100vw - 100vh * 1.8 * 0.8 ) / 2 - 20%); } }

@media screen and (max-width: 430px) {
  /* line 717, common.scss */
  div#companyimg img {
    margin-left: calc(( 100vw - 100vh * 1.8 * 0.8 ) / 2 + 50%); } }

@media screen and (max-width: 430px) {
  /* line 725, common.scss */
  div.wideimg-sub img {
    width: auto;
    height: 40vh;
    margin-left: calc(( 100vw - 100vh * 3.72 * 0.4 ) / 2); } }

/* line 734, common.scss */
a.widebtn {
  display: block;
  padding: 10px 0;
  text-align: center;
  max-width: 640px;
  margin: 0 auto;
  border: thin solid #ccc;
  color: #604c3f;
  text-decoration: none;
  font-size: 1.6rem; }
  /* line 744, common.scss */
  a.widebtn:hover {
    border-color: #669dc7;
    color: #669dc7; }
  @media screen and (max-width: 800px) {
    /* line 734, common.scss */
    a.widebtn {
      width: 80%; } }

/*
------------------

 G A L L E Y  f o r  I n s t a g r a m

------------------
*/
/* line 765, common.scss */
div#followus {
  text-align: center;
  padding: 100px 0 0; }
  /* line 768, common.scss */
  div#followus img {
    width: 30px;
    height: auto; }
  /* line 772, common.scss */
  div#followus p {
    font-size: 3rem;
    letter-spacing: 0.2rem;
    font-family: "Abel", sans-serif;
    color: #231815; }

/* line 779, common.scss */
section#gallery {
  padding: 50px 0;
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }

/* line 785, common.scss */
div#gallery p.title {
  padding: 0 0 30px 0; }

/* line 788, common.scss */
img#loading-gallery {
  position: absolute;
  left: 50%;
  margin-left: -30px;
  top: 50%;
  margin-top: -30px;
  opacity: 0.5; }

/* line 796, common.scss */
div#gallery-images {
  width: 100%;
  overflow: hidden;
  background-color: #fff; }

/* line 801, common.scss */
div#gallery-images div.trim {
  width: 25%;
  overflow: hidden;
  position: relative;
  float: left; }

/* line 807, common.scss */
div#gallery-images div.trim:before {
  content: "";
  display: block;
  padding-top: 100%; }

/* line 815, common.scss */
div#gallery-images img {
  vertical-align: bottom;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  /*コレ*/
  object-fit: cover;
  width: 101%;
  height: 101%; }
  /* line 822, common.scss */
  div#gallery-images img:hover {
    width: 110%;
    height: 110%; }

/* line 827, common.scss */
img.inst-square {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

/* line 837, common.scss */
img.inst-horizontal {
  /* 横長のイメージ */
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%; }

/* line 848, common.scss */
img.inst-vertical {
  /* 縦長のイメージ */
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto; }

/* line 859, common.scss */
.hover div#gallery-images img:hover {
  opacity: 0.8;
  transform: translate(-50%, -50%) scale(1.05, 1.05);
  -webkit-transform: translate(-50%, -50%) scale(1.05, 1.05);
  -moz-transform: translate(-50%, -50%) scale(1.05, 1.05);
  -ms-transform: translate(-50%, -50%) scale(1.05, 1.05);
  -o-transform: translate(-50%, -50%) scale(1.05, 1.05); }

/* line 867, common.scss */
div#gallery-footer {
  text-align: center;
  width: 100%;
  position: relative;
  max-width: 1000px;
  margin: 30px auto;
  position: relative; }
  /* line 875, common.scss */
  div#gallery-footer a.gglmapbtn {
    display: block;
    padding: 10px 0;
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
    border: thin solid #ccc;
    color: #604c3f;
    text-decoration: none; }
    /* line 884, common.scss */
    div#gallery-footer a.gglmapbtn:hover {
      border-color: #669dc7;
      color: #669dc7; }
    @media screen and (max-width: 800px) {
      /* line 875, common.scss */
      div#gallery-footer a.gglmapbtn {
        width: 80%; } }

@media screen and (max-width: 960px) {
  /* line 897, common.scss */
  div#gallery {
    padding-top: 66px; }

  /* line 900, common.scss */
  div#gallery-images div.trim {
    width: 50%; }

  /* line 903, common.scss */
  div.snsmenu_footer {
    width: 100%; }

  /* line 906, common.scss */
  div.snsmenu_footer > div > img {
    margin-bottom: 20px;
    margin-right: 0; } }
/* Footer */
/* line 915, common.scss */
footer {
  padding: 50px 0;
  text-align: center; }
  /* line 918, common.scss */
  footer div.logo-cont {
    margin-bottom: 30px; }
    /* line 919, common.scss */
    footer div.logo-cont img {
      width: 30px;
      height: auto; }
  /* line 926, common.scss */
  footer ul a {
    text-decoration: none; }
  /* line 929, common.scss */
  footer ul li {
    display: inline-block;
    margin: 5px 15px;
    color: #333;
    letter-spacing: 0.2em; }
    /* line 934, common.scss */
    footer ul li span {
      font-family: "Abel", sans-serif;
      font-size: 1rem;
      letter-spacing: 0.1rem; }
    @media screen and (max-width: 430px) {
      /* line 929, common.scss */
      footer ul li {
        display: block;
        border-bottom: thin solid #ccc;
        padding: 1rem; }
        /* line 943, common.scss */
        footer ul li span {
          margin-left: 1rem; }
        /* line 946, common.scss */
        footer ul li br {
          display: none; } }
  /* line 952, common.scss */
  footer ul.snsmenu {
    position: relative;
    width: 100%;
    display: block;
    margin-top: 30px; }
    /* line 957, common.scss */
    footer ul.snsmenu li {
      border-bottom: none;
      display: inline-block;
      text-align: center;
      margin: 1rem; }
      /* line 962, common.scss */
      footer ul.snsmenu li img {
        width: 3rem;
        height: auto; }
  /* line 968, common.scss */
  footer p {
    font-size: 1rem;
    padding: 3rem 0; }
    /* line 971, common.scss */
    footer p span {
      color: #fff; }
      /* line 973, common.scss */
      footer p span a {
        text-decoration: none;
        color: #fff; }

/* CONTENTS */
/* line 984, common.scss */
div.content-body {
  width: 90%;
  margin: 0 auto; }

/* メインイメージ下のリード */
/* line 989, common.scss */
div.content-lead {
  padding: 30px 0; }
  /* line 991, common.scss */
  div.content-lead p {
    font-size: 1.8rem;
    line-height: 3rem;
    margin-bottom: 3rem; }
  @media screen and (max-width: 430px) {
    /* line 997, common.scss */
    div.content-lead p {
      font-size: 1.6rem; } }

/* タイトル */
/* line 1003, common.scss */
h2.content-title {
  font-size: 3rem;
  color: #349539;
  letter-spacing: 0.3rem;
  margin-top: 100px;
  margin-bottom: 30px; }

/* 共通UI */
/* line 1014, common.scss */
div.img-colmn div.img-cont {
  float: left;
  width: 29.3%;
  margin: 0 2%;
  padding: 0 0 10px 0; }
  /* line 1019, common.scss */
  div.img-colmn div.img-cont img {
    width: 100%;
    height: auto; }
  /* line 1023, common.scss */
  div.img-colmn div.img-cont p {
    font-size: 1.2rem;
    margin-bottom: 15px;
    height: 3rem; }
@media screen and (max-width: 430px) {
  /* line 1030, common.scss */
  div.img-colmn div.img-cont {
    float: none;
    width: 100%;
    margin: 5% 0; }
    /* line 1034, common.scss */
    div.img-colmn div.img-cont p {
      font-size: 1.2rem; } }

/* line 1041, common.scss */
div.modal {
  z-index: 9999; }

/* line 1044, common.scss */
div.iziModal-content {
  font-size: 12px;
  padding: 30px; }
  /* line 1047, common.scss */
  div.iziModal-content img {
    /*コレ*/
    object-fit: cover;
    width: 101%;
    height: 101%; }

/* line 1053, common.scss */
p.modal-caption {
  color: #fff;
  font-size: 1.8rem; }

/* 会社概要 */
/* line 1061, common.scss */
div#company-data, div#company-history {
  border: thin solid #ccc;
  padding: 30px;
  position: relative; }
  @media screen and (max-width: 430px) {
    /* line 1061, common.scss */
    div#company-data, div#company-history {
      border: none;
      border-top: thin solid #ccc;
      border-bottom: thin solid #ccc;
      padding: 30px 10px; } }
  /* line 1072, common.scss */
  div#company-data table tr, div#company-history table tr {
    margin-bottom: 15px; }
    /* line 1074, common.scss */
    div#company-data table tr td, div#company-history table tr td {
      padding: 10px 0;
      line-height: 3rem; }
      /* line 1077, common.scss */
      div#company-data table tr td a, div#company-history table tr td a {
        text-decoration: none !important; }
        /* line 1079, common.scss */
        div#company-data table tr td a div.minigglmapbtn, div#company-history table tr td a div.minigglmapbtn {
          display: inline-block;
          border: thin solid #ccc;
          border-radius: 3px;
          padding: 5px 10px;
          font-family: "Abel", sans-serif;
          font-size: 1.4rem;
          margin: 3% 0;
          color: #231815; }
      @media screen and (max-width: 430px) {
        /* line 1074, common.scss */
        div#company-data table tr td, div#company-history table tr td {
          font-size: 1.2rem;
          line-height: 2.4rem; } }
    /* line 1095, common.scss */
    div#company-data table tr td:first-child, div#company-history table tr td:first-child {
      vertical-align: top;
      padding-right: 30px; }
      @media screen and (max-width: 430px) {
        /* line 1095, common.scss */
        div#company-data table tr td:first-child, div#company-history table tr td:first-child {
          width: 6rem;
          padding-right: 1rem; } }
  /* line 1105, common.scss */
  div#company-data div.img-cont, div#company-history div.img-cont {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 30%; }
    /* line 1110, common.scss */
    div#company-data div.img-cont img, div#company-history div.img-cont img {
      width: 100%;
      height: auto; }
    /* line 1114, common.scss */
    div#company-data div.img-cont p, div#company-history div.img-cont p {
      margin-bottom: 15px; }
    @media screen and (max-width: 430px) {
      /* line 1105, common.scss */
      div#company-data div.img-cont, div#company-history div.img-cont {
        position: relative;
        margin: 3rem 0;
        width: 100%;
        margin: 0;
        right: 0; }
        /* line 1123, common.scss */
        div#company-data div.img-cont p, div#company-history div.img-cont p {
          font-size: 1.2rem; } }

@media screen and (max-width: 430px) {
  /* line 1132, common.scss */
  div#company-history table {
    display: block; }
    /* line 1134, common.scss */
    div#company-history table tr {
      display: block;
      margin-bottom: 1rem; }
      /* line 1137, common.scss */
      div#company-history table tr td {
        text-align: left;
        display: block;
        width: 90%;
        padding-left: 10%; }
      /* line 1143, common.scss */
      div#company-history table tr td:first-child {
        width: 100%;
        text-align: left;
        padding-left: 0; } }

/* line 1155, common.scss */
div#ceo-cont div#ceo-cont-left {
  float: left;
  width: 30%;
  padding-left: 5%; }
  /* line 1159, common.scss */
  div#ceo-cont div#ceo-cont-left img {
    width: 100%;
    height: auto; }
/* line 1164, common.scss */
div#ceo-cont div#ceo-cont-right {
  float: right;
  width: 50%;
  margin-right: 5%;
  border-top: thin solid #ccc;
  padding: 50px 5% 0 5%;
  padding-top: 50px; }
  /* line 1171, common.scss */
  div#ceo-cont div#ceo-cont-right h3 {
    color: #349539;
    font-size: 4rem;
    letter-spacing: 0.2rem; }
    /* line 1175, common.scss */
    div#ceo-cont div#ceo-cont-right h3 span {
      font-family: "Abel", sans-serif;
      font-size: 1.8rem;
      line-height: 2.7rem;
      margin-top: 1rem;
      letter-spacing: 0.1rem;
      display: inline-block; }
  /* line 1184, common.scss */
  div#ceo-cont div#ceo-cont-right h4 {
    text-align: right;
    font-size: 1.6rem;
    margin-bottom: 30px; }
    /* line 1187, common.scss */
    div#ceo-cont div#ceo-cont-right h4 span {
      font-size: 1.2rem; }
  /* line 1192, common.scss */
  div#ceo-cont div#ceo-cont-right p {
    font-size: 1.6rem;
    line-height: 3rem;
    letter-spacing: 0.1rem; }
@media screen and (max-width: 430px) {
  /* line 1199, common.scss */
  div#ceo-cont div#ceo-cont-left {
    float: none;
    width: 100%;
    padding-left: 0; }
  /* line 1204, common.scss */
  div#ceo-cont div#ceo-cont-right {
    float: none;
    width: 100%;
    margin-right: 0;
    padding: 0; }
    /* line 1210, common.scss */
    div#ceo-cont div#ceo-cont-right h3 {
      font-size: 3rem;
      padding: 2rem 0; } }

/* 主要製品 */
/* line 1219, common.scss */
div#productslist {
  border: thin solid #bbb;
  width: 96%;
  margin: 0 auto; }
  /* line 1223, common.scss */
  div#productslist table {
    width: 100%; }
    /* line 1226, common.scss */
    div#productslist table tr th {
      background-color: #e7e8e0;
      padding: 10px; }
    /* line 1230, common.scss */
    div#productslist table tr td {
      border-bottom: thin solid #ccc;
      padding: 10px; }
    /* line 1234, common.scss */
    div#productslist table tr td.bunrui {
      border-bottom: thin solid #ccc; }
  @media screen and (max-width: 430px) {
    /* line 1243, common.scss */
    div#productslist table tr th {
      font-size: 1rem; }
    /* line 1246, common.scss */
    div#productslist table tr td {
      font-size: 1.2rem; }
    /* line 1249, common.scss */
    div#productslist table tr td.bunrui {
      border-bottom: thin solid #ccc;
      width: 1.2rem; } }

/* line 1258, common.scss */
p#productslist-script {
  text-align: right;
  font-size: 1.2rem;
  padding-right: 2%; }

/* 採用情報 */
@media screen and (max-width: 430px) {
  /* line 1268, common.scss */
  div#recruit-lead p {
    text-align: left; } }

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