@charset "UTF-8";
/*color*/
/*font*/
@media screen and (max-width: 768px) {
  body {
    min-width: 0; } }

#Container {
  width: 100%; }

.WrapTop {
  width: 980px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .WrapTop {
      width: 100%; } }

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden; }

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0; }

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  transition: all 0.3s ease-in-out; }
  .modaal-wrapper * {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden; }
  .modaal-wrapper .modaal-close {
    border: none;
    background: transparent;
    padding: 0;
    -webkit-appearance: none; }
  .modaal-wrapper.modaal-start_none {
    display: none;
    opacity: 1; }
  .modaal-wrapper.modaal-start_fade {
    opacity: 0; }
  .modaal-wrapper *[tabindex="0"] {
    outline: none !important; }
  .modaal-wrapper.modaal-fullscreen {
    overflow: hidden; }

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%; }
  .modaal-fullscreen .modaal-outer-wrapper {
    display: block; }

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px; }
  .modaal-fullscreen .modaal-inner-wrapper {
    padding: 0;
    display: block;
    vertical-align: top; }

.modaal-container {
  position: relative;
  display: inline-block;
  width: auto;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: transparent;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto; }

  @media screen and (max-width: 768px) {
    .modaal-container {
      width: 100%;
    }
  }

  .modaal-container.is_loading {
    height: 100px;
    width: 100px;
    overflow: hidden; }
  .modaal-fullscreen .modaal-container {
    max-width: none;
    height: 100%;
    overflow: auto; }

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  transition: all 0.2s ease-in-out; }
  .modaal-close:focus, .modaal-close:hover {
    outline: none;
    background: #fff; }
    .modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
      background: #b93d0c; }
  .modaal-close span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-close:before, .modaal-close:after {
    display: block;
    content: " ";
    position: absolute;
    top: 14px;
    left: 23px;
    width: 4px;
    height: 22px;
    border-radius: 4px;
    background: #fff;
    transition: background 0.2s ease-in-out; }
  .modaal-close:before {
    transform: rotate(-45deg); }
  .modaal-close:after {
    transform: rotate(45deg); }
  .modaal-fullscreen .modaal-close {
    background: #afb7bc;
    right: 10px;
    top: 10px; }

.modaal-content-container {
  padding: 0; }

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0; }

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent; }
  .modaal-confirm-btn.modaal-ok {
    padding: 10px 15px;
    color: #fff;
    background: #555;
    border-radius: 3px;
    transition: background 0.2s ease-in-out; }
    .modaal-confirm-btn.modaal-ok:hover {
      background: #2f2f2f; }
  .modaal-confirm-btn.modaal-cancel {
    text-decoration: underline; }
    .modaal-confirm-btn.modaal-cancel:hover {
      text-decoration: none;
      color: #2f2f2f; }

@keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  box-shadow: none !important; }

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent; }

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important; }

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px; }

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%; }

.modaal-gallery-wrap {
  position: relative;
  color: #fff; }

.modaal-gallery-item {
  display: none; }
  .modaal-gallery-item img {
    display: block; }
  .modaal-gallery-item.is_active {
    display: block; }

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff; }
  .modaal-gallery-label:focus {
    outline: none; }

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  transition: all 0.2s ease-in-out; }
  .modaal-gallery-control.is_hidden {
    opacity: 0;
    cursor: default; }
  .modaal-gallery-control:focus, .modaal-gallery-control:hover {
    outline: none;
    background: #fff; }
    .modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
      background: #afb7bc; }
  .modaal-gallery-control span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    display: block;
    content: " ";
    position: absolute;
    top: 16px;
    left: 25px;
    width: 4px;
    height: 18px;
    border-radius: 4px;
    background: #fff;
    transition: background 0.2s ease-in-out; }
  .modaal-gallery-control:before {
    margin: -5px 0 0;
    transform: rotate(-45deg); }
  .modaal-gallery-control:after {
    margin: 5px 0 0;
    transform: rotate(45deg); }

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px; }

.modaal-gallery-next-outer {
  right: 45px; }

.modaal-gallery-prev:before, .modaal-gallery-prev:after {
  left: 22px; }

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  transform: rotate(-45deg); }

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  transform: rotate(45deg); }

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px; }

