@charset "UTF-8";
.c-bg-beige {
  background-color: #CCB79E !important;
}

.c-bg-camel {
  background-color: #D2A879 !important;
}

.c-bg-gray {
  background-color: #BEBEBE !important;
}

@media screen and (min-width: 769px) {
  .view--pc {
    display: block;
  }
  .view--sp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .view--pc {
    display: none;
  }
  .view--sp {
    display: block;
  }
}
.page div, .page span, .page applet, .page object, .page iframe,
.page h1, .page h2, .page h3, .page h4, .page h5, .page h6, .page p,
.page blockquote, .page pre, .page a, .page abbr, .page acronym, .page address,
.page big, .page cite, .page code, .page del, .page dfn, .page em, .page img, .page ins, .page kbd, .page q, .page s, .page samp, .page small, .page strike, .page strong, .page sub, .page sup, .page tt, .page var, .page b, .page u, .page i, .page center,
.page dl, .page dt, .page dd, .page ol, .page ul, .page li,
.page fieldset, .page form, .page label, .page legend,
.page table, .page caption, .page tbody, .page tfoot, .page thead, .page tr, .page th, .page td,
.page article, .page aside, .page canvas, .page details, .page embed, .page figure, .page figcaption, .page footer, .page header, .page hgroup,
.page menu, .page nav, .page output, .page ruby, .page section, .page summary, .page time, .page mark, .page audio, .page video, .page picture {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.page article, .page aside, .page details, .page figcaption, .page figure, .page footer, .page header, .page hgroup, .page menu, .page nav, .page section, .page summary, .page picture {
  display: block;
}
.page *, .page *:before, .page *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.page button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.l-wrap {
  overflow: initial;
}

.page {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "メイリオ", sans-serif;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .page {
    font-size: 3.6vw;
  }
}
.page a {
  display: block;
  -webkit-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
@media screen and (min-width: 769px) {
  .page a:hover {
    opacity: 0.6;
  }
}
.page img {
  max-width: 100%;
  height: auto;
}

.page .item__list {
  position: relative;
  z-index: 10;
}
.page .item__list > li, .page .item__list > div {
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 16px;
  font-weight: 300;
  text-align: center;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .item__list > li, .page .item__list > div {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .page .item__list > li, .page .item__list > div {
    width: 100%;
    font-size: 3.4vw;
  }
}
.page .item__list > li .preset_price_area, .page .item__list > div .preset_price_area {
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .page .item__list > li .preset_price_area, .page .item__list > div .preset_price_area {
    margin-top: 0.7vw;
  }
}
.page .item__list > li .stock_exist, .page .item__list > li .cartinbtn, .page .item__list > div .stock_exist, .page .item__list > div .cartinbtn {
  display: none;
}
.page .item__list > li .item__list__text, .page .item__list > div .item__list__text {
  width: 80%;
  margin: 10px auto 0;
}
@media screen and (max-width: 768px) {
  .page .item__list > li .item__list__text, .page .item__list > div .item__list__text {
    width: 42.7vw;
    margin: 3.9vw auto 0;
  }
}
.page .item__list > li .item__list__btn, .page .item__list > div .item__list__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 36px;
  margin: 10px auto 0;
  border-radius: 5px;
  font-size: 14px;
  color: #fff;
  background: #CCB79E;
}
@media screen and (max-width: 768px) {
  .page .item__list > li .item__list__btn, .page .item__list > div .item__list__btn {
    height: 10.5vw;
    margin: 1.8vw auto 0;
    border-radius: 0.7vw;
    font-size: 3.6vw;
  }
}
.page .item__list > li.item__list__id--none, .page .item__list > div.item__list__id--none {
  pointer-events: none !important;
  text-align: center;
  margin: 50px auto 0;
}
@media screen and (max-width: 768px) {
  .page .item__list > li.item__list__id--none, .page .item__list > div.item__list__id--none {
    margin: 3.9vw auto 0;
  }
}
.page .item__list > li.item__list__id--none .item__list__text, .page .item__list > div.item__list__id--none .item__list__text {
  display: none;
}
.page .item__list > li.item__list__id--none p, .page .item__list > div.item__list__id--none p {
  font-size: 24px;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .page .item__list > li.item__list__id--none p, .page .item__list > div.item__list__id--none p {
    font-size: 6.3vw;
  }
}

.page .c-heading {
  position: relative;
  display: block;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho Pro", "游明朝", "Yu Mincho", serif;
  font-weight: bold;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .c-heading {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .page .c-heading {
    display: inline-block;
    font-size: 4.6vw;
    line-height: 1.42;
  }
}
.page .c-heading:before, .page .c-heading:after {
  content: "＼";
  display: inline-block;
  position: relative;
  left: -22px;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
  font-weight: 300;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "メイリオ", sans-serif;
  color: #333;
}
@media screen and (max-width: 768px) {
  .page .c-heading:before, .page .c-heading:after {
    position: absolute;
    bottom: 0.7vw;
    left: -7.8vw;
    -webkit-transform: rotate(10deg) scale(2);
            transform: rotate(10deg) scale(2);
    opacity: 0.8;
  }
}
.page .c-heading:after {
  -webkit-transform: rotate(90deg) scale(1.3);
          transform: rotate(90deg) scale(1.3);
  left: auto;
  right: -22px;
}
@media screen and (max-width: 768px) {
  .page .c-heading:after {
    right: -7.8vw;
    -webkit-transform: rotate(80deg) scale(2);
            transform: rotate(80deg) scale(2);
  }
}

.page .c-inner {
  width: 96%;
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .page .c-inner {
    width: 89.8vw;
  }
}

.page .header {
  padding: 5px 0;
  background-color: #F6E2E7;
}
@media screen and (max-width: 768px) {
  .page .header {
    padding: 1.3vw 0;
  }
}
.page .header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 980;
  width: 96%;
  max-width: 980px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page .header__inner {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 89.6vw;
  }
}
.page .header p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .header p {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .page .header p {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-size: 2.6vw;
  }
}
.page .header .js-timer span {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .header .js-timer span {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .page .header .js-timer span {
    font-size: 2.9vw;
  }
}
.page .header .js-timer .yycountdown-box {
  margin: 0;
}
.page .header .js-timer .yyc-day, .page .header .js-timer .yyc-hou, .page .header .js-timer .yyc-min, .page .header .js-timer .yyc-sec {
  vertical-align: baseline;
  line-height: 1;
  letter-spacing: 0;
  font-size: 34px;
  margin: 0 5px;
  position: relative;
  top: 3px;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .header .js-timer .yyc-day, .page .header .js-timer .yyc-hou, .page .header .js-timer .yyc-min, .page .header .js-timer .yyc-sec {
    font-size: 26px;
  }
}
@media screen and (max-width: 768px) {
  .page .header .js-timer .yyc-day, .page .header .js-timer .yyc-hou, .page .header .js-timer .yyc-min, .page .header .js-timer .yyc-sec {
    font-size: 4.7vw;
    margin: 0 0.7vw;
    top: 0.4vw;
  }
}

/* kv
---------------------------*/
.page .kv {
  position: relative;
  margin: 0 auto 80px;
}
@media screen and (max-width: 768px) {
  .page .kv {
    margin: 0 auto 10.4vw;
  }
}
.page .kv h1 {
  min-width: 1920px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .kv h1 {
    min-width: 190vw;
  }
}
@media screen and (max-width: 768px) {
  .page .kv h1 {
    min-width: 100%;
  }
}
.page .kv h1 img {
  margin: auto;
}

.page .countdown {
  text-align: center;
  margin: 0 auto 84px;
}
@media screen and (max-width: 768px) {
  .page .countdown {
    margin: 0 auto 11.5vw;
  }
}
.page .countdown__title {
  margin: 0 0 6px;
}
@media screen and (max-width: 768px) {
  .page .countdown__title {
    margin: 0 0 0.8vw;
  }
}
.page .countdown__title p {
  font-size: 22px;
}
@media screen and (max-width: 768px) {
  .page .countdown__title p {
    font-size: 4.7vw;
    letter-spacing: 0;
  }
}
.page .countdown__text {
  display: block;
}
.page .countdown .js-timer span {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .page .countdown .js-timer span {
    font-size: 4.2vw;
  }
}
.page .countdown .js-timer .yycountdown-box {
  margin: 0;
}
.page .countdown .js-timer .yyc-day, .page .countdown .js-timer .yyc-hou, .page .countdown .js-timer .yyc-min, .page .countdown .js-timer .yyc-sec {
  vertical-align: baseline;
  line-height: 1;
  font-size: 39px;
  margin: 0 3px;
  position: relative;
  top: 3px;
}
@media screen and (max-width: 768px) {
  .page .countdown .js-timer .yyc-day, .page .countdown .js-timer .yyc-hou, .page .countdown .js-timer .yyc-min, .page .countdown .js-timer .yyc-sec {
    font-size: 8.6vw;
    margin: 0 0.4vw;
    top: 0.4vw;
  }
}

.page .project {
  text-align: center;
  margin: 0 auto 80px;
}
@media screen and (max-width: 768px) {
  .page .project {
    margin: 0 auto 8.5vw;
  }
}
.page .project-title {
  font-weight: 500;
  color: #004990;
  margin: 0 auto 7px;
}
@media screen and (max-width: 768px) {
  .page .project-title {
    margin: 0 auto 1.7vw;
  }
}
.page .project-title__name {
  display: block;
  font-size: 19px;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  .page .project-title__name {
    font-size: 3.6vw;
    margin-bottom: 1.3vw;
  }
}
.page .project-title__number {
  display: block;
  font-size: 22px;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .page .project-title__number {
    font-size: 4.3vw;
  }
}
.page .project-title__number b {
  position: relative;
  top: -3px;
  display: inline-block;
  width: 37px;
  height: 37px;
  line-height: 33px;
  border-radius: 50%;
  background-color: #004990;
  margin: 0 6px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .page .project-title__number b {
    top: -0.4vw;
    width: 7.2vw;
    height: 7.2vw;
    line-height: 6.5vw;
    margin: 0 0.7vw;
  }
}
.page .project .project__text {
  font-size: 25px;
}
@media screen and (max-width: 768px) {
  .page .project .project__text {
    font-size: 3.8vw;
  }
}
.page .project .project__text .is-text-small {
  font-size: 22px;
}
@media screen and (max-width: 768px) {
  .page .project .project__text .is-text-small {
    font-size: 3.4vw;
  }
}

.page .product {
  margin: 0 auto 118px;
}
@media screen and (max-width: 768px) {
  .page .product {
    text-align: center;
    margin: 0 auto 24.1vw;
  }
}
.page .product .product__head {
  margin: 0 auto 80px;
}
@media screen and (max-width: 768px) {
  .page .product .product__head {
    margin: 0 auto 10.4vw;
  }
}
.page .product .product__head__icon {
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/product_head_icon.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  margin-right: 19px;
}
@media screen and (max-width: 768px) {
  .page .product .product__head__icon {
    width: 7.8vw;
    height: 7.8vw;
    margin-right: 2vw;
  }
}
.page .product .product__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .page .product .product__list {
    display: block;
    width: 79.2vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .page .product .product__item {
    width: 30.2%;
    margin-right: 4.69%;
  }
  .page .product .product__item:last-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .page .product .product__item {
    margin: 0 auto 16.9vw;
  }
  .page .product .product__item:last-child {
    margin-bottom: 0;
  }
}
.page .product .product__title {
  width: 98.9%;
  margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
  .page .product .product__title {
    width: 100%;
    margin: 0 auto 3.9vw;
  }
}
@media screen and (max-width: 768px) {
  .page .product .product__img {
    width: 71.4vw;
    margin: 0 auto;
  }
}

.page .voice {
  margin: 0 auto 50px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page .voice {
    margin: 0 auto 7.7vw;
  }
}
.page .voice .voice__contents {
  position: relative;
  padding: 0 0 26px;
  margin: 0 auto 100px;
  border: dashed 1px #D2A879;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__contents {
    padding: 0 0 5.3vw;
    margin: 0 auto 13vw;
  }
}
.page .voice .voice__contents::after {
  content: "";
  display: block;
  width: 90px;
  height: 37px;
  background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/icon_arrow_bottom.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  right: 0;
  left: 0;
  bottom: -61px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__contents::after {
    width: 11.7vw;
    height: 4.8vw;
    bottom: -7.9vw;
  }
}
.page .voice .c-heading {
  display: inline-block;
  background: #fff;
  margin: 0 auto 12px;
  padding: 0 7.4%;
  margin: -22px auto 36px;
}
@media screen and (max-width: 768px) {
  .page .voice .c-heading {
    margin: 0 auto 39.7vw;
    top: 0;
    margin: -7.8vw auto 3.9vw;
  }
}
@media screen and (max-width: 768px) {
  .page .voice .c-heading:before {
    left: 0;
  }
}
@media screen and (max-width: 768px) {
  .page .voice .c-heading:after {
    right: 0;
  }
}
.page .voice .voice__list {
  width: 94%;
  max-width: 911px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__list {
    width: 75.1vw;
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .page .voice .voice__item {
    width: 32.2%;
    margin-right: 1.75%;
  }
  .page .voice .voice__item:last-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .page .voice .voice__item {
    width: 71.7vw;
    margin-bottom: 3.8vw;
  }
  .page .voice .voice__item:nth-child(even) {
    margin-left: auto;
  }
  .page .voice .voice__item:last-child {
    margin-bottom: 0;
  }
}
.page .voice .voice__result {
  font-family: "Noto Serif JP", "Hiragino Mincho Pro", "游明朝", "Yu Mincho", serif;
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__result {
    font-size: 4.6vw;
  }
}
.page .voice .voice__result .voice__result__title {
  display: inline-block;
  background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/text_bg_wave.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom left;
  padding-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__result .voice__result__title {
    padding-bottom: 0.7vw;
  }
}
.page .voice .voice__result .voice__result__title span {
  display: inline-block;
  vertical-align: baseline;
  margin-right: 4px;
  font-size: 33px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .page .voice .voice__result .voice__result__title span {
    margin-right: 1.6vw;
    font-size: 6.6vw;
  }
}

.page .features {
  margin: 0 auto 100px;
}
@media screen and (max-width: 768px) {
  .page .features {
    margin: 0 auto 13vw;
  }
}
.page .features .features__head {
  width: 403px;
  margin: 0 auto 42px;
}
@media screen and (max-width: 768px) {
  .page .features .features__head {
    width: 89.7vw;
    margin: 0 auto 2.3vw;
  }
}
.page .features .features__mv {
  width: 40.1%;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .page .features .features__mv {
    position: absolute;
    bottom: 7.56%;
    left: 0;
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .page .features .features__mv {
    width: 76.4vw;
    margin: 0 auto 6.4vw;
  }
}
.page .features .features__img {
  margin: 0 auto 5px;
}
@media screen and (max-width: 768px) {
  .page .features .features__img {
    margin: 0 auto 1.6vw;
  }
}
@media screen and (max-width: 768px) {
  .page .features .features__text {
    font-size: 3.4vw;
    line-height: 1.8;
  }
}
@media screen and (min-width: 769px) {
  .page .features .features__contents {
    position: relative;
    margin: 0 auto 21px;
  }
  .page .features .features__text {
    display: block;
    min-height: 87px;
    line-height: 1.875;
  }
}
@media screen and (min-width: 769px) and (max-width: 990px) and (min-width: 769px) {
  .page .features .features__text {
    font-size: 14px;
    line-height: 1.5;
  }
}
@media screen and (min-width: 769px) {
  .page .features .features__list {
    position: relative;
    padding: 20px 20px 12px;
    background: #FEF6EE;
    border: 1px solid #D2A879;
  }
  .page .features .features__list:before, .page .features .features__list:after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 21px;
    position: absolute;
    border-style: solid;
    border-right: 11px solid transparent;
    border-left: 11px solid transparent;
    border-top: 21px solid #D2A879;
    border-bottom: 0;
    z-index: 2;
  }
  .page .features .features__list:after {
    border-top: 21px solid #fef6ee;
    z-index: 3;
  }
  .page .features .features__list.is-pc-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .page .features .features__list.is-pc-top:before, .page .features .features__list.is-pc-top:after {
    left: 0;
    right: 0;
    margin: auto;
    bottom: -19px;
  }
  .page .features .features__list.is-pc-top:before {
    bottom: -21px;
  }
  .page .features .features__list.is-pc-top .features__item {
    width: 24%;
    margin-right: 1.27%;
  }
  .page .features .features__list.is-pc-top .features__item:last-child {
    margin-right: 0;
  }
  .page .features .features__list.is-pc-left, .page .features .features__list.is-pc-right {
    width: 27.1%;
    margin: 20px 0 0 auto;
  }
  .page .features .features__list.is-pc-left:before, .page .features .features__list.is-pc-left:after, .page .features .features__list.is-pc-right:before, .page .features .features__list.is-pc-right:after {
    left: -19px;
    margin: auto;
    bottom: 0;
    top: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .page .features .features__list.is-pc-left:before, .page .features .features__list.is-pc-right:before {
    left: -21px;
  }
  .page .features .features__list.is-pc-left .features__item, .page .features .features__list.is-pc-right .features__item {
    margin-bottom: 14px;
  }
  .page .features .features__list.is-pc-left .features__item:last-child, .page .features .features__list.is-pc-right .features__item:last-child {
    margin-bottom: 0;
  }
  .page .features .features__list.is-pc-left {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
  }
  .page .features .features__list.is-pc-left:before, .page .features .features__list.is-pc-left:after {
    left: auto;
    right: -19px;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .page .features .features__list.is-pc-left:before {
    left: auto;
    right: -22px;
  }
}
@media screen and (max-width: 768px) {
  .page .features .features__contents__wrap {
    position: relative;
    background: #FEF6EE;
    border: 1px solid #D2A879;
    padding: 5.2vw;
    margin: 0 auto 6.3vw;
  }
  .page .features .features__contents__wrap:before, .page .features .features__contents__wrap:after {
    content: "";
    display: inline-block;
    width: 9.1vw;
    height: 6.1vw;
    position: absolute;
    border-style: solid;
    border-right: 4.6vw solid transparent;
    border-left: 4.6vw solid transparent;
    border-top: 6.1vw solid #D2A879;
    border-bottom: 0;
    z-index: 2;
    right: 0;
    left: 0;
    margin: auto;
    bottom: -6.3vw;
  }
  .page .features .features__contents__wrap:after {
    border-right: 4.6vw solid transparent;
    border-left: 4.6vw solid transparent;
    border-top: 6.1vw solid #fef6ee;
    z-index: 3;
    bottom: -6vw;
  }
  .page .features .features__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 2.6vw;
  }
  .page .features .features__list:first-child {
    margin-top: 0;
  }
  .page .features .features__item {
    width: 47.6%;
    margin-right: 4.27%;
    margin-top: 2.6vw;
  }
  .page .features .features__item:nth-child(even) {
    margin-right: 0;
  }
  .page .features .features__item:nth-child(-n+2) {
    margin-top: 0;
  }
}
.page .features .features__spec {
  padding: 20px;
  border: 1px solid #D2A879;
}
@media screen and (max-width: 768px) {
  .page .features .features__spec {
    padding: 5.9vw;
  }
}
.page .features .features__spec__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 14px 0 0;
}
@media screen and (max-width: 768px) {
  .page .features .features__spec__contents {
    display: block;
    margin: 1.6vw 0 0;
  }
}
.page .features .features__spec__img {
  width: 73.6%;
  margin-right: 7px;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .features .features__spec__img {
    width: 66%;
  }
}
@media screen and (max-width: 768px) {
  .page .features .features__spec__img {
    width: 100%;
    margin: 0 auto 2.6vw;
  }
}
.page .features .features__spec__text {
  font-size: 13px;
  line-height: 1.3;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-indent: -13px;
  margin-left: 13px;
}
@media screen and (max-width: 768px) {
  .page .features .features__spec__text {
    font-size: 3.4vw;
    text-indent: -vw(26);
    margin-left: 3.4vw;
  }
}
.page .features .features__spec__text p {
  margin: 0 0 3px;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .page .features .features__spec__text p {
    line-height: 1.5;
    margin: 0 0 2vw;
  }
}

.page .thanks {
  text-align: center;
  background: #F6F6F6;
  margin: 0 auto 100px;
  padding: 53px 50px 37px;
}
@media screen and (max-width: 768px) {
  .page .thanks {
    margin: 0 auto 13vw;
    padding: 5.2vw;
  }
}
.page .thanks .thanks__head {
  width: 600px;
  margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
  .page .thanks .thanks__head {
    width: 79.2vw;
    margin: 0 auto 2.6vw;
  }
}
.page .thanks .thanks__text {
  font-size: 22px;
  margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
  .page .thanks .thanks__text {
    font-size: 3.4vw;
    margin: 0 auto 2.6vw;
  }
}

.page .style {
  margin: 0 auto 150px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page .style {
    margin: 0 auto 13vw;
  }
}
.page .style .style__head {
  font-family: "Noto Serif JP", "Hiragino Mincho Pro", "游明朝", "Yu Mincho", serif;
  font-size: 33px;
  font-weight: 500;
  margin: 0 auto 84px;
  display: inline-block;
  background-image: url(/ec/img/usr/pg/campaign/user_participation_project_6th/text_bg_wave.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom left;
  padding: 0 0 10px;
}
@media screen and (max-width: 768px) {
  .page .style .style__head {
    font-size: 6.6vw;
    margin: 0 auto 8.5vw;
    padding: 0 0 1.3vw;
  }
}
.page .style .style__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .page .style .style__list {
    display: block;
  }
}
.page .style .style__item {
  width: 47.9%;
}
@media screen and (max-width: 768px) {
  .page .style .style__item {
    width: 100%;
    margin: 0 auto 19.5vw;
  }
  .page .style .style__item:last-child {
    margin-bottom: 0;
  }
}
.page .style .style__title {
  width: auto;
  height: 29px;
  margin: 0 auto 19px;
}
@media screen and (max-width: 768px) {
  .page .style .style__title {
    height: 6.3vw;
    margin: 0 auto 3.9vw;
  }
}
.page .style .style__title img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 768px) {
  .page .style .style__slide {
    width: 79.2vw;
    margin: 0 auto;
  }
}
.page .style .style__slide img {
  width: 100%;
}
.page .style .style__thumbnailslide {
  width: 78.7%;
  max-width: 370px;
  margin: 40px auto 0;
}
@media screen and (max-width: 768px) {
  .page .style .style__thumbnailslide {
    width: 62.8vw;
    max-width: 100%;
    margin: 6.5vw auto 0;
  }
}
.page .style .style__thumbnailslide li {
  border-style: solid;
  border-width: 3px;
  border-color: transparent;
  margin: 0 3px;
}
@media screen and (max-width: 768px) {
  .page .style .style__thumbnailslide li {
    border-width: 0.4vw;
    margin: 0 0.7vw;
  }
}
.page .style .style__thumbnailslide li.slick-current {
  border-color: #D2A879;
}
.page .style .style__thumbnailslide .slick-track {
  -webkit-transform: unset !important;
          transform: unset !important;
}
.page .style .style__thumbnailslide img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page .style .c-inner {
    width: 100%;
  }
}
.page .style .item__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 70px auto 0;
}
@media screen and (max-width: 768px) {
  .page .style .item__list {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-x: scroll;
    padding: 0 5.2vw;
    margin: 13vw auto 0;
  }
}
.page .style .item__list > div .item__list__text {
  width: 100%;
}
.page .style .item__list .item__list__id {
  width: 31.9%;
  margin-right: 2.1%;
}
@media screen and (max-width: 768px) {
  .page .style .item__list .item__list__id {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 42.7vw;
    margin-right: 2.1vw;
  }
}
.page .style .item__list .item__list__id:last-child {
  margin-right: 0;
}
.page .slick-arrow {
  position: absolute;
  top: 45%;
  z-index: 2;
  width: 50px;
  height: 50px;
  background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/slick-arrow.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 72% auto;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-indent: -9999px;
  color: transparent;
}
@media screen and (max-width: 768px) {
  .page .slick-arrow {
    width: 11.7vw;
    height: 11.7vw;
    background-size: 84% auto;
  }
}
.page .slick-arrow.slick-next {
  right: 18px;
}
@media screen and (max-width: 768px) {
  .page .slick-arrow.slick-next {
    right: 2vw;
  }
}
.page .slick-arrow.slick-prev {
  left: 18px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (max-width: 768px) {
  .page .slick-arrow.slick-prev {
    left: 2vw;
  }
}

.page .movie {
  padding: 86px 0;
  margin: 0 auto 100px;
  background-color: rgba(246, 246, 246, 0.5);
}
@media screen and (max-width: 768px) {
  .page .movie {
    padding: 14.3vw 0 13vw;
    margin: 0 auto 13vw;
  }
}
.page .movie__inner {
  width: 96%;
  max-width: 980px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .page .movie__inner {
    width: 85.3vw;
    display: block;
  }
}
.page .movie__img {
  position: relative;
  width: 24.6%;
  max-width: 242px;
  margin-right: 6.2%;
}
@media screen and (max-width: 768px) {
  .page .movie__img {
    width: 71.4vw;
    max-width: 100%;
    margin: 0 auto 7.8vw;
  }
}
.page .movie__img:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid rgb(246, 246, 246);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.page .movie__img img, .page .movie__img video {
  width: 100%;
}
.page .movie__img video {
  display: block;
  outline: none;
  border: none;
}
.page .movie__text {
  width: 41%;
  max-width: 400px;
  text-align: center;
  line-height: 1.875;
  letter-spacing: 0;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .movie__text {
    width: 50%;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .page .movie__text {
    width: 100%;
    max-width: 100%;
    font-size: 3.4vw;
  }
}
.page .movie__text p {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .page .movie__text p {
    margin-bottom: 6.5vw;
  }
}
.page .movie__text p:last-child {
  margin-bottom: 0;
}
.page .movie__text a {
  margin-top: 12px;
  display: inline-block;
  width: 246px;
}
@media screen and (max-width: 768px) {
  .page .movie__text a {
    margin-top: 2.1vw;
    width: 61.8vw;
    letter-spacing: 0;
  }
}

/* concept
---------------------------*/
.page .concept {
  position: relative;
  margin: 0 auto 100px;
}
@media screen and (max-width: 768px) {
  .page .concept {
    width: 89.6vw;
    margin: 0 auto 13vw;
  }
}
.page .concept:before, .page .concept:after {
  content: "";
  display: block;
  width: 100%;
  height: 25px;
  background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/concept_bg.png");
  background-size: contain;
  background-position: center;
  background-repeat: repeat-x;
}
@media screen and (max-width: 768px) {
  .page .concept:before, .page .concept:after {
    background-image: url("/ec/img/usr/pg/campaign/user_participation_project_6th/concept_bg-sp.png");
    height: 3.3vw;
    background-size: auto 3.3vw;
  }
}
.page .concept__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 40px 0;
}
@media screen and (max-width: 768px) {
  .page .concept__inner {
    display: block;
    padding: 5.2vw 0 6.9vw;
  }
}
.page .concept__img {
  width: 17.85%;
}
@media screen and (max-width: 768px) {
  .page .concept__img {
    width: 33.6vw;
    margin: 0 auto 5.2vw;
  }
}
.page .concept__text {
  width: 80.1%;
}
@media screen and (max-width: 768px) {
  .page .concept__text {
    width: 100%;
    text-align: center;
  }
}
.page .concept__text p {
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 990px) and (min-width: 769px) {
  .page .concept__text p br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .page .concept__text p {
    font-size: 3.4vw;
  }
}

.page .banner {
  margin: 0 auto 100px;
}
@media screen and (max-width: 768px) {
  .page .banner {
    margin: 0 auto 19.5vw;
  }
}
.page .banner__title {
  text-align: center;
  font-size: 24px;
  font-family: "Noto Serif JP", "Hiragino Mincho Pro", "游明朝", "Yu Mincho", serif;
  font-weight: 500;
  margin: 0 auto 40px;
}
@media screen and (max-width: 768px) {
  .page .banner__title {
    font-size: 5.7vw;
    margin: 0 auto 3.8vw;
  }
}
.page .banner__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.page .banner__item {
  width: 21.9%;
  margin-right: 3.98%;
}
@media screen and (max-width: 768px) {
  .page .banner__item {
    width: 43vw;
    margin-right: 3.6vw;
  }
}
.page .banner__item:last-child {
  margin-right: 0;
}