/* line 3, common.scss */
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%;
  vertical-align: baseline; }

/* line 23, common.scss */
*,
*::before,
*::after {
  box-sizing: border-box; }

/* line 28, common.scss */
html,
body {
  overflow-x: clip; }

/* line 32, common.scss */
html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth; }

/* line 37, common.scss */
body {
  font-size: 15px;
  color: #393939;
  line-height: 1;
  -webkit-font-smoothing: antialiased; }

/* line 43, common.scss */
:target {
  scroll-margin-top: 20px; }

/* line 46, common.scss */
body,
input,
textarea {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
  font-weight: 500; }

/* line 53, common.scss */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* line 57, common.scss */
caption,
th,
td {
  font-weight: normal;
  text-align: left; }

/* line 63, common.scss */
h1,
h2,
h3,
h4,
h5,
h6 {
  position: relative;
  color: #393939;
  clear: both;
  line-height: 1;
  letter-spacing: 0.05em;
  margin: 0;
  padding: 0; }

/* line 77, common.scss */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block; }

/* line 89, common.scss */
section {
  position: relative; }

/* line 92, common.scss */
p {
  color: #393939;
  margin-bottom: 15px;
  line-height: 1.9; }

/* line 97, common.scss */
ol,
ul {
  list-style: none; }

/* line 101, common.scss */
ul li,
ol li {
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 0 0 5px; }

/* line 108, common.scss */
ol {
  list-style: decimal;
  margin: 0 0 20px 1.5em; }

/* line 112, common.scss */
ul ul,
ol ol,
ul ol,
ol ul {
  margin-bottom: 0; }

/* line 118, common.scss */
dl {
  margin: 0 0 24px 0; }

/* line 121, common.scss */
dt,
dd {
  line-height: 1.6; }

/* line 125, common.scss */
dt {
  font-weight: bold; }

/* line 128, common.scss */
dd {
  margin: 0; }

/* line 131, common.scss */
strong {
  font-weight: bold; }

/* line 134, common.scss */
cite,
i {
  font-style: normal; }

