@charset "UTF-8";
/*--------------------
共通設定
----------------------*/
* {
  padding: 0;
  margin: 0; }

img, video {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

a {
  text-decoration: none;
  color: #3c463c; }
  a:visited {
    color: #3c463c; }
  a.disabled {
    pointer-events: none;
    text-decoration: none; }

ul, ol {
  list-style: none; }

.fadein {
  opacity: 0;
  transition: opacity 1s, transform 1s; }
  .fadein.visible {
    opacity: 1; }

/*--------------------------------------------*/
.lp_wrapper {
  margin: 0 auto;
  box-sizing: border-box;
  background: #fdfdf8;
  letter-spacing: 0;
  color: #3c463c;
  font-size: 14px;
  text-align: center;
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  font-weight: 400;
  font-style: normal;
  font-weight: 400;
  min-height: 100vh;
  width: 100%;
  /* innerBox */ }
  .lp_wrapper .innerBox {
    max-width: 800px;
    margin: 10% auto; }
    .lp_wrapper .innerBox h1 {
      font-size: 1.2em;
      line-height: 2.0; }
      @media screen and (max-width: 600px) {
        .lp_wrapper .innerBox h1 {
          font-size: 3.7vw; } }
      .lp_wrapper .innerBox h1 span {
        display: block;
        font-size: 80%; }
    .lp_wrapper .innerBox .kv {
      display: block;
      margin: 10% auto; }
      @media screen and (max-width: 600px) {
        .lp_wrapper .innerBox .kv {
          margin: 10% auto 20%; } }
    .lp_wrapper .innerBox h2 {
      font-size: 1.1em;
      letter-spacing: .1em; }
      @media screen and (max-width: 600px) {
        .lp_wrapper .innerBox h2 {
          font-size: 3.5vw; } }
    .lp_wrapper .innerBox .txt {
      margin: 7% auto; }
      @media screen and (max-width: 600px) {
        .lp_wrapper .innerBox .txt {
          margin: 15% auto; } }
      .lp_wrapper .innerBox .txt p {
        letter-spacing: 1px;
        font-size: 1.0em;
        line-height: 2.2;
        margin-bottom: 7%; }
        @media screen and (max-width: 600px) {
          .lp_wrapper .innerBox .txt p {
            font-size: 3.0vw; } }
    .lp_wrapper .innerBox section {
      margin: 10% auto; }
      @media screen and (max-width: 1200px) {
        .lp_wrapper .innerBox section {
          width: 90%;
          margin: 20% auto; } }
      .lp_wrapper .innerBox section h3 {
        text-align: left;
        margin: 5% auto;
        font-size: 1.0em;
        font-weight: 600;
        padding: 0 0 .7em 0.3em;
        border-bottom: 1px solid #3c463c;
        letter-spacing: .1em; }
        @media screen and (max-width: 600px) {
          .lp_wrapper .innerBox section h3 {
            font-size: 3.0vw; } }
      .lp_wrapper .innerBox section ul {
        margin: 0 auto; }
        .lp_wrapper .innerBox section ul li {
          margin-bottom: 0.5em;
          padding-left: 1.5em;
          position: relative; }
          .lp_wrapper .innerBox section ul li::before {
            content: "・";
            position: absolute;
            top: 0;
            left: 0; }
          .lp_wrapper .innerBox section ul li p {
            font-size: 1.0em;
            text-align: left;
            line-height: 1.8; }
            @media screen and (max-width: 600px) {
              .lp_wrapper .innerBox section ul li p {
                font-size: 3.0vw; } }
    .lp_wrapper .innerBox .linkBtn {
      max-width: 400px;
      margin: 10% auto; }
      @media screen and (max-width: 600px) {
        .lp_wrapper .innerBox .linkBtn {
          width: 80%;
          margin-bottom: 15%; } }
      .lp_wrapper .innerBox .linkBtn a {
        display: block;
        background: #7A8C5B;
        color: #fdfdf8;
        line-height: 1;
        letter-spacing: .1em;
        font-size: 1.1em;
        padding: 1em 3.0em;
        transition: .4s; }
        @media screen and (max-width: 600px) {
          .lp_wrapper .innerBox .linkBtn a {
            font-size: 3.2vw; } }
        .lp_wrapper .innerBox .linkBtn a:hover {
          opacity: .7; }
