@charset "UTF-8";
.container-fluid {
  position: relative;
  margin-bottom: 0;
  padding: 80px 20px;
}
.container-fluid:before {
  display: block;
  content: " ";
}
.container-fluid.full {
  padding-left: 0;
  padding-right: 0;
}

.container {
  margin-bottom: 80px;
  position: relative;
  /*max-width     : $main_width;
  width         : 100%;*/
  margin-left: auto;
  margin-right: auto;
}
.container:before {
  display: block;
  content: " ";
}

.row:before {
  display: block;
  content: " ";
}
.row:after {
  clear: both;
  display: block;
  content: " ";
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}
.row:last-child {
  margin-bottom: -30px;
}

.col-pc-1 {
  width: 100%;
}

.col-pc-offset-1 {
  margin-left: 100%;
}

.col-pc-1-1 {
  width: 100%;
}

.col-pc-offset-1-1 {
  margin-left: 100%;
}

.col-pc-2 {
  width: 50%;
}

.col-pc-offset-2 {
  margin-left: 50%;
}

.col-pc-2-1 {
  width: 50%;
}

.col-pc-offset-2-1 {
  margin-left: 50%;
}

.col-pc-3 {
  width: 33.3333333333%;
}

.col-pc-offset-3 {
  margin-left: 33.3333333333%;
}

.col-pc-3-1 {
  width: 33.3333333333%;
}

.col-pc-offset-3-1 {
  margin-left: 33.3333333333%;
}

.col-pc-3-2 {
  width: 66.6666666667%;
}

.col-pc-offset-3-2 {
  margin-left: 66.6666666667%;
}

.col-pc-4 {
  width: 25%;
}

.col-pc-offset-4 {
  margin-left: 25%;
}

.col-pc-4-1 {
  width: 25%;
}

.col-pc-offset-4-1 {
  margin-left: 25%;
}

.col-pc-4-2 {
  width: 50%;
}

.col-pc-offset-4-2 {
  margin-left: 50%;
}

.col-pc-4-3 {
  width: 75%;
}

.col-pc-offset-4-3 {
  margin-left: 75%;
}

.col-pc-5 {
  width: 20%;
}

.col-pc-offset-5 {
  margin-left: 20%;
}

.col-pc-5-1 {
  width: 20%;
}

.col-pc-offset-5-1 {
  margin-left: 20%;
}

.col-pc-5-2 {
  width: 40%;
}

.col-pc-offset-5-2 {
  margin-left: 40%;
}

.col-pc-5-3 {
  width: 60%;
}

.col-pc-offset-5-3 {
  margin-left: 60%;
}

.col-pc-5-4 {
  width: 80%;
}

.col-pc-offset-5-4 {
  margin-left: 80%;
}

.col-pc-6 {
  width: 16.6666666667%;
}

.col-pc-offset-6 {
  margin-left: 16.6666666667%;
}

.col-pc-6-1 {
  width: 16.6666666667%;
}

.col-pc-offset-6-1 {
  margin-left: 16.6666666667%;
}

.col-pc-6-2 {
  width: 33.3333333333%;
}

.col-pc-offset-6-2 {
  margin-left: 33.3333333333%;
}

.col-pc-6-3 {
  width: 50%;
}

.col-pc-offset-6-3 {
  margin-left: 50%;
}

.col-pc-6-4 {
  width: 66.6666666667%;
}

.col-pc-offset-6-4 {
  margin-left: 66.6666666667%;
}

.col-pc-6-5 {
  width: 83.3333333333%;
}

.col-pc-offset-6-5 {
  margin-left: 83.3333333333%;
}

.col-pc-7 {
  width: 14.2857142857%;
}

.col-pc-offset-7 {
  margin-left: 14.2857142857%;
}

.col-pc-7-1 {
  width: 14.2857142857%;
}

.col-pc-offset-7-1 {
  margin-left: 14.2857142857%;
}

.col-pc-7-2 {
  width: 28.5714285714%;
}

.col-pc-offset-7-2 {
  margin-left: 28.5714285714%;
}

.col-pc-7-3 {
  width: 42.8571428571%;
}

.col-pc-offset-7-3 {
  margin-left: 42.8571428571%;
}

.col-pc-7-4 {
  width: 57.1428571429%;
}

.col-pc-offset-7-4 {
  margin-left: 57.1428571429%;
}

.col-pc-7-5 {
  width: 71.4285714286%;
}

.col-pc-offset-7-5 {
  margin-left: 71.4285714286%;
}

.col-pc-7-6 {
  width: 85.7142857143%;
}

.col-pc-offset-7-6 {
  margin-left: 85.7142857143%;
}

.col-pc-8 {
  width: 12.5%;
}

.col-pc-offset-8 {
  margin-left: 12.5%;
}

.col-pc-8-1 {
  width: 12.5%;
}

.col-pc-offset-8-1 {
  margin-left: 12.5%;
}

.col-pc-8-2 {
  width: 25%;
}

.col-pc-offset-8-2 {
  margin-left: 25%;
}

.col-pc-8-3 {
  width: 37.5%;
}

.col-pc-offset-8-3 {
  margin-left: 37.5%;
}

.col-pc-8-4 {
  width: 50%;
}

.col-pc-offset-8-4 {
  margin-left: 50%;
}

.col-pc-8-5 {
  width: 62.5%;
}

.col-pc-offset-8-5 {
  margin-left: 62.5%;
}

.col-pc-8-6 {
  width: 75%;
}

.col-pc-offset-8-6 {
  margin-left: 75%;
}

.col-pc-8-7 {
  width: 87.5%;
}

.col-pc-offset-8-7 {
  margin-left: 87.5%;
}

.col-pc-9 {
  width: 11.1111111111%;
}

.col-pc-offset-9 {
  margin-left: 11.1111111111%;
}

.col-pc-9-1 {
  width: 11.1111111111%;
}

.col-pc-offset-9-1 {
  margin-left: 11.1111111111%;
}

.col-pc-9-2 {
  width: 22.2222222222%;
}

.col-pc-offset-9-2 {
  margin-left: 22.2222222222%;
}

.col-pc-9-3 {
  width: 33.3333333333%;
}

.col-pc-offset-9-3 {
  margin-left: 33.3333333333%;
}

.col-pc-9-4 {
  width: 44.4444444444%;
}

.col-pc-offset-9-4 {
  margin-left: 44.4444444444%;
}

.col-pc-9-5 {
  width: 55.5555555556%;
}

.col-pc-offset-9-5 {
  margin-left: 55.5555555556%;
}

.col-pc-9-6 {
  width: 66.6666666667%;
}

.col-pc-offset-9-6 {
  margin-left: 66.6666666667%;
}

.col-pc-9-7 {
  width: 77.7777777778%;
}

.col-pc-offset-9-7 {
  margin-left: 77.7777777778%;
}

.col-pc-9-8 {
  width: 88.8888888889%;
}

.col-pc-offset-9-8 {
  margin-left: 88.8888888889%;
}

.col-pc-10 {
  width: 10%;
}

.col-pc-offset-10 {
  margin-left: 10%;
}

.col-pc-10-1 {
  width: 10%;
}

.col-pc-offset-10-1 {
  margin-left: 10%;
}

.col-pc-10-2 {
  width: 20%;
}

.col-pc-offset-10-2 {
  margin-left: 20%;
}

.col-pc-10-3 {
  width: 30%;
}

.col-pc-offset-10-3 {
  margin-left: 30%;
}

.col-pc-10-4 {
  width: 40%;
}

.col-pc-offset-10-4 {
  margin-left: 40%;
}

.col-pc-10-5 {
  width: 50%;
}

.col-pc-offset-10-5 {
  margin-left: 50%;
}

.col-pc-10-6 {
  width: 60%;
}

.col-pc-offset-10-6 {
  margin-left: 60%;
}

.col-pc-10-7 {
  width: 70%;
}

.col-pc-offset-10-7 {
  margin-left: 70%;
}

.col-pc-10-8 {
  width: 80%;
}

.col-pc-offset-10-8 {
  margin-left: 80%;
}

.col-pc-10-9 {
  width: 90%;
}

.col-pc-offset-10-9 {
  margin-left: 90%;
}

.col-pc-11 {
  width: 9.0909090909%;
}

.col-pc-offset-11 {
  margin-left: 9.0909090909%;
}

.col-pc-11-1 {
  width: 9.0909090909%;
}

.col-pc-offset-11-1 {
  margin-left: 9.0909090909%;
}

.col-pc-11-2 {
  width: 18.1818181818%;
}

.col-pc-offset-11-2 {
  margin-left: 18.1818181818%;
}

.col-pc-11-3 {
  width: 27.2727272727%;
}

.col-pc-offset-11-3 {
  margin-left: 27.2727272727%;
}

.col-pc-11-4 {
  width: 36.3636363636%;
}

.col-pc-offset-11-4 {
  margin-left: 36.3636363636%;
}

.col-pc-11-5 {
  width: 45.4545454545%;
}

.col-pc-offset-11-5 {
  margin-left: 45.4545454545%;
}

.col-pc-11-6 {
  width: 54.5454545455%;
}

.col-pc-offset-11-6 {
  margin-left: 54.5454545455%;
}

.col-pc-11-7 {
  width: 63.6363636364%;
}

.col-pc-offset-11-7 {
  margin-left: 63.6363636364%;
}

.col-pc-11-8 {
  width: 72.7272727273%;
}

.col-pc-offset-11-8 {
  margin-left: 72.7272727273%;
}

.col-pc-11-9 {
  width: 81.8181818182%;
}

.col-pc-offset-11-9 {
  margin-left: 81.8181818182%;
}

.col-pc-11-10 {
  width: 90.9090909091%;
}

.col-pc-offset-11-10 {
  margin-left: 90.9090909091%;
}

.col-pc-12 {
  width: 8.3333333333%;
}

.col-pc-offset-12 {
  margin-left: 8.3333333333%;
}

.col-pc-12-1 {
  width: 8.3333333333%;
}

.col-pc-offset-12-1 {
  margin-left: 8.3333333333%;
}

.col-pc-12-2 {
  width: 16.6666666667%;
}

.col-pc-offset-12-2 {
  margin-left: 16.6666666667%;
}

.col-pc-12-3 {
  width: 25%;
}

.col-pc-offset-12-3 {
  margin-left: 25%;
}

.col-pc-12-4 {
  width: 33.3333333333%;
}

.col-pc-offset-12-4 {
  margin-left: 33.3333333333%;
}

.col-pc-12-5 {
  width: 41.6666666667%;
}

.col-pc-offset-12-5 {
  margin-left: 41.6666666667%;
}

.col-pc-12-6 {
  width: 50%;
}

.col-pc-offset-12-6 {
  margin-left: 50%;
}

.col-pc-12-7 {
  width: 58.3333333333%;
}

.col-pc-offset-12-7 {
  margin-left: 58.3333333333%;
}

.col-pc-12-8 {
  width: 66.6666666667%;
}

.col-pc-offset-12-8 {
  margin-left: 66.6666666667%;
}

.col-pc-12-9 {
  width: 75%;
}

.col-pc-offset-12-9 {
  margin-left: 75%;
}

.col-pc-12-10 {
  width: 83.3333333333%;
}

.col-pc-offset-12-10 {
  margin-left: 83.3333333333%;
}

.col-pc-12-11 {
  width: 91.6666666667%;
}

.col-pc-offset-12-11 {
  margin-left: 91.6666666667%;
}

[class^=col-] {
  float: left;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 30px;
  word-wrap: break-word;
}

@media only screen and (max-width: 1079px) {
  .col-tb-1 {
    width: 100%;
  }
  .col-tb-offset-1 {
    margin-left: 100%;
  }
  .col-tb-1-1 {
    width: 100%;
  }
  .col-tb-offset-1-1 {
    margin-left: 100%;
  }
  .col-tb-2 {
    width: 50%;
  }
  .col-tb-offset-2 {
    margin-left: 50%;
  }
  .col-tb-2-1 {
    width: 50%;
  }
  .col-tb-offset-2-1 {
    margin-left: 50%;
  }
  .col-tb-3 {
    width: 33.3333333333%;
  }
  .col-tb-offset-3 {
    margin-left: 33.3333333333%;
  }
  .col-tb-3-1 {
    width: 33.3333333333%;
  }
  .col-tb-offset-3-1 {
    margin-left: 33.3333333333%;
  }
  .col-tb-3-2 {
    width: 66.6666666667%;
  }
  .col-tb-offset-3-2 {
    margin-left: 66.6666666667%;
  }
  .col-tb-4 {
    width: 25%;
  }
  .col-tb-offset-4 {
    margin-left: 25%;
  }
  .col-tb-4-1 {
    width: 25%;
  }
  .col-tb-offset-4-1 {
    margin-left: 25%;
  }
  .col-tb-4-2 {
    width: 50%;
  }
  .col-tb-offset-4-2 {
    margin-left: 50%;
  }
  .col-tb-4-3 {
    width: 75%;
  }
  .col-tb-offset-4-3 {
    margin-left: 75%;
  }
  .col-tb-5 {
    width: 20%;
  }
  .col-tb-offset-5 {
    margin-left: 20%;
  }
  .col-tb-5-1 {
    width: 20%;
  }
  .col-tb-offset-5-1 {
    margin-left: 20%;
  }
  .col-tb-5-2 {
    width: 40%;
  }
  .col-tb-offset-5-2 {
    margin-left: 40%;
  }
  .col-tb-5-3 {
    width: 60%;
  }
  .col-tb-offset-5-3 {
    margin-left: 60%;
  }
  .col-tb-5-4 {
    width: 80%;
  }
  .col-tb-offset-5-4 {
    margin-left: 80%;
  }
  .col-tb-6 {
    width: 16.6666666667%;
  }
  .col-tb-offset-6 {
    margin-left: 16.6666666667%;
  }
  .col-tb-6-1 {
    width: 16.6666666667%;
  }
  .col-tb-offset-6-1 {
    margin-left: 16.6666666667%;
  }
  .col-tb-6-2 {
    width: 33.3333333333%;
  }
  .col-tb-offset-6-2 {
    margin-left: 33.3333333333%;
  }
  .col-tb-6-3 {
    width: 50%;
  }
  .col-tb-offset-6-3 {
    margin-left: 50%;
  }
  .col-tb-6-4 {
    width: 66.6666666667%;
  }
  .col-tb-offset-6-4 {
    margin-left: 66.6666666667%;
  }
  .col-tb-6-5 {
    width: 83.3333333333%;
  }
  .col-tb-offset-6-5 {
    margin-left: 83.3333333333%;
  }
  .col-tb-7 {
    width: 14.2857142857%;
  }
  .col-tb-offset-7 {
    margin-left: 14.2857142857%;
  }
  .col-tb-7-1 {
    width: 14.2857142857%;
  }
  .col-tb-offset-7-1 {
    margin-left: 14.2857142857%;
  }
  .col-tb-7-2 {
    width: 28.5714285714%;
  }
  .col-tb-offset-7-2 {
    margin-left: 28.5714285714%;
  }
  .col-tb-7-3 {
    width: 42.8571428571%;
  }
  .col-tb-offset-7-3 {
    margin-left: 42.8571428571%;
  }
  .col-tb-7-4 {
    width: 57.1428571429%;
  }
  .col-tb-offset-7-4 {
    margin-left: 57.1428571429%;
  }
  .col-tb-7-5 {
    width: 71.4285714286%;
  }
  .col-tb-offset-7-5 {
    margin-left: 71.4285714286%;
  }
  .col-tb-7-6 {
    width: 85.7142857143%;
  }
  .col-tb-offset-7-6 {
    margin-left: 85.7142857143%;
  }
  .col-tb-8 {
    width: 12.5%;
  }
  .col-tb-offset-8 {
    margin-left: 12.5%;
  }
  .col-tb-8-1 {
    width: 12.5%;
  }
  .col-tb-offset-8-1 {
    margin-left: 12.5%;
  }
  .col-tb-8-2 {
    width: 25%;
  }
  .col-tb-offset-8-2 {
    margin-left: 25%;
  }
  .col-tb-8-3 {
    width: 37.5%;
  }
  .col-tb-offset-8-3 {
    margin-left: 37.5%;
  }
  .col-tb-8-4 {
    width: 50%;
  }
  .col-tb-offset-8-4 {
    margin-left: 50%;
  }
  .col-tb-8-5 {
    width: 62.5%;
  }
  .col-tb-offset-8-5 {
    margin-left: 62.5%;
  }
  .col-tb-8-6 {
    width: 75%;
  }
  .col-tb-offset-8-6 {
    margin-left: 75%;
  }
  .col-tb-8-7 {
    width: 87.5%;
  }
  .col-tb-offset-8-7 {
    margin-left: 87.5%;
  }
  .col-tb-9 {
    width: 11.1111111111%;
  }
  .col-tb-offset-9 {
    margin-left: 11.1111111111%;
  }
  .col-tb-9-1 {
    width: 11.1111111111%;
  }
  .col-tb-offset-9-1 {
    margin-left: 11.1111111111%;
  }
  .col-tb-9-2 {
    width: 22.2222222222%;
  }
  .col-tb-offset-9-2 {
    margin-left: 22.2222222222%;
  }
  .col-tb-9-3 {
    width: 33.3333333333%;
  }
  .col-tb-offset-9-3 {
    margin-left: 33.3333333333%;
  }
  .col-tb-9-4 {
    width: 44.4444444444%;
  }
  .col-tb-offset-9-4 {
    margin-left: 44.4444444444%;
  }
  .col-tb-9-5 {
    width: 55.5555555556%;
  }
  .col-tb-offset-9-5 {
    margin-left: 55.5555555556%;
  }
  .col-tb-9-6 {
    width: 66.6666666667%;
  }
  .col-tb-offset-9-6 {
    margin-left: 66.6666666667%;
  }
  .col-tb-9-7 {
    width: 77.7777777778%;
  }
  .col-tb-offset-9-7 {
    margin-left: 77.7777777778%;
  }
  .col-tb-9-8 {
    width: 88.8888888889%;
  }
  .col-tb-offset-9-8 {
    margin-left: 88.8888888889%;
  }
  .col-tb-10 {
    width: 10%;
  }
  .col-tb-offset-10 {
    margin-left: 10%;
  }
  .col-tb-10-1 {
    width: 10%;
  }
  .col-tb-offset-10-1 {
    margin-left: 10%;
  }
  .col-tb-10-2 {
    width: 20%;
  }
  .col-tb-offset-10-2 {
    margin-left: 20%;
  }
  .col-tb-10-3 {
    width: 30%;
  }
  .col-tb-offset-10-3 {
    margin-left: 30%;
  }
  .col-tb-10-4 {
    width: 40%;
  }
  .col-tb-offset-10-4 {
    margin-left: 40%;
  }
  .col-tb-10-5 {
    width: 50%;
  }
  .col-tb-offset-10-5 {
    margin-left: 50%;
  }
  .col-tb-10-6 {
    width: 60%;
  }
  .col-tb-offset-10-6 {
    margin-left: 60%;
  }
  .col-tb-10-7 {
    width: 70%;
  }
  .col-tb-offset-10-7 {
    margin-left: 70%;
  }
  .col-tb-10-8 {
    width: 80%;
  }
  .col-tb-offset-10-8 {
    margin-left: 80%;
  }
  .col-tb-10-9 {
    width: 90%;
  }
  .col-tb-offset-10-9 {
    margin-left: 90%;
  }
  .col-tb-11 {
    width: 9.0909090909%;
  }
  .col-tb-offset-11 {
    margin-left: 9.0909090909%;
  }
  .col-tb-11-1 {
    width: 9.0909090909%;
  }
  .col-tb-offset-11-1 {
    margin-left: 9.0909090909%;
  }
  .col-tb-11-2 {
    width: 18.1818181818%;
  }
  .col-tb-offset-11-2 {
    margin-left: 18.1818181818%;
  }
  .col-tb-11-3 {
    width: 27.2727272727%;
  }
  .col-tb-offset-11-3 {
    margin-left: 27.2727272727%;
  }
  .col-tb-11-4 {
    width: 36.3636363636%;
  }
  .col-tb-offset-11-4 {
    margin-left: 36.3636363636%;
  }
  .col-tb-11-5 {
    width: 45.4545454545%;
  }
  .col-tb-offset-11-5 {
    margin-left: 45.4545454545%;
  }
  .col-tb-11-6 {
    width: 54.5454545455%;
  }
  .col-tb-offset-11-6 {
    margin-left: 54.5454545455%;
  }
  .col-tb-11-7 {
    width: 63.6363636364%;
  }
  .col-tb-offset-11-7 {
    margin-left: 63.6363636364%;
  }
  .col-tb-11-8 {
    width: 72.7272727273%;
  }
  .col-tb-offset-11-8 {
    margin-left: 72.7272727273%;
  }
  .col-tb-11-9 {
    width: 81.8181818182%;
  }
  .col-tb-offset-11-9 {
    margin-left: 81.8181818182%;
  }
  .col-tb-11-10 {
    width: 90.9090909091%;
  }
  .col-tb-offset-11-10 {
    margin-left: 90.9090909091%;
  }
  .col-tb-12 {
    width: 8.3333333333%;
  }
  .col-tb-offset-12 {
    margin-left: 8.3333333333%;
  }
  .col-tb-12-1 {
    width: 8.3333333333%;
  }
  .col-tb-offset-12-1 {
    margin-left: 8.3333333333%;
  }
  .col-tb-12-2 {
    width: 16.6666666667%;
  }
  .col-tb-offset-12-2 {
    margin-left: 16.6666666667%;
  }
  .col-tb-12-3 {
    width: 25%;
  }
  .col-tb-offset-12-3 {
    margin-left: 25%;
  }
  .col-tb-12-4 {
    width: 33.3333333333%;
  }
  .col-tb-offset-12-4 {
    margin-left: 33.3333333333%;
  }
  .col-tb-12-5 {
    width: 41.6666666667%;
  }
  .col-tb-offset-12-5 {
    margin-left: 41.6666666667%;
  }
  .col-tb-12-6 {
    width: 50%;
  }
  .col-tb-offset-12-6 {
    margin-left: 50%;
  }
  .col-tb-12-7 {
    width: 58.3333333333%;
  }
  .col-tb-offset-12-7 {
    margin-left: 58.3333333333%;
  }
  .col-tb-12-8 {
    width: 66.6666666667%;
  }
  .col-tb-offset-12-8 {
    margin-left: 66.6666666667%;
  }
  .col-tb-12-9 {
    width: 75%;
  }
  .col-tb-offset-12-9 {
    margin-left: 75%;
  }
  .col-tb-12-10 {
    width: 83.3333333333%;
  }
  .col-tb-offset-12-10 {
    margin-left: 83.3333333333%;
  }
  .col-tb-12-11 {
    width: 91.6666666667%;
  }
  .col-tb-offset-12-11 {
    margin-left: 91.6666666667%;
  }
}
@media only screen and (max-width: 820px) {
  .container-fluid {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .container {
    margin-bottom: 40px;
  }
  [class^=col-pc-] {
    width: 100%;
    margin-left: 0;
  }
  [class^=col-tb-] {
    width: 100%;
    margin-left: 0;
  }
  [class^=col-] {
    float: left;
    padding-left: 15px;
    padding-right: 15px;
  }
  .col-sp-1 {
    width: 100%;
  }
  .col-sp-offset-1 {
    margin-left: 100%;
  }
  .col-sp-1-1 {
    width: 100%;
  }
  .col-sp-offset-1-1 {
    margin-left: 100%;
  }
  .col-sp-2 {
    width: 50%;
  }
  .col-sp-offset-2 {
    margin-left: 50%;
  }
  .col-sp-2-1 {
    width: 50%;
  }
  .col-sp-offset-2-1 {
    margin-left: 50%;
  }
  .col-sp-3 {
    width: 33.3333333333%;
  }
  .col-sp-offset-3 {
    margin-left: 33.3333333333%;
  }
  .col-sp-3-1 {
    width: 33.3333333333%;
  }
  .col-sp-offset-3-1 {
    margin-left: 33.3333333333%;
  }
  .col-sp-3-2 {
    width: 66.6666666667%;
  }
  .col-sp-offset-3-2 {
    margin-left: 66.6666666667%;
  }
  .col-sp-4 {
    width: 25%;
  }
  .col-sp-offset-4 {
    margin-left: 25%;
  }
  .col-sp-4-1 {
    width: 25%;
  }
  .col-sp-offset-4-1 {
    margin-left: 25%;
  }
  .col-sp-4-2 {
    width: 50%;
  }
  .col-sp-offset-4-2 {
    margin-left: 50%;
  }
  .col-sp-4-3 {
    width: 75%;
  }
  .col-sp-offset-4-3 {
    margin-left: 75%;
  }
  .col-sp-5 {
    width: 20%;
  }
  .col-sp-offset-5 {
    margin-left: 20%;
  }
  .col-sp-5-1 {
    width: 20%;
  }
  .col-sp-offset-5-1 {
    margin-left: 20%;
  }
  .col-sp-5-2 {
    width: 40%;
  }
  .col-sp-offset-5-2 {
    margin-left: 40%;
  }
  .col-sp-5-3 {
    width: 60%;
  }
  .col-sp-offset-5-3 {
    margin-left: 60%;
  }
  .col-sp-5-4 {
    width: 80%;
  }
  .col-sp-offset-5-4 {
    margin-left: 80%;
  }
  .col-sp-6 {
    width: 16.6666666667%;
  }
  .col-sp-offset-6 {
    margin-left: 16.6666666667%;
  }
  .col-sp-6-1 {
    width: 16.6666666667%;
  }
  .col-sp-offset-6-1 {
    margin-left: 16.6666666667%;
  }
  .col-sp-6-2 {
    width: 33.3333333333%;
  }
  .col-sp-offset-6-2 {
    margin-left: 33.3333333333%;
  }
  .col-sp-6-3 {
    width: 50%;
  }
  .col-sp-offset-6-3 {
    margin-left: 50%;
  }
  .col-sp-6-4 {
    width: 66.6666666667%;
  }
  .col-sp-offset-6-4 {
    margin-left: 66.6666666667%;
  }
  .col-sp-6-5 {
    width: 83.3333333333%;
  }
  .col-sp-offset-6-5 {
    margin-left: 83.3333333333%;
  }
  .col-sp-7 {
    width: 14.2857142857%;
  }
  .col-sp-offset-7 {
    margin-left: 14.2857142857%;
  }
  .col-sp-7-1 {
    width: 14.2857142857%;
  }
  .col-sp-offset-7-1 {
    margin-left: 14.2857142857%;
  }
  .col-sp-7-2 {
    width: 28.5714285714%;
  }
  .col-sp-offset-7-2 {
    margin-left: 28.5714285714%;
  }
  .col-sp-7-3 {
    width: 42.8571428571%;
  }
  .col-sp-offset-7-3 {
    margin-left: 42.8571428571%;
  }
  .col-sp-7-4 {
    width: 57.1428571429%;
  }
  .col-sp-offset-7-4 {
    margin-left: 57.1428571429%;
  }
  .col-sp-7-5 {
    width: 71.4285714286%;
  }
  .col-sp-offset-7-5 {
    margin-left: 71.4285714286%;
  }
  .col-sp-7-6 {
    width: 85.7142857143%;
  }
  .col-sp-offset-7-6 {
    margin-left: 85.7142857143%;
  }
  .col-sp-8 {
    width: 12.5%;
  }
  .col-sp-offset-8 {
    margin-left: 12.5%;
  }
  .col-sp-8-1 {
    width: 12.5%;
  }
  .col-sp-offset-8-1 {
    margin-left: 12.5%;
  }
  .col-sp-8-2 {
    width: 25%;
  }
  .col-sp-offset-8-2 {
    margin-left: 25%;
  }
  .col-sp-8-3 {
    width: 37.5%;
  }
  .col-sp-offset-8-3 {
    margin-left: 37.5%;
  }
  .col-sp-8-4 {
    width: 50%;
  }
  .col-sp-offset-8-4 {
    margin-left: 50%;
  }
  .col-sp-8-5 {
    width: 62.5%;
  }
  .col-sp-offset-8-5 {
    margin-left: 62.5%;
  }
  .col-sp-8-6 {
    width: 75%;
  }
  .col-sp-offset-8-6 {
    margin-left: 75%;
  }
  .col-sp-8-7 {
    width: 87.5%;
  }
  .col-sp-offset-8-7 {
    margin-left: 87.5%;
  }
  .col-sp-9 {
    width: 11.1111111111%;
  }
  .col-sp-offset-9 {
    margin-left: 11.1111111111%;
  }
  .col-sp-9-1 {
    width: 11.1111111111%;
  }
  .col-sp-offset-9-1 {
    margin-left: 11.1111111111%;
  }
  .col-sp-9-2 {
    width: 22.2222222222%;
  }
  .col-sp-offset-9-2 {
    margin-left: 22.2222222222%;
  }
  .col-sp-9-3 {
    width: 33.3333333333%;
  }
  .col-sp-offset-9-3 {
    margin-left: 33.3333333333%;
  }
  .col-sp-9-4 {
    width: 44.4444444444%;
  }
  .col-sp-offset-9-4 {
    margin-left: 44.4444444444%;
  }
  .col-sp-9-5 {
    width: 55.5555555556%;
  }
  .col-sp-offset-9-5 {
    margin-left: 55.5555555556%;
  }
  .col-sp-9-6 {
    width: 66.6666666667%;
  }
  .col-sp-offset-9-6 {
    margin-left: 66.6666666667%;
  }
  .col-sp-9-7 {
    width: 77.7777777778%;
  }
  .col-sp-offset-9-7 {
    margin-left: 77.7777777778%;
  }
  .col-sp-9-8 {
    width: 88.8888888889%;
  }
  .col-sp-offset-9-8 {
    margin-left: 88.8888888889%;
  }
  .col-sp-10 {
    width: 10%;
  }
  .col-sp-offset-10 {
    margin-left: 10%;
  }
  .col-sp-10-1 {
    width: 10%;
  }
  .col-sp-offset-10-1 {
    margin-left: 10%;
  }
  .col-sp-10-2 {
    width: 20%;
  }
  .col-sp-offset-10-2 {
    margin-left: 20%;
  }
  .col-sp-10-3 {
    width: 30%;
  }
  .col-sp-offset-10-3 {
    margin-left: 30%;
  }
  .col-sp-10-4 {
    width: 40%;
  }
  .col-sp-offset-10-4 {
    margin-left: 40%;
  }
  .col-sp-10-5 {
    width: 50%;
  }
  .col-sp-offset-10-5 {
    margin-left: 50%;
  }
  .col-sp-10-6 {
    width: 60%;
  }
  .col-sp-offset-10-6 {
    margin-left: 60%;
  }
  .col-sp-10-7 {
    width: 70%;
  }
  .col-sp-offset-10-7 {
    margin-left: 70%;
  }
  .col-sp-10-8 {
    width: 80%;
  }
  .col-sp-offset-10-8 {
    margin-left: 80%;
  }
  .col-sp-10-9 {
    width: 90%;
  }
  .col-sp-offset-10-9 {
    margin-left: 90%;
  }
  .col-sp-11 {
    width: 9.0909090909%;
  }
  .col-sp-offset-11 {
    margin-left: 9.0909090909%;
  }
  .col-sp-11-1 {
    width: 9.0909090909%;
  }
  .col-sp-offset-11-1 {
    margin-left: 9.0909090909%;
  }
  .col-sp-11-2 {
    width: 18.1818181818%;
  }
  .col-sp-offset-11-2 {
    margin-left: 18.1818181818%;
  }
  .col-sp-11-3 {
    width: 27.2727272727%;
  }
  .col-sp-offset-11-3 {
    margin-left: 27.2727272727%;
  }
  .col-sp-11-4 {
    width: 36.3636363636%;
  }
  .col-sp-offset-11-4 {
    margin-left: 36.3636363636%;
  }
  .col-sp-11-5 {
    width: 45.4545454545%;
  }
  .col-sp-offset-11-5 {
    margin-left: 45.4545454545%;
  }
  .col-sp-11-6 {
    width: 54.5454545455%;
  }
  .col-sp-offset-11-6 {
    margin-left: 54.5454545455%;
  }
  .col-sp-11-7 {
    width: 63.6363636364%;
  }
  .col-sp-offset-11-7 {
    margin-left: 63.6363636364%;
  }
  .col-sp-11-8 {
    width: 72.7272727273%;
  }
  .col-sp-offset-11-8 {
    margin-left: 72.7272727273%;
  }
  .col-sp-11-9 {
    width: 81.8181818182%;
  }
  .col-sp-offset-11-9 {
    margin-left: 81.8181818182%;
  }
  .col-sp-11-10 {
    width: 90.9090909091%;
  }
  .col-sp-offset-11-10 {
    margin-left: 90.9090909091%;
  }
  .col-sp-12 {
    width: 8.3333333333%;
  }
  .col-sp-offset-12 {
    margin-left: 8.3333333333%;
  }
  .col-sp-12-1 {
    width: 8.3333333333%;
  }
  .col-sp-offset-12-1 {
    margin-left: 8.3333333333%;
  }
  .col-sp-12-2 {
    width: 16.6666666667%;
  }
  .col-sp-offset-12-2 {
    margin-left: 16.6666666667%;
  }
  .col-sp-12-3 {
    width: 25%;
  }
  .col-sp-offset-12-3 {
    margin-left: 25%;
  }
  .col-sp-12-4 {
    width: 33.3333333333%;
  }
  .col-sp-offset-12-4 {
    margin-left: 33.3333333333%;
  }
  .col-sp-12-5 {
    width: 41.6666666667%;
  }
  .col-sp-offset-12-5 {
    margin-left: 41.6666666667%;
  }
  .col-sp-12-6 {
    width: 50%;
  }
  .col-sp-offset-12-6 {
    margin-left: 50%;
  }
  .col-sp-12-7 {
    width: 58.3333333333%;
  }
  .col-sp-offset-12-7 {
    margin-left: 58.3333333333%;
  }
  .col-sp-12-8 {
    width: 66.6666666667%;
  }
  .col-sp-offset-12-8 {
    margin-left: 66.6666666667%;
  }
  .col-sp-12-9 {
    width: 75%;
  }
  .col-sp-offset-12-9 {
    margin-left: 75%;
  }
  .col-sp-12-10 {
    width: 83.3333333333%;
  }
  .col-sp-offset-12-10 {
    margin-left: 83.3333333333%;
  }
  .col-sp-12-11 {
    width: 91.6666666667%;
  }
  .col-sp-offset-12-11 {
    margin-left: 91.6666666667%;
  }
}
html.openMenu {
  overflow-y: scroll !important;
  height: 100%;
}
html.openMenu body {
  overflow: hidden !important;
  height: 100%;
}
html.openMenu #sp_nav {
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

body {
  overflow-y: scroll;
}
body.scrollstop {
  overflow: hidden;
}
body.fixed:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: background 0.8s ease-out 0.2s;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 10;
}

