@charset "utf-8";

/* !Reseting
---------------------------------------------------------- */
.ct_bg div, .ct_bg pre, .ct_bg p, .ct_bg blockquote, .ct_bg figure, .ct_bg dl, .ct_bg dt, .ct_bg dd, .ct_bg ul, .ct_bg ol, .ct_bg li, .ct_bg h1, .ct_bg h2, .ct_bg h3, .ct_bg h4, .ct_bg h5, .ct_bg h6, .ct_bg form, .ct_bg fieldset, .ct_bg th, .ct_bg td
{ margin: 0; padding: 0;}
.ct_bg input, .ct_bg textarea
{ margin: 0; font-size: 100%;}
.ct_bg label
{ cursor: pointer;}
.ct_bg table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
.ct_bg fieldset, .ct_bg img
{ border: 0;}
.ct_bg img
{ vertical-align: top;}
.ct_bg address, .ct_bg caption, .ct_bg cite, .ct_bg code, .ct_bg dfn, .ct_bg em, .ct_bg th, .ct_bg var
{ font-style: normal; font-weight: normal;}
.ct_bg ol, .ct_bg ul
{ list-style: none;}
.ct_bg caption, .ct_bg th
{ text-align: left;}
.ct_bg h1, .ct_bg h2, .ct_bg h3, .ct_bg h4, .ct_bg h5, .ct_bg h6
{ font-size: 100%; font-weight: normal;}
.ct_bg q:after, .ct_bg q:before
{ content:'';}
.ct_bg a, .ct_bg input
{ outline: none; }
.ct_bg abbr, .ct_bg acronym
{ border: 0;}
.ct_bg span,
.ct_bg small {
  font-family: inherit;
  font-weight: inherit;
}
.ct_bg strong {
  font-family: inherit;
  font-weight: 900;
}
.ct_bg li:before {
  content: normal;
  width: auto;
  height: auto;
  background: none;
  border-radius: 0;
  position: initial;
  left: auto;
  top: auto;
}

html {
  scroll-padding-top: 120px;
}

#contents {
  padding: 0;
  width: 100%;
}

.onlySP {
  display: none;
}

.ct_bg {
  position: relative;
  color: #2D2D2D;
  font-family: var(--font-m-plus-rounded);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  overflow-x: clip;
}

.ct_bg .wrapper01 {
  position: relative;
}

.ct_bg .coiny {
  font-family: "Coiny", system-ui;
  font-weight: 400;
  font-style: normal;
}

.ct_bg a {
  color: #2D2D2D;
  text-decoration: underline;
}
.ct_bg a:hover {
  text-decoration: none;
}

.ct_bg .imgOver01 img {
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media (any-hover: hover) {
.ct_bg .imgOver01 a:hover img {
  opacity: .6;
}
}

.ct_bg .center {
  text-align: center !important;
}
.ct_bg .right {
  text-align: right !important;
}

.ct_bg .color01 {
  color: #DC3E83;
}
.ct_bg .color02 {
  color: #2081E1;
}

.ct_bg .mt20 {
  margin-top: 20px;
}
.ct_bg .mt30 {
  margin-top: 30px;
}
.ct_bg .mt40 {
  margin-top: 40px;
}
.ct_bg .mt60 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
html {
  scroll-padding-top: 22.5vw;
}

.ct_bg {
  font-size: 3.5vw;
}

.ct_bg a {
  text-decoration: underline;
}
.ct_bg a:hover {
  text-decoration: none;
}
.ct_bg img {
  width: 100%;
  height: auto;
}

.onlyPC {
  display: none;
}
.onlySP {
  display: block;
}
img.onlySP {
  display: inline-block;
}

.ct_bg .mt20 {
  margin-top: 5vw;
}
.ct_bg .mt30 {
  margin-top: 7.5vw;
}
.ct_bg .mt40 {
  margin-top: 10vw;
}
.ct_bg .mt60 {
  margin-top: 15vw;
}
}

/* header
---------------------------------------------------------- */
.ct_bg .headTitleArea01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 100%;
}
.ct_bg .headTitleArea01 > .title01 {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  rotate: .03deg;
}
.ct_bg .headTitleArea01 > .text01 {
  margin-right: 1em;
  font-size: 14px;
  line-height: 1.2;
  rotate: .03deg;
}

.ct_bg .header01 {
  position: absolute;
  z-index: 16;
  top: 52px;
  left: 0;
  padding: 10px 10px 10px 25px;
  margin: 0 15px;
  width: calc(100% - 30px);
  background: #FFF;
  box-shadow: 4px 4px 0 0 rgba(45, 45, 45, 0.05);
  border-radius: 100vmax;
}
.index .ct_bg .header01 {
  z-index: -1;
  opacity: 0;
  transition: opacity .5s ease;
}
.index .ct_bg .header01.scroll01 {
  opacity: 1.0;
  z-index: 16;
}
.ct_bg .header01.fixed {
  position: fixed;
  top: 15px;
}

.ct_bg .header01 > .inner01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.ct_bg .headBlock01 > .logo01 {
  width: min(170px, 12.14vw);
}

.ct_bg .navButton01 {
  display: none;
}


.ct_bg .globalNav01 > ul {
  display: flex;
  flex-wrap: wrap;
  column-gap: min(10px, .41vw);
}

.ct_bg .globalNav01 > ul > li {
  position: relative;
  width: min(240px, 17.14vw);
}
.ct_bg .globalNav01 > ul > li > a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  padding: 5px;
  aspect-ratio: 240 / 74;
  background: url(../img/head_bg01.svg) no-repeat center / cover;
  color: #fff;
  font-family: "Coiny", system-ui;
  font-size: min(20px, 1.4vw);
  font-weight: 400;
  line-height: 1.0;
  text-decoration: none;
  text-align: center;
  transition: background .5s ease;
}
@media (any-hover: hover) {
.ct_bg .globalNav01 > ul > li > a:hover {
  animation: poyo .6s;
}
}
.ct_bg .globalNav01 > ul > li > a > .font01 {
  display: block;
  padding-top: 4px;
  width: 100%;
  font-family: var(--font-m-plus-rounded);
  font-size: min(12px, .85vw);
  font-weight: 500;
  rotate: .03deg;
}

@media screen and (max-width: 767px) {
.ct_bg .headTitleArea01 {
  display: block;
  padding: 2vw 2.5vw;
  text-align: center;
}
.ct_bg .headTitleArea01::after {
  clear: both;
}
.ct_bg .headTitleArea01 > .title01 {
  font-size: 3vw;
}
.ct_bg .headTitleArea01 > .text01 {
  margin-right: 1vw;
  font-size: 3vw;
}

.ct_bg .header01 {
  top: 12.25vw;
  left: 50%;
  translate: -50% 0;
  margin: 0;
  padding: 0;
  width: 92.5vw;
}
.ct_bg .header01.active {
  position: fixed;
  z-index: 10000;
  top: calc(61.4px + 12.25vw);
  border-radius: 6.25vw;
}
.ct_bg .header01.fixed.active {
  top: 4.5vw;
}

.ct_bg .header01.visible01 {
  position: fixed;
  top: 0;
  translate: 0 0;
}
.ct_bg .header01.fixed {
  position: fixed;
  top: 4.5vw;
}


.ct_bg .headBlock01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1.25vw 1.25vw 1.25vw 5vw;
}

.ct_bg .headBlock01 > .logo01 {
  width: 33.2vw;
}

.ct_bg .navButton01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
  padding-top: 4vw;
  width: 10vw;
  height: 10vw;
  background: url(../img/head_bg02.svg) no-repeat 0 0 / cover;
  border-radius: 50%;
  border: none;
  color: #fff;
  font-family: "Coiny", system-ui;
  font-size: 2.5vw;
  font-weight: 400;
  line-height: 1.0;
  letter-spacing: -2%;
  text-align: center;
  cursor: pointer;
  transition: all .1s;
}
.ct_bg .navButton01::before {
  position: absolute;
  top: 3.5vw;
  left: 50%;
  translate: -50% 0;
  content: "";
  width: 4.5vw;
  aspect-ratio: 18 / 4;
  background: url(../img/head_img01.svg) no-repeat center / contain;
}
.ct_bg .active .navButton01::before {
  top: 2.3vw;
  width: 3vw;
  aspect-ratio: 1 / 1;
  background: url(../img/head_img02.svg) no-repeat center / contain;
}

.ct_bg .globalNavArea01 {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 2.5vw;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity .4s;
}
.ct_bg .active .globalNavArea01 {
  position: relative;
  opacity: 1.0;
  visibility: visible;
  height: min(97vw, 500px);
  overflow-y: auto;
  scrollbar-width: none;
}

.ct_bg .globalNav01 > ul {
  column-gap: 0;
  row-gap: 2.5vw;
  margin: 0 auto;
  padding-bottom: 6.25vw;
  width: 67.5vw;
}

.ct_bg .globalNav01 > ul > li {
  position: relative;
  width: 100%;
}
.ct_bg .globalNav01 > ul > li > a {
  padding: 1vw;
  font-size: 5.62vw;
}
.ct_bg .globalNav01 > ul > li > a > .font01 {
  display: block;
  margin-top: 1.125vw;
  font-size: 3.375vw;
}

}

/* footer
---------------------------------------------------------- */
.ct_bg .footer01 {
  position: relative;
  padding-top: 90px;
  padding-bottom: 60px;
}

.ct_bg .footer01 > .image01 {
  margin: 0 auto;
  max-width: 2000px;
}


.ct_bg .footer01 > .copyrights01 {
  margin-top: 30px;
  font-size: 12px;
  text-align: center;
  rotate: 0.03deg;
}

.ct_bg .snsBtn01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
  gap: 10px;
}

.fb_iframe_widget > span {
  vertical-align: baseline !important;
}

@media screen and (max-width: 767px) {
.ct_bg .footer01 {
  padding-top: 15vw;
  padding-bottom: 15vw;
}

.ct_bg .footer01 > .copyrights01 {
  margin-top: 7.5vw;
  font-size: 2.5vw;
}

.ct_bg .snsBtn01 {
  margin-top: 7.5vw;
  gap: 2.5vw;
}
}


