/* Scss Document */
/* Scss Document */
body {
  background: #FBFAF0; }

.center {
  text-align: center; }

.left {
  text-align: left; }

.sp {
  display: none; }

header {
  padding: 24px 30px 0;
  width: 100%;
  min-width: 1200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: absolute;
  top: 0;
  left: 0; }
  header .logo {
    width: 225px; }
    header .logo img {
      width: 100%;
      height: auto; }
  header a:link {
    color: #212121;
    text-decoration: none; }
  header #gnav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 820px; }
    header #gnav ul li {
      margin: 0 20px;
      text-align: center; }
      header #gnav ul li a {
        display: block;
        font-weight: bold;
        color: #212121; }
      header #gnav ul li img {
        margin: 0 auto;
        display: block;
        width: 18px;
        height: auto; }
  header #btn-gnav,
  header #menu-bg {
    display: none; }

.inner {
  margin: 0 auto;
  padding: 0 30px;
  width: 1200px; }

main section {
  padding: 80px 0; }

.flex-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

footer {
  padding-bottom: 2em; }
  footer .flex-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
    footer .flex-wrap > div {
      width: 50%; }
      footer .flex-wrap > div:last-child {
        text-align: center; }
  footer h3 {
    margin: 1em 0 .5em;
    padding-bottom: .5em;
    color: #21AC38;
    border-bottom: solid 2px #8EC31F;
    font-size: 2.4rem; }
  footer h4 {
    margin: 1em auto;
    font-size: 2rem; }
  footer address {
    margin-bottom: 3rem; }
  footer .insta {
    margin-bottom: 3rem; }
  footer .copyright {
    font-size: 1.3rem; }

.form-wrap dl {
  margin-bottom: 1.5em; }

.form-wrap dt {
  font-weight: bold; }

.form-wrap .inputtext {
  padding: .5em;
  border-radius: 4px;
  background: #F3F3F3;
  -webkit-box-shadow: 1px 1px 0 1px rgba(0, 0, 0, 0.1) inset;
  box-shadow: 1px 1px 0 1px rgba(0, 0, 0, 0.1) inset;
  width: 100%; }

.form-wrap .btn {
  text-align: center; }
  .form-wrap .btn input {
    padding: .5em 1em;
    width: 50%;
    color: #fff;
    background: #21AC38;
    font-size: 1.8rem; }

.form-wrap .error {
  color: #c00;
  font-weight: bold; }

.btn-prv {
  margin-top: 2em;
  text-align: center; }
  .btn-prv a {
    color: #212121; }
  .btn-prv img {
    vertical-align: middle; }

@media screen and (max-width: 767px) {
  .pc {
    display: none !important; }
  .sp {
    display: block !important; }
  header {
    padding: 5px 0 0;
    width: 100%;
    min-width: 100%;
    height: 54px;
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0; }
    header .logo {
      margin-left: 15px;
      width: 150px; }
      header .logo img {
        width: 100%;
        height: auto; }
    header a:link {
      color: #212121;
      text-decoration: none; }
    header #gnav {
      padding: 10px 5px;
      display: none;
      background: #FBFAF0;
      position: absolute;
      left: 0;
      top: 54px; }
      header #gnav ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%; }
        header #gnav ul li {
          margin: 0;
          text-align: center;
          width: 50%; }
          header #gnav ul li a {
            padding: 5px;
            display: block;
            font-weight: bold; }
          header #gnav ul li img {
            margin: 0 auto;
            display: block;
            width: 18px;
            height: auto; }
    header #btn-gnav {
      position: absolute;
      top: 0;
      right: 0;
      width: 44px;
      height: 44px;
      background: transparent url(../img/common/btn_nav.png) no-repeat center center;
      background-size: 36px auto;
      cursor: pointer;
      display: block; }
    header #btn-gnav.close {
      background: transparent url(../img/common/btn_close.png) no-repeat center center;
      background-size: 36px auto; }
    header #menu-bg.no {
      display: none; }
    header #menu_bg {
      background: rgba(0, 0, 0, 0.6);
      height: 100%;
      top: 0;
      left: 0;
      position: fixed;
      width: 100%;
      z-index: 2000; }
    header #menu_bg a {
      height: 100%;
      top: 0;
      left: 0;
      width: 100%; }
  .inner {
    margin: 0 auto;
    padding: 0 3vw;
    width: 100%; }
  main section {
    padding: 30px 0; }
  .flex-wrap {
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .sp-flex-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  footer {
    padding-bottom: 2em; }
    footer .flex-wrap {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
      footer .flex-wrap > div {
        width: 100%; }
        footer .flex-wrap > div:last-child {
          text-align: center; }
    footer h3 {
      margin: 1em 0 .5em;
      padding-bottom: .5em;
      color: #21AC38;
      border-bottom: solid 2px #8EC31F;
      font-size: 2.4rem; }
    footer h4 {
      margin: 1em auto;
      font-size: 1.6rem; }
    footer address {
      margin-bottom: 3rem;
      font-size: 1.3rem; }
    footer .copyright {
      font-size: 1rem; }
  .form-wrap dl {
    margin-bottom: 1.5em; }
  .form-wrap dt {
    font-weight: bold; }
  .form-wrap .inputtext {
    padding: .5em;
    border-radius: 4px;
    background: #F3F3F3;
    -webkit-box-shadow: 1px 1px 0 1px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 1px 1px 0 1px rgba(0, 0, 0, 0.1) inset;
    width: 100%; }
  .form-wrap .btn {
    text-align: center; }
    .form-wrap .btn input {
      padding: .5em 1em;
      width: 90%;
      font-size: 1.8rem; }
  .form-wrap .error {
    color: #c00;
    font-weight: bold; }
  .btn-prv {
    margin-top: 2em;
    text-align: center; }
    .btn-prv a {
      color: #212121; }
    .btn-prv img {
      vertical-align: middle;
      width: 14px; } }