main {
  overflow: hidden;
}

.container-inner {
  position: relative;
  width: 1080px;
  max-width: 1080px;
  width: auto;
  margin-left: auto;
  margin-right: auto;
}
.container-inner:after {
  content: " ";
  display: block;
  clear: both;
}

main {
  overflow: hidden;
}

#logo {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  padding: 23px;
  z-index: 100;
  opacity: 0;
}
#logo.on {
  transition: opacity 1.5s ease-in-out;
  opacity: 1;
}
@media only screen and (max-width: 820px) {
  #logo {
    padding: 14px;
    width: 68px;
  }
  #logo img {
    width: 100%;
    height: 100%;
  }
}

.contents_fix {
  width: 100vw;
}

.contents_ttl {
  font-size: 1.3rem;
  font-weight: bold;
  max-width: 1230px;
  margin: 0 auto 70px;
  padding: 0 15px 1em;
  position: relative;
}
.contents_ttl:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 15px;
  width: calc(100% - 30px);
  height: 1px;
  background: #333;
}
.contents_ttl span {
  position: relative;
  display: inline-block;
}
.contents_ttl span:before {
  content: "";
  position: absolute;
  bottom: -1em;
  left: 0;
  width: 100%;
  height: 3px;
  background: #333;
}
.contents_ttl + p {
  font-size: 1.4rem;
  width: 100%;
  max-width: 1215px;
  margin: 0;
}
@media only screen and (min-width: 821px) {
  .contents_ttl + p {
    position: absolute;
    top: 130px;
    right: 50%;
    transform: translateX(50%);
    text-align: right;
    margin-right: 15px;
  }
}
@media only screen and (max-width: 820px) {
  .contents_ttl {
    max-width: 100%;
    margin: 0 auto 35px;
  }
  .contents_ttl + p {
    position: relative;
    padding: 0 15px;
    margin-top: -1em;
  }
}
.bg .contents_ttl {
  color: #fff;
}
.bg .contents_ttl:before {
  background: #fff;
}
.bg .contents_ttl span:before {
  background: #fff;
}

.contents {
  padding: 125px 0;
  position: relative;
}
@media only screen and (max-width: 820px) {
  .contents {
    padding: 60px 0;
  }
}
.bg .contents {
  color: #fff;
}

/*
#cover-page {
	position: fixed;
	width: 100%;
	height: 100vh;
	background: #202121;
	z-index: 5000;

	transition: .5s;

}
*/
#float_bnr {
  display: none;
  position: fixed;
  right: 1.5vw;
  bottom: 1.5vw;
  /*max-width: 209px;
  width: 10.9vw;*/
  z-index: 1000;
  transform: translate3d(0, 0, 0);
  cursor: pointer;
}
#float_bnr.act img {
  transition: transform 0.2s;
}
#float_bnr.act:hover img {
  transform: scale(1.05) translate3d(0, 0, 0);
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
#float_bnr img {
  width: 180px;
}
@media only screen and (max-width: 820px) {
  #float_bnr {
    right: 15px;
    bottom: 75px;
  }
}
@media screen and (max-width: 768px) {
  #float_bnr {
    right: 15px;
    bottom: 75px;
  }
  #float_bnr img {
    width: 100px;
    height: 100px;
    max-width: none;
    max-height: none;
  }
  #float_bnr.act img {
    transition: transform 0.2s;
  }
}

#float_navi {
  position: fixed;
  right: -100px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.5s;
  z-index: 999;
  cursor: pointer;
}
#float_navi li {
  width: 90px;
  height: 65px;
  transition: 0.2s;
  position: relative;
  /*
  img {
  	box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.1);
  	transition: .5s;
  	width: 100%;
  }

   */
}
#float_navi li a {
  height: 100%;
  background: #fff;
  border-left: solid 4px #222;
  color: #222;
  display: flex;
  justify-content: center;
  font-size: 1.3rem;
  font-weight: bold;
  font-family: "Roboto", sans-serif;
  text-decoration: none;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0;
  padding: 8px 6px 6px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
#float_navi li a:hover {
  background: rgb(200, 200, 200);
}
#float_navi li a > div {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
#float_navi li a img {
  margin-bottom: 5px;
}
#float_navi li a span {
  display: block;
}
#float_navi li + li {
  margin-top: 11px;
}
#float_navi.act {
  right: 0;
}
#float_navi.act li:hover {
  /*
  a {
  	text-decoration: none;
  	background: rgba(255,255,255,.9);
  }

   */
}
@media only screen and (max-width: 820px) {
  #float_navi {
    top: inherit;
    bottom: -100px;
    right: inherit;
    left: 50%;
    transform: translateY(0) translateX(-50%);
    width: calc(100% - 30px);
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
  }
  #float_navi ul {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
  }
  #float_navi li {
    width: 50%;
    height: 50px;
  }
  #float_navi li a {
    border: none;
    border-top: solid 4px #222;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    box-shadow: none;
    padding: 10px 6px 10px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #float_navi li a > div {
    flex-direction: row;
  }
  #float_navi li a span {
    text-align: left;
    line-height: 1;
    padding-left: 0.5em;
  }
  #float_navi li a img {
    margin: 0;
  }
  #float_navi li:first-child a {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
  }
  #float_navi li:last-child a {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
  }
  #float_navi li + li {
    margin: 0;
  }
  #float_navi li + li:before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 1px;
    height: calc(100% - 4px);
    background: #d3d3d3;
  }
  #float_navi.act {
    right: inherit;
    bottom: 12px;
  }
  #float_navi.act img {
    transition: transform 0.2s;
  }
}

/*
#mv {
	background: #202121;
	position: relative;

	.background-container {
		background: #202121;

		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;

		//background: url(../img/bg_mv2.jpg) no-repeat right bottom;
		//background-size: cover;

		transition: 1s;

		opacity: 0;

		&.on1 {
			background: url(../img/bg_mv2.jpg) no-repeat right bottom;
			background-size: cover;
			opacity: 1;
		}

		.background-container_message {
			background: #202121;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100vh;
			display: flex;
			align-items: center;
			justify-content: center;

			//color: #fff;
			//font-size: 3.6rem;
			//@include font-extralight();

			opacity: 0;
			transition: 1s;

			&:before {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100vh;
				background: url(../img/bg_mv.jpg) no-repeat center center;
				background-size: cover;
				transition: 1s;

				opacity: 0;
			}
		}
		&.on2 {
			.background-container_message {
				opacity: 1;
			}
		}
		&.on3 {
			.background-container_message {
				&:before {
					opacity: 1;
				}
			}
		}


		@include mq($break_sp){
			//background: url(../img/bg_mv2_sp.jpg) no-repeat center center;
			//background-size: cover;

			&.on1 {
				background: url(../img/bg_mv2_sp.jpg) no-repeat center center;
				background-size: cover;
			}
			.background-container_message {
				//background: #fff;
				overflow: hidden;

				img {
					width: 10vw;
				}
				//font-size: 1.8rem;
				&:before {
				background: url(../img/bg_mv_sp.jpg) no-repeat center top;
					background-size: cover;
					width: 100%;
					height: 120vh;
				}
			}

			&.slide1 {
				.background-container_message {
					&:before {
						//left: 30%;
						left: 0;
						//transform-origin: top right;
						//transform: translate(10px, -10px);
					//	background-position: -95vw top;
					//	width: 140vw;
						height: 85vh;
					}
				}
			}
			&.scale {
				.background-container_message {
					&:before {
						//transform: scale(0.85);
					}
				}
			}
		}

		//iPhone SE サイズを横にされた時
		@media only screen and (max-width: 820px) and (max-height:400px) {
			.background-container_message {
				img {
					width: 7vw;
				}
			}
			&.slide1 {
				.background-container_message {
					&:before {
						height: 72vh;
					}
				}
			}
		}
	}


	.contents {
		//background: url(../img/bg_mv.jpg) no-repeat center center;
		//background-size: cover;
		position: relative;
		padding: 0;
		height: 100vh;
		//min-height: 720px;

		.dummy {
			width: 100%;
			height: 100%;
		}


		@include mq($break_sp){
			//background: url(../img/bg_mv_sp.jpg) no-repeat center center;
			//background-size: cover;
			min-height: inherit;

		}

		//iPhone SE サイズを横にされた時
		@media only screen and (max-width: 820px) and (max-height:400px) {
			.mv_copy {
				height: 26vh;

				.logo {
					width: 10%;
				}

				.text {
					width: 20%;
				}
			}
		}
	}

}

@keyframes mvlayer {
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(.33);
	}
	50.001% {
		transform-origin:left;
	}
	100% {
		transform-origin:left;
		transform:scaleX(.33);
	}
}
@keyframes mvlayerImage {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes copy_anime_on {
	0% {
		opacity:0;
	}
	100% {
		opacity:1;
	}
}
// ロゴとカメラ画像がこのアニメーション使ってる
@keyframes copy_anime_img_on {
	0% {
		opacity:0;
		//transform: scale(1.3);
	}
	100% {
		opacity:1;
		//transform: scale(1.0);
	}
}
*/
#opening-mv {
  width: 100%;
  height: 100dvh;
  background: #202121;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

#opening-mv .bg_mv {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 2.5s ease;
  display: flex;
}
#opening-mv .bg_mv.show {
  opacity: 1;
}
#opening-mv .bg_mv img {
  width: 100%;
}
#opening-mv .bg_mv--01, #opening-mv .bg_mv--02 {
  width: 50%;
  height: 100%;
}
#opening-mv .bg_mv--01 {
  background: url(../img/bg_mv_01.jpg) no-repeat center center;
  background-size: cover;
  background-position: 10% 60%;
}
#opening-mv .bg_mv--02 {
  background: url(../img/bg_mv_02.jpg) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #opening-mv .bg_mv {
    flex-direction: column;
  }
  #opening-mv .bg_mv--01, #opening-mv .bg_mv--02 {
    width: 100%;
    height: 50%;
  }
}
@media screen and (max-width: 821px) {
  #opening-mv .bg_mv {
    flex-direction: column;
  }
  #opening-mv .bg_mv--01, #opening-mv .bg_mv--02 {
    width: 100%;
    height: 50%;
  }
}
#opening-mv #logo-zf {
  opacity: 0;
  transition: opacity 1.5s ease;
  z-index: 200;
  position: absolute;
  width: 15%;
  max-width: 200px;
}
#opening-mv #logo-zf.show {
  opacity: 1;
}
#opening-mv #logo-zf img {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  #opening-mv #logo-zf {
    width: 43%;
    max-width: 218px;
    top: 45.5%;
  }
}
@media screen and (max-width: 821px) {
  #opening-mv #logo-zf {
    width: 43%;
    max-width: 158px;
    top: 45.5%;
  }
}
#opening-mv .mv_text {
  position: relative;
  z-index: 100;
  opacity: 0;
  transition: opacity 1.5s ease, transform 0.8s ease;
  width: 19%;
  max-width: 260px;
}
#opening-mv .mv_text.show {
  opacity: 1;
}
#opening-mv .mv_text.move-down {
  transform: translateY(110px);
  transition: transform 0.8s ease;
}
#opening-mv .mv_text img {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  #opening-mv .mv_text {
    width: 9.24%;
  }
}
@media screen and (max-width: 821px) {
  #opening-mv .mv_text {
    width: 14%;
  }
}

.copy {
  background: #fff;
  padding-top: 145px;
}
.copy .contents_copy {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  border-bottom: solid 140px #fff;
  /*
  &:nth-child(even){
  	flex-direction: row-reverse;
  }

   */
}
.copy .contents_copy + .contents_copy {
  margin-top: 80px;
}
.copy .contents_copy > * {
  width: 50%;
  font-size: clamp(1.4rem, 1.35vw, 1.9rem);
}
.copy .contents_copy > .text {
  font-family: "Noto Serif JP", serif;
  padding: 0 2% 0 13.5%;
  margin-top: -9em;
}
.copy .contents_copy > .text p + p {
  margin-top: 2em;
}
.copy .contents_copy > .image {
  width: 49.4%;
}
.copy .contents_copy > .image img {
  width: 100%;
}
.copy .contents_copy > .image.photo02 {
  width: 51.4%;
  margin-bottom: 110px;
}
.copy .contents_copy > .image.photo02 figure {
  margin-right: 5px;
}
.copy .contents_copy > .image > div {
  display: flex;
  justify-content: flex-end;
  margin-top: 5px;
  /*
                      &.photo01 {
                          justify-content: flex-end;
                          margin-top: 3px;
                          figure {
                              &:nth-child(1){
                                  width: 33%;
                              }
                              &:nth-child(2){
                                  width: 46%;
                                  margin-left: 3px;
                              }
                          }

                      }

                       */
}
.copy .contents_copy > .image > div .copy01_02 {
  width: 34%;
}
.copy .contents_copy > .image > div .copy01_03 {
  width: 44.5%;
  margin-left: 5px;
}
.copy .contents_copy > .image > div.photo02 {
  justify-content: flex-start;
}
.copy .contents_copy > .image > div.photo02 figure:nth-child(1) {
  width: 42%;
}
.copy .contents_copy > .image > div.photo02 figure:nth-child(2) {
  width: 51%;
  margin-left: 3px;
}
.copy .contents_copy .movie {
  width: 100%;
  max-width: 700px;
  margin-top: -10vw;
  box-shadow: 0px 3px 15px #222;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.copy .contents_copy .movie.not-shadow {
  box-shadow: none;
}
.copy .contents_copy .movie img {
  width: 100%;
  height: auto;
  transition: 1s;
}
.copy .contents_copy .movie:hover img:not(.btn_concept_movie) {
  transform: scale(1.05);
}
@media screen and (max-width: 1200px) {
  .copy .contents_copy {
    margin-top: -1px;
  }
  .copy .contents_copy .movie {
    margin-top: -3vw;
  }
}
@media screen and (max-width: 940px) {
  .copy .contents_copy .movie {
    margin-top: 3vw;
  }
}
@media only screen and (max-width: 820px) {
  .copy {
    padding-top: 65px;
  }
  .copy .contents_copy {
    flex-direction: column-reverse;
    /*
    &:nth-child(odd){
    	.image {
    		padding-left: 10%;
    		img {
    			width: 100%;
    		}
    	}
    }
    &:nth-child(even){
    	.image {
    		//padding-right: 5%;
    		img {
    			width: 100%;
    		}
    	}
    }

     */
  }
  .copy .contents_copy > * {
    font-size: 1.3rem;
  }
  .copy .contents_copy > .text {
    width: 100%;
    padding: 65px 2% 0 30px;
    margin: 0;
  }
  .copy .contents_copy .image {
    width: 100%;
  }
  .copy .contents_copy .image.photo01 {
    padding-left: 10%;
  }
  .copy .contents_copy .image.photo02 {
    width: 100%;
    padding-right: 10%;
  }
  .copy .contents_copy .image img {
    width: 100%;
  }
  .copy .contents_copy > .image.photo02 {
    margin-bottom: 55px;
  }
  .copy .contents_copy .movie {
    margin-top: 50px;
  }
}

#developer {
  background: #fff;
  padding-bottom: 170px;
}
#developer h2 {
  font-size: clamp(5rem, 9.4vw, 13.2rem);
  font-family: "Roboto", sans-serif;
  line-height: 0.7;
}
#developer h2.ttl02 {
  text-align: right;
  margin-top: -10px;
}
#developer .contents {
  padding: 0 30px;
  display: flex;
  flex-direction: column;
}
#developer .contents .inner {
  order: 2;
  color: #fff;
  font-size: clamp(1.8rem, 2.3vw, 3rem);
  font-family: "Noto Serif JP", serif;
  padding: 0 70px;
  margin-top: -10px;
}
#developer .contents .inner > div {
  cursor: pointer;
  overflow: hidden;
  color: #fff;
  display: block;
  position: relative;
  z-index: 0;
}
#developer .contents .inner > div:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 0;
}
#developer .contents .inner > div img {
  width: 100%;
  height: auto;
  transition: 1s;
}
#developer .contents .inner > div:hover img {
  transform: scale(1.1);
}
#developer .contents .inner > div p {
  position: absolute;
  top: calc(50% - 7vw);
  transform: translateY(-50%);
  left: 5vw;
  padding-left: 1.2em;
  z-index: 1;
}
#developer .contents .inner > div p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl_white.svg) no-repeat center center;
  background-size: contain;
}
#developer .contents .inner > div p span {
  font-size: clamp(1.4rem, 1.1vw, 1.6rem);
  display: block;
  padding-left: 8em;
  position: relative;
  margin-top: 1em;
}
#developer .contents .inner > div p span:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 7.5em;
  height: 1px;
  background: #fff;
}
#developer .contents .inner > div .play_movie {
  width: 155px;
  right: 5vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
@media only screen and (max-width: 820px) {
  #developer {
    padding-bottom: 95px;
  }
  #developer h2 {
    font-size: 5rem;
    line-height: 0.9;
  }
  #developer .contents {
    padding: 0;
  }
  #developer .contents .inner {
    font-size: clamp(1.8rem, 5vw, 2.2rem);
    padding: 0;
  }
  #developer .contents .inner > div p {
    top: calc(40% - 7vw);
    left: 5%;
    line-height: 1.5;
    padding-left: 1.5em;
  }
  #developer .contents .inner > div p:before {
    width: 17px;
    height: 12px;
  }
  #developer .contents .inner > div .play_movie {
    width: 115px;
    right: inherit;
    left: 10%;
    position: absolute;
    top: 70%;
    bottom: 40%;
    transform: none;
  }
}

.developer {
  padding-bottom: 64px;
}
.developer.fcpc {
  padding-top: 50px;
  padding-bottom: 50px;
}
.developer .contents {
  padding: 0 30px;
  display: flex;
  flex-direction: column;
}
.developer .contents .inner {
  order: 2;
  color: #fff;
  font-size: clamp(20px, -15.5555555556px + 4.6296296296vw, 40px);
  font-family: "Noto Serif JP", serif;
  padding: 0 15px;
  margin: -10px auto 0;
  max-width: 1230px;
}
.developer .contents .inner > div {
  cursor: pointer;
  overflow: hidden;
  color: #fff;
  display: block;
  position: relative;
  z-index: 0;
  /*
  &:after {
  	content: '';
  	position: absolute;
  	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	background: rgba(0, 0, 0, .5);
  	z-index: 0;
  }
  	*/
}
.developer .contents .inner > div img {
  width: 100%;
  height: auto;
  transition: 1s;
}
.developer .contents .inner > div:hover img {
  transform: scale(1.1);
}
.developer .contents .inner > div p {
  position: absolute;
  top: calc(50% - 4vw);
  transform: translateY(-50%);
  left: 3.5vw;
  padding-left: 1.2em;
  line-height: 140%;
  z-index: 1;
}
.developer .contents .inner > div p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl_white.svg) no-repeat center center;
  background-size: contain;
}
.developer .contents .inner > div p span {
  font-size: clamp(1.4rem, 1.1vw, 1.6rem);
  display: block;
  padding-left: 8em;
  position: relative;
  margin-top: 1em;
}
.developer .contents .inner > div p span:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 7.5em;
  height: 1px;
  background: #fff;
}
.developer .contents .inner > div .play_movie {
  width: 155px;
  right: 7.5vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.developer .contents .inner > div .btn_play_movie {
  transform: translate(-50%, -50%) !important;
}
@media only screen and (max-width: 820px) {
  .developer {
    padding-bottom: 0;
  }
  .developer.fcpc {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .developer h2 {
    font-size: 5rem;
    line-height: 0.9;
  }
  .developer .contents {
    padding: 0 15px;
  }
  .developer .contents .inner {
    font-size: clamp(1.8rem, 5vw, 2.2rem);
    padding: 0;
  }
  .developer .contents .inner > div p {
    top: calc(40% - 7vw);
    left: 5%;
    line-height: 1.5;
    padding-left: 1.5em;
  }
  .developer .contents .inner > div p:before {
    width: 17px;
    height: 12px;
  }
  .developer .contents .inner > div .play_movie {
    width: 115px;
    right: inherit;
    left: 10%;
    position: absolute;
    top: 70%;
    bottom: 40%;
    transform: none;
  }
  .developer .contents .inner > div .btn_play_movie {
    font-family: "Noto Sans JP", sans-serif;
  }
}

.eachTextAnime span {
  opacity: 0;
}

.eachTextAnime.appeartext span {
  animation: text_anime_on 1s ease-out forwards;
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#creator {
  color: #fff;
  /*
  	.bg02 {
  		background: #000 url(../img/creator_bg02.jpg) no-repeat center top;
  		background-size: cover;
  	}

   */
}
#creator .video-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  filter: blur(10px);
  background: #fff;
}
#creator .video-container.fixed {
  position: fixed;
}
#creator .video-container:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}
#creator .video-container video {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  min-width: 100%;
  min-height: 100vh;
  width: auto;
  height: auto;
}
#creator .content {
  position: relative;
  z-index: 1;
}
#creator .profile_box {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 100%;
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto 114px;
}
#creator .profile_box > .text {
  width: 58.33%;
}
#creator .profile_box > .text h2 {
  font-size: clamp(28px, -25.3333333333px + 6.9444444444vw, 58px);
  font-family: "Noto Serif JP", serif;
  line-height: 1;
}
#creator .profile_box > .text h2.en {
  font-size: 58px;
}
#creator .profile_box > .text h2 span {
  font-size: 1.6rem;
  margin-top: 1.5em;
  margin-left: 3rem;
}
#creator .profile_box > .text h2 + p {
  font-size: 1.4rem;
  margin-top: 2.5em;
}
#creator .profile_box > .text .list-social {
  display: flex;
  align-items: center;
  margin-top: 35px;
}
#creator .profile_box > .text .list-social li {
  width: 56px;
}
#creator .profile_box > .text .list-social li img {
  width: 100%;
}
#creator .profile_box > .text .list-social li + li {
  margin-left: 10px;
}
#creator .profile_box > figure {
  width: 34.41%;
  padding-left: 7.7%;
}
#creator .profile_box > figure img {
  width: 100%;
}
#creator .creator_gallery {
  width: 100%;
  max-width: 1230px;
  padding: 0 15px;
  margin: 50px auto 90px;
  position: relative;
}
#creator .creator_gallery .gutter-sizer {
  width: 0%;
}
#creator .creator_gallery.js-gallery02 {
  margin-top: 100px;
}
#creator .creator_gallery.js-gallery02.icon-new:before {
  left: 15px;
}
#creator .creator_gallery ul {
  /*
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;

   */
  /*display: grid;
  //grid-template-columns: 33% 33% 33%;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2px;

   */
  width: 100%;
}
#creator .creator_gallery ul li {
  width: 33%;
  margin: 1px;
  cursor: pointer;
  position: relative;
}
#creator .creator_gallery ul li img {
  width: 100%;
  height: auto;
}
#creator .creator_gallery ul li .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}
#creator .creator_gallery ul li .overlay .overlay-text {
  color: white;
  text-align: center;
  opacity: 0;
  width: 70%;
  max-width: 152px;
}
#creator .creator_gallery ul li:hover .overlay {
  background-color: rgba(0, 0, 0, 0.5);
}
#creator .creator_gallery ul li:hover .overlay .overlay-text {
  opacity: 1;
}
#creator .creator_gallery .btn_viewmore {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#creator .creator_voice {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  line-height: 2.6;
  font-size: 1.6rem;
  font-family: "Noto Serif JP", serif;
  padding: 0 30px;
}
#creator .movie {
  width: 100%;
  max-width: 1200px;
  margin: 150px auto;
  box-shadow: 0px 15px 40px #000;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
#creator .movie img {
  width: 100%;
  height: auto;
  transition: 1s;
}
#creator .movie:hover img {
  transform: scale(1.05);
}
#creator .movie_sub {
  width: 75%;
  max-width: 920px;
  padding: 0 35px;
  margin: 0 auto;
  /*
  a {
  	color: #fff;
  	font-size: clamp(2.2rem, 3.3vw, 4.6rem);
  	@include font-extralight();
  	display: flex;
  	justify-content: space-between;
  	align-items: flex-end;
  	//flex-direction: column;
  }

   */
}
#creator .movie_sub .text {
  position: relative;
  padding-left: 1.2em;
  line-height: 1.6;
  color: #fff;
  font-size: clamp(2.1rem, 2.6vw, 3.5rem);
  font-family: "Noto Serif JP", serif;
}
#creator .movie_sub .text:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl_white.svg) no-repeat top center;
  background-size: contain;
}
#creator .movie_sub .text span {
  display: block;
}
#creator .movie_sub .text span:nth-child(2) {
  margin-left: 3em;
  text-align: left;
}
#creator .movie_sub .text span:last-child {
  text-align: left;
  margin-left: 9em;
}
@media only screen and (max-width: 820px) {
  #creator .movie_sub {
    width: 100%;
  }
  #creator .movie_sub .text {
    font-size: 3.8vw;
  }
}
#creator .images_area {
  padding-right: 7.5%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: flex-end;
  margin: 100px 0;
}
#creator .images_area img {
  width: 100%;
}
#creator .images_area .images_main {
  width: 75%;
  max-width: 910px;
  text-align: right;
}
#creator .images_area .images_main .movie {
  margin: 0;
}
#creator .images_area .images_sub {
  width: 22%;
  margin-bottom: -10%;
}
#creator .coming_soon {
  color: #fff;
  font-size: 5.4rem;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
  text-align: center;
  padding: 180px 0 140px;
}
#creator #creator-furuya .movie_sub .text span:last-child {
  margin-left: 14em;
}
@media only screen and (max-width: 820px) {
  #creator .profile_box {
    flex-direction: row;
    align-items: center;
    padding: 0 35px;
    margin-bottom: 0;
  }
  #creator .profile_box > .text h2 {
    font-size: 3.5rem;
  }
  #creator .profile_box > .text h2 span {
    display: block;
    font-size: 1.3rem;
    margin-left: 0;
    line-height: 120%;
  }
  #creator .profile_box > .text h2.en {
    font-size: 2.9rem;
    letter-spacing: 1px;
  }
  #creator .profile_box > .text h2.en span {
    letter-spacing: 1px;
  }
  #creator .profile_box > .text .list-social li {
    width: 40px;
  }
  #creator .profile_box > figure {
    width: 47%;
    padding-left: 0;
  }
  #creator .profile_box + p {
    padding: 20px 35px;
    font-size: 1.2rem;
  }
  #creator .profile_box_scroll {
    margin: 45px 0 70px;
  }
  #creator .creator_gallery {
    margin: 0px auto 80px;
    padding-bottom: 2em;
  }
  #creator .creator_gallery.js-gallery02 {
    margin-top: 50px;
  }
  #creator .creator_gallery ul li {
    width: 48.8%;
    margin-bottom: 2px;
  }
  #creator .creator_voice {
    font-size: 1.3rem;
    line-height: 2.1;
  }
  #creator .movie {
    margin: 60px auto;
  }
  #creator .movie_sub {
    padding: 0 25px;
  }
  #creator .movie_sub a {
    flex-direction: column;
    align-items: flex-start;
    font-size: 2.2rem;
  }
  #creator .movie_sub .text {
    padding-left: 1.5em;
  }
  #creator .movie_sub .text:before {
    width: 17px;
    height: 12px;
  }
  #creator .movie_sub .text span:nth-child(2) {
    margin-left: 0;
  }
  #creator .movie_sub .text span:last-child {
    margin-left: 0;
  }
  #creator .movie_sub .play_movie {
    padding-left: 1em;
    width: 45%;
  }
  #creator .movie_sub .play_movie img {
    width: 100%;
  }
  #creator .images_area {
    padding-right: 0;
    margin: 40px 0;
  }
  #creator .images_area .images_main {
    width: 71%;
  }
  #creator .coming_soon {
    font-size: 2.9rem;
    padding: 70px 0;
  }
  #creator #creator-furuya .movie_sub .text span:last-child {
    margin-left: 0;
  }
}