/* animation
---------------------------------------------------------- */
.ct_bg .js_fadeIn01 {
  opacity: 0;
}
.ct_bg .js_fadeIn01.is_show {
  animation: fadeIn01 1s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@keyframes poyo {
  10% { transform: scale(1.2); }
  40% { transform: scale(.9); }
  60% { transform: scale(1.04); }
  80% { transform: scale(.98); }
}
@keyframes push {
  10% { transform: scale(.8); }
  40% { transform: scale(1.1); }
  60% { transform: scale(.96); }
  80% { transform: scale(1.02); }
}
@keyframes bounceIn {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  10% {
    transform: scale(1.2);
    opacity: 1;
  }
  40% {
    transform: scale(.9);
    opacity: 1;
  }
  60% {
    transform: scale(1.04);
  }
  80% {
    transform: scale(.98);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    scale: 0;
    opacity: 0;
  }
  100% {
    scale: 1;
    opacity: 1;
  }
}
@keyframes fadeIn01 {
  0% {
    opacity: 0;
    translate: 0 50px;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}
@keyframes fadeInRightToleft01 {
  0% {
    opacity: 0;
    scale: 0;
  }
  100% {
    opacity: 1;
    translate: 0 -50%;
    scale: 1;
  }
}
@keyframes fadeInLeftToRight01 {
  0% {
    opacity: 0;
    scale: 0;
  }
  100% {
    opacity: 1;
    translate: 0 -50%;
    scale: 1;
  }
}


/* plugin
---------------------------------------------------------- */
.fancybox-bg {
  background: rgba(236, 122, 172, 1.0) !important;
}

/* contents
---------------------------------------------------------- */
.ct_bg .wrap01 {
  display: flex;
  flex-wrap: wrap;
}
.ct_bg .wrap01.bC {
  justify-content: center;
}
.ct_bg .wrap01.between {
  justify-content: space-between;
}
.ct_bg .wrap01.aC {
  align-items: center;
}

.ct_bg .localNavi01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 38px;
  column-gap: 8px;
}

.ct_bg .localNavi01 > li {
  position: relative;
  width: 240px;
}
.ct_bg .localNavi01 > li > a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  padding: 5px;
  aspect-ratio: 240 / 92;
  background: no-repeat center / cover;
  color: #fff;
  font-family: "Coiny", system-ui;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.0;
  text-decoration: none;
  text-align: center;
  transition: background .5s ease;
}
.ct_bg .localNavi01 > li:nth-child(odd) > a {
  background-image: url(../img/bg07.svg);
}
.ct_bg .localNavi01 > li:nth-child(even) > a {
  background-image: url(../img/bg08.svg);
}

@media (any-hover: hover) {
.ct_bg .localNavi01 > li > a:hover {
  animation: poyo .6s;
}
}
.ct_bg .localNavi01 > li > a > .font01 {
  display: block;
  padding-top: 4px;
  width: 100%;
  font-family: var(--font-m-plus-rounded);
  font-size: 13px;
  font-weight: 500;
  rotate: .03deg;
}

@media screen and (max-width: 1040px) {
  .ct_bg .localNavi01 {
    column-gap: .76vw;
  }

  .ct_bg .localNavi01 > li {
    width: 22.5vw;
  }
  .ct_bg .localNavi01 > li > a {
    font-size: 2.2vw;
  }
  .ct_bg .localNavi01 > li > a > .font01 {
    font-size: 1.3vw;
  }

}

.ct_bg .localNavi02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 40px;
  column-gap: min(25px, 2.08vw);
}

.ct_bg .localNavi02 > li {
  position: relative;
  width: 40.66%;
}
.ct_bg .localNavi02 > li > a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: min(20px, 1.6vw);
  position: relative;
  padding: 15px 25px 15px 15px;
  width: 100%;
  border-radius: 40px;
  background: #EC7AAC;
  color: #fff;
  font-size: min(25px, 2.08vw);
  font-weight: 900;
  text-decoration: none;
}
.ct_bg .localNavi02 > li > a::before {
  position: absolute;
  bottom: 7px;
  right: 7px;
  content: "";
  width: min(58px, 4.83vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
  rotate: 180deg;
}
.ct_bg .localNavi02 > li > a::after {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: min(25px, 2.08vw);
  content: "";
  width: min(15px, 1.25vw);
  aspect-ratio: 10 / 11;
  background: url(../img/ic04.svg) no-repeat center / cover;
  pointer-events: none;
  rotate: 90deg;
}
@media (any-hover: hover) {
.ct_bg .localNavi02 > li > a:hover {
  animation: poyo .6s;
}
}
.ct_bg .localNavi02 > li > a > .image01 {
  width: min(120px, 10vw);
  border-radius: 25px;
  background: #FFF;
  overflow: hidden;
}

.ct_bg .frameArea01 {
  position: relative;
  padding: 125px 20px 80px;
}
.ct_bg .frameArea01.firstBlock01 {
  padding-top: 186px;
}
.index .ct_bg .frameArea01.firstBlock01 {
  padding-top: 40px;
}
.ct_bg .frameArea01.noTilte01 {
  padding-top: 90px;
  padding-bottom: 50px;
}

.ct_bg .frameArea01.firstBlock01::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 1400px;
  aspect-ratio: 1400 / 361;
  background: url(../img/bg01.svg) no-repeat center top / cover;
  pointer-events: none;
}

.ct_bg .frameArea01::after {
  position: absolute;
  bottom: -3.33vw;
  left: 0;
  content: "";
  z-index: 5;
  width: 100%;
  aspect-ratio: 1400 / 48;
  background: no-repeat center top / cover;
}

.ct_bg .frameArea01.type01 {
  background: #FDEDF4;
}
.ct_bg .frameArea01.type01::after {
  background-image: url(../img/bg04.svg);
}
.ct_bg .frameArea01.type02 {
  background: #FDFBED;
}
.ct_bg .frameArea01.type02::after {
  background-image: url(../img/bg05.svg);
}
.ct_bg .frameArea01.type03 {
  background: #E7F2FC;
}
.ct_bg .frameArea01.type03::after {
  background-image: url(../img/bg06.svg);
}

.ct_bg .frameArea01 > .inner01 {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  max-width: 1200px;
}
.ct_bg .frameArea01.firstBlock01 > .inner01::before {
  position: absolute;
  top: -186px;
  left: 50%;
  translate: -50% 0;
  content: "";
  width: 1400px;
  aspect-ratio: 1400 / 366;
  background: url(../img/bg03.png) no-repeat center top;
  pointer-events: none;
}
.index .ct_bg .frameArea01.firstBlock01 > .inner01::before {
  top: -40px;
  aspect-ratio: 1400 / 851;
  background: url(../img/bg02.png) no-repeat center top / cover;
}

.ct_bg .frameArea02 {
  position: relative;
  margin-top: 50px;
  padding: min(25px, 20.8vw);
  border-radius: 15px;
  background: #FFF;
}
.ct_bg .frameArea02::before {
  position: absolute;
  top: -2px;
  left: -2px;
  content: "";
  width: min(124px, 10.33vw);
  aspect-ratio: 124 / 78;
  background: url(../img/bg09.svg) no-repeat center top / cover;
}
.ct_bg .frameArea02::after {
  position: absolute;
  bottom: -2px;
  right: -2px;
  content: "";
  width: min(124px, 10.33vw);
  aspect-ratio: 124 / 78;
  background: url(../img/bg10.svg) no-repeat center top / cover;
}

.ct_bg .frameArea02 > .text01 {
  font-size: min(24px, 2vw);
  font-weight: 900;
  rotate: .03deg;
}
.ct_bg .frameArea02 > .text02 {
  margin-top: 10px;
  font-size: min(16px, 1.3vw);
  rotate: .03deg;
}
.ct_bg .frameArea02 > .button01 {
  display: table;
  margin-top: 10px;
}

.ct_bg .frameArea02 > .button01 > a {
  display: block;
  position: relative;
  padding: min(10px, .8vw) min(40px, 3.333vw) min(10px, .8vw) min(30px, 2.5vw);
  border-radius: 100vmax;
  background: #EC7AAC;
  color: #fff;
  font-size: min(14px, 1vw);
  font-weight: 900;
  text-decoration: none;
}
.ct_bg .frameArea02 > .button01 > a::before {
  position: absolute;
  top: 3px;
  left: 4px;
  content: "";
  width: min(27px, 2.25vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
}
.ct_bg .frameArea02 > .button01 > a::after {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: min(15px, 1.25vw);
  content: "";
  width: min(10px, .8vw);
  aspect-ratio: 10 / 11;
  background: url(../img/ic04.svg) no-repeat center / cover;
  pointer-events: none;
}
@media (any-hover: hover) {
.ct_bg .frameArea02 > .button01 > a:hover {
  animation: poyo .6s;
}
}

.ct_bg .frameArea03 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  margin: 50px auto 0;
  padding: 10px;
  max-width: 678px;
  border-radius: 45px;
  background: #FCDBE9;
}
.ct_bg .frameArea03::before {
  position: absolute;
  bottom: -37px;
  left: 40.5px;
  content: "";
  width: 95px;
  aspect-ratio: 95 / 97;
  background: url(../../startguide/img/bg01.svg) no-repeat center top / cover;
}
.ct_bg .frameArea03::after {
  position: absolute;
  bottom: -40px;
  right: 40px;
  content: "";
  width: 95px;
  aspect-ratio: 95 / 90;
  background: url(../../startguide/img/bg02.svg) no-repeat center top / cover;
}

.ct_bg .frameArea03 > .text01 {
  position: relative;
  z-index: 2;
  padding-left: 30px;
  width: calc(100% - 168px);
  font-size: 20px;
  rotate: -.03deg;
}

.ct_bg .frameArea03 > .image01 {
  position: relative;
  z-index: 2;
  width: 168px;
  border-radius: 35px;
  overflow: hidden;
}

.ct_bg .frameArea04 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  margin: 40px auto 0;
  padding: 10px min(25px, 2.0vw);
  background: no-repeat center top / contain;
  width: min(570px, 100%);
  aspect-ratio: 570/ 211;
}
.ct_bg .frameArea04 + .frameArea04 {
  margin-top: 20px;
}

.ct_bg .frameArea04.type01 {
  background-image: url(../../startguide/img/bg03.svg);
}
.ct_bg .frameArea04.type02 {
  background-image: url(../../startguide/img/bg04.svg);
}

.ct_bg .frameArea04 > .text01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-right: min(40px, 1.33vw);
  width: calc(100% - min(150px, 12.0vw));
  color: #DC3E83;
  font-size: min(30px, 2.41vw);
  font-weight: 900;
}

.ct_bg .frameArea04 > .text01 > .num01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-right: min(20px, 1.62vw);
  padding-top: 5px;
  width: min(70px, 5.83vw);
  aspect-ratio: 1 / 1;
  background: url(../img/bg14.png) no-repeat 0 0 / cover;
  color: #FFF;
  text-align: center;
  font-family: "Coiny", system-ui;
  font-size: min(45px, 3.62vw);
  font-weight: 400;
  line-height: 1.0;
  -webkit-text-stroke: 2px #DC3E83;
	text-stroke: 2px #DC3E83;
}

.ct_bg .frameArea04 > .image01 {
  position: relative;
  z-index: 2;
  padding: 5px;
  width: min(150px, 12.0vw);
  border-radius: 20px;
  border: min(5px, .33vw) solid #FCDAE9;
  background: #FFF;
  overflow: hidden;
}