.modaal-gallery-prev-outer {
  left: 45px; }

.modaal-video-wrap {
  margin: auto 50px;
  position: relative; }

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto; }
  .modaal-video-container iframe,
  .modaal-video-container object,
  .modaal-video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%; }

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block; }

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px; } }

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px; }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    transform: none;
    background: rgba(0, 0, 0, 0.7); }
    .modaal-gallery-control:before, .modaal-gallery-control:after {
      background: #fff; }
  .modaal-gallery-next {
    left: auto;
    right: 20px; }
  .modaal-gallery-prev {
    left: 20px;
    right: auto; } }

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; } }

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important; } }

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px; }
  .modaal-instagram iframe {
    width: 600px !important; } }

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px; } }

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important; } }

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none; } }

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  transform: scale(0.25); }

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    transform: scale(1.5); }
  100% {
    opacity: .1;
    transform: scale(1); } }

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute; }

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) {
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) {
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) {
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) {
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) {
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) {
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) {
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) {
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

.l-container {
  padding: 100px 0; }
  @media screen and (max-width: 768px) {
    .l-container {
      padding: 12vw 0; }
	#rule.l-container{
		padding-top: 22.666667vw ;
	  }}

.l-inner {
  width: 980px;
  margin: auto; }

.notice{
	color: #ff0000;
	font-size: 24px;
	font-weight: bold;}
  @media screen and (max-width: 768px) {
    .l-inner {
      width: 100%;
      padding-left: 7.2vw;
      padding-right: 7.2vw; }
	.notice{
		font-size: 4vw;} }

.c-annotation {
  font-size: 12px;
  text-align: left; }
  @media screen and (max-width: 768px) {
    .c-annotation {
      font-size: 3.2vw; } }

.c-bt-dots {
  padding-top: 54px;
  background: url(../img/bd_dot.png) repeat-x left top; }
  @media screen and (max-width: 768px) {
    .c-bt-dots {
      padding-top: 9.06666666667vw;
      background-size: 4vw auto; } }