#product {
  background: #fff;
  position: relative;
  z-index: 1;
  /*
  	.product_item {
  		width: calc(100% - 60px);
  		margin: 180px 30px;
  		padding: 120px 70px 150px;
  		position: relative;

  		background: #262626;
  		background: -moz-linear-gradient(left, #656565 0%, #262626 100%);
  		background: -webkit-gradient(linear, left center, right center, from(#656565), to(#262626));
  		background: -webkit-linear-gradient(left, #656565 0%, #262626 100%);
  		background: -o-linear-gradient(left, #656565 0%, #262626 100%);
  		background: -ms-linear-gradient(left, #656565 0%, #262626 100%);
  		background: linear-gradient(to right, #656565 0%, #262626 100%);

  		[class*=product_item_text_]{
  			@include font-extralight();
  			line-height: 1;
  			position: absolute;
  		}

  		.product_item_text_header {
  			margin: 0;
  			color: #9a9a9a;
  			top: -110px;
  			left: 70px;

  			font-size: clamp(5.5rem, 12.0vw, 17.0rem);
  			display: flex;
  			align-items: flex-start;
  			span {
  				color: #000;
  				font-size: clamp(2.9rem, 7vw, 8.6rem);
  				margin-top: 10px;
  				letter-spacing: -12px;
  			}
  		}
  		.product_item_text_header-dummy {
  			margin: 0;
  			position: absolute;
  			top: -110px;
  			left: 70px;
  			width: 100%;
  			height: .65em;
  			font-size: clamp(5.5rem, 12.0vw, 17.0rem);
  			overflow: hidden;
  			&:before {
  				color: #000;
  				font-size: clamp(5.5rem, 12.0vw, 17.0rem);
  				font-family: 'Noto Serif JP', serif;
  				line-height: 1;
  				content: '継承';
  				position: absolute;
  				top: 0;
  				left: 0;
  			}
  		}


  		.product_item_text_footer {
  			margin: 0;
  			color: #9a9a9a;
  			bottom: -50px;
  			right: 70px;

  			font-size: clamp(4.2rem, 9.2vw, 13.0rem);
  			letter-spacing: -9px;
  		}
  		.product_item_text_footer-dummy {
  			margin: 0;
  			position: absolute;
  			bottom: -50px;
  			right: 70px;
  			width: 100%;
  			height: 0.38em;
  			font-size: clamp(4.2rem, 9.2vw, 13.0rem);
  			letter-spacing: -9px;
  			overflow: hidden;
  			&:before {
  				color: #000;
  				font-size: clamp(4.2rem, 9.2vw, 13.0rem);
  				letter-spacing: -9px;
  				font-family: 'Noto Serif JP', serif;
  				line-height: 1;
  				content: 'ヘリテージデザイン';
  				position: absolute;
  				bottom: 0;
  				right: 0;
  			}
  		}

  		.product_item_inner {

  			display: flex;
  			align-items: center;
  			justify-content: space-between;
  			> .image {
  				width: 54%;
  				padding-left: 20px;
  				img {
  					width: 100%;
  				}
  			}
  			> .text {
  				color: #fff;
  				font-size: 1.5rem;
  				width: 40%;
  				padding-right: 8%;
  			}
  		}

  	}
  */
  /*
  	.product_history_pc {

  		//overflow: hidden;
  		position: relative;

  		background: #30302f;
  		background: -moz-linear-gradient(left, #656565 0%, #30302f 100%);
  		background: -webkit-gradient(linear, left center, right center, from(#656565), to(#30302f));
  		background: -webkit-linear-gradient(left, #656565 0%, #30302f 100%);
  		background: -o-linear-gradient(left, #656565 0%, #30302f 100%);
  		background: -ms-linear-gradient(left, #656565 0%, #30302f 100%);
  		background: linear-gradient(to right, #656565 0%, #30302f 100%);

  		.product_text {
  			position: absolute;
  			top: -68px;
  			right: 0;
  		}

  		@include mq2($break_sp){//PCのみ　SPは全くの別物になる
  			width: calc(100% - 60px);
  			max-width: 1340px;
  			margin: 180px auto;
  			//margin: 180px 30px;
  			//padding: 120px 70px 150px;


  			.inner {
  				width: 100%;
  				min-height: 696px;
  				display: flex;
  				justify-content: flex-start;
  				.inner_box {
  					//border: solid 1px #f00;
  					transition: 1s;
  					> div {
  						display: flex;
  						height: 100%;

  					}
  				}

  				.acc_side {
  					width: 0;
  					transition: width 0.5s ease;
  				}
  				.acc_side.active {
  					min-width: 300px;
  					display: block;
  					transition: width 0.5s ease;
  				}

  				[data-type*=acc_side]{
  					width: 120px;
  					display: block;
  					cursor: pointer;

  					+ * {
  						display: none;
  						//width: 81.34%;
  						//max-width: 1090px;
  						//min-width: calc(77vw - 120px);
  					}
  					&.open {
  						+ * {
  							display: inherit;
  						}
  					}
  				}
  			}
  		}

  	}
  */
  /*
  	.product_history_sp {
  		@include mq2($break_sp){
  			display: none;
  		}
  	}
  */
  /*
  	.product_history_pc {
  		.acc_product {
  			@include mq2($break_sp){//PCのみ　SPは全くの別物になる
  				height: 696px;
  				width: 100%;
  				max-width: 1340px;
  				margin: 0 auto;
  				overflow: hidden;

  				position: relative;

  				.item1982 {
  					position: absolute;
  					top: 0;
  					left: 0;
  				}
  				.item2021 {
  					position: absolute;
  					top: 0;
  					//left: 120px;
  					left: 10%;
  				}
  				.item2023 {
  					position: absolute;
  					top: 0;
  					//left: 240px;
  					left: 20%;
  				}


  				//display: flex;

  				.acc_side_title {

  					width: 10%;
  					max-width: 120px;
  					height: 696px;//100%;

  					cursor: pointer;
  					-ms-writing-mode: tb-rl;
  					writing-mode: vertical-rl;
  					color: #fff;
  					border-left: solid 1px #828382;

  					position: relative;

  					.logo {
  						position: absolute;
  						bottom: 70px;
  						left: 50%;
  						transform: translateX(-50%);

  						width: 70%;

  					}

  					.item-image {
  						opacity: 1;
  						position: absolute;
  						bottom: 12.5vw;
  						left: 2vw;
  						width: 13vw;
  					}
  				}
  				.acc_side_title:not(.right) {
  					.item-image {
  						opacity: 0;
  					}
  				}

  				.item {
  					width: 100%;

  					p {
  						float: left;
  						cursor: pointer;
  						display: flex;
  						align-items: flex-end;
  						padding-top: 30px;
  						z-index: 1;
  					}
  					.inner {
  						color: #fff;
  						float: left;
  						//width: calc(100% - 360px);
  						width: calc(100% - 28%);

  						height: 100%;
  						//display: none;
  						margin: 0;
  						//transition: 1s;

  						font-size: 1.5rem;
  						//opacity: 0;
  						position: relative;
  						//transition: 1s;

  						opacity: 0;
  						animation:acc_product_off .2s ease-out forwards;

  						> div {
  							margin-left: -75px;
  							width: 100%;
  							display: flex;
  							align-items: center;
  							justify-content: space-between;

  							position: absolute;
  							top: 50%;
  							left: 50%;
  							transform: translate(-50%, -50%);
  						}

  						&.on {
  							display: flex !important;
  							align-items: center;
  							justify-content: space-between;

  							animation:acc_product_on .2s ease-out forwards;

  						}

  						.image {
  							//width: 30%;
  							width: 50%;

  							img {
  								width: 100%;
  							}
  						}
  						.text {
  							//width: 64%;
  							text-align: left;

  							width: 44%;
  							.logo {
  								width: 35%;
  								display: block;
  								margin-bottom: 1.5em;
  							}
  						}

  					}

  					&.item1982,
  					&.item2021,
  					&.item2023 {
  						transition: 1.0s;//スライドの速さここ
  					}
  					&.item1982,
  					&.item2021 {
  						.inner {
  							> div {
  								width: 91%;
  								margin-left: -10%;

  							}

  							.image {
  								width: 53%;
  							}
  							.text {
  								width: 40%;
  								margin: 0;
  							}
  						}
  					}
  				}
  			}

  		}
  	}
  */
}
#product .contents_ttl_03 {
  font-size: clamp(22px, -17.1111111111px + 5.0925925926vw, 44px);
  font-family: "Noto Serif JP", serif;
  max-width: 1230px;
  margin: 0 auto;
  padding: 0 15px;
}
#product .main_image {
  width: 51%;
  max-width: 804px;
  position: absolute;
  top: 60px;
  right: 0;
}
#product .main_image img {
  width: 100%;
}
#product .main_image.reverse {
  right: inherit;
  left: 0;
}
#product .product_tag {
  background: #000;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  width: 230px;
  text-align: center;
  line-height: 38px;
  margin-bottom: 40px;
}
#product .product_main {
  max-width: 1230px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
  display: flex;
  justify-content: flex-end;
}
#product .product_main .product_main_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 114px 0;
}
#product .product_main .product_main_inner > .text {
  width: 35.28%;
}
#product .product_main .product_main_inner > .text h3 {
  margin-bottom: 45px;
}
#product .product_main .product_main_inner > .text h3 + p + p {
  margin-top: 30px;
}
#product .product_main .product_main_inner > .text h3.product_zf_ttl_silver {
  width: 257px;
}
#product .product_main .product_main_inner > .text h3.product_zf_ttl_silver img {
  width: 100%;
}
#product .product_main .product_main_inner > .text a {
  color: #222;
  font-size: 1.5rem;
}
#product .product_main .product_main_inner > .text .btn_nikon_store {
  width: 400px;
  margin-top: 70px;
}
#product .product_main .product_main_inner > .text .btn_nikon_store img {
  width: 100%;
}
#product .product_main.not-tag .product_main_inner {
  padding-top: 220px;
}
#product .product_main.reverse .product_main_inner {
  justify-content: flex-end;
}
#product .product_tyy {
  border: solid 1px #333;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 65px 0 40px;
  position: relative;
}
#product .product_tyy:before, #product .product_tyy:after {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  background: #fff;
}
#product .product_tyy:before {
  top: -1px;
  left: -1px;
}
#product .product_tyy:after {
  bottom: -1px;
  right: -1px;
}
#product .product_tyy h3 {
  font-size: 3rem;
  text-align: center;
  line-height: 1;
  margin-bottom: 40px;
}
#product .product_tyy h3 > span {
  border-bottom: solid 4px #222;
}
#product .product_tyy h3 .en {
  font-size: clamp(3.8rem, 5.4vw, 7.6rem);
  font-family: "Roboto", sans-serif;
  font-weight: 300;
}
#product .product_tyy .product_try_place {
  display: flex;
  justify-content: space-between;
  padding: 0 120px;
}
#product .product_tyy .product_try_place > * {
  width: 48.5%;
}
#product .product_tyy .product_try_place > * img {
  width: 100%;
}
#product .product_tyy .product_try_place > * .tag {
  background: #222;
  color: #fff;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  font-family: "Roboto", sans-serif;
  padding: 0 0.5em 0 1.5em;
  position: relative;
}
#product .product_tyy .product_try_place > * .tag:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 8px;
  width: 14px;
  height: 17px;
  background: url(../img/icon_maker.svg) no-repeat center center;
  background-size: contain;
}
#product .product_tyy .product_try_place > * figure {
  margin-bottom: 15px;
}
#product .product_tyy .product_try_place > * a {
  color: #333;
}
#product .product_tyy .product_try_place > * .not-icon img {
  vertical-align: middle;
  width: 16px;
  margin-right: 5px;
}
#product .product_tyy .product_try_campaign {
  margin-top: 30px;
  padding: 0 60px;
  overflow: hidden;
}
#product .product_tyy .product_try_campaign li + li {
  margin-top: 25px;
}
#product .product_tyy .product_try_campaign .title {
  font-size: clamp(2.8rem, 2.7vw, 3.8rem);
  font-family: "Noto Serif JP", serif;
  position: relative;
  text-align: center;
  margin-bottom: 0.8em;
}
#product .product_tyy .product_try_campaign .title span {
  display: inline-block;
  background: #fff;
  padding: 0 1em;
  line-height: 1.3;
}
#product .product_tyy .product_try_campaign .title:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -80px;
  transform: translateY(-50%);
  width: calc(100% + 160px);
  height: 1px;
  background: #333;
  z-index: -1;
}
#product .product_tyy .product_try_campaign .title_campaign {
  background: #222;
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#product .product_tyy .product_try_campaign .title_campaign span {
  font-size: 2rem;
}
#product .product_tyy .product_try_campaign .box_campaign {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 30px;
}
#product .product_tyy .product_try_campaign .box_campaign .text {
  width: 67%;
  line-height: 1.5;
}
#product .product_tyy .product_try_campaign .box_campaign .text em {
  display: inline-block;
  background: #222;
  color: #fff;
  font-size: 2.6rem;
  font-family: "Noto Serif JP", serif;
  padding: 0 5px;
  margin: 10px 0;
}
#product .product_tyy .product_try_campaign .box_campaign .text em + em {
  margin-left: 5px;
}
#product .product_tyy .product_try_campaign .box_campaign .text .note {
  font-size: 1.2rem;
  opacity: 0.8;
  margin: 2em 0 0;
  text-indent: -1em;
  padding-left: 1em;
}
#product .product_tyy .product_try_campaign .box_campaign .text .note + .note {
  margin-top: 0;
}
#product .product_tyy .product_try_campaign .box_campaign .pic {
  width: 30%;
}
#product .product_tyy .product_try_campaign .box_campaign .pic img {
  border: solid 1px #222;
  border-radius: 100%;
  width: 100%;
}
#product .product_tyy .product_try_campaign .box_campaign.campaign02 {
  align-items: flex-start;
}
#product .product_tyy .product_try_campaign .box_campaign.campaign02 .text {
  width: 75%;
}
#product .product_tyy .product_try_campaign .box_campaign.campaign02 .pic {
  width: 20%;
}
#product .line_friends {
  margin-top: 30px;
}
@media only screen and (max-width: 820px) {
  #product {
    /*
    		.product_item {
    			width: calc(100% - 30px);
    			margin: 50px 15px;
    			padding: 35px 15px 70px;


    			.product_item_text_header {
    				font-size: 5.5rem;
    				top: -35px;
    				left: 15px;
    				span {
    					font-size: 2.9rem;
    					letter-spacing: -4px;
    					margin: 0;
    				}
    			}

    			.product_item_text_header-dummy {
    				font-size: 5.5rem;
    				top: -35px;
    				left: 15px;
    				&:before {
    					font-size: 5.5rem;
    				}

    			}

    			.product_item_text_footer {
    				font-size: 4.2rem;
    				letter-spacing: -4px;
    				right: 0;
    				bottom: -15px;
    			}

    			.product_item_text_footer-dummy {
    				right: 0;
    				bottom: -15px;
    				font-size: 4.2rem;
    				letter-spacing: -4px;
    				&:before {
    					font-size: 4.2rem;
    					letter-spacing: -4px;
    				}
    			}

    			.product_item_inner {
    				flex-direction: column;

    				> .image {
    					width: 100%;
    					padding: 0 30px;
    				}

    				> .text {
    					margin-top: 35px;
    					font-size: 1.1rem;
    					width: 100%;
    					padding: 0 15px;

    					h3 {
    						width: 30%;
    						margin-bottom: 15px;
    						img {
    							width: 100%;
    						}
    					}
    				}
    			}
    		}
    */
    /*
    		.product_history_sp {
    			position: relative;

    			background-image: radial-gradient(circle at 80% 100%, rgba(38, 38, 38, 1) 10%, rgba(101, 101, 101, 1) 90%);

    			.product_text {
    				position: absolute;
    				top: -7.5vw;
    				right: 0;
    				width: 80%;
    			}

    			@include mq($break_sp){//SPのみ　PCは全くの別物になる
    				width: calc(100% - 30px);
    				margin: 80px auto 50px;

    			}
    		}
    */
  }
  #product .contents_ttl_03 {
    font-size: clamp(22px, -17.1111111111px + 5.0925925926vw, 44px);
    font-family: "Noto Serif JP", serif;
    max-width: 1230px;
    margin: 0 auto 35px;
    padding: 0 15px 0.5em;
  }
  #product .main_image {
    width: 97%;
    position: relative;
    top: 0;
    right: -32px;
    padding: 0;
  }
  #product .main_image img {
    width: 100%;
  }
  #product .main_image.reverse {
    left: -15px;
  }
  #product .product_tag {
    font-size: 1rem;
    width: 50%;
    max-width: 305px;
    line-height: 25px;
    margin-bottom: 22px;
  }
  #product .product_main {
    flex-direction: row-reverse;
  }
  #product .product_main .product_main_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 50px 15px;
  }
  #product .product_main .product_main_inner > .text {
    width: 100%;
    font-size: 1.3rem;
  }
  #product .product_main .product_main_inner > .text h3 {
    margin-bottom: 25px;
    width: 40%;
  }
  #product .product_main .product_main_inner > .text h3 img {
    width: 100%;
  }
  #product .product_main .product_main_inner > .text h3 + p + p {
    margin-top: 15px;
  }
  #product .product_main .product_main_inner > .text h3.product_zf_ttl_silver {
    width: 50%;
  }
  #product .product_main .product_main_inner > .text a {
    font-size: 1.3rem;
  }
  #product .product_main .product_main_inner > .text .btn_nikon_store {
    width: 66%;
    margin: 35px auto 0;
  }
  #product .product_main.not-tag .product_main_inner {
    padding-top: 80px;
  }
}
@media only screen and (max-width: 820px) and (max-width: 820px) {
  #product .product_history_pc {
    display: none;
  }
}
@media only screen and (max-width: 820px) and (max-width: 820px) {
  #product .acc_product {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  #product .acc_product .item {
    width: 100%;
  }
  #product .acc_product .item .acc_side_title {
    color: #fff;
    font-size: 1rem;
    font-family: "Roboto", sans-serif;
    padding: 0 0 5px 20px;
    margin: 0;
    min-height: 90px;
    position: relative;
  }
  #product .acc_product .item .acc_side_title span {
    position: absolute;
    bottom: 5px;
    left: 20px;
  }
  #product .acc_product .item .acc_side_title img {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    height: 35%;
  }
  #product .acc_product .item .acc_side_title:before, #product .acc_product .item .acc_side_title:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    width: 22px;
    height: 1px;
    background: #fff;
  }
  #product .acc_product .item .acc_side_title:after {
    transform: rotate(90deg);
  }
  #product .acc_product .item .acc_side_title.open:after {
    display: none;
  }
  #product .acc_product .item .acc_side_title .item-image {
    display: none !important;
  }
  #product .acc_product .item [data-type*=acc_item] + * {
    display: none;
  }
  #product .acc_product .item [data-type*=acc_item].open + * {
    display: inherit;
    padding-bottom: 30px;
  }
  #product .acc_product .item .inner {
    color: #fff;
    font-size: 1.3rem;
    padding: 15px;
  }
  #product .acc_product .item .inner.active {
    display: block;
  }
  #product .acc_product .item .inner .image {
    width: 80%;
    margin: 0 auto;
  }
  #product .acc_product .item .inner .image img {
    width: 100%;
  }
  #product .acc_product .item .inner .text {
    text-align: left;
    margin-top: 20px;
  }
  #product .acc_product .item .inner .text .logo {
    display: none;
    width: 22%;
    margin-bottom: 20px;
  }
  #product .acc_product .item + .item {
    border-bottom: solid 1px #828382;
  }
}
@media only screen and (max-width: 820px) {
  #product .product_tyy {
    padding: 40px 20px;
  }
  #product .product_tyy h3 {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  #product .product_tyy h3 .en {
    font-size: 3.8rem;
  }
  #product .product_tyy h3 + p {
    line-height: 1.5;
    font-size: 1.3rem;
  }
  #product .product_tyy h3 + p + p {
    line-height: 1.2;
  }
  #product .product_tyy .product_try_place {
    flex-direction: column;
    padding: 0;
  }
  #product .product_tyy .product_try_place > * {
    margin-top: 40px;
    width: 100%;
  }
  #product .product_tyy .product_try_place > *:first-child {
    margin-top: 20px;
  }
  #product .product_tyy .product_try_place > * .tag {
    font-size: 1.3rem;
  }
  #product .product_tyy .product_try_place > * .tag:before {
    left: 6px;
    width: 10px;
    height: 13px;
  }
  #product .product_tyy .product_try_place > * a {
    font-size: 1.3rem;
  }
  #product .product_tyy .product_try_campaign {
    margin-top: 50px;
    margin-left: -20px;
    margin-right: -20px;
    padding: 0 20px;
  }
  #product .product_tyy .product_try_campaign li + li {
    margin-top: 35px;
  }
  #product .product_tyy .product_try_campaign .title {
    font-size: 2.3rem;
  }
  #product .product_tyy .product_try_campaign .title_campaign {
    font-size: 1.7rem;
    padding: 3px;
    line-height: 1.3;
  }
  #product .product_tyy .product_try_campaign .title_campaign span {
    font-size: 1.5rem;
  }
  #product .product_tyy .product_try_campaign .box_campaign {
    flex-direction: column-reverse;
    padding: 15px 0;
  }
  #product .product_tyy .product_try_campaign .box_campaign .text {
    width: 100%;
    font-size: 1.3rem;
  }
  #product .product_tyy .product_try_campaign .box_campaign .text em {
    font-size: 1.3rem;
    margin: 5px 0;
  }
  #product .product_tyy .product_try_campaign .box_campaign .text .note {
    font-size: 1.1rem;
    margin: 1em 0 0;
  }
  #product .product_tyy .product_try_campaign .box_campaign .pic {
    width: 60%;
    margin: 0 auto;
    margin-bottom: 15px;
  }
  #product .product_tyy .product_try_campaign .box_campaign.campaign02 .text {
    width: 100%;
  }
  #product .product_tyy .product_try_campaign .box_campaign.campaign02 .pic {
    width: 50%;
  }
}

@keyframes acc_product_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes acc_product_off {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fcpc__creator {
  max-width: 1200px;
  margin: 0 auto;
}
.fcpc__creator .creator_area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40px;
}
.fcpc__creator .creator_area .users {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 37.5%;
}
@media only screen and (min-width: 821px) {
  .fcpc__creator .creator_area .users.sns-sinlges {
    width: calc(37.5% - 62px);
  }
  .fcpc__creator .creator_area .users.sns-sinlges + p {
    width: calc(57% + 62px);
  }
}
.fcpc__creator .creator_area .users > div {
  display: flex;
  align-items: center;
}
.fcpc__creator .creator_area .users img {
  width: 140px;
  margin-right: 25px;
}
.fcpc__creator .creator_area .users p {
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
}
.fcpc__creator .creator_area .users p span {
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 150%;
  margin-top: 1rem;
}
.fcpc__creator .creator_area .users .list-social {
  display: flex;
}
.fcpc__creator .creator_area .users .list-social li {
  width: 52px;
}
.fcpc__creator .creator_area .users .list-social li img {
  width: 100%;
}
.fcpc__creator .creator_area .users .list-social li + li {
  margin-left: 10px;
}
.fcpc__creator .creator_area .users + p {
  width: 57%;
  font-size: 1.3rem;
  line-height: 230%;
}
.fcpc__creator .recipe_area {
  margin-bottom: 90px;
}
.fcpc__creator .recipe_area--title {
  font-size: 4rem;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.fcpc__creator .recipe_area--inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.4rem;
}
.fcpc__creator .recipe_area--inner > p {
  width: 55%;
}
.fcpc__creator .recipe_area--inner > div {
  width: 43%;
  text-align: center;
}
.fcpc__creator .recipe_area--inner a {
  color: #fff;
  font-size: 1.5rem;
  display: inline-block;
  background: #333;
  border-radius: 30px;
  padding: 1.3rem 4rem;
}
.fcpc__creator .recipe_area--inner a span {
  position: relative;
  padding-right: 3rem;
}
.fcpc__creator .recipe_area--inner a span:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 13px;
  height: 13px;
  background: url(../img/icon_download_white.png) no-repeat center center;
  background-size: contain;
}
.fcpc__creator .recipe_area--inner a.link-event-none {
  pointer-events: none;
  opacity: 0.5;
}
@media only screen and (max-width: 820px) {
  .fcpc__creator {
    max-width: calc(100% - 80px);
  }
  .fcpc__creator .creator_area {
    flex-direction: column;
    margin-bottom: 30px;
  }
  .fcpc__creator .creator_area .users {
    width: 100%;
    margin-bottom: 20px;
  }
  .fcpc__creator .creator_area .users img {
    width: 50px;
    margin-right: 15px;
  }
  .fcpc__creator .creator_area .users p {
    font-size: 1.8rem;
    line-height: 120%;
  }
  .fcpc__creator .creator_area .users p span {
    font-size: 1.1rem;
  }
  .fcpc__creator .creator_area .users .list-social li {
    width: 38px;
  }
  .fcpc__creator .creator_area .users + p {
    width: 100%;
    line-height: 180%;
    font-size: 1.2rem;
  }
  .fcpc__creator .recipe_area {
    margin-bottom: 50px;
  }
  .fcpc__creator .recipe_area--title {
    font-size: 2.8rem;
  }
  .fcpc__creator .recipe_area--inner {
    flex-direction: column;
  }
  .fcpc__creator .recipe_area--inner > p,
  .fcpc__creator .recipe_area--inner > div {
    width: 100%;
  }
  .fcpc__creator .recipe_area--inner > p {
    line-height: 180%;
    margin-bottom: 3rem;
  }
  .fcpc__creator .recipe_area--inner a {
    font-size: 0.8rem;
    padding: 1rem 3rem;
  }
  .fcpc__creator .recipe_area--inner a span {
    padding-right: 1.5rem;
  }
  .fcpc__creator .recipe_area--inner a span:after {
    width: 10px;
    height: 10px;
  }
}

#fcpc {
  background: #fafafa;
  position: relative;
  z-index: 1;
}
#fcpc .fcpc__statement {
  /*
  background: url(../img/fcpc_img.jpg) no-repeat center right;
  background-size: 55%;
  */
  position: relative;
}
#fcpc .fcpc__statement-inner {
  max-width: 1230px;
  margin: 70px auto;
  padding: 0 15px;
}
#fcpc .fcpc__statement-inner > div {
  width: 36%;
}
#fcpc .fcpc__statement-inner [data-type*=accordion] {
  position: relative;
}
#fcpc .fcpc__statement-inner [data-type*=accordion]:before, #fcpc .fcpc__statement-inner [data-type*=accordion]:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 24px;
  height: 1px;
  background: #000;
}
#fcpc .fcpc__statement-inner [data-type*=accordion]:after {
  transform: rotate(90deg);
}
#fcpc .fcpc__statement-inner [data-type*=accordion].open:after {
  display: none;
}
#fcpc .fcpc__statement-inner h3 {
  font-size: clamp(22px, -17.1111111111px + 5.0925925926vw, 44px);
  font-family: "Noto Serif JP", serif;
  line-height: 150%;
  margin-bottom: 10px;
}
#fcpc .fcpc__statement-inner h4 {
  border-top: solid 1px rgba(51, 51, 51, 0.1);
  font-size: 2.2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  padding: 2rem 0;
  position: relative;
  display: flex;
  align-items: center;
}
#fcpc .fcpc__statement-inner h4 span {
  font-size: 1rem;
  display: inline-block;
  margin-right: 1rem;
}
#fcpc .fcpc__statement-inner p {
  margin-bottom: 45px;
  line-height: 180%;
}
#fcpc .fcpc__statement-inner p.links {
  margin-bottom: 1.5rem;
}
#fcpc .fcpc__statement-inner p + a {
  color: #222;
  display: inline-block;
  margin-bottom: 2rem;
}
#fcpc .fcpc__statement-image {
  position: absolute;
  bottom: 20px;
  right: 0;
  width: 55%;
  max-width: 777px;
}
#fcpc .fcpc__statement-image img {
  width: 100%;
}
#fcpc .fcpc__creatorcopy {
  max-width: 1200px;
  margin: 0 auto 42px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*
  > * {
  	width: 50%;
  }
  */
}
#fcpc .fcpc__creatorcopy > div {
  width: 45%;
}
#fcpc .fcpc__creatorcopy figure {
  width: 50%;
}
#fcpc .fcpc__creatorcopy figure img {
  width: 100%;
}
#fcpc .fcpc__creatorcopy-copy {
  font-size: clamp(20px, -15.5555555556px + 4.6296296296vw, 40px);
  font-family: "Noto Serif JP", serif;
  line-height: 140%;
  padding-left: 1em;
  position: relative;
}
#fcpc .fcpc__creatorcopy-copy:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl.svg) no-repeat center top;
  background-size: contain;
}
#fcpc .fcpc__creatorcopy .link-other {
  justify-content: flex-end;
  margin-bottom: -5rem;
}
#fcpc .fcpc__creator {
  max-width: 1200px;
  margin: 0 auto;
}
#fcpc .fcpc__creator .creator_area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40px;
}
#fcpc .fcpc__creator .creator_area .users {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 37.5%;
}
@media only screen and (min-width: 821px) {
  #fcpc .fcpc__creator .creator_area .users.sns-sinlges {
    width: calc(37.5% - 62px);
  }
  #fcpc .fcpc__creator .creator_area .users.sns-sinlges + p {
    width: calc(57% + 62px);
  }
}
#fcpc .fcpc__creator .creator_area .users > div {
  display: flex;
  align-items: center;
}
#fcpc .fcpc__creator .creator_area .users img {
  width: 140px;
  margin-right: 25px;
}
#fcpc .fcpc__creator .creator_area .users p {
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
}
#fcpc .fcpc__creator .creator_area .users p span {
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 150%;
  margin-top: 1rem;
}
#fcpc .fcpc__creator .creator_area .users .list-social {
  display: flex;
}
#fcpc .fcpc__creator .creator_area .users .list-social li {
  width: 52px;
}
#fcpc .fcpc__creator .creator_area .users .list-social li img {
  width: 100%;
}
#fcpc .fcpc__creator .creator_area .users .list-social li + li {
  margin-left: 10px;
}
#fcpc .fcpc__creator .creator_area .users + p {
  width: 57%;
  font-size: 1.3rem;
  line-height: 230%;
}
#fcpc .fcpc__creator .recipe_area {
  margin-bottom: 90px;
}
#fcpc .fcpc__creator .recipe_area--title {
  font-size: 4rem;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
#fcpc .fcpc__creator .recipe_area--inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.4rem;
}
#fcpc .fcpc__creator .recipe_area--inner > p {
  width: 55%;
}
#fcpc .fcpc__creator .recipe_area--inner > div {
  width: 43%;
  text-align: center;
}
#fcpc .fcpc__creator .recipe_area--inner a {
  color: #fff;
  font-size: 1.5rem;
  display: inline-block;
  background: #333;
  border-radius: 30px;
  padding: 1.3rem 4rem;
}
#fcpc .fcpc__creator .recipe_area--inner a span {
  position: relative;
  padding-right: 3rem;
}
#fcpc .fcpc__creator .recipe_area--inner a span:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 13px;
  height: 13px;
  background: url(../img/icon_download_white.png) no-repeat center center;
  background-size: contain;
}
#fcpc .fcpc__creator .recipe_area--inner a.link-event-none {
  pointer-events: none;
  opacity: 0.5;
}
@media only screen and (max-width: 820px) {
  #fcpc .fcpc__statement-inner > div {
    width: 100%;
  }
  #fcpc .fcpc__statement-inner h3 {
    font-size: 3rem;
  }
  #fcpc .fcpc__statement-image {
    position: relative;
    top: 0;
    right: 0;
    width: 100%;
    margin: 0 auto;
  }
  #fcpc .fcpc__creatorcopy {
    max-width: calc(100% - 80px);
    flex-direction: column-reverse;
    flex-wrap: wrap;
  }
  #fcpc .fcpc__creatorcopy > div {
    width: 100%;
    margin-bottom: 50px;
  }
  #fcpc .fcpc__creatorcopy figure {
    width: 100%;
  }
  #fcpc .fcpc__creatorcopy-copy {
    font-size: 2.2rem;
  }
  #fcpc .fcpc__creatorcopy .link-other {
    margin-bottom: 0;
  }
  #fcpc .fcpc__creator {
    max-width: calc(100% - 80px);
  }
  #fcpc .fcpc__creator .creator_area {
    flex-direction: column;
    margin-bottom: 30px;
  }
  #fcpc .fcpc__creator .creator_area .users {
    width: 100%;
    margin-bottom: 20px;
  }
  #fcpc .fcpc__creator .creator_area .users img {
    width: 50px;
    margin-right: 15px;
  }
  #fcpc .fcpc__creator .creator_area .users p {
    font-size: 1.8rem;
    line-height: 120%;
  }
  #fcpc .fcpc__creator .creator_area .users p span {
    font-size: 1.1rem;
  }
  #fcpc .fcpc__creator .creator_area .users .list-social li {
    width: 38px;
  }
  #fcpc .fcpc__creator .creator_area .users + p {
    width: 100%;
    line-height: 180%;
    font-size: 1.2rem;
  }
  #fcpc .fcpc__creator .recipe_area {
    margin-bottom: 50px;
  }
  #fcpc .fcpc__creator .recipe_area--title {
    font-size: 2.8rem;
  }
  #fcpc .fcpc__creator .recipe_area--inner {
    flex-direction: column;
  }
  #fcpc .fcpc__creator .recipe_area--inner > p,
  #fcpc .fcpc__creator .recipe_area--inner > div {
    width: 100%;
  }
  #fcpc .fcpc__creator .recipe_area--inner > p {
    line-height: 180%;
    margin-bottom: 3rem;
  }
  #fcpc .fcpc__creator .recipe_area--inner a {
    font-size: 0.8rem;
    padding: 1rem 3rem;
  }
  #fcpc .fcpc__creator .recipe_area--inner a span {
    padding-right: 1.5rem;
  }
  #fcpc .fcpc__creator .recipe_area--inner a span:after {
    width: 10px;
    height: 10px;
  }
}

#spec {
  background: #fff;
  padding-bottom: 100px;
  position: relative;
  z-index: 1;
  /*
  	.spec_area_detail {
  		> div {
  			display: none;
  			&.active {
  				display: block;
  			}
  		}

  	}
  */
}
#spec .contents + .contents {
  padding: 0;
}
#spec .spec_area {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
#spec .spec_area .spec_area_detail {
  width: 59.4%;
  position: relative;
}
@media screen and (max-width: 1100px) {
  #spec .spec_area .spec_area_detail {
    width: 72.9%;
  }
}
#spec .spec_area .spec_area_detail img {
  width: 100%;
}
#spec .spec_area .spec_area_detail > div {
  position: relative;
  display: none;
}
#spec .spec_area .spec_area_detail > div.active {
  display: block;
}
#spec .spec_area .spec_area_detail .inner {
  display: flex;
  align-items: flex-start;
}
#spec .spec_area .spec_area_detail .inner .image_main {
  width: 100%;
}
@media screen and (max-width: 1100px) {
  #spec .spec_area .spec_area_detail .inner .image_main {
    width: 67%;
  }
}
#spec .spec_area .spec_area_detail .inner .text {
  width: 30%;
  height: auto;
  min-height: 27em;
  padding-right: 2.5em;
  margin-top: 2em;
  position: absolute;
  margin-top: 7rem;
  width: auto;
  left: 12%;
  font-size: clamp(1rem, 1vw, 1.4rem);
  font-weight: bold;
  letter-spacing: 4px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}