.ct_bg .frameArea05 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  padding: min(15px, 1.25vw) min(15px, 1.25vw) min(15px, 1.25vw) min(30px, 2.5vw);
  border-radius: 45px;
  background: #FFF;
}

.ct_bg .frameArea05 > .block01 {
  width: min(344px, 28.66vw);
}
.ct_bg .frameArea05 > .block01 > .text01 {
  font-size: min(20px, 1.66vw);
  line-height: 1.4;
  rotate: .03deg;
}
.ct_bg .frameArea05 > .block01 > .text01 > strong {
  font-size: min(30px, 2.5vw);
}
.ct_bg .frameArea05 > .block01 > .image01 {
  margin-top: 10px;
}

.ct_bg .frameArea05 > .image01 {
  width: min(150px, 10.5vw);
}

.ct_bg .frameArea06 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  margin-top: 80px;
  padding: min(40px, 3.225vw) min(60px, 4.83vw);
  aspect-ratio: 1207 / 301;
  background: url(../../startguide/img/bg05.png) no-repeat center top / cover;
}

.ct_bg .frameArea07 {
  margin-top: 76px;
  padding: 0 min(45px, 3.629vw) min(45px, 3.629vw);
  border-radius: 80px;
  background: #FFF;
  box-shadow: 4px 4px 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .mainArea01 {
  margin: 0 auto;
  max-width: 1016px;
}

.ct_bg .mainArea01 > .title01 {
  margin: 0 auto;
  width: 300px;
}
.ct_bg .mainArea01 > .title01 img {
  width: 100%;
  height: auto;
}

.ct_bg .mainSlider01 {
  margin: 25px auto 0;
  padding: 0 8px;
}

.ct_bg .mainSlider01 .image01 img {
  display: table;
  margin: 0 auto;
}

.ct_bg .mainSlider01 .image01 img {
  border-radius: 30px;
  box-shadow: 8px 8px 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .slideInner01 {
  margin-top: 20px;
}
.ct_bg .swiper-pagination01 {
  position: relative;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 20px;
}
.ct_bg .swiper-pagination-bullet {
  margin: 0 !important;
  width: 20px;
  height: 20px;
  opacity: 1.0;
  background: rgba(133, 184, 232, 0.30);
  transition: background-color .3s ease, border-color .3s ease;
}

.ct_bg .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #85B8E8;;
}

.ct_bg .col01 {
  margin-top: 50px;
  width: 51.66%;
}
.ct_bg .col01 > .text01 {
  position: relative;
  padding-left: min(33px, 2.75vw);
  font-size: min(32px, 2.66vw);
  font-weight: 900;
  rotate: .03deg;
}
.ct_bg .col01 > .text01::before {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  content: "";
  width: min(25px, 2vw);
  aspect-ratio: 1 / 1;
  background: url(../img/ic03.svg) no-repeat center / cover;
}

.ct_bg .col01 > .text02 {
  margin-top: 10px;
  font-size: min(24px, 2vw);
  font-weight: 900;
  rotate: .03deg;
}

.ct_bg .col02 {
  margin-top: 50px;
  width: 43.33%;
}

.ct_bg .col03 {
  margin-top: 80px;
  width: 47.5%;
}
.ct_bg .col03 > .title01 {
  position: relative;
  padding: min(13px, 1.08vw) 0 min(23px, 1.91vw) min(110px, 9.16vw);
  color: #DC3E83;
  font-size: min(40px, 3.33vw);
  font-weight: 900;
  line-height: 1.4;
}
.ct_bg .col03 > .title01::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  height: calc(100% - 10px);
  aspect-ratio: 1 / 1;
  background: no-repeat center / cover;
}
.ct_bg .col03 > .title01.type01::before {
  background-image: url(../../startguide/img/ic01.png);
}
.ct_bg .col03 > .title01.type02::before {
  background-image: url(../../startguide/img/ic02.png);
}

.ct_bg .col03 > .title01::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-image: linear-gradient(to right, #DC3E83 50%, transparent 50%);
  background-size: 14px 100%;
  background-repeat: repeat-x;
}

.ct_bg .col03 > .image01 {
  margin: 40px auto 0;
  width: min(355px, 29.58vw);
}

.ct_bg .col04 {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  position: relative;
  width: 47.22%;
}

.ct_bg .col04 > .title01 {
  position: relative;
  padding-bottom: min(10px, .8vw);
  width: 58.82%;
  color: #DC3E83;
  font-size: min(30px, 2.419vw);
  font-weight: 900;
  line-height: 1.2;
}

.ct_bg .col04 > .title01::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-image: linear-gradient(to right, #DC3E83 50%, transparent 50%);
  background-size: 14px 100%;
  background-repeat: repeat-x;
}

.ct_bg .col04 > .wrap01 {
  width: 58.82%;
}

.ct_bg .col04 .block01 > .text01 {
  margin-top: min(20px, 1.612vw);
  font-size: min(20px, 1.612vw);
  font-weight: 500;
  rotate: -.03deg;
}
.ct_bg .col04 .block01 > .text02 {
  margin-top: min(20px, 1.612vw);
  font-size: min(12px, .96vw);
  font-weight: 500;
  rotate: -.03deg;
}
.ct_bg .col04 .image01 {
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  padding: min(10px, .8vw);
  width: min(180px, 14.51vw);
  border-radius: min(20px, 1.612vw);
  background: #FFF;
  overflow: hidden;
}
.ct_bg .col04 .image01 img {
  border-radius: min(10px, .8vw);
  width: 100%;
}

.ct_bg .col05 {
  width: 34.23%;
}

.ct_bg .col05 > .image01 {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.ct_bg .col05 > .image01 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.ct_bg .col05 > .image01 img {
  animation: fadeImg01 4s infinite steps(1);
}

.ct_bg .col05 > .image01 img:nth-child(1) {
  animation-delay: 0s;
}
.ct_bg .col05 > .image01 img:nth-child(2) {
  animation-delay: 2s;
  opacity: 0;
}

.ct_bg .col05 > .text01 {
  display: table;
  margin: 15px auto 0;
  padding: 2px 12px;
  border-radius: 4px;
  border: 1px solid #DC3E83;
  background: #FFF;
  color: #DC3E83;
  font-size: min(14px, 1.1vw);
  rotate: .03deg;
  line-height: 1.8;
}
.ct_bg .col05 > .text02 {
  margin-top: 5px;
  font-size: min(16px, 1.33vw);
  rotate: .03deg;
  line-height: 1.8;
  text-align: center;
}
.ct_bg .col05 > .text02 > .font01 {
  font-size: min(22px, 1.83vw);
}
.ct_bg .col05 > .mallLinkTxt {
  width: 78.9%;
}
.ct_bg .col05 > .mallLinkTxt > a {
  font-size: min(25px, 2.01vw);
}
.ct_bg .col05 > .mallLinkTxt > a > span::before {
  position: absolute;
  width: min(31px, 2.5vw);
}
.ct_bg .col05 > .mallLinkTxt > a > span.reserve::before {
  width: min(31px, 2.5vw);
}
.ct_bg .col05 > .mallLinkTxt > a > span.waiting::before {
  width: min(31px, 2.5vw);
}

.ct_bg .col06 {
  width: 60.36%;
}

.ct_bg .col06 > .imageBlock01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 10px;
  padding: min(10px, .8vw) min(30px, 2.41vw) min(15px, 1.2vw) min(30px, 2.41vw);
  border-radius: 40px;
}
.ct_bg .col06 > .imageBlock01.type01 {
  background: #FAE3E4;
}
.ct_bg .col06 > .imageBlock01.type02 {
  background: #EFE9F4;
}
.ct_bg .col06 > .imageBlock01.type03 {
  background: #D2ECFA;
}
.ct_bg .col06 > .imageBlock01.type04 {
  background: #FFFCE2;
}

.ct_bg .col06 > .imageBlock01 > .image01 {
  width: min(147px, 11.85vw);
}
.ct_bg .col06 > .imageBlock01 > .image02 {
  width: min(370px, 29.83vw);
}

.ct_bg .col06 > .imageBlock02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  column-gap: min(20px, 1.6vw);
  margin-top: 10px;
  padding: min(10px, .8vw) 0;
  border-radius: 40px;
}
.ct_bg .col06 > .imageBlock02.type01 {
  background: #FAE3E4;
}
.ct_bg .col06 > .imageBlock02.type02 {
  background: #EFE9F4;
}
.ct_bg .col06 > .imageBlock02.type03 {
  column-gap: min(10px, .8vw);
  background: #D2ECFA;
}
.ct_bg .col06 > .imageBlock02.type04 {
  background: #FFFCE2;
}
.ct_bg .col06 > .imageBlock02 > .image01 {
  width: min(260px, 19.96vw);
}
.ct_bg .col06 > .imageBlock02 > .image02 {
  width: min(170px, 13.7vw);
}
.ct_bg .col06 > .imageBlock02 > .image03 {
  width: min(200px, 16.12vw);
}
.ct_bg .col06 > .imageBlock02 > .image04 {
  width: min(150px, 12vw);
}

.ct_bg .col07 {
  width: 43.95%;
}