/* line 138, common.scss */
sub,
sup {
  font-size: 60%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

/* line 145, common.scss */
sup {
  top: -0.6em; }

/* line 148, common.scss */
sub {
  bottom: -0.25em; }

/* line 151, common.scss */
small {
  font-size: smaller; }

/* line 154, common.scss */
img {
  border: none;
  vertical-align: top;
  max-width: 100%;
  height: auto; }
  /* line 159, common.scss */
  img.nosave {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-touch-callout: none;
    -moz-user-select: none;
    user-select: none; }

/* line 168, common.scss */
video {
  width: 100%; }

/* line 171, common.scss */
address {
  font-style: normal; }

/* line 174, common.scss */
.en {
  font-family: "Montserrat", sans-serif;
  font-weight: 500; }

/* line 180, common.scss */
.alignleft {
  float: left; }

/* line 183, common.scss */
.alignright {
  float: right; }

/* line 186, common.scss */
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

/* line 191, common.scss */
a {
  color: #393939;
  text-decoration: underline; }
  @media screen and (min-width: 800px) {
    /* line 195, common.scss */
    a:hover {
      text-decoration: none; }
      /* line 197, common.scss */
      a:hover img {
        opacity: 0.7; } }

/* line 204, common.scss */
a:focus, *:focus {
  outline: none; }

/* line 207, common.scss */
.pc {
  display: block; }
  @media screen and (max-width: 800px) {
    /* line 207, common.scss */
    .pc {
      display: none; } }

/* line 213, common.scss */
.sp {
  display: none; }
  @media screen and (max-width: 800px) {
    /* line 213, common.scss */
    .sp {
      display: block; } }

/* line 220, common.scss */
.cbox {
  position: relative;
  width: calc(100% - 44px);
  max-width: 1000px;
  margin: 0 auto;
  z-index: 2; }
  /* line 226, common.scss */
  .cbox.cbox1200 {
    max-width: 1200px; }

/* line 230, common.scss */
.btn {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 289px;
  height: 63px;
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  background-color: #007F3B;
  transition: background-color 0.3s ease-out; }
  @media screen and (min-width: 800px) {
    /* line 244, common.scss */
    .btn:hover {
      background-color: #0DA052; }
      /* line 246, common.scss */
      .btn:hover::after {
        right: 15px; } }
  @media screen and (max-width: 800px) {
    /* line 230, common.scss */
    .btn {
      max-width: 279px;
      height: 58px;
      font-size: 14px;
      margin: 0 auto;
      padding-left: 20px; } }
  /* line 258, common.scss */
  .btn::after {
    position: absolute;
    top: 50%;
    right: 18px;
    translate: 0 -50%;
    width: 18px;
    height: 19px;
    content: "";
    background-image: url("../img/arrow_r.svg");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: cover;
    transition: right 0.3s ease-out; }
  /* line 272, common.scss */
  .btn.center {
    margin: 0 auto; }
  /* line 275, common.scss */
  .btn.wide {
    max-width: 354px;
    padding-left: 30px; }
    @media screen and (min-width: 800px) {
      /* line 280, common.scss */
      .btn.wide:hover::after {
        right: 35px; } }
    @media screen and (max-width: 800px) {
      /* line 275, common.scss */
      .btn.wide {
        max-width: 280px;
        font-size: 16px; } }
    /* line 289, common.scss */
    .btn.wide::after {
      right: 38px; }
      @media screen and (max-width: 800px) {
        /* line 289, common.scss */
        .btn.wide::after {
          right: 20px; } }

/*
header
*/
/* line 303, common.scss */
header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  opacity: 0; }
  /* line 310, common.scss */
  header.start {
    opacity: 1; }
  /* line 313, common.scss */
  header h1 {
    position: absolute;
    top: 20px;
    left: 120px;
    width: 100%;
    max-width: 317px; }
    @media screen and (max-width: 800px) {
      /* line 313, common.scss */
      header h1 {
        left: 7px;
        top: 16px;
        max-width: 214px; } }
    /* line 324, common.scss */
    header h1 a {
      display: block; }
      /* line 327, common.scss */
      header h1 a:hover img {
        opacity: 1; }
      @media screen and (max-width: 800px) {
        /* line 331, common.scss */
        header h1 a img {
          width: 100%; } }

/* line 342, common.scss */
.headermenu {
  position: fixed;
  top: 0;
  right: 0;
  width: 320px;
  height: 84px;
  z-index: 5; }
  @media screen and (max-width: 800px) {
    /* line 342, common.scss */
    .headermenu {
      width: 126px;
      height: 60px; } }
  /* line 353, common.scss */
  .headermenu ul {
    display: flex;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0; }
    /* line 359, common.scss */
    .headermenu ul li {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
      /* line 364, common.scss */
      .headermenu ul li a {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #FFFFFF;
        font-size: 12px;
        letter-spacing: 0.01em;
        text-decoration: none; }
        @media screen and (max-width: 800px) {
          /* line 364, common.scss */
          .headermenu ul li a {
            font-size: 11px; } }
        /* line 377, common.scss */
        .headermenu ul li a .m-text {
          display: inline-block;
          height: 22px;
          background-repeat: no-repeat;
          background-position: left center; }
          @media screen and (max-width: 800px) {
            /* line 377, common.scss */
            .headermenu ul li a .m-text {
              height: auto;
              background-position: center top; } }
          @media screen and (max-width: 800px) {
            /* line 386, common.scss */
            .headermenu ul li a .m-text.mpc {
              display: none; } }
          /* line 391, common.scss */
          .headermenu ul li a .m-text.msp {
            display: none; }
            @media screen and (max-width: 800px) {
              /* line 391, common.scss */
              .headermenu ul li a .m-text.msp {
                display: block; } }
      /* line 400, common.scss */
      .headermenu ul li.mcontact a {
        background-color: #242424; }
        @media screen and (max-width: 800px) {
          /* line 400, common.scss */
          .headermenu ul li.mcontact a {
            background-image: url("../img/icon_contact.svg");
            background-position: center 40%;
            background-repeat: no-repeat; } }
        /* line 407, common.scss */
        .headermenu ul li.mcontact a .m-text {
          background-image: url("../img/icon_contact.svg");
          padding-left: 33px; }
          @media screen and (max-width: 800px) {
            /* line 407, common.scss */
            .headermenu ul li.mcontact a .m-text {
			 padding: 35px 0 0;
             background-image: none; } }
      /* line 417, common.scss */
      .headermenu ul li.mdownload a {
        background-color: #007F3B; }
        @media screen and (max-width: 800px) {
          /* line 417, common.scss */
          .headermenu ul li.mdownload a {
            align-items: flex-end;
            padding-bottom: 3px; } }
        /* line 423, common.scss */
        .headermenu ul li.mdownload a .m-text {
          background-image: url("../img/icon_download.svg");
          padding-left: 27px; }
          @media screen and (max-width: 800px) {
            /* line 423, common.scss */
            .headermenu ul li.mdownload a .m-text {
              padding: 25px 0 0; } }

/*
main
*/
/* line 443, common.scss */
main {
  position: relative;
  width: 100%;
  z-index: 0;
  opacity: 0; }
  /* line 448, common.scss */
  main.start {
    opacity: 1; }

/*
footer
*/
/* line 460, common.scss */
footer {
  position: relative;
  z-index: 1;
  width: 100%;
  text-align: center;
  background-color: #F4F4F4;
  margin: 0 auto;
  padding: 70px 22px 30px; }
  @media screen and (max-width: 800px) {
    /* line 460, common.scss */
    footer {
      padding: 0 22px 10px; } }
  /* line 471, common.scss */
  footer .logo {
    margin: 0 auto 25px; }
    @media screen and (max-width: 800px) {
      /* line 471, common.scss */
      footer .logo {
        max-width: 281px; } }
  /* line 477, common.scss */
  footer .copyright {
    font-size: 13px;
    line-height: 1.2;
    margin: 0; }
    @media screen and (max-width: 800px) {
      /* line 477, common.scss */
      footer .copyright {
        font-size: 11px; } }

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