.c-btn-cmn {
  text-align: center; }
  .c-btn-cmn__item,
  .c-btn-cmn img {
    border-radius: 12px; }
  .c-btn-cmn__item {
    display: inline-block;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2); }
  .c-btn-cmn--line {
    margin-top: 64px; }
    .c-btn-cmn--line .c-btn-cmn__item {
      border: 3px solid #00b900; }
  @media screen and (max-width: 768px) {
    .c-btn-cmn--line {
      margin-top: 8.53333333333vw; }
      .c-btn-cmn--line img {
        width: 74.6666666667vw; } }

.c-ttl-ribon {
  position: relative;
  margin-bottom: 28px;
  text-align: center; }
  .c-ttl-ribon--inbox {
    position: absolute;
    top: -36px;
    width: 100%; }
  @media screen and (max-width: 768px) {
    .c-ttl-ribon {
      z-index: 1;
      margin-bottom: 5.33333333333vw; }
      .c-ttl-ribon--inbox {
        margin-bottom: 0;
        top: -6.4vw; }
      .c-ttl-ribon img {
        width: 62.266667vw; } }

.c-list-point {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3; }
  .c-list-point__item {
    margin-bottom: 28px;
    padding-left: 20px;
    text-indent: -20px; }
    .c-list-point__item:before {
      content: "・"; }
  @media screen and (max-width: 768px) {
    .c-list-point {
      font-size: 3.6vw; }
      .c-list-point__item {
        margin-bottom: 6.4vw;
        padding-left: 3.6vw;
        text-indent: -3.6vw; } }

@media screen and (max-width: 768px) {
  .c-over-inner {
    margin-left: -7.2vw;
    margin-right: -7.2vw; } }

.p-anim-fade {
  opacity: 0;
  transform: translateY(12px); }
  .p-anim-fade.is-inview {
    animation: .7s ease forwards fadein; }

.p-anim-zoom {
  opacity: 0;
  transform: scale(0.5); }
  .p-anim-zoom.is-inview {
    animation: .5s ease forwards zoomin; }

.p-anim-slide-le{
	transform: translateX(-250px);
}
.p-anim-slide-le.is-inview {
	animation: .6s ease forwards slide-le;
	animation-delay: 1.2s;
}
.p-anim-slide-ri{
	transform: translateX(250px);
}
.p-anim-slide-ri.is-inview {
	animation: .6s ease forwards slide-ri;
	animation-delay: 1.2s;
}

@keyframes fadein {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes zoomin {
  0% {
    opacity: 0;
    transform: scale(0.5); }
  100% {
    opacity: 1;
    transform: scale(1); } }

@keyframes slide-le {
  0% {
    transform: translateX(-250px); }
  100% {
    transform: translateX(0px); } }

@keyframes slide-ri {
  0% {
    transform: translateX(250px); }
  100% {
    transform: translateX(0px); } }

.p-campaign {
  position: relative;
  overflow: hidden;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
  color: #575757;
  z-index: 0; }
  .p-campaign *,
  .p-campaign ::before,
  .p-campaign ::after {
    box-sizing: border-box; }
  .p-campaign a {
    transition: .2s; }
  .p-campaign a:hover img,
  .p-campaign a:focus img {
    opacity: 1;
    filter: alpha(opacity=100); }
  .p-campaign img {
    max-width: 100%; }
  .p-campaign h1, .p-campaign h2, .p-campaign h3, .p-campaign h4 {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
    color: inherit; }
  @media screen and (min-width: 769px) {
    .p-campaign a:hover {
      opacity: .7; } }

.p-mv {
  text-align: center;
  background: url(../img/mv_bg.png) no-repeat center bottom/cover; }
.p-leaf-le{
	position: absolute;
	left: 0;
	background: url(../img/mv_03_le.png) no-repeat left center/auto;
	width: 100vw;
	height: 655.781px;
}
.p-leaf-ri{
	position: absolute;
	right: 0;
	background:url(../img/mv_03_ri.png) no-repeat right center/auto;
	width: 100vw;
	height: 655.781px;
}
  .p-mv__cts {
    position: relative;
    top: 44px; }
  .p-mv__ttl, .p-mv__chara{
    position: relative; }
  .p-mv__ttl {
    margin-bottom: -65px;
    z-index: 3; }
  .p-mv .p-mv__chara {
    z-index: 2;
	top: 18px;
    animation-delay: .6s; }
  .p-mv .p-mv__confetti {
    width: 100%;
    animation-delay: 1.2s; }
  @media screen and (max-width: 768px) {
 .p-leaf-le{
height: 76.933333vw;
background: url(../img/sp/mv_03_le.png) no-repeat left center/contain;
}
 .p-leaf-ri{
height: 76.933333vw;
background: url(../img/sp/mv_03_ri.png) no-repeat right center/contain;
}
  .p-mv{
	  height: 76.9333333vw;
  }
    .p-mv__cts {
      top: 3.73333333333vw;
      padding-top: 3.2vw; }
    .p-mv__ttl {
      margin-bottom: -8vw; }
    .p-mv__ttl img {
      margin-right: -2vw; }
    .p-mv .p-mv__confetti {
      }
	  .p-mv .p-mv__chara{
		  top: 8vw;}
}

.p-intro {
  margin-bottom: 100px;
  text-align: center; }
  .p-intro__sub {
    margin-top: 30px;
    color: #705a52;
    font-size: 23px;
    font-weight: bold; }
    .p-intro__sub--sm {
      font-size: 80%; }
      .p-intro__sub--lg {
        font-size: 110%;
      }
  .p-intro__ttl {
    margin-top: 37px; }
  .p-intro__btns {
    margin-top: 56px; }
  .p-intro__btn {
    display: inline-block;
    margin: 0 32px; }
  @media screen and (max-width: 768px) {
    .p-intro {
      margin-bottom: 29.3333333333vw; }
      .p-intro__sub {
        margin-top: 4.26666666667vw;
        font-size: 3.73333333333vw;
        width: calc(100% + 7.2vw);
      margin-left: -3.6vw; }
      .p-intro__ttl {
        margin-top: 10vw; }
      .p-intro__btns {
        position: relative;
        margin-top: 8.53333333333vw;
        height: 14.4vw; }
      .p-intro__btn {
        position: absolute;
        top: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center;
        -ms-flex-pack: center;
            justify-content: center;
        margin: 0;
        width: 50%;
        height: 14.4vw;
        background: #f5a21b;
        text-align: center; }
        .p-intro__btn:first-child {
          left: 0;
          padding-left: 7.2vw; }
        .p-intro__btn:last-child {
          right: 0;
          padding-right: 7.2vw; }
        .p-intro__btn img {
          width: auto;
          height: 4.8vw; }
        .p-intro__btn.is-active {
          position: fixed;
          z-index: 2; } }

.p-box {
  position: relative;
  margin-bottom: 120px;
  z-index: 0; }
  .p-box:last-child {
    margin-bottom: 0; }
  .p-box__container {
    border-radius: 50px;
    overflow: hidden; }
  .p-box__cts {
    background: #fff;
    padding: 64px 72px; }
    .p-box__cts--pbsm {
      padding-bottom: 40px; }
    .p-box__cts--btm {
      padding: 40px 40px 52px; }
  .p-box__baloon {
    position: absolute;
    top: -56px;
    left: -32px; }
  @media screen and (max-width: 768px) {
    .p-box {
      margin-bottom: 16vw; }
      .p-box__container {
        border-radius: 6.66666666667vw; }
      .p-box__cts {
        padding: 16vw 4.26666666667vw 10.6666666667vw; }
        .p-box__cts--pbsm {
          padding-bottom: 10.6666666667vw; }
        .p-box__cts--btm {
          padding-top: 8vw; }
      .p-box__baloon {
        width: 33.3333333333vw;
        top: -20vw;
        left: -4vw; } }

.p-cts-present {
  text-align: center; }
  .p-cts-present__ttl {
    margin-bottom: 24px; }
  .p-cts-present__intro {
    margin-bottom: 40px; }
  .p-cts-present__charas {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
  .p-cts-present__chara {
    padding: 0 16px;
    transistion: .2s; }
  .p-cts-present__stomps {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    margin-top: 40px;
    margin-bottom: 12px;
    padding: 32px 16px;
    background: #f8f3e2;
    border-radius: 20px; }
  .p-cts-present__stomp {
    width: 25%;
    padding: 0 24px;
    text-align: center; }
  .p-cts-present__line {
    margin-top: 48px; }
  .p-cts-present__line-chara {
    margin-bottom: 40px; }
  @media screen and (min-width: 769px) {
    .p-cts-present__chara:hover {
      transform: scale(1.1); }
    .p-cts-present__stomp {
      padding-top: 32px; }
      .p-cts-present__stomp:nth-child(-n+4) {
        padding-top: 0; } }
  @media screen and (max-width: 768px) {
    .p-cts-present__ttl {
      padding: 0 1.6vw;
      margin-bottom: 3.73333333333vw; }
    .p-cts-present__intro {
      margin-bottom: 9.6vw; }
    .p-cts-present__charas {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .p-cts-present__chara {
      padding: 0 1vw;
      margin-bottom: 6.4vw; }
      .p-cts-present__chara-mod {
        margin-bottom: 6.4vw; }
      .p-cts-present__chara:last-child {
        margin-bottom: 0;
       }
    .p-cts-present__stomps {
      margin-top: 10.6666666667vw;
      margin-bottom: 3.2vw;
      padding: 4.8vw;
      border-radius: 2.66666666667vw; }
    .p-cts-present__stomp {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center;
      width: 50%;
      padding: 0 2.66666666667vw;
      margin-bottom: 5.33333333333vw; }
    .p-cts-present__line {
      margin-top: 9.06666666667vw; }
    .p-cts-present__line-chara {
      padding: 0 8.53333333333vw; } }

.p-products {
  position: relative;
  margin-bottom: 36px;
  text-align: center; }
.p-products__list {
display: -ms-flexbox;
display: flex;
align-items: baseline;
-ms-flex-wrap: wrap;
	flex-wrap: wrap; }
.p-products__item {
margin-top: 48px; }
.p-products__list>li:nth-child(7) {
margin-left: -15px; }
.p-products__item.w16{
    width: 16.6%;
}
.p-products__item.w20{
    width: 20%;
}

  @media screen and (min-width: 769px) {
    .p-products__chara {
      position: absolute;
      right: -16px;
      bottom: -8px; } }
  @media screen and (max-width: 768px) {
    .p-products {
      margin-bottom: 4.8vw; }
	.p-products__list>li:nth-child(7) {
	margin-left: 0; }
      .p-products__item {
        width: calc( 100% / 2);
        margin-top: 4.8vw; }
	.p-products__item.w16,.p-products__item.w20{
		width: 50%;
	}
}

.p-product-card {
  text-align: center; }
  .p-product-card__img {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end;
    -ms-flex-pack: center;
        justify-content: center;
    margin-bottom: 10px; }
  .p-product-card__tag {
    display: inline-block;
    padding: 0 12px;
    font-size: 12px;
    font-weight: bold;
    line-height: 28px;
    color: #000;
    border: 1px solid #e9252a;
    border-radius: 100px;
    letter-spacing: 0; }
  .p-product-card__ttl {
    display: block;
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.25; }
  @media screen and (max-width: 768px) {
    .p-product-card__img {
      margin-bottom: 2.66666666667vw; }
    .p-product-card__tag {
      padding: 0 3.2vw;
      font-size: 3.2vw; }
    .p-product-card__ttl {
      margin-top: 2.13333333333vw;
      font-size: 3.73333333333vw; } }

.p-cts-what {
  position: relative;
  text-align: center; }
  .p-cts-what__ttl {
    margin-bottom: 24px; }
  .p-cts-what__chara {
    position: absolute;
    bottom: 0; }
  @media screen and (min-width: 769px) {
    .p-cts-what__chara--1 {
      left: 32px; }
    .p-cts-what__chara--2 {
      right: 28px; } }
  @media screen and (max-width: 768px) {
    .p-cts-what {
      padding-bottom: 66.6666666667vw; }
      .p-cts-what__ttl {
        margin-bottom: 4.8vw; }
        .p-cts-what__ttl img {
          width: 49.3333333333vw; }
      .p-cts-what__chara img {
        width: 100%; }
      .p-cts-what__chara--1 {
        left: 4vw;
        width: 40.2666666667vw;
        z-index: 1; }
      .p-cts-what__chara--2 {
        right: 2vw;
        width: 38.1333333333vw; } }

.p-step__item {
  padding: 60px 0; }
  .p-step__item:first-child {
    padding-top: 48px; }
  .p-step__item:last-child {
    padding-bottom: 0; }

@media screen and (max-width: 768px) {
  .p-step__item {
    padding: 10.6666666667vw 0; }
    .p-step__item:first-child {
      padding-top: 0; } }

.p-step-cts__ttl {
  margin-bottom: 20px; }

.p-step-cts__txt {
  font-size: 16px;
  margin-bottom: 16px; }
  .p-step-cts__txt:last-child {
    margin-bottom: 0; }

@media screen and (min-width: 769px) {
  .p-step-cts {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
    .p-step-cts__img {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: end;
          justify-content: flex-end;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      width: 160px;
      margin-right: 24px;
      text-align: right; }
      .p-step-cts__img img {
        max-width: none; } }

@media screen and (max-width: 768px) {
  .p-step-cts {
    text-align: center; }
    .p-step-cts__ttl {
      margin-top: 3.73333333333vw;
      margin-bottom: 4.8vw; }
    .p-step-cts__txt {
      font-size: 4vw;
      margin-bottom: 7.46666666667vw; } }

.p-board-point {
  margin: 24px 0 52px;
  border-radius: 15px;
  overflow: hidden;
  border: 2px solid #705a52; }
  .p-board-point__ttl {
    background: #f8b500;
    text-align: center;
    padding: 10px; }
  .p-board-point__body {
    padding: 36px; }
  @media screen and (max-width: 768px) {
    .p-board-point {
      margin-bottom: 8vw;
      border-radius: 2vw; }
      .p-board-point__body {
        padding: 6.66666666667vw 5.33333333333vw; } }

.p-board-rule {
  position: relative;
  border: 2px solid #705a52;
  border-radius: 15px;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
  padding: 32px 48px 24px; }
  .p-board-rule__chara {
    position: absolute; }
    .p-board-rule__chara--1 {
      left: 24px;
      bottom: calc( 100% - 5px); }
    .p-board-rule__chara--2 {
      left: 185px;
      bottom: calc( 100% - 3px); }
    .p-board-rule__chara--3 {
      right: 147px;
      bottom: calc( 100% - 9px); }
    .p-board-rule__chara--4 {
      right: 16px;
      bottom: calc( 100% - 4px); }
  .p-board-rule__cts {
    height: 264px;
    overflow: auto;
    word-break: break-all; }
    .p-board-rule__cts h3 {
      margin-bottom: 20px;
      font-size: 20px !important;
      font-weight: bold;
      line-height: 1.5;
      color: #ed6c00; }
    .p-board-rule__cts p {
      margin-bottom: 12px; }
      .p-board-rule__cts p:last-child {
        margin-bottom: 0; }
  @media screen and (max-width: 768px) {
    .p-board-rule {
      border-radius: 2vw;
      margin-top: 18.6666666667vw;
      padding: 4.26666666667vw 5.33333333333vw; }
      .p-board-rule__chara--1 {
        width: 23.6vw;
        left: 0vw;
        bottom: calc( 100% - .6vw); }
      .p-board-rule__chara--2 {
        width: 17.866667vw;
        left: 25.333333333vw;
        bottom: calc( 100% - .5vw); }
      .p-board-rule__chara--3 {
        width: 21.6vw;
        right: 18.5vw;
        bottom: calc( 100% - .9vw); }
      .p-board-rule__chara--4 {
        width: 16.8vw;
        right: 0vw;
        bottom: calc( 100% - .4vw); }
      .p-board-rule__cts {
        height: 80vw;
        font-size: 3.46666666667vw;
        font-weight: bold; }
        .p-board-rule__cts h3 {
          margin-bottom: 2.66666666667vw;
          font-size: 4vw !important; } }

.p-contact {
  position: relative;
  padding-top: 40px; }
  .p-contact__ttl {
    margin-bottom: 24px;
    font-size: 30px !important; }
  .p-contact__txt {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.92; }
  @media screen and (min-width: 769px) {
    .p-contact__chara {
      position: absolute;
      top: 12px;
      right: 0; } }
  @media screen and (max-width: 768px) {
    .p-contact {
      padding-top: 0;
      text-align: center; }
      .p-contact__ttl {
        margin-bottom: 6.93333333333vw;
        font-size: 4.66666666667vw !important; }
      .p-contact__txt {
        margin-bottom: 6.66666666667vw;
        font-size: 4vw;
        line-height: 1.2; }
        .p-contact__txt-item {
          display: block;
          margin-bottom: 6.66666666667vw; }
      .p-contact__chara {
        margin-top: 6.93333333333vw; } }

.p-attach-chara {
  position: absolute;
  transition: 0.4s cubic-bezier(0, 0.6, 0.5, 1);
  transition-delay: .2s;
  z-index: -1; }
  .p-attach-chara.is-inview {
    transform: none; }
  .p-attach-chara--1{
    top: 265px;
    left: 100%;
    transform: translateX(-100%); }
  .p-attach-chara--2 {
    top: 208px;
    right: 100%;
    transform: translateX(100%); }
  .p-attach-chara--3 {
    top: 512px;
    left: 100%;
    transform: translateX(-100%); }
  .p-attach-chara--4 {
    bottom: 540px;
    right: 100%;
    transform: translateX(100%); }
  @media screen and (max-width: 768px) {
    .p-attach-chara {
      display: none; } }

.p-modal {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end;
  width: 708px;
  height: 464px;
  padding-bottom: 36px;
  background: #fff;
  border-radius: 20px;
  margin: auto; }
  .p-modal__main {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
  .p-modal__chara {
    margin-right: 48px; }
  .p-modal__smr-ttl {
    margin-bottom: 24px; }
  .p-modal__smr-txt {
    font-size: 16px;
    line-height: 1.92;
    font-weight: bold;
    color: #705a52; }
  .p-modal__close {
    display: -ms-flexbox;
    display: flex;
    width: 148px;
    height: 48px;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    border-radius: 24px;
    transition: .2s; }
    .p-modal__close--1 {
      background: #ffcd00; }
    .p-modal__close--2 {
      background: #f5a065; }
    .p-modal__close--3 {
      background: #c2da41; }
    .p-modal__close--4 {
      background: #f1b0b3; }
  @media screen and (min-width: 769px) {
    .p-modal__main {
      height: 380px; }
      .p-modal__main--adj {
        position: relative;
        left: 20px; }
    .p-modal__close:hover {
      opacity: 0.8; } }
  @media screen and (max-width: 768px) {
    .p-modal {
      display: block;
      width: 100%;
      height: auto;
      padding: 7.46666666667vw;
      border-radius: 3.2vw; }
      .p-modal__main {
        display: block;
        text-align: center;
        margin-bottom: 4.8vw; }
      .p-modal__chara {
        margin-right: 0;
        margin-bottom: 4.8vw; }
        .p-modal__chara--1 img {
          width: 34.3333333333vw; }
        .p-modal__chara--2 img {
          width: 42.7333333333vw; }
        .p-modal__chara--3 img {
          width: 37.0666666667vw; }
          .p-modal__chara--4 img {
            width: 30.066667vw; }
      .p-modal__smr-ttl {
        margin-bottom: 4.8vw; }
        .p-modal__smr-ttl img {
          max-width: 44.2666666667vw; }
          .p-modal__smr-ttl-mod img {
            max-width: 43.2666666667vw; }
            .p-modal__smr-ttl-mod2 img {
              max-width: 40vw; }
      .p-modal__smr-txt {
        font-size: 4vw; }
      .p-modal__close {
        width: 29.3333333333vw;
        margin: auto;
        height: 9.06666666667vw;
        border-radius: 100vw; }
        .p-modal__close img {
          max-width: 14.4vw; } }

@media screen and (min-width: 769px) {
  .u-sp-only {
    display: none !important; } }

@media screen and (max-width: 768px) {
  .u-pc-only {
    display: none !important; } }

.u-text-center {
  text-align: center !important; }
  @media screen and (max-width: 768px) {
    .u-text-center-sp {
      text-align: center !important; } }
  @media screen and (min-width: 769px) {
    .u-text-center-pc {
      text-align: center !important; } }
  .u-text-center iframe {
    margin-left: auto !important;
    margin-right: auto !important; }

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

.u-text-right {
  text-align: right !important; }
  @media screen and (max-width: 768px) {
    .u-text-right-sp {
      text-align: right; } }

.u-hide {
  display: none; }

.u-inline {
  display: inline !important;
  vertical-align: middle; }

.u-ib {
  display: inline-block;
  vertical-align: middle; }

.u-block {
  display: block !important; }

.u-flex {
  display: -ms-flexbox;
  display: flex; }
  .u-flex-wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-between {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-flex-jcenter {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-flex-acenter {
    -ms-flex-align: center;
        align-items: center; }
  .u-flex-reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  .u-flex-keep {
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  @media screen and (min-width: 769px) {
    .u-flex-pc {
      display: -ms-flexbox;
      display: flex; }
    .u-flex-between-pc {
      -ms-flex-pack: justify;
          justify-content: space-between; } }
  @media screen and (max-width: 768px) {
    .u-flex-sp {
      display: -ms-flexbox;
      display: flex; } }

.u-m-0 {
  margin: 0 !important; }

.u-mt-0,
.u-my-0 {
  margin-top: 0 !important; }

.u-mr-0,
.u-mx-0 {
  margin-right: 0 !important; }

.u-mb-0,
.u-my-0 {
  margin-bottom: 0 !important; }

.u-ml-0,
.u-mx-0 {
  margin-left: 0 !important; }

.u-m-xs {
  margin: 10px !important; }

.u-mt-xs,
.u-my-xs {
  margin-top: 10px !important; }

.u-mr-xs,
.u-mx-xs {
  margin-right: 10px !important; }

.u-mb-xs,
.u-my-xs {
  margin-bottom: 10px !important; }

.u-ml-xs,
.u-mx-xs {
  margin-left: 10px !important; }

.u-m-sm {
  margin: 20px !important; }

.u-mt-sm,
.u-my-sm {
  margin-top: 20px !important; }

.u-mr-sm,
.u-mx-sm {
  margin-right: 20px !important; }

.u-mb-sm,
.u-my-sm {
  margin-bottom: 20px !important; }

.u-ml-sm,
.u-mx-sm {
  margin-left: 20px !important; }

.u-m-md {
  margin: 24px !important; }

.u-mt-md,
.u-my-md {
  margin-top: 24px !important; }

.u-mr-md,
.u-mx-md {
  margin-right: 24px !important; }

.u-mb-md,
.u-my-md {
  margin-bottom: 24px !important; }

.u-ml-md,
.u-mx-md {
  margin-left: 24px !important; }

.u-m-xl {
  margin: 80px !important; }

.u-mt-xl,
.u-my-xl {
  margin-top: 80px !important; }

.u-mr-xl,
.u-mx-xl {
  margin-right: 80px !important; }

.u-mb-xl,
.u-my-xl {
  margin-bottom: 80px !important; }

.u-ml-xl,
.u-mx-xl {
  margin-left: 80px !important; }

.u-p-0 {
  padding: 0 !important; }

.u-pt-0,
.u-py-0 {
  padding-top: 0 !important; }

.u-pr-0,
.u-px-0 {
  padding-right: 0 !important; }

.u-pb-0,
.u-py-0 {
  padding-bottom: 0 !important; }

.u-pl-0,
.u-px-0 {
  padding-left: 0 !important; }

.u-p-xs {
  padding: 10px !important; }

.u-pt-xs,
.u-py-xs {
  padding-top: 10px !important; }

.u-pr-xs,
.u-px-xs {
  padding-right: 10px !important; }

.u-pb-xs,
.u-py-xs {
  padding-bottom: 10px !important; }

.u-pl-xs,
.u-px-xs {
  padding-left: 10px !important; }

.u-p-sm {
  padding: 20px !important; }

.u-pt-sm,
.u-py-sm {
  padding-top: 20px !important; }

.u-pr-sm,
.u-px-sm {
  padding-right: 20px !important; }

.u-pb-sm,
.u-py-sm {
  padding-bottom: 20px !important; }

.u-pl-sm,
.u-px-sm {
  padding-left: 20px !important; }

.u-p-md {
  padding: 24px !important; }

.u-pt-md,
.u-py-md {
  padding-top: 24px !important; }

.u-pr-md,
.u-px-md {
  padding-right: 24px !important; }

.u-pb-md,
.u-py-md {
  padding-bottom: 24px !important; }

.u-pl-md,
.u-px-md {
  padding-left: 24px !important; }

.u-p-xl {
  padding: 80px !important; }

.u-pt-xl,
.u-py-xl {
  padding-top: 80px !important; }

.u-pr-xl,
.u-px-xl {
  padding-right: 80px !important; }

.u-pb-xl,
.u-py-xl {
  padding-bottom: 80px !important; }

.u-pl-xl,
.u-px-xl {
  padding-left: 80px !important; }

.u-m-auto {
  margin: auto !important; }

.u-mt-auto,
.u-my-auto {
  margin-top: auto !important; }

.u-mr-auto,
.u-mx-auto {
  margin-right: auto !important; }

.u-mb-auto,
.u-my-auto {
  margin-bottom: auto !important; }

.u-ml-auto,
.u-mx-auto {
  margin-left: auto !important; }

.u-font-normal {
  font-weight: normal !important; }

.u-font-bold {
  font-weight: bold !important; }

.u-font-lg {
  font-size: 140%; }
  @media screen and (max-width: 768px) {
    .u-font-lg {
      font-size: 3.6vw; } }

.u-bg-wh {
  background: #fff; }

.u-bg-check1 {
  background: url(../img/bg_check1.jpg) repeat center; }
  @media screen and (max-width: 768px) {
    .u-bg-check1 {
      background-size: 20vw; } }

.u-bg-check2 {
  background: url(../img/bg_check2.jpg) repeat center; }
  @media screen and (max-width: 768px) {
    .u-bg-check2 {
      background-size: 20vw; } }

.u-bg-cream {
  background: #fff7d3; }

.u-bg-yel {
  background: #fff7d0; }

.u-bg-ctt {
  background: #f7edeb; }

.u-color-point {
  color: #e84472; }

.u-w100 {
  width: 100%; }