.ct_bg .col07 > .image01 {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.ct_bg .col07 > .image01 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.ct_bg .col07 > .image01 img {
  animation: fadeImg01 4s infinite steps(1);
}

.ct_bg .col07 > .image01 img:nth-child(1) {
  animation-delay: 0s;
}
.ct_bg .col07 > .image01 img:nth-child(2) {
  animation-delay: 2s;
  opacity: 0;
}

.ct_bg .col08 {
  width: 50.71%;
}
.ct_bg .col08 > .wrap01  > .text01 {
  display: inline-block;
  margin-right: 5px;
  padding: 2px 12px;
  border-radius: 4px;
  border: 1px solid #DC3E83;
  background: #FFF;
  color: #DC3E83;
  font-size: min(14px, 1.1vw);
  rotate: .03deg;
  line-height: 1.8;
}
.ct_bg .col08 > .wrap01  > .text02 {
  display: inline-block;
  font-size: min(16px, 1.33vw);
  rotate: .03deg;
  line-height: 1.8;
  text-align: center;
}
.ct_bg .col08 > .wrap01 > .text02 > .font01 {
  font-size: min(22px, 1.83vw);
}
.ct_bg .col08 > .mallLinkTxt {
  width: 52.63%;
}
.ct_bg .col08 > .mallLinkTxt > a {
  font-size: min(25px, 2.01vw);
}
.ct_bg .col08 > .mallLinkTxt > a > span::before {
  position: absolute;
  width: min(31px, 2.5vw);
}
.ct_bg .col08 > .mallLinkTxt > a > span.reserve::before {
  width: min(31px, 2.5vw);
}
.ct_bg .col08 > .mallLinkTxt > a > span.waiting::before {
  width: min(31px, 2.5vw);
}
.ct_bg .col08 > .imageBlock01 {
  margin-top: 30px;
  padding: min(13px, 1vw) 0 min(20px, 1.61vw) min(25px, 2.01vw);
  border-radius: 40px;
}
.ct_bg .col08 > .imageBlock01.type01 {
  background: #FAE3E4;
}
.ct_bg .col08 > .imageBlock01.type02 {
  background: #EFE9F4;
}
.ct_bg .col08 > .imageBlock01.type03 {
  background: #D2ECFA;
}
.ct_bg .col08 > .imageBlock01.type04 {
  background: #FFFCE2;
}
.ct_bg .col08 > .imageBlock01 > .image01 {
  width: min(118px, 9.5vw);
}

.ct_bg .movieWrap01 {
  position: relative;
  margin: 50px auto 0;
  max-width: 1000px;
}
.ct_bg .movieWrap01 > .text01 {
  margin-top: 9px;
  font-size: min(16px, 1.29vw);
  text-align: center;
  rotate: .03deg;
}

.ct_bg .movieWrap01 > .inner01 {
  padding: min(64px, 5.33vw);
  aspect-ratio: 1000 / 620;
  background: url(../img/bg13.svg) no-repeat center / cover;
}

.ct_bg .movieWrap01 > .inner01 > .movie01 {
  position: relative;
  border-radius: 40px;
  overflow: hidden;
}
.ct_bg .movieWrap01 > .inner01 > .movie01 > a::after {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  content: "";
  width: min(130px, 10.83vw);
  aspect-ratio: 1 / 1;
  background: url(../img/ic09.svg) no-repeat center / cover;
  pointer-events: none;
}
.ct_bg .movieWrap01 > .inner01 > .new01 {
  position: absolute;
  z-index: 2;
  top: -9px;
  left: -9px;
  width: min(109px, 9.08vw);
}

.ct_bg .movieWrap01 > .inner01 > .movie01:not(:has(.new01)) img {
  scale: 1.0;
  transition: scale .3s;
}
@media (any-hover: hover) {
.ct_bg .movieWrap01 > .inner01 > .movie01:not(:has(.new01)) > a:hover img {
  scale: 1.1;
}
.ct_bg .movieWrap01 > .inner01 > .movie01 > a:hover::after {
  animation: poyo .6s;
}
}

.ct_bg .movieWrap02 {
  position: relative;
  margin-top: 20px;
}
.ct_bg .movieWrap02.short {
  margin-left: auto;
  margin-right: auto;
  max-width: 356px;
}

.ct_bg .movieWrap02 > .text01 {
  margin-top: 9px;
  font-size: min(16px, 1.29vw);
  text-align: center;
  rotate: .03deg;
}

.ct_bg .movieWrap02 > .movie01 {
  position: relative;
  border-radius: 40px;
  overflow: hidden;
}
.ct_bg .movieWrap02.short > .movie01 {
  border-radius: 15px;
}
.ct_bg .movieWrap02 > .movie01::after {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  content: "";
  width: min(130px, 10.83vw);
  aspect-ratio: 1 / 1;
  background: url(../img/ic09.svg) no-repeat center / cover;
  pointer-events: none;
}
.ct_bg .movieWrap02 > .new01 {
  position: absolute;
  z-index: 2;
  top: -9px;
  left: -9px;
  width: min(109px, 9.08vw);
}

.ct_bg .movieWrap02 > .movie01:not(:has(.new01)) img {
  scale: 1.0;
  transition: scale .3s;
}
@media (any-hover: hover) {
.ct_bg .movieWrap02 > .movie01:not(:has(.new01)) > a:hover img {
  scale: 1.1;
}
}
.ct_bg .movieWrap02.short > .movie01:not(:has(.new01)) img {
  width: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
}

.ct_bg .slideArea01 {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}
.ct_bg .slideArea01 .image01 {
  max-width: 400px;
}

.ct_bg .slideArea01 .image01 img {
  width: 400px;
  aspect-ratio: 1 / 1;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../../img/bg01.svg);
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-image: url(../../img/bg01.svg);
}

.ct_bg .slideArea01 .swiper-wrapper {
  transition-timing-function: linear;
}

.ct_bg .section01 {
  margin-top: 50px;
}
.ct_bg .section02 {
  margin-top: 60px;
}
.ct_bg .section03 {
  margin-top: 40px;
}
.ct_bg :is(.heading03, .heading04, .heading05) + .section03 {
  margin-top: 20px;
}

.ct_bg .heading01 {
  display: table;
  position: relative;
  margin: 0 auto;
  padding-left: min(276px, 23vw);
  padding-right: min(276px, 23vw);
  font-family: "Coiny", system-ui;
  font-size: min(60px, 5vw);
  font-weight: 400;
  letter-spacing: .04%;
  line-height: 1.0;
  text-align: center;
}
.ct_bg .heading01.type02 {
  color: #DC3E83;
  font-family: var(--font-m-plus-rounded);
  font-size: min(50px, 4.16vw);
  font-weight: 900;
  line-height: 1.1;
}

.ct_bg .heading01::before {
  position: absolute;
  top: 50%;
  translate: 50px -50%;
  left: 0;
  content: "";
  width: min(207px, 17.25vw);
  aspect-ratio: 207 / 63;
  background: url(../img/ic01.svg) no-repeat center top / cover;
  opacity: 0;
}
.ct_bg .heading01.is_show::before {
  animation: fadeInRightToleft01 .3s .5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.ct_bg .heading01::after {
  position: absolute;
  top: 50%;
  translate: -50px -50%;
  right: 0;
  content: "";
  width: min(207px, 17.25vw);
  aspect-ratio: 207 / 63;
  background: url(../img/ic02.svg) no-repeat center top / cover;
  opacity: 0;
}
.ct_bg .heading01.is_show::after {
  animation: fadeInLeftToRight01 .3s .5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.ct_bg .heading01 > .inner01 {
  display: block;
  opacity: 0;
}
.ct_bg .heading01.is_show > .inner01 {
  animation: bounceIn .8s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.ct_bg .heading01 > .inner01 > .font01 {
  display: block;
  margin-top: 15px;
  color: #DC3E83;
  font-family: var(--font-m-plus-rounded);
  font-size: min(18px, 1.5vw);
  font-weight: 500;
  letter-spacing: 0;
  rotate: .03deg;
}

.ct_bg .heading02 {
  position: relative;
  padding-bottom: 10px;
  color: #DC3E83;
  font-size: min(40px, 3.22vw);
  font-weight: 900;
}
.ct_bg .heading02::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-image: linear-gradient(to right, #DC3E83 50%, transparent 50%);
  background-size: 14px 100%;
  background-repeat: repeat-x;
}

.ct_bg .heading03 {
  position: relative;
  margin: 0 20px;
  padding: 12px 0;
  border-top: 3px solid #EC7AAC;
  border-bottom: 3px solid #EC7AAC;
  background: #fff;
  font-size: min(25px, 2.0vw);
  font-weight: 800;
}
.ct_bg .heading03::before {
  position: absolute;
  left: -20px;
  top: -3px;
  content: "";
  width: 35px;
  aspect-ratio: 35 / 31;
  background: url(../img/bg17.svg) no-repeat 0 0 / cover;
}
.ct_bg .heading03::after {
  position: absolute;
  right: -20px;
  bottom: -3px;
  content: "";
  width: 35px;
  aspect-ratio: 35 / 31;
  background: url(../img/bg17.svg) no-repeat 0 0 / cover;
  rotate: 180deg;
}
.ct_bg .heading03 > .inner01 {
  position: relative;
  display: inline-block;
  rotate: .03deg;
}

.ct_bg .heading04 {
  position: relative;
  padding-bottom: 10px;
  background: #fff;
  font-size: min(20px, 1.61vw);
  font-weight: 800;
}
.ct_bg .heading04:after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-image: linear-gradient(to right, #DC3E83 50%, transparent 50%);
  background-size: 14px 100%;
  background-repeat: repeat-x;
}
.ct_bg .heading05 {
  position: relative;
  padding-left: 18px;
  background: #fff;
  font-size: min(20px, 1.61vw);
  font-weight: 800;
}
.ct_bg .heading05:before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 8px;
  height: 100%;
  border-radius: 20px;
  background: #EC7AAC;
}


.ct_bg .hgroup01 {
  position: relative;
  translate: 0 -20px;
  margin: 0 -10px;
  padding: 20px 40px;
  border-radius: 50px;
  background: #EC7AAC;
}
.ct_bg .hgroup01::before {
  position: absolute;
  top: 8px;
  left: 8px;
  content: "";
  width: min(60px, 5vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
  opacity: .5;
}
.ct_bg .hgroup01::after {
  position: absolute;
  bottom: 8px;
  right: 8px;
  content: "";
  width: min(60px, 5vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
  rotate: 180deg;
  opacity: .5;
}

.ct_bg .hgroup01 > .title01 {
  color: #FFF;
  text-align: center;
  font-size: min(35px, 2.91vw);
  font-weight: 900;
}
.ct_bg .hgroup01 > .text01 {
  position: relative;
  margin-top: 10px;
  padding-top: 15px;
  color: #FFF;
  text-align: center;
  font-size: min(16px, 1.33vw);
  font-weight: 900;
  rotate: .03deg;
}
.ct_bg .hgroup01 > .text01::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 2px;
  background-image: linear-gradient(to right, #fff 50%, transparent 50%);
  background-size: 4px 100%;
  background-repeat: repeat-x;
}
.ct_bg .hgroup01 > .text01 > .font01 {
  display: inline-block;
  margin: 0 5px;
  padding: 0 10px;
  background: #FFF;
  border-radius: 100vmax;
  color: #EC7AAC;
  text-align: center;
  font-size: min(16px, 1.33vw);
  font-weight: 900;
  rotate: .03deg;
}
.ct_bg .hgroup01 > .text01 > .font01:first-child {
  margin-left: 0;
}

.ct_bg .productList01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 40px;
  column-gap: min(40px, 3.33vw);
  margin-top: 70px;
}

.ct_bg .productList01 > li > .image01 {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: 20px;
  overflow: hidden;
}
.ct_bg .productList01 > li > .image01 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.ct_bg .productList01 > li > .image01 img {
  animation: fadeImg01 4s infinite steps(1);
}

.ct_bg .productList01 > li > .image01 img:nth-child(1) {
  animation-delay: 0s;
}
.ct_bg .productList01 > li > .image01 img:nth-child(2) {
  animation-delay: 2s;
  opacity: 0;
}
@keyframes fadeImg01 {
  0%   { opacity: 1; }
  50%  { opacity: 0; }
  100% { opacity: 1; }
}

.ct_bg .productList01 > li > .text01 {
  margin-top: 15px;
  text-align: center;
  font-size: min(20px, 1.66vw);
  font-weight: 800;
  rotate: .03deg;
}

.ct_bg .productList01 > li > .text02 {
  display: table;
  margin: 15px auto 0;
  padding: 2px 12px;
  border-radius: 4px;
  background: #FFF;
  color: #DC3E83;
  font-size: min(14px, 1vw);
  rotate: .03deg;
  line-height: 1.8;
}
.ct_bg .productList01 > li > .text03 {
  margin-top: 5px;
  font-size: min(14px, 1vw);
  rotate: .03deg;
  line-height: 1.8;
  text-align: center;
}
.ct_bg .productList01 > li > .text03 > .font01 {
  font-size: min(18px, 1.5vw);
}

.ct_bg .productList01 > li > .button01 {
  margin-top: 10px;
}

.ct_bg .productList01 > li > .button01 > a {
  display: block;
  position: relative;
  padding: min(8px, .66vw) min(10px, .83vw) min(8px, .66vw) 0;
  border-radius: 100vmax;
  background: #fff;
  border: 2px solid #F9AACD;
  color: #EC7AAC;
  font-size: min(14px, 1vw);
  font-weight: 900;
  text-decoration: none;
  text-align: center;
  rotate: .03deg;
}
.ct_bg .productList01 > li > .button01 > a::before {
  position: absolute;
  top: 3px;
  left: 4px;
  content: "";
  width: min(27px, 2.25vw);
  aspect-ratio: 27 / 17;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../img/bg11.svg);
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-image: url(../img/bg11.svg);
  background: #F9AACD;
  pointer-events: none;
}
.ct_bg .productList01 > li > .button01 > a::after {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: min(59px, 4.91vw);
  content: "";
  width: min(10px, .8vw);
  aspect-ratio: 10 / 11;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../img/ic04.svg);
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-image: url(../img/ic04.svg);
  background: #EC7AAC;

  pointer-events: none;
}
@media (any-hover: hover) {
.ct_bg .productList01 > li > .button01 > a:hover {
  animation: poyo .6s;
}
}

.ct_bg .mallLinkTxt {
  display: block;
  margin: 16px auto 0;
}

.ct_bg .mallLinkTxt > a {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  padding: 5px min(21px, 1.75vw) 5px min(61px, 5vw);
  aspect-ratio: 242 / 90;
  background: url(../img/bg16.svg) no-repeat center / cover;
  color: #fff;
  font-size: min(20px, 1.6vw);
  font-weight: 900;
  line-height: 1.0;
  rotate: .03deg;
  text-decoration: none;
}
@media (any-hover: hover) {
.ct_bg .mallLinkTxt > a:hover {
  animation: poyo .6s;
}
}
.ct_bg .mallLinkTxt > a > span::before {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: min(31px, 2.58vw);
  content: "";
  width: min(25px, 2.08vw);
  aspect-ratio: 25 / 26;
  background: url(../img/ic05.svg) no-repeat 0 0 / cover;
}
.ct_bg .mallLinkTxt > a > span.reserve::before {
  width: min(23px, 1.91vw);
  aspect-ratio: 23 / 22;
  background-image: url(../img/ic06.svg);
}
.ct_bg .mallLinkTxt > a > span.waiting::before {
  width: min(24px, 2vw);
  aspect-ratio: 24 / 22;
  background-image: url(../img/ic07.svg);
}

.ct_bg .btn01 {
  display: table;
  margin: 40px auto 0;
  width: 240px;
}

.ct_bg .productList01 + .btn01 {
  margin-top: 70px;
}

.ct_bg .btn01 > a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  position: relative;
  padding: 8px 47px 0 35px;
  aspect-ratio: 240 / 92;
  background: url(../img/bg12.svg) no-repeat center / cover;
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  text-decoration: none;
  text-align: center;
  rotate: .03deg;
}
.ct_bg .btn01 > a::after {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 25px;
  content: "";
  margin-top: 4px;
  width: 12px;
  aspect-ratio: 10 / 11;
  background: url(../img/ic04.svg) no-repeat center / cover;
  pointer-events: none;
}
@media (any-hover: hover) {
.ct_bg .btn01 > a:hover {
  animation: poyo .6s;
}
}