#spec .spec_area .spec_area_detail .inner .text .text-white {
  color: #fff;
}
#spec .spec_area .spec_area_detail .inner .text .line {
  display: inline-block;
  background-color: #fff;
  padding: 0.5em 0.2em 0.2em;
  margin-bottom: 0.5em;
  margin-left: 3px;
}
@media screen and (max-width: 1100px) {
  #spec .spec_area .spec_area_detail .inner .text {
    min-height: 29em;
    padding-right: 1.5em;
    margin-top: 1em;
  }
}
#spec .spec_area .spec_area_detail .inner .text .not-vertical {
  -ms-writing-mode: inherit;
  writing-mode: initial;
  text-orientation: inherit;
  letter-spacing: 1px;
}
#spec .spec_area .spec_area_detail .inner .text .tate1 {
  margin-top: -10px;
}
#spec .spec_area .spec_area_detail .inner .text .tate2 {
  display: inline-block;
  transform: rotate(90deg) scale(1.5);
}
#spec .spec_area .spec_area_detail .spec_slider {
  position: absolute;
  bottom: -34%;
  right: 0;
  width: 35%;
  height: 26vw;
  max-height: 366px;
}
#spec .spec_area .spec_area_detail .spec_slider img {
  width: 100%;
}
#spec .spec_area .spec_area_detail .spec_slider .slick-dots {
  text-align: right;
  bottom: -20px;
}
#spec .spec_area .spec_area_detail .spec_slider .slick-dots li {
  width: 6px;
  height: 6px;
}
#spec .spec_area .spec_area_detail .spec_slider .slick-dots li button:before {
  font-size: 18px;
}
#spec .spec_area ol {
  border-top: solid 1px #eaeaea;
  margin-top: 80px;
  margin-left: 5vw;
  width: 27.1%;
}
#spec .spec_area ol > li {
  border-bottom: solid 1px #eaeaea;
  cursor: pointer;
  padding: 2em 0;
  position: relative;
}
#spec .spec_area ol > li ul li span {
  font-size: clamp(1.2rem, 1vw, 1.5rem);
  transition: 0.5s;
  position: relative;
  padding-left: 1.5em;
}
#spec .spec_area ol > li ul li span:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1em;
  height: 1px;
  background: #222;
  transition: 0.5s;
}
#spec .spec_area ol > li ul li span:hover {
  background: #fafafa;
  padding-left: 2em;
}
#spec .spec_area ol > li ul li span:hover:before {
  left: 0.5em;
}
#spec .spec_area ol > li span {
  font-size: clamp(1.6rem, 1.9vw, 2.6rem);
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  margin-left: 10px;
}
#spec .spec_area--05 {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#spec .spec_area--05 .area-title {
  font-size: 2.6rem;
  font-family: "Noto Serif JP", serif;
  width: 33%;
}
#spec .spec_area--05 .area-text {
  font-size: 1.4rem;
  width: 60%;
}
#spec .spec_area--05 .area-text .links-product {
  margin-top: 5rem;
  display: flex;
  justify-content: flex-end;
}
@media only screen and (max-width: 820px) {
  #spec {
    padding-bottom: 20px;
  }
  #spec .contents + .contents {
    margin-top: -5rem;
  }
  #spec .spec_area_sp {
    padding: 0 15px;
    width: 100%;
  }
  #spec .spec_area_sp ol > li {
    padding-bottom: 20px;
    border-bottom: solid 2px #d6d6d6;
    margin-bottom: 20px;
  }
  #spec .spec_area_sp ol > li > span {
    font-size: 1.9rem;
    font-family: "Noto Serif JP", serif;
  }
  #spec .spec_area_sp ol > li .spec-list_sp {
    margin-top: 1.5em;
    margin-left: 2em;
  }
  #spec .spec_area_sp ol > li .spec-list_sp li + li {
    margin-top: 15px;
  }
  #spec .spec_area_sp ol > li .spec-list_sp [id*=acc_spec_] {
    display: none;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .text {
    font-size: 1.3rem;
    line-height: 1.6;
    padding-right: 4em;
    margin-top: 1em;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .slider_sp {
    width: 90%;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .slider_sp img {
    width: 100%;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .accordion-icon {
    margin-left: 10px;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .accordion-icon:before {
    content: "＋";
  }
  #spec .spec_area_sp ol > li .spec-list_sp .accordion-icon.open:before {
    content: "ー";
  }
  #spec .spec_area_sp ol > li .spec-list_sp .slick-dots li button:before {
    font-size: 1.8rem;
  }
  #spec .spec_area_sp ol > li .spec-list_sp .slick-dots li {
    width: 15px;
    height: 15px;
  }
  #spec .spec_area--05 {
    flex-direction: column;
  }
  #spec .spec_area--05 .area-title {
    font-size: 1.9rem;
    padding: 0 15px;
    width: 100%;
  }
  #spec .spec_area--05 .area-text {
    font-size: 1.3rem;
    padding: 0 15px;
    padding-left: calc(2em + 15px);
    width: 100%;
  }
  #spec .spec_area--05 .area-text .links-product {
    margin-top: 5rem;
    display: flex;
    justify-content: flex-end;
  }
  #spec .spec_area--05 .link-other {
    padding-right: 0;
  }
}

#exterior {
  background: #fff;
  text-align: center;
  position: relative;
  z-index: 1;
}
#exterior .contents_ttl {
  text-align: left;
}
#exterior h3 {
  font-size: clamp(2.5rem, 3.2vw, 4.4rem);
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}
#exterior h3 + p {
  font-size: 1.5rem;
  margin-top: 45px;
}
#exterior .list_bnr {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 35px;
}
#exterior .list_bnr li {
  padding: 15px;
  width: 582px;
}
#exterior .list_bnr li a {
  display: block;
}
#exterior .list_bnr li a img {
  width: 100%;
}
#exterior .scroll {
  overflow: hidden;
  margin-top: 65px;
}
#exterior .scroll li {
  display: inline-block;
  vertical-align: top;
  will-change: transform;
}
#exterior .scroll ul {
  position: relative;
  white-space: nowrap;
  will-change: left, right;
}
#exterior .scroll ul li {
  position: relative;
  padding: 0;
  cursor: pointer;
  z-index: 1;
  width: 33.33%;
}
#exterior .scroll ul.on li {
  transition: all 1s ease-in-out;
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
#exterior .scroll ul.on li img {
  max-width: 100%;
  height: auto;
  max-height: 100%;
}
#exterior .color_variation {
  width: 100%;
  position: relative;
  margin-top: 30px;
  /*
  		h2 {
  			width: 100%;
  			max-width: 1400px;
  			margin: 0 auto;
  			padding: 0 100px;
  			@include font-roboto();
  			font-size: clamp(5.5rem, 9.3vw, 13.2rem);
  			font-weight: 300;
  			text-align: left;
  			line-height: 1;

  			span {
  				display: block;
  				&:nth-child(2){
  					margin-left: 1.9em;
  				}
  			}
  		}
  */
  /*
  .simplebar-scrollbar.simplebar-visible::before {
  	opacity: 1;
  }
  .simplebar-scrollbar::before {
  	background: #fff;
  	height: 3px;
  }
  .simplebar-track {
  	background: #656565;
  	height: 3px;
  }

  .p-timetable__scrollbar {
  	overflow-x: scroll;
  	margin-bottom: 5px;
  	scrollbar-width: thin;
  	scrollbar-color: #b3d7eb #dae7ee;
  }
  .p-timetable__scrollbar-inner {
  	width: 1890px;
  	height: 1px;
  }

   */
}
#exterior .color_variation:after {
  content: "";
  position: absolute;
  bottom: 110px;
  left: 50%;
  transform: translateX(-50%);
  width: 87%;
  max-width: 1200px;
  height: 1px;
  background: #fff;
}
#exterior .color_variation .color_variation_area {
  width: 100%;
  overflow: hidden;
  padding-bottom: 70px;
  position: relative;
}
#exterior .color_variation .color_variation_area:after {
  content: "COLOR VARIATION";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-size: 19rem;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
  opacity: 0.08;
  z-index: 0;
}
#exterior .color_variation .color_variation_inner {
  margin-top: 110px;
  position: relative;
  z-index: 1;
  /*
  			.slider .slick-slide{
  				margin-right: 1vw!important;
  				margin-left: 1vw!important;
  			}
  */
}
#exterior .color_variation .color_variation_inner .slick-prev,
#exterior .color_variation .color_variation_inner .slick-next {
  z-index: 1;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  border: solid 1px #656565;
  width: 56px;
  height: 56px;
}
#exterior .color_variation .color_variation_inner .slick-prev:before,
#exterior .color_variation .color_variation_inner .slick-next:before {
  content: "";
  position: absolute;
  top: 30%;
  left: 0;
  width: 14px;
  height: 14px;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#exterior .color_variation .color_variation_inner .slick-prev {
  top: inherit;
  bottom: 0;
  left: 0;
}
#exterior .color_variation .color_variation_inner .slick-prev:before {
  top: calc(50% - 10px);
  left: calc(50% - 5px);
  border-bottom: solid 1px #fff;
  border-left: solid 1px #fff;
}
#exterior .color_variation .color_variation_inner .slick-next {
  top: inherit;
  bottom: 0;
  right: 0;
}
#exterior .color_variation .color_variation_inner .slick-next:before {
  top: calc(50% - 10px);
  left: calc(50% - 10px);
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}
#exterior .color_variation .color_variation_inner .items {
  width: 30%;
  max-width: 470px;
}
#exterior .color_variation .color_variation_inner .items img {
  width: 100%;
}
#exterior .color_variation .color_variation_inner .items .item_main {
  position: relative;
}
#exterior .color_variation .color_variation_inner .items .item_main p {
  position: absolute;
  top: 0;
  right: -10%;
  font-size: 1.4rem;
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  line-height: 1;
}
#exterior .color_variation .color_variation_inner .items .item_main p span {
  font-size: 1rem;
  margin-bottom: 0.5em;
}
#exterior .color_variation .color_variation_inner .items .item_main p img {
  margin-top: 0.5em;
  width: 16px;
  display: inline-block;
}
#exterior .color_variation .color_variation_inner .items .item_carousel {
  margin-top: 40px;
}
#exterior .color_variation .color_variation_inner .items .item_carousel ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#exterior .color_variation .color_variation_inner .items .item_carousel ul > li {
  width: 25%;
  padding: 4.5%;
  cursor: pointer;
}
#exterior .color_variation .color_variation_inner .items .item_carousel ul > li.active, #exterior .color_variation .color_variation_inner .items .item_carousel ul > li:hover {
  background: #4e4e4e;
}
#exterior .color_variation .color_variation_inner .items .item_carousel ul > li img {
  transition: opacity 0.3s ease;
}
#exterior .color_variation .color_variation_navi {
  width: 100%;
  max-width: 1400px;
  padding: 0 100px;
  margin: 25px auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#exterior .color_variation .color_variation_navi .color_variation_navi_kind {
  display: flex;
  align-items: center;
}
#exterior .color_variation .color_variation_navi .color_navi {
  display: flex;
  align-items: center;
  margin-bottom: 0 !important;
}
#exterior .color_variation .color_variation_navi .color_navi img {
  width: 100%;
  display: block;
}
#exterior .color_variation .color_variation_navi .color_navi > * {
  width: 16px;
  cursor: pointer;
  position: relative;
  z-index: 1;
}
#exterior .color_variation .color_variation_navi .color_navi > *.active:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: -2px;
  width: 20px;
  height: 20px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0px 0px 7px #fff;
  z-index: -1;
}
#exterior .color_variation .color_variation_navi .color_navi > * + * {
  margin-left: 10px;
}
#exterior .color_variation .color_variation_navi .body_color_navi {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  margin-left: 4rem;
}
#exterior .color_variation .color_variation_navi .body_color_navi span {
  display: inline-block;
  background: #fff;
  border-radius: 30px;
  color: #333;
  padding: 0.3rem 1.5rem 0.3rem 3.5rem;
  margin-left: 2rem;
  position: relative;
  cursor: pointer;
}
#exterior .color_variation .color_variation_navi .body_color_navi span:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 7px;
  width: 22px;
  height: 22px;
  background: #e0e0e0;
  border-radius: 50%;
}
#exterior .color_variation .color_variation_navi .body_color_navi.__black span {
  background: #fff;
  color: #151515;
  padding: 0.3rem 3.5rem 0.3rem 1.5rem;
}
#exterior .color_variation .color_variation_navi .body_color_navi.__black span::before {
  left: auto;
  right: 7px;
  background: #151515;
}
#exterior .color_variation .color_variation_navi .btn_navi span {
  cursor: pointer;
  display: inline-block;
  position: relative;
  border: solid 1px #656565;
  width: 56px;
  height: 56px;
}
#exterior .color_variation .color_variation_navi .btn_navi span:before {
  content: "";
  position: absolute;
  top: 30%;
  left: 0;
  width: 14px;
  height: 14px;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#exterior .color_variation .color_variation_navi .btn_navi span.next {
  margin-left: -1px;
}
#exterior .color_variation .color_variation_navi .btn_navi span.next:before {
  top: calc(50% - 10px);
  left: calc(50% - 10px);
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}
#exterior .color_variation .color_variation_navi .btn_navi span.prev:before {
  top: calc(50% - 10px);
  left: calc(50% - 5px);
  border-bottom: solid 1px #fff;
  border-left: solid 1px #fff;
}
#exterior .color_variation .color_variation_navi .btn_navi span:hover {
  background: #fff;
}
#exterior .color_variation .color_variation_navi .btn_navi span:hover.next:before, #exterior .color_variation .color_variation_navi .btn_navi span:hover.prev:before {
  border-color: #222;
}
#exterior #exterior_campaign {
  width: 100%;
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
}
#exterior #exterior_campaign .inner {
  border: solid 1px #fff;
  padding: 70px 60px;
  position: relative;
}
#exterior #exterior_campaign .inner:before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  width: 15px;
  height: 15px;
  background: #333;
}
#exterior #exterior_campaign .inner:after {
  content: "";
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 15px;
  height: 15px;
  background: #333;
}
#exterior #exterior_campaign h2 {
  text-align: center;
  line-height: 1.5;
  margin-bottom: 50px;
}
#exterior #exterior_campaign h2.ttl {
  font-family: "Noto Serif JP", serif;
}
#exterior #exterior_campaign h2.ttl span {
  display: inline-block;
  font-size: clamp(3.5rem, 4.3vw, 6.2rem);
  border-bottom: solid 2px #fff;
  letter-spacing: -3px;
  font-style: italic;
  margin-bottom: 2rem;
}
#exterior #exterior_campaign h2.ttl small {
  font-size: clamp(20px, -6.6666666667px + 3.4722222222vw, 35px);
  border-bottom: solid 2px #fff;
}
#exterior #exterior_campaign figure {
  margin-bottom: 40px;
}
#exterior #exterior_campaign figure img {
  width: 100%;
}
#exterior #exterior_campaign h3 img {
  width: 100%;
}
#exterior #exterior_campaign .footer_campaign {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.5rem;
  text-align: left;
  margin-top: 45px;
}
#exterior #exterior_campaign .footer_campaign > div:first-of-type {
  padding-right: 1em;
}
#exterior #exterior_campaign .footer_campaign > div:last-of-type {
  text-align: right;
}
#exterior #exterior_campaign .footer_campaign p {
  margin: 0;
}
#exterior #exterior_campaign .footer_campaign .note {
  font-size: 1.2rem;
  margin-top: 0.5rem;
}
#exterior #exterior_campaign .footer_campaign a {
  white-space: nowrap;
  font-size: clamp(1.1rem, 1vw, 1.5rem);
}
#exterior #exterior_campaign .footer_campaign .btn_nikon_store {
  width: 330px;
  margin-top: 30px;
}
#exterior #exterior_campaign .footer_campaign .btn_nikon_store img {
  width: 100%;
}
#exterior .contents + .contents {
  margin-top: -15px;
}
@media only screen and (max-width: 820px) {
  #exterior h3 {
    font-size: 2.5rem;
  }
  #exterior h3 + p {
    font-size: 1.3rem;
    margin-top: 30px;
  }
  #exterior .list_bnr {
    margin-top: 25px;
    padding: 0;
  }
  #exterior .list_bnr li {
    padding: 0;
    width: 100%;
  }
  #exterior .list_bnr li + li {
    margin-top: 15px;
  }
  #exterior .scroll {
    margin-top: 30px;
  }
  #exterior .scroll ul li {
    width: 80%;
  }
  #exterior .color_variation h2 {
    width: 100%;
    padding: 0 15px;
    font-size: 5.5rem;
  }
  #exterior .color_variation h2 span {
    display: block;
  }
  #exterior .color_variation h2 span:nth-child(2) {
    margin-left: 1.3em;
  }
  #exterior .color_variation .color_variation_area:after {
    font-size: 9.5rem;
  }
  #exterior .color_variation .color_variation_inner {
    margin-top: 70px;
  }
  #exterior .color_variation .color_variation_inner .items {
    padding: 0 6vw;
  }
  #exterior .color_variation .color_variation_inner .items .item_main p {
    right: -15%;
    font-size: 1.2rem;
  }
  #exterior .color_variation .color_variation_inner .items .item_carousel {
    margin-top: 20px;
  }
  #exterior .color_variation .color_variation_navi {
    padding: 0 15px;
  }
  #exterior .color_variation .color_variation_navi .color_variation_navi_kind {
    flex-direction: column;
    align-items: flex-start;
  }
  #exterior .color_variation .color_variation_navi .color_navi > * {
    width: 12px;
  }
  #exterior .color_variation .color_variation_navi .color_navi > *.active:before {
    bottom: -1px;
    left: -1px;
    width: 14px;
    height: 13px;
  }
  #exterior .color_variation .color_variation_navi .color_navi > * + * {
    margin-left: 8px;
  }
  #exterior .color_variation .color_variation_navi .body_color_navi {
    margin-left: 0;
    margin-top: 3rem;
  }
  #exterior .color_variation .color_variation_navi .btn_navi span {
    width: 42px;
    height: 42px;
  }
  #exterior .color_variation .color_variation_navi .btn_navi span:before {
    width: 10px;
    height: 10px;
  }
  #exterior .color_variation .color_variation_navi .btn_navi span.next:before {
    top: calc(50% - 5px);
    left: calc(50% - 7px);
  }
  #exterior .color_variation .color_variation_navi .btn_navi span.prev:before {
    top: calc(50% - 5px);
    left: calc(50% - 2px);
  }
  #exterior #exterior_campaign .inner {
    padding: 25px 15px;
  }
  #exterior #exterior_campaign h2 {
    margin-bottom: 30px;
  }
  #exterior #exterior_campaign h2.ttl {
    font-size: 1.6rem;
  }
  #exterior #exterior_campaign h2.ttl span {
    font-size: 2.7rem;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #exterior #exterior_campaign h2.ttl small {
    font-size: 1.5rem;
  }
  #exterior #exterior_campaign figure {
    margin-bottom: 20px;
  }
  #exterior #exterior_campaign h3 {
    width: 76%;
    margin: 0 auto;
  }
  #exterior #exterior_campaign .footer_campaign {
    font-size: 1.3rem;
    flex-direction: column;
    margin-top: 22px;
  }
  #exterior #exterior_campaign .footer_campaign > div:first-of-type {
    padding-right: 0;
  }
  #exterior #exterior_campaign .footer_campaign > div:last-of-type {
    text-align: center;
  }
  #exterior #exterior_campaign .footer_campaign .note {
    font-size: 1rem;
  }
  #exterior #exterior_campaign .footer_campaign a {
    display: inline-block;
    margin-top: 30px;
    font-size: 1.3rem;
  }
  #exterior #exterior_campaign .footer_campaign .btn_nikon_store {
    width: 217px;
    margin-top: 0;
  }
  #exterior .contents + .contents {
    margin-top: -35px;
  }
}

.bnr_exterior {
  width: 58%;
  max-width: 800px;
  margin: 0 auto;
}
.bnr_exterior img {
  width: 100%;
}
@media only screen and (max-width: 820px) {
  .bnr_exterior {
    width: calc(100% - 54px);
    margin-bottom: 50px;
  }
}

#crosstalk {
  background: #fff;
  position: relative;
  z-index: 1;
}
#crosstalk [id*=accordion] {
  position: relative;
}
#crosstalk [id*=accordion]:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  z-index: -1;
}
#crosstalk [id*=accordion] > *:not(.member_view) {
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
}
#crosstalk [id*=accordion] .member_view {
  width: 100%;
}
#crosstalk [data-type*=accordion] {
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
  position: relative;
  /*
  span {
  	font-size: 1.3rem;
  	font-weight: bold;
  	display: block;
  	text-align: center;
  	position: relative;
  	em {
  		display: block;
  		font-size: 5rem;
  		line-height: 1;
  	}

  	&:before {
  		content: '';
  		position: absolute;
  		top: 0;
  		right: 0;
  		width: 1px;
  		height: 100%;
  		background: #292929;
  	}
  }

   */
}
#crosstalk [data-type*=accordion] + * {
  display: none;
}
#crosstalk [data-type*=accordion].open + * {
  display: inherit;
  padding-bottom: 120px;
}
#crosstalk [data-type*=accordion]:before, #crosstalk [data-type*=accordion]:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 48px;
  height: 1px;
  background: #000;
}
#crosstalk [data-type*=accordion]:after {
  transform: rotate(90deg);
}
#crosstalk [data-type*=accordion].open:after {
  display: none;
}
#crosstalk [data-type*=accordion] h3 {
  font-size: clamp(2rem, 2.9vw, 4rem);
  font-family: "Noto Serif JP", serif;
  padding: 0.8em 0;
}
#crosstalk .box_talk {
  margin-top: -70px;
}
#crosstalk .box_talk .inner {
  width: 100%;
  transition: 1s;
  /*
  .movie {
  	width: 100%;
  	cursor: pointer;
  	overflow: hidden;
  	//padding: 0 15px;
  	position: relative;

  	img {
  		width: 100%;
  		height: auto;
  		transition: 1s;
  	}

  	&:hover {
  		img {
  			transform: scale(1.05);
  		}
  	}
  }

   */
}
#crosstalk .box_talk .inner.active {
  background: #fafafa;
}
#crosstalk .box_talk .inner .inner_box {
  width: 100%;
  position: relative;
}
#crosstalk .box_talk .inner .inner_box:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background: #cbcbcb;
}
#crosstalk .box_talk .inner .member_area {
  margin-top: 80px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  /*
  				.video_creator {
  					display: flex;
  					justify-content: space-between;
  					flex-wrap: wrap;

  					.member_profile {
  						width: 57%;

  						figure {
  							width: 31%;

  							+ div {
  								width: 64%;
  							}
  						}
  						h4 {
  							font-size: 3.0rem;
  							span {
  								font-size: 1.4rem;
  							}
  							+ p {
  								font-size: 1.5rem;
  								line-height: 1.8;
  							}
  						}
  					}

  					.movie {
  						width: 38%;
  						position: relative;
  						img {
  							width: 100%;
  						}
  					}
  				}

   */
}
#crosstalk .box_talk .inner .member_area .member_profile {
  width: 30%;
  position: relative;
  /*
  .text_profile {
  	width: 80.83%;
  	overflow: hidden;
  }

   */
  /*
  .number {
  	font-size: 1.2rem;
  	position: relative;

  	span {
  		background: #fafafa;
  		padding-right: 1em;
  		z-index: 1;
  	}
  	&:after {
  		content: '';
  		position: absolute;
  		top: 50%;
  		transform: translateY(-50%);
  		width: 100%;
  		height: 1px;
  		background: #222;
  		z-index: 0;
  	}
  }

   */
}
#crosstalk .box_talk .inner .member_area .member_profile + .member_profile:before {
  content: "";
  position: absolute;
  top: 0;
  left: -8%;
  width: 1px;
  height: 100%;
  background: #222;
}
#crosstalk .box_talk .inner .member_area .member_profile > div {
  font-size: clamp(1rem, 1vw, 1.3rem);
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
#crosstalk .box_talk .inner .member_area .member_profile .movie {
  position: relative;
  margin-top: 30px;
  /*
  @include mq2($break_sp){
  	position: absolute;
  	bottom: 1vw;
  	right: 0;
  	margin: 0;
  }

   */
}
#crosstalk .box_talk .inner .member_area .member_profile .movie + .movie {
  margin-top: 6px;
}
#crosstalk .box_talk .inner .member_area .member_profile .movie img {
  width: 100%;
}
#crosstalk .box_talk .inner .member_area .member_profile .movies {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
#crosstalk .box_talk .inner .member_area .member_profile .movies .movie {
  width: 47%;
  margin-top: 0;
}
#crosstalk .box_talk .inner .member_area .member_profile .movies .movie + .movie {
  margin-top: 0;
}
#crosstalk .box_talk .inner .member_area .member_profile figure {
  width: 36%;
}
#crosstalk .box_talk .inner .member_area .member_profile figure img {
  width: 100%;
}
#crosstalk .box_talk .inner .member_area .member_profile figure + div {
  width: 57%;
}
#crosstalk .box_talk .inner .member_area .member_profile h4 {
  font-size: clamp(1.8rem, 1.6vw, 2.2rem);
  font-family: "Noto Serif JP", serif;
  line-height: 1.64;
  margin-bottom: 10px;
}
#crosstalk .box_talk .inner .member_area .member_profile h4 span {
  display: block;
  font-size: 1.2rem;
}
#crosstalk .box_talk .inner .member_area .member_profile .text {
  font-size: 1.4rem;
}
@media only screen and (min-width: 821px) {
  #crosstalk .box_talk .inner .member_area.col1 .member_profile {
    width: 100%;
    padding-bottom: 0;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile > div {
    display: flex;
    justify-content: space-between;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile:before {
    left: -6%;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile h4 {
    font-size: clamp(20px, -15.5555555556px + 4.6296296296vw, 40px);
    font-family: "Noto Serif JP", serif;
    line-height: 1;
    margin-bottom: 24px;
    letter-spacing: 4px;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile h4 span {
    display: inline-block;
    font-size: 1.8rem;
    letter-spacing: 2px;
    margin-left: 2.5rem;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile figure {
    width: 12%;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile figure + div {
    width: 33%;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile .images_main {
    width: 49.5%;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile .images_main img {
    width: 100%;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile.col1 figure + div {
    width: 85.5%;
  }
}
@media only screen and (min-width: 821px) {
  #crosstalk .box_talk .inner .member_area.col2 .member_profile {
    width: 47%;
    padding-bottom: 0;
  }
  #crosstalk .box_talk .inner .member_area.col2 .member_profile:before {
    left: -6%;
  }
  #crosstalk .box_talk .inner .member_area.col2 .member_profile figure {
    width: 23%;
  }
  #crosstalk .box_talk .inner .member_area.col2 .member_profile figure + div {
    width: 73%;
  }
}
@media only screen and (min-width: 821px) {
  #crosstalk .box_talk .inner .member_area.col2_5 .member_profile {
    width: 30%;
  }
  #crosstalk .box_talk .inner .member_area.col2_5 .member_profile.large-column {
    width: 65.5%;
  }
  #crosstalk .box_talk .inner .member_area.col2_5 .member_profile.large-column figure {
    width: 16.5%;
  }
  #crosstalk .box_talk .inner .member_area.col2_5 .member_profile.large-column figure img {
    width: 100%;
  }
  #crosstalk .box_talk .inner .member_area.col2_5 .member_profile.large-column figure + div {
    width: 79%;
  }
}
@media only screen and (max-width: 820px) {
  #crosstalk .box_talk .inner .member_area.col1 .member_profile .images_main {
    width: calc(100% - 40px);
    margin: 45px auto 0;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile .images_main.sp-none {
    margin: 0;
  }
  #crosstalk .box_talk .inner .member_area.col1 .member_profile .images_main img {
    width: 100%;
  }
}
#crosstalk .box_talk .inner .member_view {
  margin-top: 50px;
}
#crosstalk .scroll {
  overflow: hidden;
}
#crosstalk .scroll li {
  display: inline-block;
  vertical-align: top;
  will-change: transform;
  /*
  max-height: 249px;
  img {
  	height: 100%;
  }
  */
}
#crosstalk .scroll ul {
  position: relative;
  white-space: nowrap;
  will-change: left, right;
}
#crosstalk .scroll ul li {
  position: relative;
  padding: 0 5px;
  cursor: pointer;
  z-index: 1;
}
#crosstalk .scroll ul li .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}
#crosstalk .scroll ul li .overlay .overlay-text {
  color: white;
  text-align: center;
  opacity: 0;
  width: 70%;
  max-width: 152px;
}
#crosstalk .scroll ul li .overlay .overlay-text img {
  width: 100% !important;
}
#crosstalk .scroll ul li:hover .overlay {
  background-color: rgba(0, 0, 0, 0.5);
}
#crosstalk .scroll ul li:hover .overlay .overlay-text {
  opacity: 1;
}
#crosstalk .scroll ul.padding-zero li {
  padding: 0;
}
#crosstalk .scroll ul.on li {
  transition: all 1s ease-in-out;
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
#crosstalk .scroll ul.on li img {
  max-width: 100%;
  height: auto;
  max-height: 100%;
}
@media only screen and (max-width: 820px) {
  #crosstalk .contents_ttl + p {
    margin-top: -7.5em;
  }
  #crosstalk .box_talk {
    margin-top: 0;
    padding: 0 15px;
  }
  #crosstalk .box_talk .inner {
    width: calc(100% + 30px);
    margin-left: -15px;
  }
  #crosstalk .box_talk .inner .inner_box:after {
    width: calc(100% - 30px);
  }
  #crosstalk .box_talk .inner .member_area {
    margin-top: 15px;
    /*
    					.video_creator {
    						.member_profile {
    							width: 100%;

    							h4 {
    								font-size: 1.8rem;
    								span {
    									font-size: 1.3rem;
    								}
    								+ p {
    									font-size: 1.2rem;
    									line-height: 1.8;
    								}
    							}
    						}
    						.movie {
    							width: 100%;
    							margin-top: 40px;
    						}
    					}

     */
  }
  #crosstalk .box_talk .inner .member_area + .member_area {
    margin-top: 70px;
  }
  #crosstalk .box_talk .inner .member_area .member_profile {
    width: 100%;
    /*
    .text_profile {
    	width: 100%;
    }

     */
    /*
    .photo {
    	float: left;
    	width: 35%;
    	padding: 0 20px 10px 0;
    }

     */
    /*
    .number {
    	font-size: 1.0rem;
    }

     */
  }
  #crosstalk .box_talk .inner .member_area .member_profile + .member_profile {
    margin-top: 20px;
    border-top: solid 1px #222;
    padding-top: 20px;
  }
  #crosstalk .box_talk .inner .member_area .member_profile + .member_profile:before {
    content: none;
  }
  #crosstalk .box_talk .inner .member_area .member_profile > div {
    font-size: 1.2rem;
  }
  #crosstalk .box_talk .inner .member_area .member_profile > div .list-sns {
    margin-top: -10px;
  }
  #crosstalk .box_talk .inner .member_area .member_profile .movie {
    position: relative;
    margin-top: 30px;
  }
  #crosstalk .box_talk .inner .member_area .member_profile .movie + .movie {
    margin-top: 15px;
  }
  #crosstalk .box_talk .inner .member_area .member_profile figure {
    width: 29%;
  }
  #crosstalk .box_talk .inner .member_area .member_profile figure + div {
    width: 66%;
  }
  #crosstalk .box_talk .inner .member_area .member_profile h4 {
    font-size: 1.8rem;
  }
  #crosstalk .box_talk .inner .member_area .member_profile h4 span {
    font-size: 1.3rem;
    display: block;
    margin: 0;
  }
  #crosstalk .box_talk .inner .member_area .member_profile .text {
    font-size: 1.1rem;
  }
  #crosstalk .box_talk .inner .member_area .member_view {
    margin-top: 25px;
  }
  #crosstalk [data-type*=accordion]:before, #crosstalk [data-type*=accordion]:after {
    width: 20px;
    right: 15px;
  }
  #crosstalk [data-type*=accordion].open + * {
    padding-bottom: 70px;
  }
  #crosstalk [data-type*=accordion] h3 {
    font-size: 2rem;
  }
}