.ct_bg .btn02 {
  display: table;
  margin-top: 20px;
}
.ct_bg .btn02.psCenter {
  margin-left: auto;
  margin-right: auto;
}

.ct_bg .btn02 > a {
  display: block;
  position: relative;
  padding: min(10px, .8vw) min(40px, 3.333vw) min(10px, .8vw) min(30px, 2.5vw);
  border-radius: 20px;
  background: #EC7AAC;
  color: #fff;
  font-size: min(16px, 1.29vw);
  rotate: .03deg;
  font-weight: 900;
  text-decoration: none;
}
.ct_bg .btn02 > a::before {
  position: absolute;
  top: 3px;
  left: 4px;
  content: "";
  width: min(27px, 2.25vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
}
.ct_bg .btn02 > a::after {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: min(15px, 1.25vw);
  content: "";
  width: min(10px, .8vw);
  aspect-ratio: 10 / 11;
  background: url(../img/ic04.svg) no-repeat center / cover;
  pointer-events: none;
}
@media (any-hover: hover) {
.ct_bg .btn02 > a:hover {
  animation: poyo .6s;
}
}


.ct_bg .comingSoon01 {
  margin: 50px auto 0;
  max-width: 526px;
}

.ct_bg .imgBlock01 {
  position: relative;
  margin: 50px auto 0;
  max-width: 1000px;
}

.ct_bg .imgBlock01 img {
  width: 100%;
}

.ct_bg .imgBlock01 > .text01 {
  position: absolute;
  z-index: 2;
  top: min(168px, 16.15vw);
  left: min(32px, 3.07vw);
  width: min(142px, 13.65vw);
}

.ct_bg .imgBlock01 > .text02 {
  position: absolute;
  z-index: 2;
  top: min(168px, 16.15vw);
  left: min(208px, 20vw);
  width: min(144px, 13.84vw);
}

.ct_bg .imgBlock01 > .text03 {
  position: absolute;
  z-index: 2;
  top: min(168px, 16.15vw);
  left: min(384px, 36.92vw);
  width: min(160px, 15.38vw);
}

.ct_bg .imgBlock01 > .image01 {
  position: absolute;
  top: min(200px, 19.23vw);
  left: min(44px, 4.23vw);
  padding: min(13px, 1.25vw);
  width: min(164px, 15.76vw);
  border-radius: 32px;
  border: 3px solid #9BD2BE;
  background: #FFF;
}
.ct_bg .imgBlock01 > .image02 {
  position: absolute;
  top: min(200px, 19.23vw);
  left: min(220px, 21.15vw);
  padding: min(13px, 1.25vw);
  width: min(164px, 15.76vw);
  border-radius: 32px;
  border: 3px solid #EE8EA4;
  background: #FFF;
}
.ct_bg .imgBlock01 > .image03 {
  position: absolute;
  top: min(200px, 19.23vw);
  left: min(396px, 38.07vw);
  padding: min(13px, 1.25vw);
  width: min(164px, 15.76vw);
  border-radius: 32px;
  border: 3px solid #8FD3F5;
  background: #FFF;
}

.ct_bg .imgBlock01 > .image04 {
  position: absolute;
  z-index: 2;
  left: min(59px, 5.67vw);
  top: min(413px, 39.71vw);
  padding: min(5px, .48vw);
  width: min(104px, 10vw);
  border-radius: 16px;
  border: 3px solid #EE8EA4;
  background: #FFF;
  rotate: -10deg;
}
.ct_bg .imgBlock01 > .image05 {
  position: absolute;
  left: min(166px, 15.96vw);
  top: min(410px, 39.42vw);
  padding: min(5px, .48vw);
  width: min(104px, 10vw);
  border-radius: 16px;
  border: 3px solid #9DD8F6;
  background: #FFF;
  rotate: 10deg;
}
.ct_bg .imgBlock01 > .image06 {
  position: absolute;
  z-index: 2;
  left: min(273px, 26.25vw);
  top: min(417px, 40vw);
  padding: min(5px, .48vw);
  width: min(104px, 10vw);
  border-radius: 16px;
  border: 3px solid #EE8EA4;
  background: #FFF;
  rotate: -10deg;
}
.ct_bg .imgBlock01 > .image07 {
  position: absolute;
  left: min(385px, 37vw);
  top: min(409px, 39.32vw);
  padding: min(5px, .48vw);
  width: min(104px, 10vw);
  border-radius: 16px;
  border: 3px solid #9BD2BE;
  background: #FFF;
  rotate: 10deg;
}

.ct_bg .itemList01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: min(60px, 4.83vw);
  column-gap: 5%;
  margin-top: 80px;
}

.ct_bg .itemList01 > li {
  padding: 0 min(45px, 3.6vw) min(45px, 3.6vw) min(45px, 3.6vw);
  width: 47.5%;
  border-radius: min(80px, 6.45vw);
  background: #FFF;
  box-shadow: 4px 4px 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .itemList01 > li > .image01 {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.ct_bg .itemList01 > li > .image01 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.ct_bg .itemList01 > li > .image01 img {
  animation: fadeImg01 4s infinite steps(1);
}

.ct_bg .itemList01 > li > .image01 img:nth-child(1) {
  animation-delay: 0s;
}
.ct_bg .itemList01 > li > .image01 img:nth-child(2) {
  animation-delay: 2s;
  opacity: 0;
}

.ct_bg .itemList01 > li > .text01 {
  position: relative;
  translate: 0 -20px;
  margin: 0 min(-10px, -0.8vw);
  padding: min(20px, 1.61vw);
  border-radius: min(50px, 4.0vw);
  background: #EC7AAC;
  color: #FFF;
  text-align: center;
  font-size: min(25px, 2.0vw);
  font-weight: 900;
}
.ct_bg .itemList01 > li > .text01::before {
  position: absolute;
  top: 8px;
  left: 8px;
  content: "";
  width: min(60px, 5vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
  opacity: .5;
}
.ct_bg .itemList01 > li > .text01::after {
  position: absolute;
  bottom: 8px;
  right: 8px;
  content: "";
  width: min(60px, 5vw);
  aspect-ratio: 27 / 17;
  background: url(../img/bg11.svg) no-repeat center / cover;
  pointer-events: none;
  rotate: 180deg;
  opacity: .5;
}

.ct_bg .itemList01 > li > .text02 {
  display: table;
  margin: 15px auto 0;
  padding: 2px 12px;
  border-radius: 4px;
  border: 1px solid #DC3E83;
  background: #FFF;
  color: #DC3E83;
  font-size: min(14px, 1.1vw);
  rotate: .03deg;
  line-height: 1.8;
}
.ct_bg .itemList01 > li > .text03 {
  margin-top: 5px;
  font-size: min(16px, 1.33vw);
  rotate: .03deg;
  line-height: 1.8;
  text-align: center;
}
.ct_bg .itemList01 > li > .text03 > .font01 {
  font-size: min(22px, 1.83vw);
}
.ct_bg .itemList01 > li > .mallLinkTxt {
  width: 62.5%;
}
.ct_bg .itemList01 > li > .mallLinkTxt > a {
  font-size: min(25px, 2.01vw);
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span::before {
  position: absolute;
  width: min(31px, 2.5vw);
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span.reserve::before {
  width: min(31px, 2.5vw);
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span.waiting::before {
  width: min(31px, 2.5vw);
}

.ct_bg .list01 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  align-content: flex-end;
  column-gap: min(30px, 2.41vw);
}

.ct_bg .list01 > .image01 {
  height: min(35px, 2.8vw);
}
.ct_bg .list01 img {
  width: auto;
  height: 100%;
}

.ct_bg .list02 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  align-content: flex-end;
  column-gap: min(27px, 1.57vw);
  align-self: stretch;
  margin-top: 11px;
}

.ct_bg .list02 > .image01 {
  height: min(30px, 2.4vw);
}
.ct_bg .list02 > .image02 {
  height: min(20px, 1.61vw);
}

.ct_bg .list02 img {
  width: auto;
  height: 100%;
}

.ct_bg .list03 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: min(60px, 5vw);
  margin-top: 40px;
}
.ct_bg .list03.type02 {
  justify-content: center;
  column-gap: 5%;
}

.ct_bg .list03 > li {
  width: 47.5%;
}
.ct_bg .list03.type02 > li {
  width: 30%;
}

.ct_bg .list03 > li > .text01 {
  margin-top: 10px;
  font-size: min(16px, 1.29vw);
  text-align: center;
  rotate: .03deg;
}
.ct_bg .list03 > li > .inner01 {
  position: relative;
  padding: min(10px, .8vw);
  border-radius: 26.196px;
  background: #D1E6FA;
}
.ct_bg .list03 > li > .inner01 > .movie01 {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
}
.ct_bg .list03 > li > .inner01 > .movie01 > a::after {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  content: "";
  width: min(130px, 10.83vw);
  aspect-ratio: 1 / 1;
  background: url(../img/ic09.svg) no-repeat center / cover;
  pointer-events: none;
}
.ct_bg .list03 > li > .inner01 > .new01 {
  position: absolute;
  z-index: 2;
  top: -10px;
  left: -10px;
  width: min(109px, 9.08vw);
}

.ct_bg .list03 > li > .inner01 > .movie01:not(:has(.new01)) img {
  scale: 1.0;
  transition: scale .3s;
}
@media (any-hover: hover) {
.ct_bg .list03 > li > .inner01 > .movie01:not(:has(.new01)) > a:hover img {
  scale: 1.1;
}
.ct_bg .list03 > li > .inner01 > .movie01 > a:hover::after {
  animation: poyo .6s;
}
}

.ct_bg .list03.type02 > li > .inner01 > .movie01:not(:has(.new01)) img {
  width: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
}

.ct_bg .list04 {
  margin-top: 20px;
}

.ct_bg .list04 > li {
  position: relative;
  margin-top: 10px;
  padding-left: 18px;
  font-size: min(16px, 1.29vw);
  rotate: .03deg;
}
.ct_bg .list04 > li:first-child {
  margin-top: 0;
}
.ct_bg .list04 > li::before {
  position: absolute;
  left: 0;
  top: .5em;
  content: "";
  width: 8px;
  aspect-ratio: 1 / 1;
  background: url(../img/ic10.png) no-repeat 0 0 / cover;
}

.ct_bg .list05 {
  margin-top: 20px;
  counter-reset: li;
}

.ct_bg .list05 > li {
  position: relative;
  margin-top: 10px;
  padding-left: min(36px, 2.9vw);
  font-size: min(16px, 1.29vw);
  rotate: .03deg;
}
.ct_bg .list05 > li:first-child {
  margin-top: 0;
}
.ct_bg .list05 > li::before {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 2px;
  counter-increment: li;
  content: counter(li) "";
  width: min(26px, 2.0vw);
  aspect-ratio: 1 / 1;
  background: url(../img/bg14.png) no-repeat 0 0 / cover;
  color: #FFF;
  text-align: center;
  font-family: "Coiny", system-ui;
  font-size: min(18px, 1.45vw);
  font-weight: 400;
  line-height: 1.0;
  -webkit-text-stroke: 1px #DC3E83;
	text-stroke: 1px #DC3E83;
}

.ct_bg .list06 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.ct_bg .list06 > li {
  width: 49.2%;
}

.ct_bg .editorArea01 {
  margin-top: 20px;
}
.ct_bg .day01 {
  font-size: min(14px, .96vw);
  text-align: right;
  rotate: .03deg;
}
.ct_bg .img01 {
  margin-top: 20px;
}
.ct_bg .img01:first-child {
  margin-top: 0;
}
.ct_bg .img02 {
  margin: 70px auto 0;
  text-align: center;
}
.ct_bg .img02:first-child {
  margin-top: 0;
}
.ct_bg .txt01 {
  margin-top: 20px;
  font-size: min(16px, 1.29vw);
  rotate: .03deg;
}
.ct_bg .txt01:first-child {
  margin-top: 0;
}
.ct_bg .catchTxt01 {
  margin-top: 60px;
  color: #DC3E83;
  font-size: min(20px, 1.61vw);
  font-weight: 900;
  text-align: center;
  rotate: .03deg;
}

.ct_bg .table01 {
  margin-top: 20px;
  width: 100%;
}
.ct_bg .table01 th {
  padding: 10px;
  border: 2px solid #FCDFEC;
  background: #FDEDF4;
  font-size: min(16px, 1.29vw);
}
.ct_bg .table01 td {
  padding: 10px;
  border: 2px solid #FCDFEC;
  background: #fff;
  font-size: min(16px, 1.29vw);
}

@media screen and (max-width: 767px) {
.ct_bg .localNavi01 {
  margin-top: 3.75vw;
  gap: 2.5vw;
}

.ct_bg .localNavi01 > li {
  width: 43vw;
}
.ct_bg .localNavi01 > li > a {
  padding: 1.25vw;
  font-size: 4.125vw;
}
.ct_bg .localNavi01 > li:nth-child(n+1) > a {
  background-image: url(../img/bg07.svg);
}
.ct_bg .localNavi01 > li:nth-child(n+2) > a {
  background-image: url(../img/bg08.svg);
}

.ct_bg .localNavi01 > li > a > .font01 {
  padding-top: 1.25vw;
  font-size: 2.4375vw;
}

.ct_bg .localNavi02 {
  margin-top: 10vw;
  row-gap: 2.5vw;
}

.ct_bg .localNavi02 > li {
  width: 100%;
}
.ct_bg .localNavi02 > li > a {
  column-gap: 3.75vw;
  padding: 1.25vw;
  border-radius: 100vmax;
  font-size: 5vw;
}
.ct_bg .localNavi02 > li > a::before {
  bottom: 1.5vw;
  right: 1.5vw;
  width: 10.75vw;
}
.ct_bg .localNavi02 > li > a::after {
  right: 6.25vw;
  width: 3.5vw;
}
.ct_bg .localNavi02 > li > a > .image01 {
  width: 15vw;
  border-radius: 50%;
}


.ct_bg .frameArea01 {
  position: relative;
  padding: 20vw 3.75vw 15vw;
}
.ct_bg .frameArea01.firstBlock01 {
  padding-top: 32.75vw;
}
.index .ct_bg .frameArea01.firstBlock01 {
  padding-top: 12.75vw;
}
.ct_bg .frameArea01.noTilte01 {
  padding-top: 22.5vw;
  padding-bottom: 12.5vw;
}

.ct_bg .frameArea01.firstBlock01::before {
  width: 100%;
  aspect-ratio: 400 / 134;
  background: url(../img/bg01_sp.svg) no-repeat center top / cover;
}

.ct_bg .frameArea01::after {
  bottom: -3.3vw;
  width: 100%;
  aspect-ratio: 400 / 14;
}

.ct_bg .frameArea01.type01::after {
  background-image: url(../img/bg04_sp.svg);
}
.ct_bg .frameArea01.type02::after {
  background-image: url(../img/bg05_sp.svg);
}
.ct_bg .frameArea01.type03::after {
  background-image: url(../img/bg06_sp.svg);
}

.ct_bg .frameArea01.firstBlock01 > .inner01::before {
  top: -24vw;
  width: calc(100% + 7.5vw);
  aspect-ratio: 400 / 74;
  background: url(../img/bg03_sp.png) no-repeat center top / cover;
}
.index .ct_bg .frameArea01.firstBlock01 > .inner01::before {
  top: -12.75vw;
  aspect-ratio: 400 / 154;
  background: url(../img/bg02_sp.png) no-repeat center top / cover;
}

.ct_bg .frameArea02 {
  margin-top: 7.5vw;
  padding: 6.25vw;
  border-radius: 3.75vw;
}
.ct_bg .frameArea02::before {
  top: -.05vw;
  left: -.05vw;
  width: 31vw;
}
.ct_bg .frameArea02::after {
  position: absolute;
  bottom: -.05vw;
  right: -.05vw;
  width: 31vw;
}

.ct_bg .frameArea02 > .text01 {
  font-size: 4.5vw;
}

.ct_bg .frameArea02 > .text02 {
  margin-top: 2.5vw;
  font-size: 3.5vw;
}

.ct_bg .frameArea02 > .button01 {
  margin-top: 2.5vw;
}

.ct_bg .frameArea02 > .button01 > a {
  padding: 2.25vw 10vw 2.25vw 7.5vw;
  font-size: 3.5vw;
}
.ct_bg .frameArea02 > .button01 > a::before {
  top: .75vw;
  left: 1vw;
  width: 6.75vw;
}
.ct_bg .frameArea02 > .button01 > a::after {
  right: 3.75vw;
  width: 2.5vw;
}

.ct_bg .frameArea03 {
  margin-top: 10vw;
  padding: 5vw;
  max-width: inherit;
  width: 100%;
  border-radius: 11.25vw;
}
.ct_bg .frameArea03::before {
  bottom: -12.25vw;
  left: 5vw;
  width: 23.75vw;
}
.ct_bg .frameArea03::after {
  bottom: -11.5vw;
  right: 5vw;
  width: 23.75vw;
}

.ct_bg .frameArea03 > .text01 {
  padding-left: 0;
  width: 100%;
  font-size: 4.5vw;
  text-align: center;
}

.ct_bg .frameArea03 > .image01 {
  margin: 5vw auto 0;
  width: 42vw;
  border-radius: 8.75vw;
}

.ct_bg .frameArea04 {
  margin-top: 10vw;
  padding: 3vw 3.5vw;
  width: 100%;
}
.ct_bg .frameArea04 + .frameArea04 {
  margin-top: 4.5vw;
}

.ct_bg .frameArea04 > .text01 {
  padding-right: 3.5vw;
  width: calc(100% - 24.3vw);
  font-size: 5vw;
}

.ct_bg .frameArea04 > .text01 > .num01 {
  padding-top: .75vw;
  margin-right: 3.245vw;
  width: 11.25vw;
  font-size: 7.5vw;
  -webkit-text-stroke: 2px #DC3E83;
	text-stroke: 2px #DC3E83;
}

.is-android .ct_bg .frameArea04 > .text01 > .num01 {
  padding-top: 0;
  padding-bottom: 2vw;
}

.ct_bg .frameArea04 > .image01 {
  padding: .75vw;
  width: 24.3vw;
  border-radius: 3.245vw;
  border-width: .75vw;
}

.ct_bg .frameArea05 {
  margin-top: 4vw;
  padding: 5vw;
  border-radius: 11.25vw;
}

.ct_bg .frameArea05 > .block01 {
  width: 100%;
}
.ct_bg .frameArea05 > .block01 > .text01 {
  font-size: 4.5vw;
  text-align: center;
}
.ct_bg .frameArea05 > .block01 > .text01 > strong {
  font-size: 7vw;
}
.ct_bg .frameArea05 > .block01 > .image01 {
  margin-top: 2.5vw;
}

.ct_bg .frameArea05 > .image01 {
  margin: 2.5vw auto 0;
  width: 37.5vw;
}

.ct_bg .frameArea06 {
  display: block;
  margin-top: 20vw;
  padding: 7.5vw;
  aspect-ratio: 754 / 1042;
  background: url(../../startguide/img/bg05_sp.png) no-repeat center top / 100% 100%;
}

.ct_bg .frameArea07 {
  margin-top: 13.5vw;
  padding: 0 3.75vw 3.75vw;
  border-radius: 10vw;
  box-shadow: 1vw 1vw 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .mainArea01 > .title01 {
  width: 75vw;
}

.ct_bg .mainSlider01 {
  margin-top: 6.25vw;
  padding: 0 .74vw;
}

.ct_bg .mainSlider01 .image01 img {
  display: table;
  margin: 0 auto;
}

.ct_bg .mainSlider01 .image01 img {
  border-radius: 5vw;
  box-shadow: .74vw .74vw 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .slideInner01 {
  margin-top: 5vw;
}
.ct_bg .swiper-pagination01 {
  column-gap: 5vw;
}
.ct_bg .swiper-pagination-bullet {
  width: 5vw;
  height: 5vw;
}

.ct_bg .col01 {
  margin-top: 10vw;
  width: 100%;
}
.ct_bg .col01 > .text01 {
  padding-left: 8.25vw;
  font-size: 6vw;
}
.ct_bg .col01 > .text01::before {
  width: 6.25vw;
}

.ct_bg .col01 > .text02 {
  margin-top: 2.5vw;
  font-size: 4.5vw;
}

.ct_bg .col02 {
  margin-top: 7.5vw;
  width: 100%;
}

.ct_bg .col03 {
  margin-top: 20vw;
  width: 100%;
}
.ct_bg .col03 + .col03 {
  margin-top: 15vw;
}
.ct_bg .col03 > .title01 {
  padding: 3.87vw 0 6.375vw 21.25vw;
  font-size: 7vw;
}
.ct_bg .col03 > .title01::before {
  height: calc(100% - 2.5vw);
}

.ct_bg .col03 > .title01::after {
  height: .75vw;
  background-size: 3.5vw 100%;
}

.ct_bg .col03 > .image01 {
  margin-top: 10vw;
  width: 100%;
}


.ct_bg .col04 {
  width: 100%;
}
.ct_bg .col04 + .col04 {
  margin-top: 15vw;
}


.ct_bg .col04 > .title01 {
  padding-bottom: 2.5vw;
  width: 100%;
  font-size: 5vw;
}

.ct_bg .col04 > .title01::after {
  height: .75vw;
  background-size: 3.5vw 100%;
}


.ct_bg .col04 > .wrap01 {
  margin-top: 5vw;
  width: 100%;
}

.ct_bg .col04 .block01 {
  width: 58%;
}

.ct_bg .col04 .block01 > .text01 {
  margin-top: 0;
  font-size: 4.5vw;
}
.ct_bg .col04 .block01 > .text02 {
  margin-top: 5vw;
  font-size: 2.5vw;
}
.ct_bg .col04 .image01 {
  position: inherit;
  right: 0;
  top: 0;
  translate: 0 0;
  padding: 1.715vw;
  width: 38.7%;
  border-radius: 3.3vw;
}
.ct_bg .col04 .image01 img {
  border-radius: 1.66vw;
}

.ct_bg .col05 {
  width: 100%;
}

.ct_bg .col05 > .text01 {
  margin-top: 3.75vw;
  padding: .5vw 3vw;
  border-radius: 1.25vw;
  font-size: 3vw;
}
.ct_bg .col05 > .text02 {
  margin-top: 1.25vw;
  font-size: 3.5vw;
}
.ct_bg .col05 > .text02 > .font01 {
  font-size: 5vw;
}
.ct_bg .col05 > .mallLinkTxt {
  width: 75vw;
}
.ct_bg .col05 > .mallLinkTxt > a {
  font-size: 6.25vw;
}
.ct_bg .col05 > .mallLinkTxt > a > span::before {
  width: 7.75vw;
}
.ct_bg .col05 > .mallLinkTxt > a > span.reserve::before {
  width: 7.75vw;
}
.ct_bg .col05 > .mallLinkTxt > a > span.waiting::before {
  width: 7.75vw;
}

.ct_bg .col06 {
  margin-top: 7.5vw;
  width: 100%;
}

.ct_bg .col06 > .imageBlock01 {
  display: block;
  margin-top: 2.5vw;
  padding: 2.5vw 5vw 3.75vw 5vw;
  border-radius: 10vw;
}

.ct_bg .col06 > .imageBlock01 > .image01 {
  width: 27.5vw;
}
.ct_bg .col06 > .imageBlock01 > .image02 {
  margin-top: 3.75vw;
  width: 67.5vw;
}

.ct_bg .col06 > .imageBlock02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  column-gap: 3.75vw;
  row-gap: 2.5vw;
  margin-top: 2.5vw;
  padding: 2.5vw 0;
  border-radius: 10vw;
}
.ct_bg .col06 > .imageBlock02.type03 {
  column-gap: 3.75vw;
}

.ct_bg .col06 > .imageBlock02 > .image01 {
  width: 55vw;
}
.ct_bg .col06 > .imageBlock02 > .image02 {
  width: 36.75vw;
}
.ct_bg .col06 > .imageBlock02 > .image03 {
  width: 42vw;
}
.ct_bg .col06 > .imageBlock02 > .image04 {
  width: 31.5vw;
}

.ct_bg .col07 {
  width: 100%;
}

.ct_bg .col08 {
  margin-top: 3.75vw;
  width: 100%;
}
.ct_bg .col08 > .wrap01  > .text01 {
  display: table;
  margin: 0 auto;
  padding: .5vw 3vw;
  border-radius: 1.25vw;
  font-size: 3vw;
}
.ct_bg .col08 > .wrap01  > .text02 {
  display: block;
  margin-top: 1.25vw;
  font-size: 3.5vw;
  text-align: center;
}
.ct_bg .col08 > .wrap01 > .text02 > .font01 {
  font-size: 5vw;
}
.ct_bg .col08 > .mallLinkTxt {
  width: 75vw;
}
.ct_bg .col08 > .mallLinkTxt > a {
  font-size: 6.25vw;
}
.ct_bg .col08 > .mallLinkTxt > a > span::before {
  width: 7.75vw;
}
.ct_bg .col08 > .mallLinkTxt > a > span.reserve::before {
  width: 7.75vw;
}
.ct_bg .col08 > .mallLinkTxt > a > span.waiting::before {
  width: 7.75vw;
}

.ct_bg .col08 > .imageBlock01 {
  margin-top: 7.5vw;
  padding: 2.5vw 5vw 3.75vw 5vw;
  border-radius: 10vw;
}
.ct_bg .col08 > .imageBlock01 > .image01 {
  width: 27.5vw;
}

.ct_bg .movieWrap01 {
  position: relative;
  margin: 10vw -5vw 0;
}
.ct_bg .movieWrap01 > .text01 {
  margin-top: 2.5vw;
  font-size: 3.5vw;
}

.ct_bg .movieWrap01 > .inner01 {
  position: relative;
  padding: 8.25vw 3.75vw;
}
.ct_bg .movieWrap01 > .inner01 > .new01 {
  top: .875vw;
  left: 1.75vw;
  width: 17.5vw;
}

.ct_bg .movieWrap01 > .inner01 > .movie01 {
  border-radius: 2.5vw;
}
.ct_bg .movieWrap01 > .inner01 > .movie01::after {
  width: 20vw;
}


.ct_bg .movieWrap02 {
  margin-top: 5vw;
}
.ct_bg .movieWrap02.short {
  max-width: inherit;
  width: 100%;
}

.ct_bg .movieWrap02 > .text01 {
  margin-top: 2.5vw;
  font-size: 3.5vw;
}

.ct_bg .movieWrap02 > .movie01 {
  border-radius: 2.5vw;
}
.ct_bg .movieWrap02.short > .movie01 {
  border-radius: 10vw;
}
.ct_bg .movieWrap02 > .movie01::after {
  width: 20vw;
}
.ct_bg .movieWrap02 > .new01 {
  top: .875vw;
  left: 1.75vw;
  width: 17.5vw;
}

.ct_bg .slideArea01 .image01 {
  max-width: inherit;
  width: 80vw;
}

.ct_bg .slideArea01 .image01 img {
  width: 80vw;
}

.ct_bg .section01 {
  margin-top: 10vw;
}
.ct_bg .section02 {
  margin-top: 15vw;
}
.ct_bg .section03 {
  margin-top: 10vw;
}
.ct_bg :is(.heading03, .heading04, .heading05) + .section03 {
  margin-top: 5vw;
}

.ct_bg .heading01 {
  padding-left: 16.5vw;
  padding-right: 16.5vw;
  font-size: 8.75vw;
}
.ct_bg .heading01.type02 {
  font-size: 8.75vw;
}

.ct_bg .heading01::before {
  width: 11.5vw;
  aspect-ratio: 46 / 83;
  background: url(../img/ic01_sp.svg) no-repeat center top / cover;
}
.ct_bg .heading01::after {
  width: 11.25vw;
  aspect-ratio: 46 / 83;
  background: url(../img/ic02_sp.svg) no-repeat center top / cover;
}

.ct_bg .heading01 > .inner01 > .font01 {
  margin-top: 3.75vw;
  font-size: 4vw;
}

.ct_bg .heading02 {
  padding-bottom: 2.5vw;
  font-size: 5vw;
}
.ct_bg .heading02::after {
  height: .75vw;
  background-size: 3.5vw 100%;
}


.ct_bg .heading03 {
  padding: 3vw 0;
  font-size: 5vw;
}

.ct_bg .heading04 {
  padding-bottom: 2.5vw;
  font-size: 4.5vw;
}
.ct_bg .heading04:after {
  height: .75vw;
  background-size: 3.5vw 100%;
}
.ct_bg .heading05 {
  padding-left: 4.5vw;
  font-size: 4.5vw;
}
.ct_bg .heading05:before {
  width: 2vw;
  border-radius: 1vw;
}


.ct_bg .hgroup01 {
  translate: 0 -5vw;
  margin: 0 -3.75vw;
  padding: 5vw;
  border-radius: 12.5vw;
}
.ct_bg .hgroup01::before {
  top: 2vw;
  left: 2vw;
  width: 15vw;
}
.ct_bg .hgroup01::after {
  bottom: 2vw;
  right: 2vw;
  width: 15vw;
}

.ct_bg .hgroup01 > .title01 {
  font-size: 5vw;
}
.ct_bg .hgroup01 > .text01 {
  margin-top: 2.5vw;
  padding-top: 3.75vw;
  font-size: 3.5vw;
}
.ct_bg .hgroup01 > .text01 > .font01 {
  margin: 0 1.25vw;
  padding: 0 2.5vw;
  font-size: 3.5vw;
}

.ct_bg .productList01 {
  grid-template-columns: repeat(2, 1fr);
  row-gap: 3.75vw;
  column-gap: 3.75vw;
  margin-top: 10vw;
}

.ct_bg .productList01 > li > .image01 {
  border-radius: 5vw;
}
.ct_bg .productList01 > li > .text01 {
  margin-top: 3.75vw;
  font-size: 4vw;
}

.ct_bg .productList01 > li > .text02 {
  margin-top: 3.75vw;
  padding: .5vw 3vw;
  border-radius: 1vw;
  font-size: 3vw;
}
.ct_bg .productList01 > li > .text03 {
  margin-top: 1.25vw;
  font-size: 3vw;
}
.ct_bg .productList01 > li > .text03 > .font01 {
  font-size: 4vw;
}

.ct_bg .productList01 > li > .button01 {
  margin-top: 2.5vw;
}

.ct_bg .productList01 > li > .button01 > a {
  padding: 2vw 2.5vw 2vw 0;
  font-size: 3vw;
}
.ct_bg .productList01 > li > .button01 > a::before {
  top: .75vw;
  left: 1vw;
  width: 6.75vw;
}
.ct_bg .productList01 > li > .button01 > a::after {
  right: 7.5vw;
  content: "";
  width: 2.5vw;
}

.ct_bg .mallLinkTxt {
  margin-top: 1.25vw;
}

.ct_bg .mallLinkTxt > a {
  padding: 1.25vw 3.05vw 1.25vw 11vw;
  font-size: 3.6575vw;
}
.ct_bg .mallLinkTxt > a > span::before {
  left: 5.5vw;
  width: 4.57vw;
}
.ct_bg .mallLinkTxt > a > span.reserve::before {
  width: 4.2vw;
}
.ct_bg .mallLinkTxt > a > span.waiting::before {
  width: 4.387vw;
}

.ct_bg .btn01 {
  margin-top: 10vw;
  width: auto;
}
.ct_bg .productList01 + .btn01 {
  margin-top: 10vw;
}

.ct_bg .btn01 > a {
  padding: 2vw 11.75vw 0 8.75vw;
  font-size: 5vw;
}
.ct_bg .btn01 > a::after {
  right: 6.25vw;
  margin-top: 1vw;
  width: 3vw;
}

.ct_bg .btn02 {
  margin-top: 5vw;
}

.ct_bg .btn02 > a {
  padding: 2.25vw 10vw 2.25vw 7.5vw;
  font-size: 3.5vw;
}
.ct_bg .btn02 > a::before {
  top: .75vw;
  left: 1vw;
  width: 6.75vw;
}
.ct_bg .btn02 > a::after {
  right: 3.75vw;
  width: 2.5vw;
}


.ct_bg .comingSoon01 {
  margin-top: 12.5vw;
}

.ct_bg .imgBlock01 {
  margin-top: 10vw;
}

.ct_bg .imgBlock01 > .text01 {
  top: 15.57vw;
  left: 2.96vw;
  width: 13.15vw;
}

.ct_bg .imgBlock01 > .text02 {
  top: 15.58vw;
  left: 19.22vw;
  width: 13.375vw;
}

.ct_bg .imgBlock01 > .text03 {
  top: 15.44vw;
  left: 35.5vw;
  width: 14.85vw;
}

.ct_bg .imgBlock01 > .image01 {
  top: 18.53vw;
  left: 4.07vw;
  padding: 1.23vw;
  width: 15.17vw;
  border-radius: 2.96vw;
  border-width: .27vw;
}
.ct_bg .imgBlock01 > .image02 {
  top: 18.53vw;
  left: 20.35vw;
  padding: 1.23vw;
  width: 15.17vw;
  border-radius: 2.96vw;
  border-width: .27vw;
}
.ct_bg .imgBlock01 > .image03 {
  top: 18.53vw;
  left: 36.63vw;
  padding: 1.23vw;
  width: 15.17vw;
  border-radius: 2.96vw;
  border-width: .27vw;
}

.ct_bg .imgBlock01 > .image04 {
  left: 5.45vw;
  top: 38.2vw;
  padding: .74vw;
  width: 9.62vw;
  border-radius: 1.48vw;
  border-width: .27vw;
}
.ct_bg .imgBlock01 > .image05 {
  left: 15.36vw;
  top: 37.92vw;
  padding: .74vw;
  width: 9.62vw;
  border-radius: 1.48vw;
  border-width: .27vw;
}
.ct_bg .imgBlock01 > .image06 {
  left: 25.23vw;
  top: 38.57vw;
  padding: .74vw;
  width: 9.62vw;
  border-radius: 1.48vw;
  border-width: .27vw;
}
.ct_bg .imgBlock01 > .image07 {
  left: 35.6vw;
  top: 37.83vw;
  padding: .74vw;
  width: 9.62vw;
  border-radius: 1.48vw;
  border-width: .27vw;
}


.ct_bg .itemList01 {
  row-gap: 13.5vw;
  margin-top: 21.5vw;
}

.ct_bg .itemList01 > li {
  padding: 0 3.75vw 3.75vw;
  width: 100%;
  border-radius: 10vw;
  box-shadow: 1vw 1vw 0 0 rgba(45, 45, 45, 0.05);
}

.ct_bg .itemList01 > li > .text01 {
  translate: 0 -5vw;
  margin: 0 -3.75vw;
  padding: 5vw;
  border-radius: 12.5vw;
  font-size: 5vw;
}
.ct_bg .itemList01 > li > .text01::before {
  top: 2vw;
  left: 2vw;
  width: 15vw;
}
.ct_bg .itemList01 > li > .text01::after {
  bottom: 2vw;
  right: 2vw;
  width: 15vw;
}

.ct_bg .itemList01 > li > .text02 {
  margin-top: 3.75vw;
  padding: .5vw 3vw;
  border-radius: 1.25vw;
  font-size: 3vw;
}
.ct_bg .itemList01 > li > .text03 {
  margin-top: 1.25vw;
  font-size: 3.5vw;
}
.ct_bg .itemList01 > li > .text03 > .font01 {
  font-size: 5vw;
}
.ct_bg .itemList01 > li > .mallLinkTxt {
  width: 75vw;
}
.ct_bg .itemList01 > li > .mallLinkTxt > a {
  font-size: 6.25vw;
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span::before {
  width: 7.75vw;
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span.reserve::before {
  width: 7.75vw;
}
.ct_bg .itemList01 > li > .mallLinkTxt > a > span.waiting::before {
  width: 7.75vw;
}


.ct_bg .list01 {
  margin-top: 3.75vw;
  margin-top: 3.75vw;
}

.ct_bg .list01 > .image01 {
  height: 6.56vw;
}

.ct_bg .list02 {
  gap: 3.75vw;
  margin-top: 3.75vw;
}

.ct_bg .list02 > .image01 {
  height: 6.56vw;
}
.ct_bg .list02 > .image02 {
  height: 4.5vw;
}

.ct_bg .list03 {
  row-gap: 15vw;
  margin-top: 10vw;
}
.ct_bg .list03 > li {
  width: 100%;
}
.ct_bg .list03.type02 > li {
  width: 100%;
}

.ct_bg .list03 > li > .text01 {
  margin-top: 2.5vw;
  font-size: 3.5vw;
}
.ct_bg .list03 > li > .inner01 {
  padding: 2.5vw;
  border-radius: 5vw;
}
.ct_bg .list03.type02 > li > .inner01 {
  margin: 0 auto;
  width: 77.5vw;
}

.ct_bg .list03 > li > .inner01 > .movie01 {
  border-radius: 2.5vw;
}
.ct_bg .list03 > li > .inner01 > .movie01::after {
  width: 20vw;
}
.ct_bg .list03 > li > .inner01 > .new01 {
  top: -3vw;
  left: -3vw;
  width: 17.5vw;
}


.ct_bg .list04 {
  margin-top: 5vw;
}

.ct_bg .list04 > li {
  position: relative;
  margin-top: 2.5vw;
  padding-left: 4.5vw;
  font-size: 3.5vw;
}
.ct_bg .list04 > li::before {
  top: .5em;
  width: 2vw;
}

.ct_bg .list05 {
  margin-top: 5vw;
}

.ct_bg .list05 > li {
  margin-top: 2.5vw;
  padding-left: 8vw;
  font-size: 3.5vw;
}
.ct_bg .list05 > li::before {
  padding-top: 1vw;
  width: 5.5vw;
  height: 5.5vw;
  font-size: 4.5vw;
}
.is-android .ct_bg .list05 > li::before {
  padding-top: 0;
  padding-bottom: 2vw;
  width: 5.5vw;
  height: 5.5vw;
}

.ct_bg .editorArea01 {
  margin-top: 5vw;
}
.ct_bg .day01 {
  font-size: 3vw;
}
.ct_bg .img01 {
  margin-top: 5vw;
}
.ct_bg .img02 {
  margin-top: 10vw;
}
.ct_bg .txt01 {
  margin-top: 5vw;
  font-size: 3.5vw;
}
.ct_bg .catchTxt01 {
  margin-top: 15vw;
  font-size: 4.5vw;
}

.ct_bg .table01 {
  margin-top: 5vw;
}
.ct_bg .table01 th {
  padding: 2.5vw;
}
.ct_bg .table01 td {
  padding: 2.5vw;
}

}