.crosstalk {
  position: relative;
  z-index: 1;
}
.crosstalk + .fcpc__creatorcopy {
  margin-top: 140px !important;
}
.crosstalk [id*=accordion] {
  position: relative;
}
.crosstalk [id*=accordion]:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  z-index: -1;
}
.crosstalk [id*=accordion] > *:not(.member_view) {
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
}
.crosstalk [id*=accordion] .member_view {
  width: 100%;
}
.crosstalk [data-type*=accordion] {
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
  position: relative;
  /*
  span {
  	font-size: 1.3rem;
  	font-weight: bold;
  	display: block;
  	text-align: center;
  	position: relative;
  	em {
  		display: block;
  		font-size: 5rem;
  		line-height: 1;
  	}

  	&:before {
  		content: '';
  		position: absolute;
  		top: 0;
  		right: 0;
  		width: 1px;
  		height: 100%;
  		background: #292929;
  	}
  }

   */
}
.crosstalk [data-type*=accordion] + * {
  display: none;
}
.crosstalk [data-type*=accordion].open + * {
  display: inherit;
  padding-bottom: 120px;
}
.crosstalk [data-type*=accordion]:before, .crosstalk [data-type*=accordion]:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 48px;
  height: 1px;
  background: #000;
}
.crosstalk [data-type*=accordion]:after {
  transform: rotate(90deg);
}
.crosstalk [data-type*=accordion].open:after {
  display: none;
}
.crosstalk [data-type*=accordion] h3 {
  font-size: clamp(2rem, 2.9vw, 4rem);
  font-family: "Noto Serif JP", serif;
  padding: 0.8em 0;
}
.crosstalk .box_talk {
  margin-top: -70px;
}
.crosstalk .box_talk .inner {
  width: 100%;
  transition: 1s;
  /*
  .movie {
  	width: 100%;
  	cursor: pointer;
  	overflow: hidden;
  	//padding: 0 15px;
  	position: relative;

  	img {
  		width: 100%;
  		height: auto;
  		transition: 1s;
  	}

  	&:hover {
  		img {
  			transform: scale(1.05);
  		}
  	}
  }

   */
}
.crosstalk .box_talk .inner.active {
  background: #fafafa;
}
.crosstalk .box_talk .inner .inner_box {
  width: 100%;
  position: relative;
}
.crosstalk .box_talk .inner .inner_box:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background: #cbcbcb;
}
.crosstalk .box_talk .inner .member_area {
  margin-top: 80px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  /*
  				.video_creator {
  					display: flex;
  					justify-content: space-between;
  					flex-wrap: wrap;

  					.member_profile {
  						width: 57%;

  						figure {
  							width: 31%;

  							+ div {
  								width: 64%;
  							}
  						}
  						h4 {
  							font-size: 3.0rem;
  							span {
  								font-size: 1.4rem;
  							}
  							+ p {
  								font-size: 1.5rem;
  								line-height: 1.8;
  							}
  						}
  					}

  					.movie {
  						width: 38%;
  						position: relative;
  						img {
  							width: 100%;
  						}
  					}
  				}

   */
}
.crosstalk .box_talk .inner .member_area .member_profile {
  width: 30%;
  position: relative;
  /*
  .text_profile {
  	width: 80.83%;
  	overflow: hidden;
  }

   */
  /*
  .number {
  	font-size: 1.2rem;
  	position: relative;

  	span {
  		background: #fafafa;
  		padding-right: 1em;
  		z-index: 1;
  	}
  	&:after {
  		content: '';
  		position: absolute;
  		top: 50%;
  		transform: translateY(-50%);
  		width: 100%;
  		height: 1px;
  		background: #222;
  		z-index: 0;
  	}
  }

   */
}
.crosstalk .box_talk .inner .member_area .member_profile + .member_profile:before {
  content: "";
  position: absolute;
  top: 0;
  left: -8%;
  width: 1px;
  height: 100%;
  background: #222;
}
.crosstalk .box_talk .inner .member_area .member_profile > div {
  font-size: clamp(1rem, 1vw, 1.3rem);
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
.crosstalk .box_talk .inner .member_area .member_profile > .movie {
  position: relative;
  margin-top: 30px;
  /*
  @include mq2($break_sp){
  	position: absolute;
  	bottom: 1vw;
  	right: 0;
  	margin: 0;
  }

   */
}
.crosstalk .box_talk .inner .member_area .member_profile > .movie + .movie {
  margin-top: 6px;
}
.crosstalk .box_talk .inner .member_area .member_profile > .movie img {
  width: 100%;
}
.crosstalk .box_talk .inner .member_area .member_profile figure {
  width: 36%;
}
.crosstalk .box_talk .inner .member_area .member_profile figure img {
  width: 100%;
}
.crosstalk .box_talk .inner .member_area .member_profile figure + div {
  width: 57%;
}
.crosstalk .box_talk .inner .member_area .member_profile h4 {
  font-size: clamp(1.8rem, 1.6vw, 2.2rem);
  font-family: "Noto Serif JP", serif;
  line-height: 1.64;
  margin-bottom: 10px;
}
.crosstalk .box_talk .inner .member_area .member_profile h4 span {
  display: block;
  font-size: 1.2rem;
}
.crosstalk .box_talk .inner .member_area .member_profile .text {
  font-size: 1.4rem;
}
@media only screen and (min-width: 821px) {
  .crosstalk .box_talk .inner .member_area.col2 .member_profile {
    width: 47%;
    padding-bottom: 0;
  }
  .crosstalk .box_talk .inner .member_area.col2 .member_profile:before {
    left: -6%;
  }
  .crosstalk .box_talk .inner .member_area.col2 .member_profile figure {
    width: 23%;
  }
  .crosstalk .box_talk .inner .member_area.col2 .member_profile figure + div {
    width: 73%;
  }
}
.crosstalk .box_talk .inner .member_view {
  margin-top: 50px;
}
.crosstalk .scroll {
  overflow: hidden;
}
.crosstalk .scroll li {
  display: inline-block;
  vertical-align: top;
  will-change: transform;
}
.crosstalk .scroll ul {
  position: relative;
  white-space: nowrap;
  will-change: left, right;
}
.crosstalk .scroll ul li {
  position: relative;
  padding: 0 5px;
  cursor: pointer;
  z-index: 1;
}
.crosstalk .scroll ul li .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}
.crosstalk .scroll ul li .overlay .overlay-text {
  color: white;
  text-align: center;
  opacity: 0;
  width: 70%;
  max-width: 152px;
}
.crosstalk .scroll ul li .overlay .overlay-text img {
  width: 100% !important;
}
.crosstalk .scroll ul li .overlay .overlay-text.movie {
  width: 30%;
}
.crosstalk .scroll ul li:hover .overlay {
  background-color: rgba(0, 0, 0, 0.5);
}
.crosstalk .scroll ul li:hover .overlay .overlay-text {
  opacity: 1;
}
.crosstalk .scroll ul.padding-zero li {
  padding: 0;
  margin-left: -2px;
  margin-right: -2px;
}
.crosstalk .scroll ul.on li {
  transition: all 1s ease-in-out;
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.crosstalk .scroll ul.on li img {
  max-width: 100%;
  height: auto;
  max-height: 100%;
}
@media only screen and (max-width: 820px) {
  .crosstalk + .fcpc__creatorcopy {
    margin-top: 95px !important;
  }
  .crosstalk .contents_ttl + p {
    margin-top: -7.5em;
  }
  .crosstalk .box_talk {
    margin-top: 0;
    padding: 0 15px;
  }
  .crosstalk .box_talk .inner {
    width: calc(100% + 30px);
    margin-left: -15px;
  }
  .crosstalk .box_talk .inner .inner_box:after {
    width: calc(100% - 30px);
  }
  .crosstalk .box_talk .inner .member_area {
    margin-top: 15px;
    /*
    					.video_creator {
    						.member_profile {
    							width: 100%;

    							h4 {
    								font-size: 1.8rem;
    								span {
    									font-size: 1.3rem;
    								}
    								+ p {
    									font-size: 1.2rem;
    									line-height: 1.8;
    								}
    							}
    						}
    						.movie {
    							width: 100%;
    							margin-top: 40px;
    						}
    					}

     */
  }
  .crosstalk .box_talk .inner .member_area + .member_area {
    margin-top: 70px;
  }
  .crosstalk .box_talk .inner .member_area .member_profile {
    width: 100%;
    /*
    .text_profile {
    	width: 100%;
    }

     */
    /*
    .photo {
    	float: left;
    	width: 35%;
    	padding: 0 20px 10px 0;
    }

     */
    /*
    .number {
    	font-size: 1.0rem;
    }

     */
  }
  .crosstalk .box_talk .inner .member_area .member_profile + .member_profile {
    margin-top: 20px;
    border-top: solid 1px #222;
    padding-top: 20px;
  }
  .crosstalk .box_talk .inner .member_area .member_profile + .member_profile:before {
    content: none;
  }
  .crosstalk .box_talk .inner .member_area .member_profile > div {
    font-size: 1.2rem;
  }
  .crosstalk .box_talk .inner .member_area .member_profile > div .list-sns {
    margin-top: -10px;
  }
  .crosstalk .box_talk .inner .member_area .member_profile > .movie {
    position: relative;
    margin-top: 30px;
  }
  .crosstalk .box_talk .inner .member_area .member_profile > .movie + .movie {
    margin-top: 15px;
  }
  .crosstalk .box_talk .inner .member_area .member_profile figure {
    width: 29%;
  }
  .crosstalk .box_talk .inner .member_area .member_profile figure + div {
    width: 66%;
  }
  .crosstalk .box_talk .inner .member_area .member_profile h4 {
    font-size: 1.8rem;
  }
  .crosstalk .box_talk .inner .member_area .member_profile h4 span {
    font-size: 1.3rem;
    display: block;
    margin: 0;
  }
  .crosstalk .box_talk .inner .member_area .member_profile .text {
    font-size: 1.1rem;
  }
  .crosstalk .box_talk .inner .member_area .member_view {
    margin-top: 25px;
  }
  .crosstalk [data-type*=accordion]:before, .crosstalk [data-type*=accordion]:after {
    width: 20px;
    right: 15px;
  }
  .crosstalk [data-type*=accordion].open + * {
    padding-bottom: 70px;
  }
  .crosstalk [data-type*=accordion] h3 {
    font-size: 2rem;
  }
}

#interview {
  background: #fff;
  position: relative;
  z-index: 1;
}
#interview .interview_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1230px;
  margin: 0 auto 50px;
  padding: 0 15px;
}
#interview .interview_box .play_movie {
  display: block;
  margin: 40px 0;
  padding: 0 10%;
}
#interview h3 {
  font-size: clamp(2rem, 2.5vw, 3.4rem);
  font-family: "Noto Serif JP", serif;
  line-height: 1.56;
  padding-left: 1.3em;
  position: relative;
}
#interview h3:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl.svg) no-repeat center top;
  background-size: contain;
}
#interview .interview_list {
  font-size: 1.2rem;
  font-weight: bold;
  /*
  .play_movie {
  	display: block;
  	margin: 20px 0;
  }

   */
}
#interview .interview_list .list-group {
  font-size: 1.4rem;
  border-top: solid 1px #eaeaea;
  margin-top: 10px;
  width: 300px;
}
#interview .interview_list .list-group li {
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px #eaeaea;
}
#interview .interview_list .list-group li span {
  min-width: 6.5em;
  text-align: left;
}
#interview .movie {
  width: 100%;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
#interview .movie img {
  width: 100%;
  height: auto;
  transition: 1s;
}
#interview .movie:hover img {
  transform: scale(1.05);
}
@media only screen and (max-width: 820px) {
  #interview .interview_box + .interview_box {
    margin-top: 60px;
  }
  #interview .interview_box > * {
    width: 100%;
  }
  #interview .interview_box > .box_text {
    padding: 0 5%;
  }
  #interview .interview_box > .box_image {
    margin-top: 40px;
  }
  #interview .interview_box h3 {
    font-size: 1.6rem;
    padding-left: 1.5em;
  }
  #interview .interview_box h3:before {
    width: 17px;
    height: 12px;
  }
  #interview .interview_box .play_movie {
    width: 40%;
    padding: 0 7%;
  }
  #interview .interview_box .play_movie img {
    width: 100%;
  }
  #interview .interview_box .interview_list {
    font-size: 1rem;
    /*
    .play_movie {
    	width: 40%;
    	img {
    		width: 100%;
    	}
    }

     */
  }
  #interview .interview_box .interview_list .list-group {
    border: none;
    font-size: 1.2rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
  }
  #interview .interview_box .interview_list .list-group > * {
    border-top: solid 1px #eaeaea;
    width: 47%;
    margin-top: -1px;
  }
  #interview .interview_box .interview_list .list-group li {
    display: block;
  }
  #interview .interview_box .interview_list .list-group li span {
    display: block;
  }
  #interview .interview_list {
    padding: 0 7%;
  }
}

.interview {
  margin-top: 2rem;
  position: relative;
  z-index: 1;
}
.interview .interview_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1230px;
  margin: 0 auto 50px;
  padding: 0 15px;
}
.interview .interview_box .play_movie {
  display: block;
  margin: 40px 0;
  padding: 0 10%;
}
.interview h3 {
  font-size: clamp(2rem, 2.5vw, 3.4rem);
  font-family: "Noto Serif JP", serif;
  line-height: 1.56;
  padding-left: 1.3em;
  position: relative;
}
.interview h3:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5vw;
  max-width: 27px;
  height: 22px;
  background: url(../img/icon_ttl_white.svg) no-repeat center top;
  background-size: contain;
}
.interview h3.black:before {
  background: url(../img/icon_ttl.svg) no-repeat center top;
  background-size: contain;
}
.interview .interview_list {
  font-size: 1.2rem;
  font-weight: bold;
  display: flex;
}
.interview .interview_list > * + * {
  margin-left: 5.5rem;
}
.interview .interview_list .list-group {
  font-size: 1.4rem;
  font-weight: normal;
  border-top: solid 1px rgba(255, 255, 255, 0.1);
  margin-top: 10px;
  width: 300px;
}
.interview .interview_list .list-group li {
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
}
.interview .interview_list .list-group li span {
  min-width: 6.5em;
  text-align: left;
}
.interview .movie {
  width: 100%;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.interview .movie img {
  width: 100%;
  height: auto;
  transition: 1s;
}
.interview .movie:hover img {
  transform: scale(1.05);
}
@media only screen and (max-width: 820px) {
  .interview {
    margin-top: 5rem;
  }
  .interview .interview_box + .interview_box {
    margin-top: 60px;
  }
  .interview .interview_box > * {
    width: 100%;
  }
  .interview .interview_box > .box_text {
    padding: 0 2%;
  }
  .interview .interview_box > .box_image {
    margin-top: 40px;
  }
  .interview .interview_box h3 {
    font-size: 2.2rem;
    padding-left: 1.5em;
  }
  .interview .interview_box h3:before {
    width: 17px;
    height: 12px;
  }
  .interview .interview_box .play_movie {
    width: 40%;
    padding: 0 7%;
  }
  .interview .interview_box .play_movie img {
    width: 100%;
  }
  .interview .interview_box .interview_list {
    font-size: 1rem;
    justify-content: space-between;
  }
  .interview .interview_box .interview_list > * {
    width: 48%;
  }
  .interview .interview_box .interview_list > * + * {
    margin-left: 0;
  }
  .interview .interview_box .interview_list .list-group {
    border-top: solid 1px rgba(255, 255, 255, 0.3);
    font-size: 1.2rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
  }
  .interview .interview_box .interview_list .list-group > * {
    width: 100%;
  }
  .interview .interview_box .interview_list .list-group li {
    display: block;
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  }
  .interview .interview_box .interview_list .list-group li span {
    display: block;
  }
  .interview .interview_list {
    padding: 0 2%;
  }
}

#media {
  background: #fff;
  position: relative;
  z-index: 1;
}
#media ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column;
}
#media ul li {
  padding: 0 22px;
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}
#media ul li img {
  width: 100%;
}
#media ul li + li {
  margin-top: 30px;
}
@media only screen and (max-width: 820px) {
  #media ul li + li {
    margin-top: 20px;
  }
}

#pickup {
  background-color: #fafafa;
  position: relative;
  z-index: 1;
}
#pickup .contents {
  max-width: 1660px;
  margin: auto;
}
#pickup ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1218px;
  margin: auto;
  padding: 0 15px 50px;
}
#pickup ul:after {
  content: "";
  display: block;
  width: 32.05%;
  height: 0;
}
#pickup ul li {
  width: 32.05%;
  margin-bottom: 70px;
  opacity: 0;
}
#pickup ul li.active {
  animation: pickup_anime_on 1s ease-out forwards;
}
#pickup ul li a {
  display: block;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.3s;
  outline: none;
  color: #000;
}
#pickup ul li a:hover {
  opacity: 0.6;
}
#pickup ul li img {
  width: 100%;
  transition: 0.5s;
}
#pickup ul li h3 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 1em 0 0.6em 0;
}
#pickup ul li h3:after {
  display: inline-block;
  width: 12px;
  height: 10px;
  margin: auto;
  background: url(../img/icon_blank_b.png) no-repeat right center/12px auto;
  content: "";
}
#pickup ul li h3 + p {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 10px;
}
#pickup ul li h4 {
  display: inline-block;
  margin: 1em 0 0.6em 0;
  width: 80px;
  border: solid 1px #333;
  border-radius: 100px;
  text-align: center;
  font-size: 1.2rem;
}
#pickup ul li .btn_video_modal {
  transition: opacity 0.3s;
}
#pickup ul li .btn_video_modal:hover {
  opacity: 0.6;
}
#pickup ul li .btn_video_modal h3:after {
  content: none;
}
@media only screen and (max-width: 820px) {
  #pickup ul {
    max-width: 1024px;
    margin: auto;
    padding: 0 15px;
  }
  #pickup ul:after {
    content: none;
  }
  #pickup ul li {
    width: 100%;
    margin-bottom: 35px;
  }
}

@keyframes pickup_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.mov_bg {
  position: fixed;
  z-index: -2;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
  opacity: 0.8;
  filter: blur(12px);
}
.mov_bg:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
}
.mov_bg video {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 241.777778vh;
  height: 74.25vw;
  min-height: 154%;
  min-width: 132%;
}
.mov_bg .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/gallery/kimura/bg_hinami.jpg) no-repeat center center;
  background-size: cover;
}

/* CSS to adjust images within .target class */
.scroll .target {
  height: 100%;
  display: block;
  margin: 0 auto;
}

/* CSS to handle the container size */
.scroll {
  width: 100%;
  overflow: hidden;
}

.line_friends {
  background: #fafafa;
  display: inline-block;
}
.line_friends > div > * {
  display: flex;
  align-items: center;
  padding: 15px 20px 15px 25px;
}
.line_friends > div > * > * {
  color: #222;
  font-weight: bold;
  text-decoration: none;
  white-space: nowrap;
}
.line_friends > div > * > * + * {
  margin-left: 10px;
}
.line_friends .icon_line {
  width: 33px;
}
.line_friends .line_qr {
  width: 82px;
}
@media only screen and (max-width: 820px) {
  .line_friends {
    width: 100%;
  }
  .line_friends > div > * {
    padding: 11px 15px;
    justify-content: space-around;
  }
  .line_friends .icon_line {
    width: 26px;
  }
  .line_friends .line_qr {
    width: 78px;
  }
}

.fv-swiper {
  background-color: #dadada;
  padding-top: 187px;
  position: relative;
}
.fv-swiper:before {
  content: "CREATOR'S";
  position: absolute;
  top: 3rem;
  left: -1%;
  font-size: 20.2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  line-height: 1;
  color: #e6e6e6;
  white-space: nowrap;
  z-index: 0;
}
.fv-swiper:after {
  content: "RECIPE";
  position: absolute;
  bottom: -0.5rem;
  right: -1%;
  font-size: 20.2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  line-height: 1;
  color: #e6e6e6;
  white-space: nowrap;
  z-index: 0;
  line-height: 15rem;
}
.fv-swiper.swiper-container {
  width: 100%;
  overflow: hidden;
  padding-bottom: 140px;
  position: relative;
}
.fv-swiper .swiper-wrapper.fv-slider {
  display: flex;
  align-items: flex-start;
}
.fv-swiper .swiper-slide {
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 71.5%;
  transition: transform 0.3s ease;
  height: auto;
  transform-origin: top;
  position: relative;
  overflow: hidden;
}
.fv-swiper .swiper-slide > * {
  width: 50%;
}
.fv-swiper .swiper-slide .text-area {
  padding: 0 6%;
}
.fv-swiper .swiper-slide .text-area__text01 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.fv-swiper .swiper-slide .text-area__text02 {
  font-size: clamp(18px, -30.6075949367px + 6.3291139241vw, 58px);
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 100%;
  margin-bottom: 1.5rem;
}
.fv-swiper .swiper-slide .text-area__text03 {
  font-size: clamp(10px, 5.1392405063px + 0.6329113924vw, 14px);
  margin-bottom: 1.5rem;
}
.fv-swiper .swiper-slide .text-area__text04 {
  font-size: clamp(10px, 5.1392405063px + 0.6329113924vw, 14px);
  line-height: 160%;
  margin-bottom: 2rem;
}
.fv-swiper .swiper-slide .text-area__text05 {
  display: flex;
  justify-content: center;
}
.fv-swiper .swiper-slide img {
  width: 100%;
}
.fv-swiper .swiper-slide.swiper-slide-active {
  margin: 0 18px;
}
.fv-swiper .swiper-slide .swiper-button-next {
  right: 21%; /* 中央スライドの右に配置 */
}
.fv-swiper .swiper-slide .swiper-button-prev {
  left: 21%; /* 中央スライドの左に配置 */
}
.fv-swiper .swiper-slide .swiper-button-next:after,
.fv-swiper .swiper-slide .swiper-button-prev:after {
  font-size: 16px;
}
.fv-swiper .swiper-button-next,
.fv-swiper .swiper-button-prev {
  height: 61%;
  color: #848484;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 55.5%;
  transform: translateY(-50%);
  z-index: 10;
}
.fv-swiper .swiper-button-next:after,
.fv-swiper .swiper-button-prev:after {
  content: none;
}
.fv-swiper .swiper-button-next {
  width: 16%;
  background: url(../img/c_report_slide_next.png) no-repeat center left;
  background-size: 30%;
  right: 0;
}
.fv-swiper .swiper-button-prev {
  width: 16%;
  background: url(../img/c_report_slide_prev.png) no-repeat center right;
  background-size: 30%;
  left: 0;
}
.fv-swiper .swiper-pagination-bullet {
  background: #b9b9b9;
  opacity: 1;
  width: 6px;
  height: 6px;
}
.fv-swiper .swiper-pagination-bullet-active {
  background: #333;
}
.fv-swiper .swiper-horizontal > .swiper-pagination-bullets,
.fv-swiper .swiper-pagination-bullets.swiper-pagination-horizontal,
.fv-swiper .swiper-pagination-custom,
.fv-swiper .swiper-pagination-fraction {
  top: 87%;
}
@media only screen and (max-width: 820px) {
  .fv-swiper {
    padding-top: 57px;
  }
  .fv-swiper:before {
    position: absolute;
    top: 0.5rem;
    left: -1%;
    font-size: 6.5rem;
  }
  .fv-swiper:after {
    bottom: 1.5rem;
    right: -1%;
    font-size: 6.5rem;
    line-height: 5rem;
  }
  .fv-swiper.swiper-container {
    padding-bottom: 60px;
  }
  .fv-swiper .swiper-slide {
    padding: 0;
    width: 79%;
    flex-direction: column;
    justify-content: space-between;
  }
  .fv-swiper .swiper-slide > * {
    width: 100%;
  }
  .fv-swiper .swiper-slide .text-area {
    padding: 10% 8% 5%;
  }
  .fv-swiper .swiper-slide .text-area__text01 {
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
  }
  .fv-swiper .swiper-slide .text-area__text02 {
    font-size: 2.3rem;
    margin-bottom: 0.5rem;
  }
  .fv-swiper .swiper-slide .text-area__text03 {
    font-size: 0.7rem;
    margin-bottom: 2rem;
  }
  .fv-swiper .swiper-slide .text-area__text04 {
    font-size: 1.2rem;
    line-height: 170%;
  }
  .fv-swiper .swiper-slide .text-area__text05 {
    justify-content: flex-end;
    margin-bottom: 2rem;
  }
  .fv-swiper .swiper-slide.swiper-slide-active {
    margin: 0 6px;
  }
  .fv-swiper .swiper-button-next,
  .fv-swiper .swiper-button-prev {
    height: 85%;
    top: 52.5%;
  }
  .fv-swiper .swiper-button-next {
    width: 12%;
    background-size: 40%;
  }
  .fv-swiper .swiper-button-prev {
    width: 12%;
    background-size: 40%;
  }
  .fv-swiper .swiper-horizontal > .swiper-pagination-bullets,
  .fv-swiper .swiper-pagination-bullets.swiper-pagination-horizontal,
  .fv-swiper .swiper-pagination-custom,
  .fv-swiper .swiper-pagination-fraction {
    top: 92%;
  }
}

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* add reset css */
li {
  list-style: none;
}

img {
  vertical-align: bottom;
  border: none;
}

html {
  font-size: 62.5%;
}

body {
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.5rem;
  line-height: 2;
  color: #222;
  letter-spacing: 0.05em;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

p:not(:last-child) {
  margin-bottom: 1em;
}

i {
  font-style: normal;
}

em {
  font-style: normal;
}

a {
  color: #78B97F;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a.disabled {
  color: #ccc;
}
a.disabled:hover {
  text-decoration: none;
}

label, input[type=radio], input[type=checkbox], input[type=file], select {
  cursor: pointer;
}

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
}

input, textarea {
  padding-left: 10px;
  padding-right: 10px;
}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

pre {
  margin-bottom: 20px;
}

code {
  font-size: 1.2rem;
}

@media only screen and (max-width: 820px) {
  body {
    width: 100%;
    min-width: 320px;
    font-size: 1.4rem;
  }
}
.btn {
  text-align: center;
  display: block;
  background-color: black;
  color: #FFF;
  font-size: 1.4rem;
  border: 0;
  width: 200px;
  max-width: 100%;
  padding: 10px 20px;
  cursor: pointer;
  text-decoration: none;
}
.btn:after {
  content: "";
  height: 100%;
  width: 0;
  vertical-align: middle;
  display: inline-block;
}
.btn:hover {
  opacity: 0.7;
  text-decoration: none;
  color: white;
  transition: opacity 0.2s linear;
}
.btn.btn-primary {
  background-color: #78B97F;
}
.btn.btn-secondary {
  background-color: #c063ad;
}
.btn.btn-thirdly {
  background-color: #629db0;
}
.btn.btn-error {
  background-color: #C70000;
}
.btn.btn-accent {
  background-color: #d54762;
}
.btn.btn-base_bg {
  background-color: #f2f2f2;
  color: #222;
}
.btn.btn-info {
  background-color: #70C1B3;
}
.btn.btn-white {
  background-color: white;
  color: #222;
}
.btn.btn-black {
  background-color: black;
}
.btn.btn-disabled {
  cursor: default;
  background-color: #d1d1d1;
  outline: none;
}
.btn.btn-disabled:hover {
  opacity: 1;
}
.btn.btn-ghost {
  background-color: transparent;
  border: 1px solid white;
  font-weight: normal;
  padding-left: 50px;
  padding-right: 50px;
  border-radius: 0px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}
.btn.btn-ghost:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.3);
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}
.btn.btn-thin {
  padding: 4px 20px;
}
.btn.btn-img {
  padding: 0;
  border-radius: 0px;
  width: 100%;
  background: none;
}
.btn.btn-arrow {
  position: relative;
}
.btn.btn-arrow:after {
  font: normal normal normal 14px/1 FontAwesome;
  position: absolute;
  top: 50%;
  right: 0.5em;
  content: "\f105";
  width: 10px;
  height: 14px;
  border-radius: 100%;
  font-weight: bold;
  margin-top: -7px;
}
.btn.btn-wide {
  width: 100%;
}
.btn.btn-flex {
  width: auto;
  display: inline-block;
}
.btn.btn-xl {
  font-size: 2.4rem;
  width: 400px;
  padding: 15px;
}
.btn.btn-l {
  font-size: 2rem;
  width: 300px;
  padding: 15px;
}
.btn.btn-m {
  font-size: 1.4rem;
  width: 150px;
  padding: 10px;
}
.btn.btn-s {
  font-size: 1.2rem;
  font-weight: normal;
  width: auto;
  padding: 4px 10px;
  display: inline-block;
  margin-bottom: 0;
}

.btns {
  text-align: center;
}
.btns.txt_r {
  text-align: right;
}
.btns .btn {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin-left: 5px;
  margin-right: 5px;
}

@media only screen and (max-width: 820px) {
  .btns .btn {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    margin-bottom: 10px;
  }
}
.list-group:not(:last-child) {
  margin-bottom: 30px;
}
.list-group.list-disc > li {
  position: relative;
  padding-left: 1em;
  margin-bottom: 5px;
}
.list-group.list-disc > li:after {
  display: block;
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #666;
  border-radius: 100%;
}
.list-group.list-disc.list-primary li:after {
  background-color: #78B97F;
}
.list-group.list-disc.list-secondary li:after {
  background-color: #c063ad;
}
.list-group.list-disc.list-thirdly li:after {
  background-color: #629db0;
}
.list-group.list-disc.list-error li:after {
  background-color: #C70000;
}
.list-group.list-disc.list-accent li:after {
  background-color: #d54762;
}
.list-group.list-disc.list-base_bg li:after {
  background-color: #f2f2f2;
}
.list-group.list-disc.list-info li:after {
  background-color: #70C1B3;
}
.list-group.list-disc.list-white li:after {
  background-color: white;
}
.list-group.list-disc.list-black li:after {
  background-color: black;
}
.list-group.list-disc_small > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5px;
}
.list-group.list-disc_small > li:after {
  position: absolute;
  top: 0;
  left: 0.5em;
  content: "・";
  width: 10px;
  height: 10px;
  border-radius: 100%;
}
.list-group.list-disc_small.list-primary li:after {
  color: #78B97F;
}
.list-group.list-disc_small.list-secondary li:after {
  color: #c063ad;
}
.list-group.list-disc_small.list-thirdly li:after {
  color: #629db0;
}
.list-group.list-disc_small.list-error li:after {
  color: #C70000;
}
.list-group.list-disc_small.list-accent li:after {
  color: #d54762;
}
.list-group.list-disc_small.list-base_bg li:after {
  color: #f2f2f2;
}
.list-group.list-disc_small.list-info li:after {
  color: #70C1B3;
}
.list-group.list-disc_small.list-white li:after {
  color: white;
}
.list-group.list-disc_small.list-black li:after {
  color: black;
}
.list-group.list-angle > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5px;
}
.list-group.list-angle > li:after {
  display: block;
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 6px;
  height: 6px;
  border-right: 1px solid black;
  border-bottom: 1px solid black;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.list-group.list-angle.list-primary li:after {
  border-right-color: #78B97F;
  border-bottom-color: #78B97F;
}
.list-group.list-angle.list-secondary li:after {
  border-right-color: #c063ad;
  border-bottom-color: #c063ad;
}
.list-group.list-angle.list-thirdly li:after {
  border-right-color: #629db0;
  border-bottom-color: #629db0;
}
.list-group.list-angle.list-error li:after {
  border-right-color: #C70000;
  border-bottom-color: #C70000;
}
.list-group.list-angle.list-accent li:after {
  border-right-color: #d54762;
  border-bottom-color: #d54762;
}
.list-group.list-angle.list-base_bg li:after {
  border-right-color: #f2f2f2;
  border-bottom-color: #f2f2f2;
}
.list-group.list-angle.list-info li:after {
  border-right-color: #70C1B3;
  border-bottom-color: #70C1B3;
}
.list-group.list-angle.list-white li:after {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-angle.list-black li:after {
  border-right-color: black;
  border-bottom-color: black;
}
.list-group.list-arrow > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5px;
}
.list-group.list-arrow > li:after {
  display: block;
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 7px;
  height: 7px;
  border-right: 1px solid black;
  border-bottom: 1px solid black;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.list-group.list-arrow > li:before {
  display: block;
  content: "";
  position: absolute;
  top: 12px;
  left: -0.025em;
  width: 8px;
  height: 1px;
  background-color: black;
}
.list-group.list-arrow.list-primary li:after {
  border-right-color: #78B97F;
  border-bottom-color: #78B97F;
}
.list-group.list-arrow.list-primary li:before {
  background-color: #78B97F;
}
.list-group.list-arrow.list-secondary li:after {
  border-right-color: #c063ad;
  border-bottom-color: #c063ad;
}
.list-group.list-arrow.list-secondary li:before {
  background-color: #c063ad;
}
.list-group.list-arrow.list-thirdly li:after {
  border-right-color: #629db0;
  border-bottom-color: #629db0;
}
.list-group.list-arrow.list-thirdly li:before {
  background-color: #629db0;
}
.list-group.list-arrow.list-error li:after {
  border-right-color: #C70000;
  border-bottom-color: #C70000;
}
.list-group.list-arrow.list-error li:before {
  background-color: #C70000;
}
.list-group.list-arrow.list-accent li:after {
  border-right-color: #d54762;
  border-bottom-color: #d54762;
}
.list-group.list-arrow.list-accent li:before {
  background-color: #d54762;
}
.list-group.list-arrow.list-base_bg li:after {
  border-right-color: #f2f2f2;
  border-bottom-color: #f2f2f2;
}
.list-group.list-arrow.list-base_bg li:before {
  background-color: #f2f2f2;
}
.list-group.list-arrow.list-info li:after {
  border-right-color: #70C1B3;
  border-bottom-color: #70C1B3;
}
.list-group.list-arrow.list-info li:before {
  background-color: #70C1B3;
}
.list-group.list-arrow.list-white li:after {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-arrow.list-white li:before {
  background-color: white;
}
.list-group.list-arrow.list-black li:after {
  border-right-color: black;
  border-bottom-color: black;
}
.list-group.list-arrow.list-black li:before {
  background-color: black;
}
.list-group.list-ad > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5px;
}
.list-group.list-ad > li:after {
  display: block;
  content: "";
  position: absolute;
  top: 0.35em;
  left: 0;
  width: 14px;
  height: 14px;
  background-color: black;
  border-radius: 100%;
}
.list-group.list-ad > li:before {
  display: block;
  content: "";
  position: absolute;
  z-index: 2;
  top: 0.7em;
  left: 0.3em;
  width: 4px;
  height: 4px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.list-group.list-ad.list-primary li:after {
  background-color: #78B97F;
}
.list-group.list-ad.list-primary li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-secondary li:after {
  background-color: #c063ad;
}
.list-group.list-ad.list-secondary li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-thirdly li:after {
  background-color: #629db0;
}
.list-group.list-ad.list-thirdly li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-error li:after {
  background-color: #C70000;
}
.list-group.list-ad.list-error li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-accent li:after {
  background-color: #d54762;
}
.list-group.list-ad.list-accent li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-base_bg li:after {
  background-color: #f2f2f2;
}
.list-group.list-ad.list-base_bg li:before {
  border-right-color: #222;
  border-bottom-color: #222;
}
.list-group.list-ad.list-info li:after {
  background-color: #70C1B3;
}
.list-group.list-ad.list-info li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-ad.list-white li:after {
  background-color: white;
}
.list-group.list-ad.list-white li:before {
  border-right-color: #222;
  border-bottom-color: #222;
}
.list-group.list-ad.list-black li:after {
  background-color: black;
}
.list-group.list-ad.list-black li:before {
  border-right-color: white;
  border-bottom-color: white;
}
.list-group.list-line > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5px;
}
.list-group.list-line > li:after {
  display: block;
  content: "";
  position: absolute;
  top: 0.65em;
  left: 0;
  width: 8px;
  height: 1px;
  background-color: black;
}
.list-group.list-line.list-primary li:after {
  background-color: #78B97F;
}
.list-group.list-line.list-secondary li:after {
  background-color: #c063ad;
}
.list-group.list-line.list-thirdly li:after {
  background-color: #629db0;
}
.list-group.list-line.list-error li:after {
  background-color: #C70000;
}
.list-group.list-line.list-accent li:after {
  background-color: #d54762;
}
.list-group.list-line.list-base_bg li:after {
  background-color: #f2f2f2;
}
.list-group.list-line.list-info li:after {
  background-color: #70C1B3;
}
.list-group.list-line.list-white li:after {
  background-color: white;
}
.list-group.list-line.list-black li:after {
  background-color: black;
}
.list-group.list-inline > li {
  display: inline-block;
  margin-right: 10px;
}

.box {
  padding: 20px;
}
.box:not(:last-child) {
  margin-bottom: 30px;
}
.box.box-primary {
  background: #78B97F;
  color: white;
}
.box.box-secondary {
  background: #c063ad;
  color: white;
}
.box.box-thirdly {
  background: #629db0;
  color: white;
}
.box.box-error {
  background: #C70000;
  color: white;
}
.box.box-accent {
  background: #d54762;
  color: white;
}
.box.box-base_bg {
  background: #f2f2f2;
}
.box.box-info {
  background: #70C1B3;
  color: white;
}
.box.box-white {
  background: white;
}
.box.box-black {
  background: black;
  color: white;
}
.box.box-p-10 {
  padding: 10px;
}
.box.box-p-30 {
  padding: 30px;
}
.box.box-p-50 {
  padding: 50px;
}
.box.box-border {
  border: 1px solid #ccc;
}
.box.box-border.box-primary {
  border: 1px solid rgb(78.0243902439, 150.4756097561, 85.8268292683);
}
.box.box-border.box-secondary {
  border: 1px solid rgb(152.7945205479, 61.7054794521, 134.1849315068);
}
.box.box-border.box-thirdly {
  border: 1px solid rgb(66.1122881356, 115.4872881356, 131.3877118644);
}
.box.box-border.box-error {
  border: 1px solid rgb(122.5, 0, 0);
}
.box.box-border.box-accent {
  border: 1px solid rgb(168.9380530973, 38.5619469027, 63.3517699115);
}
.box.box-border.box-base_bg {
  border: 1px solid rgb(203.75, 203.75, 203.75);
}
.box.box-border.box-info {
  border: 1px solid rgb(69.1073170732, 159.3926829268, 143.787804878);
}
.box.box-border.box-white {
  border: 1px solid rgb(216.75, 216.75, 216.75);
}
.box.box-border.box-black {
  border: 1px solid black;
}
.box.box-radius {
  border-radius: 5px;
}
.box.box-thin {
  padding: 10px 20px;
}
.box.box-scroll {
  height: 300px;
  overflow: auto;
}
.box.box-scroll_l {
  height: 500px;
  overflow: auto;
}
.box.box-scroll_s {
  height: 150px;
  overflow: auto;
}
.box.box-note {
  padding: 10px;
  border: 1px solid #C70000;
}
.box.box-sideScroll {
  padding: 0;
}

@media only screen and (max-width: 820px) {
  .box.box-sideScroll {
    padding: 0 0 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .box.box-sideScroll > * {
    min-width: 100%;
    width: 640px !important;
  }
}
.bg-color-light_gray {
  background: #f2f2f2;
}

.bg-color-primary {
  background: #78B97F;
}

.thumbnail {
  padding: 10px;
  border: 1px solid #ccc;
  position: relative;
}
.thumbnail .thumbnail-img {
  margin-bottom: 20px;
  text-align: center;
}
.thumbnail .thumbnail-img:last-child {
  margin-bottom: 0;
}
.thumbnail .thumbnail-img img {
  max-width: 100%;
  height: auto;
}
.thumbnail .thumbnail-caption {
  margin-top: 20px;
}
.thumbnail.thumbnail-no_border {
  padding: 0;
  border: none;
}
.thumbnail.thumbnail-under_border {
  border-bottom: 3px solid #78B97F;
  padding-bottom: 30px;
}
.thumbnail.thumbnail-with_icon .thumbnail-icon {
  font-style: normal;
  position: absolute;
  width: 20px;
  height: 20px;
  background: #78B97F;
  top: -10px;
  left: 50%;
  color: white;
  transform: translateX(-50%);
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  text-align: center;
}
.thumbnail.thumbnail-primary {
  border-color: #78B97F;
}
.thumbnail.thumbnail-secondary {
  border-color: #c063ad;
}
.thumbnail.thumbnail-thirdly {
  border-color: #629db0;
}
.thumbnail.thumbnail-error {
  border-color: #C70000;
}
.thumbnail.thumbnail-accent {
  border-color: #d54762;
}
.thumbnail.thumbnail-base_bg {
  border-color: #f2f2f2;
}
.thumbnail.thumbnail-info {
  border-color: #70C1B3;
}
.thumbnail.thumbnail-white {
  border-color: white;
}
.thumbnail.thumbnail-black {
  border-color: black;
}

.panel {
  border: 1px solid #ccc;
  border-radius: 5px;
}
.panel:not(:last-child) {
  margin-bottom: 30px;
}
.panel .panel-header {
  padding: 20px;
  background: black;
  color: white;
}
.panel .panel-body {
  margin: 20px;
}
.panel .panel-footer {
  text-align: right;
  border-top: 1px solid #ccc;
  padding: 20px 0;
  margin-left: 20px;
  margin-right: 20px;
}
.panel.panel-thin .panel-header {
  padding: 10px 20px;
}
.panel.panel-thin .panel-body {
  margin: 10px 20px;
}
.panel.panel-thin .panel-footer {
  text-align: right;
  border-top: 1px solid #ccc;
  padding: 10px 0;
  margin-left: 20px;
  margin-right: 20px;
}
.panel.panel-no_border {
  border: none;
}
.panel.panel-no_border .panel-header {
  border: none;
}
.panel.panel-no_border .panel-body {
  margin-left: 0;
  margin-right: 0;
  border: none;
}
.panel.panel-no_border .panel-footer {
  padding-top: 0;
  border: none;
  margin-left: 0;
  margin-right: 0;
}
.panel.panel-transparent .panel-header {
  color: white;
  background: transparent;
}
.panel.panel-transparent .panel-body {
  margin-top: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  border-top: 1px solid #ccc;
}
.panel.panel-no_radius {
  border-radius: 0px;
}
.panel.panel-primary .panel-header {
  background: #78B97F;
  color: white;
}
.panel.panel-secondary .panel-header {
  background: #c063ad;
  color: white;
}
.panel.panel-thirdly .panel-header {
  background: #629db0;
  color: white;
}
.panel.panel-error .panel-header {
  background: #C70000;
  color: white;
}
.panel.panel-accent .panel-header {
  background: #d54762;
  color: white;
}
.panel.panel-base_bg .panel-header {
  background: #f2f2f2;
}
.panel.panel-info .panel-header {
  background: #70C1B3;
  color: white;
}
.panel.panel-white .panel-header {
  background: white;
}
.panel.panel-black .panel-header {
  background: black;
  color: white;
}

.card {
  position: relative;
  background: #f2f2f2;
}
.card:not(:last-child) {
  margin-bottom: 30px;
}
.card > a {
  display: block;
}
.card .card-img img {
  width: 100%;
  height: auto;
}
.card .card-header {
  padding: 20px 20px 0 20px;
}
.card .card-body {
  padding: 20px;
}
.card .card-footer {
  padding: 0 20px 20px 20px;
}
.card.card-no_border {
  background: transparent;
}
.card.card-no_border .card-img img {
  width: 100%;
  height: auto;
}
.card.card-no_border .card-header {
  padding: 10px 0 10px 0;
}
.card.card-no_border .card-header h1, .card.card-no_border .card-header h2, .card.card-no_border .card-header h3, .card.card-no_border .card-header h4, .card.card-no_border .card-header h5, .card.card-no_border .card-header h5 {
  font-weight: bold;
}
.card.card-no_border .card-body {
  padding: 0;
}
.card.card-no_border .card-footer {
  padding: 0 0 20px 0;
}
.card.card-no_border .card-footer-border {
  margin-top: 10px;
  padding: 10px 0 20px 0;
  border-top: 1px solid #ccc;
}
.card.card-overlay .m-tag {
  margin: 0;
}
.card.card-overlay .card-body {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  padding-top: 10px;
  padding-bottom: 10px;
  color: white;
}
.card.card-overlay .card-footer {
  position: absolute;
  left: 0;
  top: 0;
  padding: 5px 10px;
  background: #78B97F;
  color: white;
}
.card.card-overlay.card-overlay-fit .card-overlay-fit-category span {
  float: right;
  font-size: 1.2rem;
}
.card.card-primary {
  background-color: #78B97F;
  color: white;
}
.card.card-secondary {
  background-color: #c063ad;
  color: white;
}
.card.card-thirdly {
  background-color: #629db0;
  color: white;
}
.card.card-error {
  background-color: #C70000;
  color: white;
}
.card.card-accent {
  background-color: #d54762;
  color: white;
}
.card.card-base_bg {
  background-color: #f2f2f2;
}
.card.card-info {
  background-color: #70C1B3;
  color: white;
}
.card.card-white {
  background-color: white;
}
.card.card-black {
  background-color: black;
  color: white;
}

.m-horizontal_card {
  position: relative;
}
.m-horizontal_card:after {
  content: "";
  display: table;
  clear: both;
}
.m-horizontal_card .card-img {
  float: left;
  width: 50%;
}
.m-horizontal_card .card-img img {
  width: 100%;
  height: auto;
}
.m-horizontal_card .card-main {
  float: left;
  width: 50%;
  background: #f2f2f2;
}
.m-horizontal_card .card-main .card-header {
  padding: 20px 20px 0 20px;
}
.m-horizontal_card .card-main .card-body {
  padding: 20px;
}
.m-horizontal_card.horizontal_card-reverse .card-img {
  float: right;
}
.m-horizontal_card.vertical_card-primary .card-main {
  background-color: #78B97F;
  color: white;
}
.m-horizontal_card.vertical_card-secondary .card-main {
  background-color: #c063ad;
  color: white;
}
.m-horizontal_card.vertical_card-thirdly .card-main {
  background-color: #629db0;
  color: white;
}
.m-horizontal_card.vertical_card-error .card-main {
  background-color: #C70000;
  color: white;
}
.m-horizontal_card.vertical_card-accent .card-main {
  background-color: #d54762;
  color: white;
}
.m-horizontal_card.vertical_card-base_bg .card-main {
  background-color: #f2f2f2;
}
.m-horizontal_card.vertical_card-info .card-main {
  background-color: #70C1B3;
  color: white;
}
.m-horizontal_card.vertical_card-white .card-main {
  background-color: white;
}
.m-horizontal_card.vertical_card-black .card-main {
  background-color: black;
  color: white;
}
.m-horizontal_card.horizontal_card-top .card-header {
  font-size: 2rem;
  color: #78B97F;
}

.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

/*
@include mq2($break_sp) {
  .d-flex-pc { display: -webkit-box !important; display: -ms-flexbox !important; display: flex !important; }
  .flex-pc-row            { flex-direction: row !important; }
  .flex-pc-column         { flex-direction: column !important; }
  .flex-pc-row-reverse    { flex-direction: row-reverse !important; }
  .flex-pc-column-reverse { flex-direction: column-reverse !important; }

  .flex-pc-wrap         { flex-wrap: wrap !important; }
  .flex-pc-nowrap       { flex-wrap: nowrap !important; }
  .flex-pc-wrap-reverse { flex-wrap: wrap-reverse !important; }
  .flex-pc-fill         { flex: 1 1 auto !important; }
  .flex-pc-grow-0       { flex-grow: 0 !important; }
  .flex-pc-grow-1       { flex-grow: 1 !important; }
  .flex-pc-shrink-0     { flex-shrink: 0 !important; }
  .flex-pc-shrink-1     { flex-shrink: 1 !important; }

  .justify-content-pc-start   { justify-content: flex-start !important; }
  .justify-content-pc-end     { justify-content: flex-end !important; }
  .justify-content-pc-center  { justify-content: center !important; }
  .justify-content-pc-between { justify-content: space-between !important; }
  .justify-content-pc-around  { justify-content: space-around !important; }

  .align-items-pc-start    { align-items: flex-start !important; }
  .align-items-pc-end      { align-items: flex-end !important; }
  .align-items-pc-center   { align-items: center !important; }
  .align-items-pc-baseline { align-items: baseline !important; }
  .align-items-pc-stretch  { align-items: stretch !important; }

  .align-content-pc-start   { align-content: flex-start !important; }
  .align-content-pc-end     { align-content: flex-end !important; }
  .align-content-pc-center  { align-content: center !important; }
  .align-content-pc-between { align-content: space-between !important; }
  .align-content-pc-around  { align-content: space-around !important; }
  .align-content-pc-stretch { align-content: stretch !important; }

  .align-self-pc-auto     { align-self: auto !important; }
  .align-self-pc-start    { align-self: flex-start !important; }
  .align-self-pc-end      { align-self: flex-end !important; }
  .align-self-pc-center   { align-self: center !important; }
  .align-self-pc-baseline { align-self: baseline !important; }
  .align-self-pc-stretch  { align-self: stretch !important; }
}

 */
@media only screen and (max-width: 820px) {
  .d-flex-sp {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .flex-sp-row {
    flex-direction: row !important;
  }
  .flex-sp-column {
    flex-direction: column !important;
  }
  .flex-sp-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sp-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sp-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sp-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sp-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sp-fill {
    flex: 1 1 auto !important;
  }
  .flex-sp-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sp-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sp-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sp-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-sp-start {
    justify-content: flex-start !important;
  }
  .justify-content-sp-end {
    justify-content: flex-end !important;
  }
  .justify-content-sp-center {
    justify-content: center !important;
  }
  .justify-content-sp-between {
    justify-content: space-between !important;
  }
  .justify-content-sp-around {
    justify-content: space-around !important;
  }
  .align-items-sp-start {
    align-items: flex-start !important;
  }
  .align-items-sp-end {
    align-items: flex-end !important;
  }
  .align-items-sp-center {
    align-items: center !important;
  }
  .align-items-sp-baseline {
    align-items: baseline !important;
  }
  .align-items-sp-stretch {
    align-items: stretch !important;
  }
  .align-content-sp-start {
    align-content: flex-start !important;
  }
  .align-content-sp-end {
    align-content: flex-end !important;
  }
  .align-content-sp-center {
    align-content: center !important;
  }
  .align-content-sp-between {
    align-content: space-between !important;
  }
  .align-content-sp-around {
    align-content: space-around !important;
  }
  .align-content-sp-stretch {
    align-content: stretch !important;
  }
  .align-self-sp-auto {
    align-self: auto !important;
  }
  .align-self-sp-start {
    align-self: flex-start !important;
  }
  .align-self-sp-end {
    align-self: flex-end !important;
  }
  .align-self-sp-center {
    align-self: center !important;
  }
  .align-self-sp-baseline {
    align-self: baseline !important;
  }
  .align-self-sp-stretch {
    align-self: stretch !important;
  }
}
.form-summary {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.form {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.form .form-wrapper {
  margin-left: 250px;
}
.form .form-wrapper:after {
  content: "";
  display: table;
  clear: both;
}
.form .form-wrapper.last {
  margin-bottom: 30px;
}
.form .form-header {
  width: 250px;
  float: left;
  position: relative;
  margin-left: -250px;
  padding: 20px 50px 20px 20px;
  border-bottom: 1px solid #f2f2f2;
  font-weight: bold;
}
.form .form-content {
  width: 100%;
  margin-right: -250px;
  float: left;
  padding: 20px;
  border-bottom: 1px solid #f2f2f2;
}
.form input[type=radio] {
  margin-top: -0.1em;
}
.form input[type=checkbox] {
  margin-top: 0.05em;
}
.form input[type=text], .form select {
  height: 35px;
}
.form.form-middle .form-wrapper {
  width: 100%;
  display: table;
  margin-left: 0;
}
.form.form-middle .form-header {
  float: none;
  display: table-cell;
  margin-left: 0;
  vertical-align: middle;
}
.form.form-middle .form-content {
  float: none;
  display: table-cell;
  margin-right: 0;
  vertical-align: middle;
  width: auto;
}
.form.form-striped .form-wrapper:nth-child(2n) {
  background: #f2f2f2;
}
.form.form-striped .form-wrapper:nth-child(2n) .form-header {
  background: #f2f2f2;
}
.form .form-require {
  font-size: smaller;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
}
.form .form-require:after {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.form .form-require i {
  background: #C70000;
  padding: 2px 5px;
  line-height: 1.1;
  color: white;
  border-radius: 5px;
}

@media only screen and (max-width: 820px) {
  .form {
    max-width: none;
    width: auto;
    margin-left: -20px;
    margin-right: -20px;
  }
  .form .form-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
  .form .form-wrapper .m-box {
    margin-left: 20px;
    margin-right: 20px;
  }
  .form .form-wrapper, .form.form-middle .form-wrapper {
    margin-left: 0;
  }
  .form .form-header, .form.form-middle .form-header {
    width: 100%;
    display: block;
    float: none;
    margin-left: 0;
    border-bottom: none;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .form .form-content, .form.form-middle .form-content {
    margin-right: 0;
    float: none;
    display: block;
    padding-left: 0;
    padding-right: 0;
  }
}
.table {
  background: white;
  border-collapse: collapse;
  font-size: 1.2rem;
  margin-bottom: 30px;
  width: 100%;
}
.table thead th {
  padding: 10px 20px;
  text-align: left;
  vertical-align: middle;
  border-bottom: 3px solid #dcdcdc;
  color: #78B97F;
}
.table thead td {
  border-collapse: collapse;
  padding: 20px;
  border-bottom: 1px solid #dcdcdc;
}
.table tbody th {
  width: 20%;
  padding: 20px;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #dcdcdc;
  background: rgba(120, 185, 127, 0.1);
}
.table tbody td {
  border-collapse: collapse;
  padding: 20px;
  border-bottom: 1px solid #dcdcdc;
}
.table tbody .table_caption_bottom {
  caption-side: bottom;
}
.table.table_striped tbody td {
  border-bottom: none;
}
.table.table_striped tbody th {
  border-bottom: none;
  background: none;
}
.table.table_striped tbody tr:nth-child(2n-1) {
  background: rgba(120, 185, 127, 0.1);
}
.table.table_middle th {
  vertical-align: middle;
}
.table.table_middle td {
  vertical-align: middle;
}
.table.table_comfortable th {
  padding: 20px;
}
.table.table_comfortable td {
  padding: 20px;
}

@media only screen and (max-width: 820px) {
  .table {
    font-size: 1rem;
  }
  .table tbody td, .table tbody th {
    padding: 10px;
  }
  .table thead td, .table thead th {
    padding: 10px;
  }
  .table tfoot td, .table tfoot th {
    padding: 10px;
  }
  .table-responsive {
    width: 100%;
    overflow-y: hidden;
    min-height: 0.01%;
    overflow-x: auto;
  }
  .table-responsive .table thead tr th, .table-responsive .table thead tr td, .table-responsive .table tbody tr th, .table-responsive .table tbody tr td, .table-responsive .table tfoot tr th, .table-responsive .table tfoot tr td {
    white-space: nowrap;
  }
}
.m0 {
  margin: 0px !important;
}

.mt0 {
  margin-top: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.ml0 {
  margin-left: 0px !important;
}

.mr0 {
  margin-right: 0px !important;
}

.mtb0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.mlr0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.m5 {
  margin: 5px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mtb5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.mlr5 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

.m10 {
  margin: 10px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mtb10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mlr10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.m15 {
  margin: 15px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mtb15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.mlr15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.m20 {
  margin: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mtb20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mlr20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.m25 {
  margin: 25px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mtb25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.mlr25 {
  margin-left: 25px !important;
  margin-right: 25px !important;
}

.m30 {
  margin: 30px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mtb30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.mlr30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.m35 {
  margin: 35px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mtb35 {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

.mlr35 {
  margin-left: 35px !important;
  margin-right: 35px !important;
}

.m40 {
  margin: 40px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mtb40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.mlr40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.m45 {
  margin: 45px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mtb45 {
  margin-top: 45px !important;
  margin-bottom: 45px !important;
}

.mlr45 {
  margin-left: 45px !important;
  margin-right: 45px !important;
}

.m50 {
  margin: 50px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mtb50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.mlr50 {
  margin-left: 50px !important;
  margin-right: 50px !important;
}

.m55 {
  margin: 55px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mtb55 {
  margin-top: 55px !important;
  margin-bottom: 55px !important;
}

.mlr55 {
  margin-left: 55px !important;
  margin-right: 55px !important;
}

.m60 {
  margin: 60px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mtb60 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.mlr60 {
  margin-left: 60px !important;
  margin-right: 60px !important;
}

.m65 {
  margin: 65px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mtb65 {
  margin-top: 65px !important;
  margin-bottom: 65px !important;
}

.mlr65 {
  margin-left: 65px !important;
  margin-right: 65px !important;
}

.m70 {
  margin: 70px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mtb70 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.mlr70 {
  margin-left: 70px !important;
  margin-right: 70px !important;
}

.m75 {
  margin: 75px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mtb75 {
  margin-top: 75px !important;
  margin-bottom: 75px !important;
}

.mlr75 {
  margin-left: 75px !important;
  margin-right: 75px !important;
}

.m80 {
  margin: 80px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mtb80 {
  margin-top: 80px !important;
  margin-bottom: 80px !important;
}

.mlr80 {
  margin-left: 80px !important;
  margin-right: 80px !important;
}

.m85 {
  margin: 85px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mtb85 {
  margin-top: 85px !important;
  margin-bottom: 85px !important;
}

.mlr85 {
  margin-left: 85px !important;
  margin-right: 85px !important;
}

.m90 {
  margin: 90px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mtb90 {
  margin-top: 90px !important;
  margin-bottom: 90px !important;
}

.mlr90 {
  margin-left: 90px !important;
  margin-right: 90px !important;
}

.m95 {
  margin: 95px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mtb95 {
  margin-top: 95px !important;
  margin-bottom: 95px !important;
}

.mlr95 {
  margin-left: 95px !important;
  margin-right: 95px !important;
}

.m100 {
  margin: 100px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mtb100 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

.mlr100 {
  margin-left: 100px !important;
  margin-right: 100px !important;
}

@media only screen and (max-width: 820px) {
  .sp_m0 {
    margin: 0px !important;
  }
  .sp_mt0 {
    margin-top: 0px !important;
  }
  .sp_mb0 {
    margin-bottom: 0px !important;
  }
  .sp_ml0 {
    margin-left: 0px !important;
  }
  .sp_mr0 {
    margin-right: 0px !important;
  }
  .sp_mtb0 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .sp_mlr0 {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .sp_u_mb0 > * {
    margin-bottom: 0px !important;
  }
  .sp_m5 {
    margin: 5px !important;
  }
  .sp_mt5 {
    margin-top: 5px !important;
  }
  .sp_mb5 {
    margin-bottom: 5px !important;
  }
  .sp_ml5 {
    margin-left: 5px !important;
  }
  .sp_mr5 {
    margin-right: 5px !important;
  }
  .sp_mtb5 {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .sp_mlr5 {
    margin-left: 5px !important;
    margin-right: 5px !important;
  }
  .sp_u_mb5 > * {
    margin-bottom: 5px !important;
  }
  .sp_m10 {
    margin: 10px !important;
  }
  .sp_mt10 {
    margin-top: 10px !important;
  }
  .sp_mb10 {
    margin-bottom: 10px !important;
  }
  .sp_ml10 {
    margin-left: 10px !important;
  }
  .sp_mr10 {
    margin-right: 10px !important;
  }
  .sp_mtb10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .sp_mlr10 {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .sp_u_mb10 > * {
    margin-bottom: 10px !important;
  }
  .sp_m15 {
    margin: 15px !important;
  }
  .sp_mt15 {
    margin-top: 15px !important;
  }
  .sp_mb15 {
    margin-bottom: 15px !important;
  }
  .sp_ml15 {
    margin-left: 15px !important;
  }
  .sp_mr15 {
    margin-right: 15px !important;
  }
  .sp_mtb15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .sp_mlr15 {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .sp_u_mb15 > * {
    margin-bottom: 15px !important;
  }
  .sp_m20 {
    margin: 20px !important;
  }
  .sp_mt20 {
    margin-top: 20px !important;
  }
  .sp_mb20 {
    margin-bottom: 20px !important;
  }
  .sp_ml20 {
    margin-left: 20px !important;
  }
  .sp_mr20 {
    margin-right: 20px !important;
  }
  .sp_mtb20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .sp_mlr20 {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .sp_u_mb20 > * {
    margin-bottom: 20px !important;
  }
  .sp_m25 {
    margin: 25px !important;
  }
  .sp_mt25 {
    margin-top: 25px !important;
  }
  .sp_mb25 {
    margin-bottom: 25px !important;
  }
  .sp_ml25 {
    margin-left: 25px !important;
  }
  .sp_mr25 {
    margin-right: 25px !important;
  }
  .sp_mtb25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .sp_mlr25 {
    margin-left: 25px !important;
    margin-right: 25px !important;
  }
  .sp_u_mb25 > * {
    margin-bottom: 25px !important;
  }
  .sp_m30 {
    margin: 30px !important;
  }
  .sp_mt30 {
    margin-top: 30px !important;
  }
  .sp_mb30 {
    margin-bottom: 30px !important;
  }
  .sp_ml30 {
    margin-left: 30px !important;
  }
  .sp_mr30 {
    margin-right: 30px !important;
  }
  .sp_mtb30 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .sp_mlr30 {
    margin-left: 30px !important;
    margin-right: 30px !important;
  }
  .sp_u_mb30 > * {
    margin-bottom: 30px !important;
  }
  .sp_m35 {
    margin: 35px !important;
  }
  .sp_mt35 {
    margin-top: 35px !important;
  }
  .sp_mb35 {
    margin-bottom: 35px !important;
  }
  .sp_ml35 {
    margin-left: 35px !important;
  }
  .sp_mr35 {
    margin-right: 35px !important;
  }
  .sp_mtb35 {
    margin-top: 35px !important;
    margin-bottom: 35px !important;
  }
  .sp_mlr35 {
    margin-left: 35px !important;
    margin-right: 35px !important;
  }
  .sp_u_mb35 > * {
    margin-bottom: 35px !important;
  }
  .sp_m40 {
    margin: 40px !important;
  }
  .sp_mt40 {
    margin-top: 40px !important;
  }
  .sp_mb40 {
    margin-bottom: 40px !important;
  }
  .sp_ml40 {
    margin-left: 40px !important;
  }
  .sp_mr40 {
    margin-right: 40px !important;
  }
  .sp_mtb40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .sp_mlr40 {
    margin-left: 40px !important;
    margin-right: 40px !important;
  }
  .sp_u_mb40 > * {
    margin-bottom: 40px !important;
  }
  .sp_m45 {
    margin: 45px !important;
  }
  .sp_mt45 {
    margin-top: 45px !important;
  }
  .sp_mb45 {
    margin-bottom: 45px !important;
  }
  .sp_ml45 {
    margin-left: 45px !important;
  }
  .sp_mr45 {
    margin-right: 45px !important;
  }
  .sp_mtb45 {
    margin-top: 45px !important;
    margin-bottom: 45px !important;
  }
  .sp_mlr45 {
    margin-left: 45px !important;
    margin-right: 45px !important;
  }
  .sp_u_mb45 > * {
    margin-bottom: 45px !important;
  }
  .sp_m50 {
    margin: 50px !important;
  }
  .sp_mt50 {
    margin-top: 50px !important;
  }
  .sp_mb50 {
    margin-bottom: 50px !important;
  }
  .sp_ml50 {
    margin-left: 50px !important;
  }
  .sp_mr50 {
    margin-right: 50px !important;
  }
  .sp_mtb50 {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .sp_mlr50 {
    margin-left: 50px !important;
    margin-right: 50px !important;
  }
  .sp_u_mb50 > * {
    margin-bottom: 50px !important;
  }
  .sp_m55 {
    margin: 55px !important;
  }
  .sp_mt55 {
    margin-top: 55px !important;
  }
  .sp_mb55 {
    margin-bottom: 55px !important;
  }
  .sp_ml55 {
    margin-left: 55px !important;
  }
  .sp_mr55 {
    margin-right: 55px !important;
  }
  .sp_mtb55 {
    margin-top: 55px !important;
    margin-bottom: 55px !important;
  }
  .sp_mlr55 {
    margin-left: 55px !important;
    margin-right: 55px !important;
  }
  .sp_u_mb55 > * {
    margin-bottom: 55px !important;
  }
  .sp_m60 {
    margin: 60px !important;
  }
  .sp_mt60 {
    margin-top: 60px !important;
  }
  .sp_mb60 {
    margin-bottom: 60px !important;
  }
  .sp_ml60 {
    margin-left: 60px !important;
  }
  .sp_mr60 {
    margin-right: 60px !important;
  }
  .sp_mtb60 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .sp_mlr60 {
    margin-left: 60px !important;
    margin-right: 60px !important;
  }
  .sp_u_mb60 > * {
    margin-bottom: 60px !important;
  }
  .sp_m65 {
    margin: 65px !important;
  }
  .sp_mt65 {
    margin-top: 65px !important;
  }
  .sp_mb65 {
    margin-bottom: 65px !important;
  }
  .sp_ml65 {
    margin-left: 65px !important;
  }
  .sp_mr65 {
    margin-right: 65px !important;
  }
  .sp_mtb65 {
    margin-top: 65px !important;
    margin-bottom: 65px !important;
  }
  .sp_mlr65 {
    margin-left: 65px !important;
    margin-right: 65px !important;
  }
  .sp_u_mb65 > * {
    margin-bottom: 65px !important;
  }
  .sp_m70 {
    margin: 70px !important;
  }
  .sp_mt70 {
    margin-top: 70px !important;
  }
  .sp_mb70 {
    margin-bottom: 70px !important;
  }
  .sp_ml70 {
    margin-left: 70px !important;
  }
  .sp_mr70 {
    margin-right: 70px !important;
  }
  .sp_mtb70 {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .sp_mlr70 {
    margin-left: 70px !important;
    margin-right: 70px !important;
  }
  .sp_u_mb70 > * {
    margin-bottom: 70px !important;
  }
  .sp_m75 {
    margin: 75px !important;
  }
  .sp_mt75 {
    margin-top: 75px !important;
  }
  .sp_mb75 {
    margin-bottom: 75px !important;
  }
  .sp_ml75 {
    margin-left: 75px !important;
  }
  .sp_mr75 {
    margin-right: 75px !important;
  }
  .sp_mtb75 {
    margin-top: 75px !important;
    margin-bottom: 75px !important;
  }
  .sp_mlr75 {
    margin-left: 75px !important;
    margin-right: 75px !important;
  }
  .sp_u_mb75 > * {
    margin-bottom: 75px !important;
  }
  .sp_m80 {
    margin: 80px !important;
  }
  .sp_mt80 {
    margin-top: 80px !important;
  }
  .sp_mb80 {
    margin-bottom: 80px !important;
  }
  .sp_ml80 {
    margin-left: 80px !important;
  }
  .sp_mr80 {
    margin-right: 80px !important;
  }
  .sp_mtb80 {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .sp_mlr80 {
    margin-left: 80px !important;
    margin-right: 80px !important;
  }
  .sp_u_mb80 > * {
    margin-bottom: 80px !important;
  }
  .sp_m85 {
    margin: 85px !important;
  }
  .sp_mt85 {
    margin-top: 85px !important;
  }
  .sp_mb85 {
    margin-bottom: 85px !important;
  }
  .sp_ml85 {
    margin-left: 85px !important;
  }
  .sp_mr85 {
    margin-right: 85px !important;
  }
  .sp_mtb85 {
    margin-top: 85px !important;
    margin-bottom: 85px !important;
  }
  .sp_mlr85 {
    margin-left: 85px !important;
    margin-right: 85px !important;
  }
  .sp_u_mb85 > * {
    margin-bottom: 85px !important;
  }
  .sp_m90 {
    margin: 90px !important;
  }
  .sp_mt90 {
    margin-top: 90px !important;
  }
  .sp_mb90 {
    margin-bottom: 90px !important;
  }
  .sp_ml90 {
    margin-left: 90px !important;
  }
  .sp_mr90 {
    margin-right: 90px !important;
  }
  .sp_mtb90 {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .sp_mlr90 {
    margin-left: 90px !important;
    margin-right: 90px !important;
  }
  .sp_u_mb90 > * {
    margin-bottom: 90px !important;
  }
  .sp_m95 {
    margin: 95px !important;
  }
  .sp_mt95 {
    margin-top: 95px !important;
  }
  .sp_mb95 {
    margin-bottom: 95px !important;
  }
  .sp_ml95 {
    margin-left: 95px !important;
  }
  .sp_mr95 {
    margin-right: 95px !important;
  }
  .sp_mtb95 {
    margin-top: 95px !important;
    margin-bottom: 95px !important;
  }
  .sp_mlr95 {
    margin-left: 95px !important;
    margin-right: 95px !important;
  }
  .sp_u_mb95 > * {
    margin-bottom: 95px !important;
  }
  .sp_m100 {
    margin: 100px !important;
  }
  .sp_mt100 {
    margin-top: 100px !important;
  }
  .sp_mb100 {
    margin-bottom: 100px !important;
  }
  .sp_ml100 {
    margin-left: 100px !important;
  }
  .sp_mr100 {
    margin-right: 100px !important;
  }
  .sp_mtb100 {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .sp_mlr100 {
    margin-left: 100px !important;
    margin-right: 100px !important;
  }
  .sp_u_mb100 > * {
    margin-bottom: 100px !important;
  }
}
.m0a {
  margin-left: auto;
  margin-right: auto;
}

.p0 {
  padding: 0px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pl0 {
  padding-left: 0px !important;
}

.pr0 {
  padding-right: 0px !important;
}

.ptb0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.plr0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.p5 {
  padding: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.ptb5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.plr5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.p10 {
  padding: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.ptb10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.plr10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.p15 {
  padding: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.ptb15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.plr15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.p20 {
  padding: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.ptb20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.plr20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.p25 {
  padding: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.ptb25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.plr25 {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.p30 {
  padding: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.ptb30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.plr30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.p35 {
  padding: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.ptb35 {
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}

.plr35 {
  padding-left: 35px !important;
  padding-right: 35px !important;
}

.p40 {
  padding: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.ptb40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.plr40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.p45 {
  padding: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.ptb45 {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
}

.plr45 {
  padding-left: 45px !important;
  padding-right: 45px !important;
}

.p50 {
  padding: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.ptb50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.plr50 {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

.p55 {
  padding: 55px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.ptb55 {
  padding-top: 55px !important;
  padding-bottom: 55px !important;
}

.plr55 {
  padding-left: 55px !important;
  padding-right: 55px !important;
}

.p60 {
  padding: 60px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.ptb60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.plr60 {
  padding-left: 60px !important;
  padding-right: 60px !important;
}

.p65 {
  padding: 65px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.ptb65 {
  padding-top: 65px !important;
  padding-bottom: 65px !important;
}

.plr65 {
  padding-left: 65px !important;
  padding-right: 65px !important;
}

.p70 {
  padding: 70px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.ptb70 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.plr70 {
  padding-left: 70px !important;
  padding-right: 70px !important;
}

.p75 {
  padding: 75px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.ptb75 {
  padding-top: 75px !important;
  padding-bottom: 75px !important;
}

.plr75 {
  padding-left: 75px !important;
  padding-right: 75px !important;
}

.p80 {
  padding: 80px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.ptb80 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.plr80 {
  padding-left: 80px !important;
  padding-right: 80px !important;
}

.p85 {
  padding: 85px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.ptb85 {
  padding-top: 85px !important;
  padding-bottom: 85px !important;
}

.plr85 {
  padding-left: 85px !important;
  padding-right: 85px !important;
}

.p90 {
  padding: 90px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.ptb90 {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

.plr90 {
  padding-left: 90px !important;
  padding-right: 90px !important;
}

.p95 {
  padding: 95px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.ptb95 {
  padding-top: 95px !important;
  padding-bottom: 95px !important;
}

.plr95 {
  padding-left: 95px !important;
  padding-right: 95px !important;
}

.p100 {
  padding: 100px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.ptb100 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

.plr100 {
  padding-left: 100px !important;
  padding-right: 100px !important;
}

@media only screen and (max-width: 820px) {
  .sp_p0 {
    padding: 0px !important;
  }
  .sp_pt0 {
    padding-top: 0px !important;
  }
  .sp_pb0 {
    padding-bottom: 0px !important;
  }
  .sp_pl0 {
    padding-left: 0px !important;
  }
  .sp_pr0 {
    padding-right: 0px !important;
  }
  .sp_ptb0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .sp_plr0 {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .sp_p5 {
    padding: 5px !important;
  }
  .sp_pt5 {
    padding-top: 5px !important;
  }
  .sp_pb5 {
    padding-bottom: 5px !important;
  }
  .sp_pl5 {
    padding-left: 5px !important;
  }
  .sp_pr5 {
    padding-right: 5px !important;
  }
  .sp_ptb5 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .sp_plr5 {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .sp_p10 {
    padding: 10px !important;
  }
  .sp_pt10 {
    padding-top: 10px !important;
  }
  .sp_pb10 {
    padding-bottom: 10px !important;
  }
  .sp_pl10 {
    padding-left: 10px !important;
  }
  .sp_pr10 {
    padding-right: 10px !important;
  }
  .sp_ptb10 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .sp_plr10 {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .sp_p15 {
    padding: 15px !important;
  }
  .sp_pt15 {
    padding-top: 15px !important;
  }
  .sp_pb15 {
    padding-bottom: 15px !important;
  }
  .sp_pl15 {
    padding-left: 15px !important;
  }
  .sp_pr15 {
    padding-right: 15px !important;
  }
  .sp_ptb15 {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  .sp_plr15 {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .sp_p20 {
    padding: 20px !important;
  }
  .sp_pt20 {
    padding-top: 20px !important;
  }
  .sp_pb20 {
    padding-bottom: 20px !important;
  }
  .sp_pl20 {
    padding-left: 20px !important;
  }
  .sp_pr20 {
    padding-right: 20px !important;
  }
  .sp_ptb20 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .sp_plr20 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .sp_p25 {
    padding: 25px !important;
  }
  .sp_pt25 {
    padding-top: 25px !important;
  }
  .sp_pb25 {
    padding-bottom: 25px !important;
  }
  .sp_pl25 {
    padding-left: 25px !important;
  }
  .sp_pr25 {
    padding-right: 25px !important;
  }
  .sp_ptb25 {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .sp_plr25 {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .sp_p30 {
    padding: 30px !important;
  }
  .sp_pt30 {
    padding-top: 30px !important;
  }
  .sp_pb30 {
    padding-bottom: 30px !important;
  }
  .sp_pl30 {
    padding-left: 30px !important;
  }
  .sp_pr30 {
    padding-right: 30px !important;
  }
  .sp_ptb30 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .sp_plr30 {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .sp_p35 {
    padding: 35px !important;
  }
  .sp_pt35 {
    padding-top: 35px !important;
  }
  .sp_pb35 {
    padding-bottom: 35px !important;
  }
  .sp_pl35 {
    padding-left: 35px !important;
  }
  .sp_pr35 {
    padding-right: 35px !important;
  }
  .sp_ptb35 {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
  }
  .sp_plr35 {
    padding-left: 35px !important;
    padding-right: 35px !important;
  }
  .sp_p40 {
    padding: 40px !important;
  }
  .sp_pt40 {
    padding-top: 40px !important;
  }
  .sp_pb40 {
    padding-bottom: 40px !important;
  }
  .sp_pl40 {
    padding-left: 40px !important;
  }
  .sp_pr40 {
    padding-right: 40px !important;
  }
  .sp_ptb40 {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .sp_plr40 {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .sp_p45 {
    padding: 45px !important;
  }
  .sp_pt45 {
    padding-top: 45px !important;
  }
  .sp_pb45 {
    padding-bottom: 45px !important;
  }
  .sp_pl45 {
    padding-left: 45px !important;
  }
  .sp_pr45 {
    padding-right: 45px !important;
  }
  .sp_ptb45 {
    padding-top: 45px !important;
    padding-bottom: 45px !important;
  }
  .sp_plr45 {
    padding-left: 45px !important;
    padding-right: 45px !important;
  }
  .sp_p50 {
    padding: 50px !important;
  }
  .sp_pt50 {
    padding-top: 50px !important;
  }
  .sp_pb50 {
    padding-bottom: 50px !important;
  }
  .sp_pl50 {
    padding-left: 50px !important;
  }
  .sp_pr50 {
    padding-right: 50px !important;
  }
  .sp_ptb50 {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .sp_plr50 {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
  .sp_p55 {
    padding: 55px !important;
  }
  .sp_pt55 {
    padding-top: 55px !important;
  }
  .sp_pb55 {
    padding-bottom: 55px !important;
  }
  .sp_pl55 {
    padding-left: 55px !important;
  }
  .sp_pr55 {
    padding-right: 55px !important;
  }
  .sp_ptb55 {
    padding-top: 55px !important;
    padding-bottom: 55px !important;
  }
  .sp_plr55 {
    padding-left: 55px !important;
    padding-right: 55px !important;
  }
  .sp_p60 {
    padding: 60px !important;
  }
  .sp_pt60 {
    padding-top: 60px !important;
  }
  .sp_pb60 {
    padding-bottom: 60px !important;
  }
  .sp_pl60 {
    padding-left: 60px !important;
  }
  .sp_pr60 {
    padding-right: 60px !important;
  }
  .sp_ptb60 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .sp_plr60 {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }
  .sp_p65 {
    padding: 65px !important;
  }
  .sp_pt65 {
    padding-top: 65px !important;
  }
  .sp_pb65 {
    padding-bottom: 65px !important;
  }
  .sp_pl65 {
    padding-left: 65px !important;
  }
  .sp_pr65 {
    padding-right: 65px !important;
  }
  .sp_ptb65 {
    padding-top: 65px !important;
    padding-bottom: 65px !important;
  }
  .sp_plr65 {
    padding-left: 65px !important;
    padding-right: 65px !important;
  }
  .sp_p70 {
    padding: 70px !important;
  }
  .sp_pt70 {
    padding-top: 70px !important;
  }
  .sp_pb70 {
    padding-bottom: 70px !important;
  }
  .sp_pl70 {
    padding-left: 70px !important;
  }
  .sp_pr70 {
    padding-right: 70px !important;
  }
  .sp_ptb70 {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .sp_plr70 {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
  .sp_p75 {
    padding: 75px !important;
  }
  .sp_pt75 {
    padding-top: 75px !important;
  }
  .sp_pb75 {
    padding-bottom: 75px !important;
  }
  .sp_pl75 {
    padding-left: 75px !important;
  }
  .sp_pr75 {
    padding-right: 75px !important;
  }
  .sp_ptb75 {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }
  .sp_plr75 {
    padding-left: 75px !important;
    padding-right: 75px !important;
  }
  .sp_p80 {
    padding: 80px !important;
  }
  .sp_pt80 {
    padding-top: 80px !important;
  }
  .sp_pb80 {
    padding-bottom: 80px !important;
  }
  .sp_pl80 {
    padding-left: 80px !important;
  }
  .sp_pr80 {
    padding-right: 80px !important;
  }
  .sp_ptb80 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .sp_plr80 {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
  .sp_p85 {
    padding: 85px !important;
  }
  .sp_pt85 {
    padding-top: 85px !important;
  }
  .sp_pb85 {
    padding-bottom: 85px !important;
  }
  .sp_pl85 {
    padding-left: 85px !important;
  }
  .sp_pr85 {
    padding-right: 85px !important;
  }
  .sp_ptb85 {
    padding-top: 85px !important;
    padding-bottom: 85px !important;
  }
  .sp_plr85 {
    padding-left: 85px !important;
    padding-right: 85px !important;
  }
  .sp_p90 {
    padding: 90px !important;
  }
  .sp_pt90 {
    padding-top: 90px !important;
  }
  .sp_pb90 {
    padding-bottom: 90px !important;
  }
  .sp_pl90 {
    padding-left: 90px !important;
  }
  .sp_pr90 {
    padding-right: 90px !important;
  }
  .sp_ptb90 {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
  .sp_plr90 {
    padding-left: 90px !important;
    padding-right: 90px !important;
  }
  .sp_p95 {
    padding: 95px !important;
  }
  .sp_pt95 {
    padding-top: 95px !important;
  }
  .sp_pb95 {
    padding-bottom: 95px !important;
  }
  .sp_pl95 {
    padding-left: 95px !important;
  }
  .sp_pr95 {
    padding-right: 95px !important;
  }
  .sp_ptb95 {
    padding-top: 95px !important;
    padding-bottom: 95px !important;
  }
  .sp_plr95 {
    padding-left: 95px !important;
    padding-right: 95px !important;
  }
  .sp_p100 {
    padding: 100px !important;
  }
  .sp_pt100 {
    padding-top: 100px !important;
  }
  .sp_pb100 {
    padding-bottom: 100px !important;
  }
  .sp_pl100 {
    padding-left: 100px !important;
  }
  .sp_pr100 {
    padding-right: 100px !important;
  }
  .sp_ptb100 {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
  .sp_plr100 {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}
.w-0 {
  width: 0px !important;
}

.w-0p {
  width: 0% !important;
}

.w-50 {
  width: 50px !important;
}

.w-5p {
  width: 5% !important;
}

.w-100 {
  width: 100px !important;
}

.w-10p {
  width: 10% !important;
}

.w-150 {
  width: 150px !important;
}

.w-15p {
  width: 15% !important;
}

.w-200 {
  width: 200px !important;
}

.w-20p {
  width: 20% !important;
}

.w-250 {
  width: 250px !important;
}

.w-25p {
  width: 25% !important;
}

.w-300 {
  width: 300px !important;
}

.w-30p {
  width: 30% !important;
}

.w-350 {
  width: 350px !important;
}

.w-35p {
  width: 35% !important;
}

.w-400 {
  width: 400px !important;
}

.w-40p {
  width: 40% !important;
}

.w-450 {
  width: 450px !important;
}

.w-45p {
  width: 45% !important;
}

.w-500 {
  width: 500px !important;
}

.w-50p {
  width: 50% !important;
}

.w-550 {
  width: 550px !important;
}

.w-55p {
  width: 55% !important;
}

.w-600 {
  width: 600px !important;
}

.w-60p {
  width: 60% !important;
}

.w-650 {
  width: 650px !important;
}

.w-65p {
  width: 65% !important;
}

.w-700 {
  width: 700px !important;
}

.w-70p {
  width: 70% !important;
}

.w-750 {
  width: 750px !important;
}

.w-75p {
  width: 75% !important;
}

.w-800 {
  width: 800px !important;
}

.w-80p {
  width: 80% !important;
}

.w-850 {
  width: 850px !important;
}

.w-85p {
  width: 85% !important;
}

.w-900 {
  width: 900px !important;
}

.w-90p {
  width: 90% !important;
}

.w-950 {
  width: 950px !important;
}

.w-95p {
  width: 95% !important;
}

.w-1000 {
  width: 1000px !important;
}

.w-100p {
  width: 100% !important;
}

@media only screen and (max-width: 820px) {
  .sp_w-0 {
    width: 0px !important;
  }
  .sp_w-0p {
    width: 0% !important;
  }
  .sp_w-50 {
    width: 50px !important;
  }
  .sp_w-5p {
    width: 5% !important;
  }
  .sp_w-100 {
    width: 100px !important;
  }
  .sp_w-10p {
    width: 10% !important;
  }
  .sp_w-150 {
    width: 150px !important;
  }
  .sp_w-15p {
    width: 15% !important;
  }
  .sp_w-200 {
    width: 200px !important;
  }
  .sp_w-20p {
    width: 20% !important;
  }
  .sp_w-250 {
    width: 250px !important;
  }
  .sp_w-25p {
    width: 25% !important;
  }
  .sp_w-300 {
    width: 300px !important;
  }
  .sp_w-30p {
    width: 30% !important;
  }
  .sp_w-350 {
    width: 350px !important;
  }
  .sp_w-35p {
    width: 35% !important;
  }
  .sp_w-400 {
    width: 400px !important;
  }
  .sp_w-40p {
    width: 40% !important;
  }
  .sp_w-450 {
    width: 450px !important;
  }
  .sp_w-45p {
    width: 45% !important;
  }
  .sp_w-500 {
    width: 500px !important;
  }
  .sp_w-50p {
    width: 50% !important;
  }
  .sp_w-550 {
    width: 550px !important;
  }
  .sp_w-55p {
    width: 55% !important;
  }
  .sp_w-600 {
    width: 600px !important;
  }
  .sp_w-60p {
    width: 60% !important;
  }
  .sp_w-650 {
    width: 650px !important;
  }
  .sp_w-65p {
    width: 65% !important;
  }
  .sp_w-700 {
    width: 700px !important;
  }
  .sp_w-70p {
    width: 70% !important;
  }
  .sp_w-750 {
    width: 750px !important;
  }
  .sp_w-75p {
    width: 75% !important;
  }
  .sp_w-800 {
    width: 800px !important;
  }
  .sp_w-80p {
    width: 80% !important;
  }
  .sp_w-850 {
    width: 850px !important;
  }
  .sp_w-85p {
    width: 85% !important;
  }
  .sp_w-900 {
    width: 900px !important;
  }
  .sp_w-90p {
    width: 90% !important;
  }
  .sp_w-950 {
    width: 950px !important;
  }
  .sp_w-95p {
    width: 95% !important;
  }
  .sp_w-1000 {
    width: 1000px !important;
  }
  .sp_w-100p {
    width: 100% !important;
  }
}
.float-left {
  float: left;
}

.float-right {
  float: right;
}

.float-none {
  float: none;
}

.clear-left {
  clear: left;
}

.clear-right {
  clear: right;
}

.clear-both {
  clear: both;
}

@media only screen and (max-width: 820px) {
  .sp_float-left {
    float: left;
  }
  .sp_float-right {
    float: right;
  }
  .sp_float-none {
    float: none;
  }
}
.hidden {
  display: none !important;
}

.hidden-no_important {
  display: none;
}

.sp {
  display: none !important;
}

.sp_d-inline {
  display: none;
}

.d-inline-block {
  display: inline-block;
}

.d-block {
  display: block;
}

@media only screen and (max-width: 820px) {
  .sp {
    display: inline-block !important;
  }
  .sp_d-inline {
    display: inline !important;
  }
  .pc {
    display: none !important;
  }
  .sp_d-inline-block {
    display: inline-block !important;
  }
}
.bg-primary {
  background-color: #78B97F;
}

.bg-secondary {
  background-color: #c063ad;
}

.bg-thirdly {
  background-color: #629db0;
}

.bg-error {
  background-color: #C70000;
}

.bg-accent {
  background-color: #d54762;
}

.bg-base_bg {
  background-color: #f2f2f2;
  color: #222;
}

.bg-info {
  background-color: #70C1B3;
}

.bg-white {
  background-color: white;
  color: #222;
}

.bg-black {
  background-color: black;
}

.color-primary {
  color: #78B97F;
}

.color-secondary {
  color: #c063ad;
}

.color-thirdly {
  color: #629db0;
}

.color-error {
  color: #C70000;
}

.color-accent {
  color: #d54762;
}

.color-base_bg {
  color: #f2f2f2;
}

.color-info {
  color: #70C1B3;
}

.color-white {
  color: white;
}

.color-black {
  color: black;
}

.font-size10 {
  font-size: 1rem !important;
}

.font-size11 {
  font-size: 1.1rem !important;
}

.font-size12 {
  font-size: 1.2rem !important;
}

.font-size13 {
  font-size: 1.3rem !important;
}

.font-size14 {
  font-size: 1.4rem !important;
}

.font-size15 {
  font-size: 1.5rem !important;
}

.font-size16 {
  font-size: 1.6rem !important;
}

.font-size17 {
  font-size: 1.7rem !important;
}

.font-size18 {
  font-size: 1.8rem !important;
}

.font-size19 {
  font-size: 1.9rem !important;
}

.font-size20 {
  font-size: 2rem !important;
}

.font-size21 {
  font-size: 2.1rem !important;
}

.font-size22 {
  font-size: 2.2rem !important;
}

.font-size23 {
  font-size: 2.3rem !important;
}

.font-size24 {
  font-size: 2.4rem !important;
}

.font-size25 {
  font-size: 2.5rem !important;
}

.font-size26 {
  font-size: 2.6rem !important;
}

.font-size27 {
  font-size: 2.7rem !important;
}

.font-size28 {
  font-size: 2.8rem !important;
}

.font-size29 {
  font-size: 2.9rem !important;
}

.font-size30 {
  font-size: 3rem !important;
}

.font-size31 {
  font-size: 3.1rem !important;
}

.font-size32 {
  font-size: 3.2rem !important;
}

.font-size33 {
  font-size: 3.3rem !important;
}

.font-size34 {
  font-size: 3.4rem !important;
}

.font-size35 {
  font-size: 3.5rem !important;
}

.font-size36 {
  font-size: 3.6rem !important;
}

.font-size37 {
  font-size: 3.7rem !important;
}

.font-size38 {
  font-size: 3.8rem !important;
}

.font-size39 {
  font-size: 3.9rem !important;
}

.font-size40 {
  font-size: 4rem !important;
}

.font-size41 {
  font-size: 4.1rem !important;
}

.font-size42 {
  font-size: 4.2rem !important;
}

.font-size43 {
  font-size: 4.3rem !important;
}

.font-size44 {
  font-size: 4.4rem !important;
}

.font-size45 {
  font-size: 4.5rem !important;
}

.font-size46 {
  font-size: 4.6rem !important;
}

.font-size47 {
  font-size: 4.7rem !important;
}

.font-size48 {
  font-size: 4.8rem !important;
}

.font-size49 {
  font-size: 4.9rem !important;
}

.font-size50 {
  font-size: 5rem !important;
}

.font-size5p {
  font-size: 5% !important;
}

.font-size10p {
  font-size: 10% !important;
}

.font-size15p {
  font-size: 15% !important;
}

.font-size20p {
  font-size: 20% !important;
}

.font-size25p {
  font-size: 25% !important;
}

.font-size30p {
  font-size: 30% !important;
}

.font-size35p {
  font-size: 35% !important;
}

.font-size40p {
  font-size: 40% !important;
}

.font-size45p {
  font-size: 45% !important;
}

.font-size50p {
  font-size: 50% !important;
}

.font-size55p {
  font-size: 55% !important;
}

.font-size60p {
  font-size: 60% !important;
}

.font-size65p {
  font-size: 65% !important;
}

.font-size70p {
  font-size: 70% !important;
}

.font-size75p {
  font-size: 75% !important;
}

.font-size80p {
  font-size: 80% !important;
}

.font-size85p {
  font-size: 85% !important;
}

.font-size90p {
  font-size: 90% !important;
}

.font-size95p {
  font-size: 95% !important;
}

.font-size100p {
  font-size: 100% !important;
}

@media only screen and (max-width: 820px) {
  .sp_font-size10 {
    font-size: 1rem !important;
  }
  .sp_font-size11 {
    font-size: 1.1rem !important;
  }
  .sp_font-size12 {
    font-size: 1.2rem !important;
  }
  .sp_font-size13 {
    font-size: 1.3rem !important;
  }
  .sp_font-size14 {
    font-size: 1.4rem !important;
  }
  .sp_font-size15 {
    font-size: 1.5rem !important;
  }
  .sp_font-size16 {
    font-size: 1.6rem !important;
  }
  .sp_font-size17 {
    font-size: 1.7rem !important;
  }
  .sp_font-size18 {
    font-size: 1.8rem !important;
  }
  .sp_font-size19 {
    font-size: 1.9rem !important;
  }
  .sp_font-size20 {
    font-size: 2rem !important;
  }
  .sp_font-size21 {
    font-size: 2.1rem !important;
  }
  .sp_font-size22 {
    font-size: 2.2rem !important;
  }
  .sp_font-size23 {
    font-size: 2.3rem !important;
  }
  .sp_font-size24 {
    font-size: 2.4rem !important;
  }
  .sp_font-size25 {
    font-size: 2.5rem !important;
  }
  .sp_font-size26 {
    font-size: 2.6rem !important;
  }
  .sp_font-size27 {
    font-size: 2.7rem !important;
  }
  .sp_font-size28 {
    font-size: 2.8rem !important;
  }
  .sp_font-size29 {
    font-size: 2.9rem !important;
  }
  .sp_font-size30 {
    font-size: 3rem !important;
  }
  .sp_font-size31 {
    font-size: 3.1rem !important;
  }
  .sp_font-size32 {
    font-size: 3.2rem !important;
  }
  .sp_font-size33 {
    font-size: 3.3rem !important;
  }
  .sp_font-size34 {
    font-size: 3.4rem !important;
  }
  .sp_font-size35 {
    font-size: 3.5rem !important;
  }
  .sp_font-size36 {
    font-size: 3.6rem !important;
  }
  .sp_font-size37 {
    font-size: 3.7rem !important;
  }
  .sp_font-size38 {
    font-size: 3.8rem !important;
  }
  .sp_font-size39 {
    font-size: 3.9rem !important;
  }
  .sp_font-size40 {
    font-size: 4rem !important;
  }
  .sp_font-size41 {
    font-size: 4.1rem !important;
  }
  .sp_font-size42 {
    font-size: 4.2rem !important;
  }
  .sp_font-size43 {
    font-size: 4.3rem !important;
  }
  .sp_font-size44 {
    font-size: 4.4rem !important;
  }
  .sp_font-size45 {
    font-size: 4.5rem !important;
  }
  .sp_font-size46 {
    font-size: 4.6rem !important;
  }
  .sp_font-size47 {
    font-size: 4.7rem !important;
  }
  .sp_font-size48 {
    font-size: 4.8rem !important;
  }
  .sp_font-size49 {
    font-size: 4.9rem !important;
  }
  .sp_font-size50 {
    font-size: 5rem !important;
  }
  .sp_font-size5p {
    font-size: 5% !important;
  }
  .sp_font-size10p {
    font-size: 10% !important;
  }
  .sp_font-size15p {
    font-size: 15% !important;
  }
  .sp_font-size20p {
    font-size: 20% !important;
  }
  .sp_font-size25p {
    font-size: 25% !important;
  }
  .sp_font-size30p {
    font-size: 30% !important;
  }
  .sp_font-size35p {
    font-size: 35% !important;
  }
  .sp_font-size40p {
    font-size: 40% !important;
  }
  .sp_font-size45p {
    font-size: 45% !important;
  }
  .sp_font-size50p {
    font-size: 50% !important;
  }
  .sp_font-size55p {
    font-size: 55% !important;
  }
  .sp_font-size60p {
    font-size: 60% !important;
  }
  .sp_font-size65p {
    font-size: 65% !important;
  }
  .sp_font-size70p {
    font-size: 70% !important;
  }
  .sp_font-size75p {
    font-size: 75% !important;
  }
  .sp_font-size80p {
    font-size: 80% !important;
  }
  .sp_font-size85p {
    font-size: 85% !important;
  }
  .sp_font-size90p {
    font-size: 90% !important;
  }
  .sp_font-size95p {
    font-size: 95% !important;
  }
  .sp_font-size100p {
    font-size: 100% !important;
  }
}
small {
  font-size: 80%;
}
small.xs {
  font-size: 50%;
}

strong {
  font-size: 130%;
  font-weight: normal;
}
strong.xl {
  font-size: 160%;
}

.text-center {
  text-align: center !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

@media only screen and (max-width: 820px) {
  .sp_text-center {
    text-align: center !important;
  }
  .sp_text-left {
    text-align: left !important;
  }
  .sp_text-right {
    text-align: right !important;
  }
}
.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

@media only screen and (max-width: 820px) {
  .sp_font-weight-normal {
    font-weight: normal;
  }
  .sp_font-weight-bold {
    font-weight: bold;
  }
}
.text-underline {
  text-decoration: underline;
}

.text-indent {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}

.text_indent1-5 {
  display: block;
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.text_indent2 {
  display: block;
  text-indent: -2em;
  padding-left: 2em;
}

.text_indent2-5 {
  display: block;
  text-indent: -2.5em;
  padding-left: 2.5em;
}

.text_indent3 {
  display: block;
  text-indent: -3em;
  padding-left: 3em;
}

/*------------------------------------------
text super
------------------------------------------*/
.text-super {
  font-size: 40%;
  vertical-align: super;
}

.text-sub {
  font-size: 40%;
  vertical-align: sub;
}

.img-responsive {
  max-width: 100%;
  height: auto;
}

.img-responsive-w100 {
  width: 100%;
  height: auto;
}

.border-0 {
  border: 0px solid #ccc !important;
}

.border-top-0 {
  border-top: 0px solid #ccc !important;
}

.border-bottom-0 {
  border-bottom: 0px solid #ccc !important;
}

.border-left-0 {
  border-left: 0px solid #ccc !important;
}

.border-right-0 {
  border-right: 0px solid #ccc !important;
}

.border-1 {
  border: 1px solid #ccc !important;
}

.border-top-1 {
  border-top: 1px solid #ccc !important;
}

.border-bottom-1 {
  border-bottom: 1px solid #ccc !important;
}

.border-left-1 {
  border-left: 1px solid #ccc !important;
}

.border-right-1 {
  border-right: 1px solid #ccc !important;
}

.border-2 {
  border: 2px solid #ccc !important;
}

.border-top-2 {
  border-top: 2px solid #ccc !important;
}

.border-bottom-2 {
  border-bottom: 2px solid #ccc !important;
}

.border-left-2 {
  border-left: 2px solid #ccc !important;
}

.border-right-2 {
  border-right: 2px solid #ccc !important;
}

.border-3 {
  border: 3px solid #ccc !important;
}

.border-top-3 {
  border-top: 3px solid #ccc !important;
}

.border-bottom-3 {
  border-bottom: 3px solid #ccc !important;
}

.border-left-3 {
  border-left: 3px solid #ccc !important;
}

.border-right-3 {
  border-right: 3px solid #ccc !important;
}

.border-4 {
  border: 4px solid #ccc !important;
}

.border-top-4 {
  border-top: 4px solid #ccc !important;
}

.border-bottom-4 {
  border-bottom: 4px solid #ccc !important;
}

.border-left-4 {
  border-left: 4px solid #ccc !important;
}

.border-right-4 {
  border-right: 4px solid #ccc !important;
}

.border-5 {
  border: 5px solid #ccc !important;
}

.border-top-5 {
  border-top: 5px solid #ccc !important;
}

.border-bottom-5 {
  border-bottom: 5px solid #ccc !important;
}

.border-left-5 {
  border-left: 5px solid #ccc !important;
}

.border-right-5 {
  border-right: 5px solid #ccc !important;
}

.border-6 {
  border: 6px solid #ccc !important;
}

.border-top-6 {
  border-top: 6px solid #ccc !important;
}

.border-bottom-6 {
  border-bottom: 6px solid #ccc !important;
}

.border-left-6 {
  border-left: 6px solid #ccc !important;
}

.border-right-6 {
  border-right: 6px solid #ccc !important;
}

.border-7 {
  border: 7px solid #ccc !important;
}

.border-top-7 {
  border-top: 7px solid #ccc !important;
}

.border-bottom-7 {
  border-bottom: 7px solid #ccc !important;
}

.border-left-7 {
  border-left: 7px solid #ccc !important;
}

.border-right-7 {
  border-right: 7px solid #ccc !important;
}

.border-8 {
  border: 8px solid #ccc !important;
}

.border-top-8 {
  border-top: 8px solid #ccc !important;
}

.border-bottom-8 {
  border-bottom: 8px solid #ccc !important;
}

.border-left-8 {
  border-left: 8px solid #ccc !important;
}

.border-right-8 {
  border-right: 8px solid #ccc !important;
}

.border-9 {
  border: 9px solid #ccc !important;
}

.border-top-9 {
  border-top: 9px solid #ccc !important;
}

.border-bottom-9 {
  border-bottom: 9px solid #ccc !important;
}

.border-left-9 {
  border-left: 9px solid #ccc !important;
}

.border-right-9 {
  border-right: 9px solid #ccc !important;
}

.border-10 {
  border: 10px solid #ccc !important;
}

.border-top-10 {
  border-top: 10px solid #ccc !important;
}

.border-bottom-10 {
  border-bottom: 10px solid #ccc !important;
}

.border-left-10 {
  border-left: 10px solid #ccc !important;
}

.border-right-10 {
  border-right: 10px solid #ccc !important;
}

@media only screen and (max-width: 820px) {
  .sp_border-0 {
    border: 0px solid #ccc !important;
  }
  .sp_border-top-0 {
    border-top: 0px solid #ccc !important;
  }
  .sp_border-bottom-0 {
    border-bottom: 0px solid #ccc !important;
  }
  .sp_border-left-0 {
    border-left: 0px solid #ccc !important;
  }
  .sp_border-right-0 {
    border-right: 0px solid #ccc !important;
  }
  .sp_border-1 {
    border: 1px solid #ccc !important;
  }
  .sp_border-top-1 {
    border-top: 1px solid #ccc !important;
  }
  .sp_border-bottom-1 {
    border-bottom: 1px solid #ccc !important;
  }
  .sp_border-left-1 {
    border-left: 1px solid #ccc !important;
  }
  .sp_border-right-1 {
    border-right: 1px solid #ccc !important;
  }
  .sp_border-2 {
    border: 2px solid #ccc !important;
  }
  .sp_border-top-2 {
    border-top: 2px solid #ccc !important;
  }
  .sp_border-bottom-2 {
    border-bottom: 2px solid #ccc !important;
  }
  .sp_border-left-2 {
    border-left: 2px solid #ccc !important;
  }
  .sp_border-right-2 {
    border-right: 2px solid #ccc !important;
  }
  .sp_border-3 {
    border: 3px solid #ccc !important;
  }
  .sp_border-top-3 {
    border-top: 3px solid #ccc !important;
  }
  .sp_border-bottom-3 {
    border-bottom: 3px solid #ccc !important;
  }
  .sp_border-left-3 {
    border-left: 3px solid #ccc !important;
  }
  .sp_border-right-3 {
    border-right: 3px solid #ccc !important;
  }
  .sp_border-4 {
    border: 4px solid #ccc !important;
  }
  .sp_border-top-4 {
    border-top: 4px solid #ccc !important;
  }
  .sp_border-bottom-4 {
    border-bottom: 4px solid #ccc !important;
  }
  .sp_border-left-4 {
    border-left: 4px solid #ccc !important;
  }
  .sp_border-right-4 {
    border-right: 4px solid #ccc !important;
  }
  .sp_border-5 {
    border: 5px solid #ccc !important;
  }
  .sp_border-top-5 {
    border-top: 5px solid #ccc !important;
  }
  .sp_border-bottom-5 {
    border-bottom: 5px solid #ccc !important;
  }
  .sp_border-left-5 {
    border-left: 5px solid #ccc !important;
  }
  .sp_border-right-5 {
    border-right: 5px solid #ccc !important;
  }
  .sp_border-6 {
    border: 6px solid #ccc !important;
  }
  .sp_border-top-6 {
    border-top: 6px solid #ccc !important;
  }
  .sp_border-bottom-6 {
    border-bottom: 6px solid #ccc !important;
  }
  .sp_border-left-6 {
    border-left: 6px solid #ccc !important;
  }
  .sp_border-right-6 {
    border-right: 6px solid #ccc !important;
  }
  .sp_border-7 {
    border: 7px solid #ccc !important;
  }
  .sp_border-top-7 {
    border-top: 7px solid #ccc !important;
  }
  .sp_border-bottom-7 {
    border-bottom: 7px solid #ccc !important;
  }
  .sp_border-left-7 {
    border-left: 7px solid #ccc !important;
  }
  .sp_border-right-7 {
    border-right: 7px solid #ccc !important;
  }
  .sp_border-8 {
    border: 8px solid #ccc !important;
  }
  .sp_border-top-8 {
    border-top: 8px solid #ccc !important;
  }
  .sp_border-bottom-8 {
    border-bottom: 8px solid #ccc !important;
  }
  .sp_border-left-8 {
    border-left: 8px solid #ccc !important;
  }
  .sp_border-right-8 {
    border-right: 8px solid #ccc !important;
  }
  .sp_border-9 {
    border: 9px solid #ccc !important;
  }
  .sp_border-top-9 {
    border-top: 9px solid #ccc !important;
  }
  .sp_border-bottom-9 {
    border-bottom: 9px solid #ccc !important;
  }
  .sp_border-left-9 {
    border-left: 9px solid #ccc !important;
  }
  .sp_border-right-9 {
    border-right: 9px solid #ccc !important;
  }
  .sp_border-10 {
    border: 10px solid #ccc !important;
  }
  .sp_border-top-10 {
    border-top: 10px solid #ccc !important;
  }
  .sp_border-bottom-10 {
    border-bottom: 10px solid #ccc !important;
  }
  .sp_border-left-10 {
    border-left: 10px solid #ccc !important;
  }
  .sp_border-right-10 {
    border-right: 10px solid #ccc !important;
  }
}
.border-primary {
  border-color: #78B97F !important;
}

.border-top-primary {
  border-top-color: #78B97F !important;
}

.border-bottom-primary {
  border-bottom-color: #78B97F !important;
}

.border-left-primary {
  border-left-color: #78B97F !important;
}

.border-right-primary {
  border-right-color: #78B97F !important;
}

.border-secondary {
  border-color: #c063ad !important;
}

.border-top-secondary {
  border-top-color: #c063ad !important;
}

.border-bottom-secondary {
  border-bottom-color: #c063ad !important;
}

.border-left-secondary {
  border-left-color: #c063ad !important;
}

.border-right-secondary {
  border-right-color: #c063ad !important;
}

.border-thirdly {
  border-color: #629db0 !important;
}

.border-top-thirdly {
  border-top-color: #629db0 !important;
}

.border-bottom-thirdly {
  border-bottom-color: #629db0 !important;
}

.border-left-thirdly {
  border-left-color: #629db0 !important;
}

.border-right-thirdly {
  border-right-color: #629db0 !important;
}

.border-error {
  border-color: #C70000 !important;
}

.border-top-error {
  border-top-color: #C70000 !important;
}

.border-bottom-error {
  border-bottom-color: #C70000 !important;
}

.border-left-error {
  border-left-color: #C70000 !important;
}

.border-right-error {
  border-right-color: #C70000 !important;
}

.border-accent {
  border-color: #d54762 !important;
}

.border-top-accent {
  border-top-color: #d54762 !important;
}

.border-bottom-accent {
  border-bottom-color: #d54762 !important;
}

.border-left-accent {
  border-left-color: #d54762 !important;
}

.border-right-accent {
  border-right-color: #d54762 !important;
}

.border-base_bg {
  border-color: #f2f2f2 !important;
}

.border-top-base_bg {
  border-top-color: #f2f2f2 !important;
}

.border-bottom-base_bg {
  border-bottom-color: #f2f2f2 !important;
}

.border-left-base_bg {
  border-left-color: #f2f2f2 !important;
}

.border-right-base_bg {
  border-right-color: #f2f2f2 !important;
}

.border-info {
  border-color: #70C1B3 !important;
}

.border-top-info {
  border-top-color: #70C1B3 !important;
}

.border-bottom-info {
  border-bottom-color: #70C1B3 !important;
}

.border-left-info {
  border-left-color: #70C1B3 !important;
}

.border-right-info {
  border-right-color: #70C1B3 !important;
}

.border-white {
  border-color: white !important;
}

.border-top-white {
  border-top-color: white !important;
}

.border-bottom-white {
  border-bottom-color: white !important;
}

.border-left-white {
  border-left-color: white !important;
}

.border-right-white {
  border-right-color: white !important;
}

.border-black {
  border-color: black !important;
}

.border-top-black {
  border-top-color: black !important;
}

.border-bottom-black {
  border-bottom-color: black !important;
}

.border-left-black {
  border-left-color: black !important;
}

.border-right-black {
  border-right-color: black !important;
}

@media only screen and (max-width: 820px) {
  .sp_border-primary {
    border-color: #78B97F !important;
  }
  .sp_border-top-primary {
    border-top-color: #78B97F !important;
  }
  .sp_border-bottom-primary {
    border-bottom-color: #78B97F !important;
  }
  .sp_border-left-primary {
    border-left-color: #78B97F !important;
  }
  .sp_border-right-primary {
    border-right-color: #78B97F !important;
  }
  .sp_border-secondary {
    border-color: #c063ad !important;
  }
  .sp_border-top-secondary {
    border-top-color: #c063ad !important;
  }
  .sp_border-bottom-secondary {
    border-bottom-color: #c063ad !important;
  }
  .sp_border-left-secondary {
    border-left-color: #c063ad !important;
  }
  .sp_border-right-secondary {
    border-right-color: #c063ad !important;
  }
  .sp_border-thirdly {
    border-color: #629db0 !important;
  }
  .sp_border-top-thirdly {
    border-top-color: #629db0 !important;
  }
  .sp_border-bottom-thirdly {
    border-bottom-color: #629db0 !important;
  }
  .sp_border-left-thirdly {
    border-left-color: #629db0 !important;
  }
  .sp_border-right-thirdly {
    border-right-color: #629db0 !important;
  }
  .sp_border-error {
    border-color: #C70000 !important;
  }
  .sp_border-top-error {
    border-top-color: #C70000 !important;
  }
  .sp_border-bottom-error {
    border-bottom-color: #C70000 !important;
  }
  .sp_border-left-error {
    border-left-color: #C70000 !important;
  }
  .sp_border-right-error {
    border-right-color: #C70000 !important;
  }
  .sp_border-accent {
    border-color: #d54762 !important;
  }
  .sp_border-top-accent {
    border-top-color: #d54762 !important;
  }
  .sp_border-bottom-accent {
    border-bottom-color: #d54762 !important;
  }
  .sp_border-left-accent {
    border-left-color: #d54762 !important;
  }
  .sp_border-right-accent {
    border-right-color: #d54762 !important;
  }
  .sp_border-base_bg {
    border-color: #f2f2f2 !important;
  }
  .sp_border-top-base_bg {
    border-top-color: #f2f2f2 !important;
  }
  .sp_border-bottom-base_bg {
    border-bottom-color: #f2f2f2 !important;
  }
  .sp_border-left-base_bg {
    border-left-color: #f2f2f2 !important;
  }
  .sp_border-right-base_bg {
    border-right-color: #f2f2f2 !important;
  }
  .sp_border-info {
    border-color: #70C1B3 !important;
  }
  .sp_border-top-info {
    border-top-color: #70C1B3 !important;
  }
  .sp_border-bottom-info {
    border-bottom-color: #70C1B3 !important;
  }
  .sp_border-left-info {
    border-left-color: #70C1B3 !important;
  }
  .sp_border-right-info {
    border-right-color: #70C1B3 !important;
  }
  .sp_border-white {
    border-color: white !important;
  }
  .sp_border-top-white {
    border-top-color: white !important;
  }
  .sp_border-bottom-white {
    border-bottom-color: white !important;
  }
  .sp_border-left-white {
    border-left-color: white !important;
  }
  .sp_border-right-white {
    border-right-color: white !important;
  }
  .sp_border-black {
    border-color: black !important;
  }
  .sp_border-top-black {
    border-top-color: black !important;
  }
  .sp_border-bottom-black {
    border-bottom-color: black !important;
  }
  .sp_border-left-black {
    border-left-color: black !important;
  }
  .sp_border-right-black {
    border-right-color: black !important;
  }
}
.position-relative {
  position: relative !important;
}

.position-fixed {
  position: fixed !important;
}

.line-height10 {
  line-height: 1 !important;
}

.line-height11 {
  line-height: 1.1 !important;
}

.line-height12 {
  line-height: 1.2 !important;
}

.line-height13 {
  line-height: 1.3 !important;
}

.line-height14 {
  line-height: 1.4 !important;
}

.line-height15 {
  line-height: 1.5 !important;
}

.line-height16 {
  line-height: 1.6 !important;
}

.line-height17 {
  line-height: 1.7 !important;
}

.line-height18 {
  line-height: 1.8 !important;
}

.line-height19 {
  line-height: 1.9 !important;
}

.line-height20 {
  line-height: 2 !important;
}

.line-height21 {
  line-height: 2.1 !important;
}

.line-height22 {
  line-height: 2.2 !important;
}

.line-height23 {
  line-height: 2.3 !important;
}

.line-height24 {
  line-height: 2.4 !important;
}

.line-height25 {
  line-height: 2.5 !important;
}

.line-height26 {
  line-height: 2.6 !important;
}

.line-height27 {
  line-height: 2.7 !important;
}

.line-height28 {
  line-height: 2.8 !important;
}

.line-height29 {
  line-height: 2.9 !important;
}

.line-height30 {
  line-height: 3 !important;
}

.js-animation {
  opacity: 0;
  -webkit-transform: translate3D(0, 0, 0);
  transform: translate3D(0, 0, 0);
}

.js-animations > * {
  opacity: 0;
  -webkit-transform: translate3D(0, 0, 0);
  transform: translate3D(0, 0, 0);
}

.ani-scale {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}

.ttl_02 {
  font-size: 4rem;
  text-align: center;
  color: white;
  line-height: 1;
  font-weight: normal;
}

.ttl_03 {
  margin-bottom: 30px;
  font-size: 3.2rem;
  text-align: center;
  font-weight: normal;
}

.ttl-primary {
  color: #78B97F;
}

.ttl-secondary {
  color: #c063ad;
}

.ttl-thirdly {
  color: #629db0;
}

.ttl-error {
  color: #C70000;
}

.ttl-accent {
  color: #d54762;
}

.ttl-base_bg {
  color: #f2f2f2;
}

.ttl-info {
  color: #70C1B3;
}

.ttl-white {
  color: white;
}

.ttl-black {
  color: black;
}

.btn_play_movie {
  color: #222;
  font-size: 1.4rem;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  background: #fff;
  border-radius: 10px;
  padding: 1.2em 6.5em 1.2em 2em;
  white-space: nowrap;
  width: 208px;
}
.btn_play_movie:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.5em;
  transform: translateY(-50%);
  width: 55px;
  height: 32px;
  background: #222;
  border-radius: 30px;
}
.btn_play_movie:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 37px;
  transform: translateY(-50%) rotate(90deg);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 15px 8px;
  border-color: transparent transparent #fff transparent;
}
@media screen and (max-width: 850px) {
  .btn_play_movie {
    font-size: 1rem;
    width: 150px;
  }
  .btn_play_movie:before {
    width: 40px;
    height: 22px;
  }
  .btn_play_movie:after {
    right: 3em;
    border-width: 0 4px 10px 4px;
  }
}

.btn_concept_movie {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 115px !important;
}

.btn_viewmore {
  cursor: pointer;
  color: #fff;
  background: none;
  border: none;
  display: inline-block;
  position: relative;
}
.btn_viewmore.down:after {
  content: "";
  position: absolute;
  top: 2em;
  left: 46%;
  width: 14px;
  height: 14px;
  transform: rotate(45deg) translateX(-50%);
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
}

.btn_campa {
  pointer-events: none;
  opacity: 0.4;
}

.btn-recipe__dl {
  color: #fff;
  font-size: clamp(10px, 3.9240506329px + 0.7911392405vw, 15px);
  display: inline-block;
  background: #333;
  border-radius: 30px;
  padding: 1.3rem 4rem;
}
.btn-recipe__dl span {
  position: relative;
  padding-right: 3rem;
}
.btn-recipe__dl span:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 13px;
  height: 13px;
  background: url(../img/icon_download_white.png) no-repeat center center;
  background-size: contain;
}
@media only screen and (max-width: 820px) {
  .btn-recipe__dl {
    font-size: 0.8rem;
    padding: 1rem 3rem;
  }
}

.list-sns {
  display: flex;
  align-items: center;
}
.list-sns img {
  width: 100%;
}
.list-sns img:hover:hover {
  -webkit-filter: grayscale(1);
  filter: gray;
  filter: grayscale(1);
}
.list-sns li {
  width: 21px;
  height: 21px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3px;
}
.list-sns li + li {
  margin-left: 5px;
}
.list-sns li:hover {
  background: rgba(104, 104, 104, 0.2);
  border-radius: 50px;
}
.list-sns li a {
  display: flex;
}
@media only screen and (max-width: 820px) {
  .list-sns {
    margin-bottom: 10px !important;
  }
}

.grayscale {
  filter: grayscale(100%);
}

.bg-image {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.link-other {
  color: #222;
  letter-spacing: -1px;
  position: relative;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
.link-other span {
  position: relative;
  display: inline-block;
  margin-left: 10px;
  width: 4vw;
  max-width: 55px;
  height: 32px;
  background: #222;
  border-radius: 50px;
  transition: 0.5s;
  /*
      &:before {
        content: '';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
        width: 4vw;
        max-width: 55px;
        height: 32px;
        background: #222;
        border-radius: 50px;
        transition: .5s;
      }

   */
}
.link-other span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 14px;
  height: 10px;
  background: url(../img/icon_arrow_white.svg) no-repeat center center;
  background-size: contain;
  transition: 0.5s;
}
@media only screen and (min-width: 821px) {
  .link-other:hover span:before {
    background: rgba(0, 0, 0, 0.5);
  }
  .link-other:hover span:after {
    left: 1.8vw;
  }
}
@media only screen and (max-width: 820px) {
  .link-other {
    padding-right: 4.5em;
  }
  .link-other span {
    width: 10vw;
    height: 25px;
  }
}

a[target=_blank]:not(.not-icon) {
  padding-right: 6.5rem;
  position: relative;
}
a[target=_blank]:not(.not-icon):before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 55px;
  height: 32px;
  background: #222;
  border-radius: 50px;
  transition: 0.5s;
}
a[target=_blank]:not(.not-icon):after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 11px;
  height: 8px;
  background: url(../img/icon_blank.png) no-repeat center center;
  background-size: contain;
  transition: 0.5s;
}
a[target=_blank]:not(.not-icon):hover:before {
  background: rgba(0, 0, 0, 0.5);
}
a[target=_blank]:not(.not-icon):hover:after {
  transform: scale(1.2) translateY(-50%);
}
a[target=_blank]:not(.not-icon).reverse {
  color: #fff;
}
a[target=_blank]:not(.not-icon).reverse:before {
  background: #fff;
}
a[target=_blank]:not(.not-icon).reverse:after {
  background: url(../img/icon_blank_reverse.png) no-repeat center center;
  background-size: contain;
}
@media only screen and (max-width: 820px) {
  a[target=_blank]:not(.not-icon) {
    padding-right: 4.5rem;
  }
  a[target=_blank]:not(.not-icon):before {
    width: 40px;
    height: 25px;
  }
  a[target=_blank]:not(.not-icon):after {
    right: 15px;
    width: 12px;
    height: 8px;
  }
}

.scroll__inner {
  background-color: #cfcfcf;
  height: 350px;
  padding: 40px 30px 45px 20px;
  overflow-y: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}

.scroll__inner::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}

.simplebar-scrollbar::before {
  background: #cfcfcf;
  border-radius: 5px;
  width: 6px;
  margin-left: 3px;
  margin-top: 2px;
}

.simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}

.simplebar-track {
  background: #fff;
  width: 15px !important;
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh !important;
  z-index: 10000;
}
.modal.interview {
  margin-top: 0;
}
.modal .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
}
.modal .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  transform: translate(-50%, -50%) !important;
  text-align: center;
}
.modal .btn_close {
  box-sizing: border-box;
  position: absolute;
  top: -70px;
  right: 0;
  width: 60px;
  height: 60px;
  cursor: pointer;
  transition: transform 0.2s ease-in;
  z-index: 1;
}
.modal .btn_close:before, .modal .btn_close:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 60px;
  height: 1px;
  background-color: #fff;
  margin: auto;
  content: "";
}
.modal .btn_close:before {
  transform: rotate(45deg);
}
.modal .btn_close:after {
  transform: rotate(-45deg);
}
.modal .author {
  font-size: 1.6rem;
  color: #fff;
  text-align: left;
}
.modal .inner:not(.mv) {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  transform: translate(-50%, -50%) !important;
  text-align: center;
}
@media only screen and (min-width: 821px) {
  .modal .inner:not(.mv) {
    max-height: 80vh;
  }
  .modal .inner:not(.mv) img {
    height: 100%;
  }
}
.modal .inner:not(.mv) img {
  max-width: none;
}
.modal .inner:not(.mv) .btn_prev,
.modal .inner:not(.mv) .btn_next {
  position: absolute;
  top: 0;
  width: 40px;
  height: 100%;
  cursor: pointer;
}
.modal .inner:not(.mv) .btn_prev:before,
.modal .inner:not(.mv) .btn_next:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 30px;
  height: 30px;
  margin: auto;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  cursor: pointer;
  transition: transform 0.2s ease-in;
  content: "";
}
@media only screen and (max-width: 1079px) {
  .modal .inner:not(.mv) .btn_prev:before,
  .modal .inner:not(.mv) .btn_next:before {
    width: 18px;
    height: 18px;
  }
}
.modal .inner:not(.mv) .btn_prev {
  left: -26px;
}
.modal .inner:not(.mv) .btn_prev:before {
  transform: scaleX(0.95) rotate(-135deg);
}
.modal .inner:not(.mv) .btn_next {
  right: -26px;
}
.modal .inner:not(.mv) .btn_next:before {
  transform: scaleX(0.95) rotate(45deg);
}
.modal .inner:not(.mv) .thumbnails {
  margin-top: 20px;
}
.modal .inner:not(.mv) .thumbnails img {
  height: 100%;
}
.modal .inner:not(.mv) .thumbnails > .thumbnail {
  cursor: pointer;
  border: none;
  padding: 5px;
  display: inline-block;
  overflow: hidden;
}
@media only screen and (min-width: 821px) {
  .modal .inner:not(.mv) .thumbnails > .thumbnail {
    max-width: 8vh;
    /*max-width: 8vh; */
    /* width: 100%; */
    height: 50px;
    /* max-height: 50px; */
  }
}
.modal .youtube {
  position: relative;
}
.modal.interview .inner {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1200px;
  max-width: 90%;
  padding: 0;
  transform: translate(-50%, -50%) !important;
  background-color: #fff;
}
.modal.interview .btn_close {
  top: -70px;
  right: 0;
}
.modal.interview .btn_close:before, .modal.interview .btn_close:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 60px;
  height: 1px;
  background-color: #fff;
  margin: auto;
  content: "";
}
.modal.interview .btn_close:before {
  transform: rotate(45deg);
}
.modal.interview .btn_close:after {
  transform: rotate(-45deg);
}
.modal.interview .inner_inner {
  background: #fff;
}
@media only screen and (min-width: 821px) {
  .modal.interview .inner_inner {
    display: flex;
  }
  .modal.interview .inner_inner .user {
    width: 210px;
  }
}
.modal.interview .txt-statement {
  font-family: "Noto Serif JP", serif;
  margin-bottom: 2em;
}
.modal.interview .txt-title {
  font-size: 2.2rem;
  font-family: "Noto Serif JP", serif;
}
.modal.interview .titl_q {
  display: block;
  position: relative;
  padding-bottom: 0;
  padding-left: 0;
  margin-bottom: 1em;
  font-size: 2.2rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.5;
}
.modal.interview .titl_q:before {
  content: "";
  position: absolute;
  top: 0.8em;
  left: -50px;
  width: 40px;
  height: 1px;
  background: #222;
}
.modal.interview ol {
  padding-left: 3em;
}
.modal.interview ol li {
  line-height: 1.7;
}
.modal.interview ol li img {
  width: 100%;
}
.modal.interview ol li + li {
  margin-top: 3em;
}
.modal.interview ol + .txt-title {
  margin-top: 5rem;
}
.modal.interview .user figure {
  width: 60%;
  margin: 40px auto 5px;
}
.modal.interview .user figure img {
  width: 100%;
}
.modal.interview .user figure + p {
  width: 60%;
  margin: 0 auto;
  font-size: 1.7rem;
  line-height: 1.5;
  font-family: "Noto Serif JP", serif;
}
.modal.interview .user figure + p span {
  font-size: 1.2rem;
  display: block;
}
.modal.interview .txt {
  background: #fafafa;
  box-sizing: border-box;
  width: calc(100% - 210px);
  max-height: calc(100vh - 170px);
  padding: 50px 40px 30px 50px;
  overflow: auto;
}
.modal.interview .box {
  margin-top: 1.5em;
  padding: 35px;
  border-radius: 3px;
  background-color: #f3f3f3;
}
.modal.interview .simplebar-track {
  background: #fafafa;
}
@media only screen and (max-width: 820px) {
  .modal .btn_close {
    top: -50px;
    right: 0;
    width: 38px;
    height: 38px;
  }
  .modal .btn_close:before, .modal .btn_close:after {
    width: 38px;
  }
  .modal .author {
    font-size: 1.2rem;
    margin-right: 0;
  }
  .modal .inner {
    padding: 0;
  }
  .modal .inner .btn_prev,
  .modal .inner .btn_next {
    width: 25px;
  }
  .modal .inner .btn_prev:before,
  .modal .inner .btn_next:before {
    width: 20px;
    height: 20px;
  }
  .modal .inner .btn_prev {
    left: -20px;
  }
  .modal .inner .btn_next {
    right: -20px;
  }
  .modal .inner:not(.mv) .thumbnails {
    margin-top: 10px;
  }
  .modal .inner:not(.mv) .thumbnails img {
    width: 100%;
    height: initial;
  }
  .modal .inner:not(.mv) .thumbnails > .thumbnail {
    width: 8vw;
  }
  .modal.interview .btn_close {
    top: -45px;
    width: 38px;
    height: 38px;
  }
  .modal.interview .btn_close:before, .modal.interview .btn_close:after {
    width: 38px;
  }
  .modal.interview .txt-title {
    font-size: 1.5rem;
  }
  .modal.interview .titl_q {
    font-size: 1.5rem;
  }
  .modal.interview .box {
    padding: 15px;
    border-radius: 5px;
  }
  .modal.interview .user {
    display: flex;
    align-items: center;
  }
  .modal.interview .user figure {
    width: 20%;
    margin: 10px auto;
  }
  .modal.interview .txt {
    height: 100%;
    max-height: calc(75vh - 80px);
    padding: 20px 15px;
    width: 100%;
  }
}

.btn_video_modal {
  cursor: pointer;
}

#browser_modal .inner {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1024px;
  max-width: 100%;
  padding: 0 30px;
  transform: translate(-50%, -50%) !important;
  text-align: left;
}
#browser_modal .box {
  position: relative;
  background-color: #fff;
  padding: 5vw;
  display: flex;
}
#browser_modal .box h3 {
  padding-right: 10%;
  font-weight: bold;
  font-size: 1.9rem;
}
#browser_modal .box .pc > div {
  display: flex;
  justify-content: space-between;
}
#browser_modal .box .pc p {
  margin-top: 1.5em;
}
@media only screen and (max-width: 820px) {
  #browser_modal .inner {
    padding: 0;
    width: calc(100vw - 30px);
  }
  #browser_modal .box {
    display: block;
  }
  #browser_modal .box h3 {
    padding: 0;
    margin-bottom: 0.5em;
    font-size: 1.4rem;
    text-align: center;
  }
}

.icon_arrow_w {
  padding-right: 1.5em;
  position: relative;
}
.icon_arrow_w:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 16px;
  height: 12px;
  background: url(../img/icon_arrow_w.svg) no-repeat center center;
  background-size: contain;
}

.js-delay_animation > * {
  opacity: 0;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

.fadeRight {
  animation-name: fadeRightAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

.fadeLeft {
  animation-name: fadeLeftAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix:before {
  　　　　content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: block;
}

.icon-new:before {
  content: "NEW";
  color: #fff;
  display: inline-block;
  position: absolute;
  top: -2.5em;
  left: 0;
  background: #f00;
  padding: 0px 0.5em;
}
.icon-new.icon-fadeout:before {
  opacity: 0;
}


/* coolpix 修正 start  */

#btn_menu{display:none;}

#crosstalk div.contents{
  padding-bottom:0px;
}

.btn-nikon{
  color: #000;
  background-color: #ffd312;
  border-color: #ebcd00;
  border-radius: 0px;
}


@media screen and (min-width: 1100px) {
  #opening-mv {
    display: flex !important;  /* 或 block，看你需要 */
  }
}


body, h2, p, h1, h3, h4 {
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 300;
}

/* 攝影師修正  */
.member_view img{height:250px!important;width:auto!important;}
@media only screen and (min-width: 821px) {
    #crosstalk div.co12 div.member_profile{width:100%!important;}
    #crosstalk div.co12 div.member_profile > .movie{width:30%!important;display:inline-block!important;}
    #crosstalk div.co12 div.member_profile > div > figure > img:first-child{max-width:150px!important;}
    #crosstalk div.co12 div.member_profile figure{width:15%!important}
    #crosstalk div.co12 div.member_profile figure + div{width:85%!important}
    #crosstalk div.co12 div.member_profile figure + div p{width: 50%;
        display: table-cell;
        padding-right: 25px;
        text-align: justify;
        padding-bottom: 25px;
        font-family: "Noto Sans JP",sans-serif!important;
        font-size: 1.1em;
    }
    #crosstalk div.co12 div.member_profile figure + div p:nth-child(2){
        font-family: 'Noto Serif JP', serif !important;        
        font-size: 1.4em;
    }
    #crosstalk div.co12 div.member_profile figure + div i{
        position: absolute;
        left: 50%;
        padding-left: 7.5%;
        margin-top: -4%;
        iframe{max-width:inherit!important;}
    }    
    #preview, #global_banner{padding-top:0px;}
    .modal .inner:not(.mv) .btn_prev {
      left: -40px;
    }
    .modal .inner:not(.mv) .btn_next {
      right: -40px;
    }
}
@media only screen and (max-width: 820px){
    .global_banner_wrapper{padding-top:0px;top:0px!important;}
}

/* coolpix 修正 end  */

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