@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

@font-face {
  font-family: "Noto Sans JP";
  src: local("Noto Sans JP"),
       url("/fonts/NotoSansJP.woff2") format("woff2");
  font-display: swap;
}
/* !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: bold;
}
.ct_bg li:before {
  content: normal;
  width: auto;
  height: auto;
  background: none;
  border-radius: 0;
  position: initial;
  left: auto;
  top: auto;
}

#contents {
  padding: 0;
  width: 100%;
}

.c-pagetop {
  z-index: 99;
}

.onlySP {
  display: none;
}

.ct_bg img {
  max-width: 100%;
  height: auto;
}
.ct_bg .imgOver01 img {
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.ct_bg .imgOver02 a {
  position: relative;
  display: block;
  background: transparent;
}
.ct_bg .imgOver02 a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  transition: background .3s;
}
@media (any-hover: hover) {
  .ct_bg .imgOver01 a:hover img {
    opacity: .8;
  }
  .ct_bg .imgOver02 a:hover::before {
    background: rgba(255, 255, 255, 0.2);
  }
}
.ct_bg .center {
  text-align: center !important;
}
.ct_bg .right {
  text-align: right !important;
}
.ct_bg .snsBtn01 {}
.ct_bg .snsBtn01 > li {}
.fb_iframe_widget > span {
  vertical-align: baseline !important;
}
.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 .section01 {
  position: relative;
  overflow: hidden;
}
.ct_bg .section01:first-of-type {
  padding-top: 20px;
  padding-bottom: 80px;
}
.ct_bg .section01 .inner01 {
  margin: auto;
  padding-top: 50px;
  padding-left: 20px;
  padding-right: 20px;
  max-width: 1240px;
}
.ct_bg .section01.type02 .inner01 {
  padding-top: 0;
  padding-bottom: 70px;
}
.ct_bg .section01.movie .inner01 {
  padding-top: 110px;
  padding-bottom: 125px;
}
.ct_bg .section01.lineup .inner01 {
  padding-top: 125px;
  padding-bottom: 140px;
}
.ct_bg .section01 > .inner01 > .title01 {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.ct_bg .section01 > .inner01 > .title01 .text {
  font-size: 25px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #156882;
  display: block;
  margin-top: 10px;
}
.ct_bg .section01.movie .title01 .text,
.ct_bg .section01.lineup .title01 .text {
  color: #fff;
}
.ct_bg .section01:nth-of-type(1) .title01 {
  max-width: 352px;
}
.ct_bg .section01.movie .title01 {
  max-width: 229px;
}
.ct_bg .section01.lineup .title01 {
  max-width: 258px;
}
.ct_bg .section01 > .inner01 > .title02 {
  text-align: center;
}
.ct_bg .section01 > .inner01 > .title02 > .text {
  font-size: 35px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #156882;
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 2px solid #156882;
}
.ct_bg .section01 > .inner01 > .title02 + .movieWrap01 {
  margin-top: 40px;
}
.ct_bg .section01.movie::before,
.ct_bg .section01.lineup::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  clip-path: polygon(0 80px, 100% 0, 100% calc(100% - 80px), 0% 100%);
}
.ct_bg .section01.movie::before {
  background: #F266BF;
}
.ct_bg .section01.lineup::before {
  background: #685BC7;
}
.ct_bg .section01.movie + .section01.lineup {
  margin-top: -80px;
}
/* パーツ */
.ct_bg .headTitleArea01 {
  padding: 4px 0;
  background: #FFD940;
}
.ct_bg .headTitleArea01 h1 {
  color: #2C2C2C;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 14px;
  font-style: normal;
  line-height: 1.4;
}
.ct_bg .headTitleArea02 {
  padding: 15px 0;
  background-color: #40C3C3;
}
.ct_bg .headTitleArea02 .inner01 {
  margin: 0 auto;
  max-width: 1200px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.ct_bg .headTitleArea02 .logo01 {
  height: 40px;
}
.ct_bg .headTitleArea02 .logo01 img {
  width: 100%;
  height: 100%;
}
.ct_bg .headTitleArea02 .buton01 a {
  color: #fff;
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  transition: opacity 0.2s ease;
  position: relative;
  padding-left: 18px;
}
.ct_bg .headTitleArea02 .buton01 a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  border-left: 10px solid #fff;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  transform: translateY(-50%);
}
@media (any-hover: hover) {
  .ct_bg .headTitleArea02 .buton01 a:hover {
    opacity: .6;
    transition: opacity 0.5s ease;
  }
}
.ct_bg .mainvisual01 {
  text-align: center;
}
.ct_bg .mainvisual01 .inner01 {
  min-height: 272px;
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
}
.ct_bg .mainvisual01 .inner01::before {
  content: '';
  position: absolute;
  top: 50%;
  left: calc(50% - 684px);
  width: 396px;
  height: 273px;
  background: url("../img/ph01.jpg") no-repeat 0 0 / contain;
  transform: translateY(-50%);
}
.ct_bg .mainvisual01 .inner01::after {
  content: '';
  position: absolute;
  top: 50%;
  left: calc(50% + 287px);
  width: 397px;
  height: 272px;
  background: url("../img/ph02.jpg") no-repeat 0 0 / contain;
  transform: translateY(-50%);
  gap: 40px;
}
.ct_bg .mainvisual01 .inner01 .text01 {
  font-size: 38px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
}
.ct_bg .movieWrap01 {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
}
.ct_bg .movieWrap01 > .movieBlock01 {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.ct_bg .movieWrap01 > .movieBlock01 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  aspect-ratio: 470 / 264;
}
.ct_bg .movieWrap02 {
  margin-top: 40px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px;
}
.ct_bg .movie02 {
  width: 100%;
 max-width: calc(50% - 20px); 
}
.ct_bg .movie02 iframe {
  aspect-ratio: 9 / 16;
  width: 100%;
  height: 100%;
}
.ct_bg .lineupList01 {
  max-width: 1199px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
  gap: 3.336%;
}
.ct_bg .lineupList01 .item {
  /*  width: 373px;*/
  width: 31.109%;
  padding: 15px;
  background: #fff;
  border-radius: 20px;
}
.ct_bg .lineupList01 .item .image01 {
  width: 100%;
  max-width: 343px;
}
.ct_bg .lineupList01 .item .image02 {
 margin-top: 5px;
}
.jqImgFade01 li,
.jqImgFade02 li,
.jqImgFade03 li {
  display: none;
}
.jqImgFade01 li:first-child,
.jqImgFade02 li:first-child,
.jqImgFade03 li:first-child {
  display: block;
}
.ct_bg .lineupList01 .item > .text01 {
  text-align: center;
  color: #2C2C2C;
  font-size: 25px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1.4;
  margin-top: 15px;
}
.ct_bg .lineupList01 .item > .text02 {
  margin-top: 15px;
  text-align: center;
}
.ct_bg .lineupList01 .item > .text02 span {
  display: inline-block;
  padding: 4px 10px;
  background: #FFF682;
  color: #156882;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1.4;
}
.ct_bg .lineupList01 .item > .text03 {
  text-align: center;
  color: #2C2C2C;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1.4;
  margin-top: 10px;
}
.ct_bg .lineupList01 .item > .text03 .price {
  font-size: 20px;
}
.ct_bg .lineupList01 .item .btn01 {
  margin-top: 15px;
  text-align: center;
}
.ct_bg .btn01 a {
  position: relative;
  display: block;
  padding: 22.5px 30px;
  border-radius: 9999px;
  text-decoration: none;
  color: #FFF;
  font-size: 25px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  line-height: 1.4;
  background-image: linear-gradient(to right, #FF6773 0%, #E60012 50%, #FF6773 100%);
  background-size: 200% auto;
  background-position: 0% 50%;
  transition: background-position 0.5s ease;
}
@media (any-hover: hover) {
  .ct_bg .btn01 a:hover {
    background-position: 100% 50%;
  }
}
.ct_bg .btn01 a span {
  color: #fff !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ct_bg .btn01 a span::before {
  content: "";
  display: inline-block;
  background: url(../img/ic04.svg);
  background-repeat: no-repeat;
  background-position: 0 50%;
  width: 34px;
  height: 36px;
  margin-right: 18px;
}
.ct_bg .btn01 a span.reserve::before {
  background: url(../img/ic05.svg);
  background-repeat: no-repeat;
  width: 30px;
  height: 32px;
}
.ct_bg .btn01 a span.waiting::before {
  background: url(../img/ic06.svg);
  background-repeat: no-repeat;
  width: 41px;
  height: 30px;
}
.ct_bg .btn01 a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  transition: background .3s;
}
.ct_bg .navframe01 {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 80px;
  padding: 60px;
  background: #fff;
  border-radius: 30px;
}
.ct_bg .productsSection .navframe01 {
	padding: 30px 60px;
}
.ct_bg .navframe01 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 3.333%;
}
.ct_bg .navframe01 ul li {
  width: 48.3335%;
}
.ct_bg .navframe01 ul li.type01 {
  width: 100%;
}
.ct_bg .navframe01 ul.noteList01 {
  display: block;
}
.ct_bg .navframe02 {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 3.333%;
}
.ct_bg .navframe02 > .col01 {
  width: 48.3%;
}
.ct_bg .navframe02 .noteList01 li,
.ct_bg .navframe02 .text04 {
  color: #2C2C2C;
  font-size: 12px;
}
.ct_bg .noteList01 {
	margin-top: 20px;
}
.ct_bg .noteList02 {
	max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
	margin-top: 20px;
}
.ct_bg .noteList01 li,
.ct_bg .noteList02 li {
	position: relative;
	padding-left: 1em;
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
}
.ct_bg .noteList02 li {
	color: #2C2C2C;
}
.ct_bg .noteList01 li::before,
.ct_bg .noteList02 li::before {
	content: "※";
	position: absolute;
	left: 0;
}
.ct_bg .noteList02.type01 {
	text-align: right;
}
.ct_bg picture + .noteList02.type01 {
  margin-top: 10px;
}
.ct_bg .noteList02.type01 li {
  display: inline-block;
}
.ct_bg .text04 {
	margin-top: 20px;
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
}
.ct_bg .btn02 a {
  position: relative;
  display: block;
  padding: 20px 24px 20px 30px;
  border-radius: 9999px;
  text-decoration: none;
  color: #FFF;
  font-size: 25px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  line-height: 1.4;
  background-image: linear-gradient(to right, #FF8C2B 0%, #FF5C7A 50%, #FF8C2B 100%);
  background-size: 200% 100%;
  background-position: 0% 50%;
  transition: background-position 0.5s ease;
}
@media (any-hover: hover) {
  .ct_bg .btn02 a:hover {
    background-position: 100% 50%;
  }
}
.ct_bg .btn02 a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.ct_bg .btn02 a .arrow {
  display: inline-flex;
  align-items: center;
}
.ct_bg .btn02 a .arrow::before {
  content: "";
  width: 0;
  height: 0;
  border-left: 13px solid #fff;
  border-top: 7.8px solid transparent;
  border-bottom: 7.8px solid transparent;
  flex: 0 0 auto;
  margin-right: 20px;
}
.ct_bg .btn02 a .pdf {
  margin-left: 10px;
  padding: 4px 10px 5px;
  background: #fff;
  color: #FF6773;
  border-radius: 5px;
  line-height: 1;
  display: inline-block;
  font-size: 20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  position: relative;
  top: 0.075em;
}
.ct_bg .btn03 a {
  position: relative;
  display: block;
  padding: 14px 19px 14px 39px;
  border-radius: 9999px;
  border: 1px solid #b8d1d9;
  text-decoration: none;
  color: #146880;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  background: #fff;
  transition: background 0.2s ease;
}
.ct_bg .btn03 a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 19.5px;
  width: 0;
  height: 0;
  border-left: 9.36px solid #89b3bf;
  border-top: 5.616px solid transparent;
  border-bottom: 5.616px solid transparent;
  transform: translateY(-50%);
}
@media (any-hover: hover) {
  .ct_bg .btn03 a:hover {
    background: #e8f0f3;
  transition: background 0.5s ease;
  }
}
.ct_bg .copyrightBlock01 .copyright01 {
  color: #2C2C2C;
  text-align: center;
  font-size: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
}
.ct_bg .snsArea01 {
  margin-top: 40px;
}
.ct_bg .snsArea01 .snsBtn01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 10px;
}
.ct_bg .snsBtn01 > li {
  height: 28px;
}
.ct_bg .copyrightBlock01 {
  margin-top: 15px;
}
.ct_bg .productsSection {
  opacity: 0;
  transition: all 1s ease;
  padding: 50px 60px;
}
.ct_bg .productsSection.no01,
.ct_bg .productsSection.no03,
.ct_bg .productsSection.no05 {
  transform: translateX(-150px);
}
.ct_bg .productsSection.no02,
.ct_bg .productsSection.no04,
.ct_bg .productsSection.no06 {
  transform: translateX(150px);
}
.ct_bg .productsSection.is_show {
  opacity: 1;
  transform: translateX(0);
}
.ct_bg .productsSection.no01 {
  margin-top: 31px;
}
.ct_bg .productsSection:first-of-type {
  margin-top: 30px;
}
.ct_bg .productsSection + .productsSection {
  margin-top: 20px;
}
.ct_bg .productsSection .productsInner01 {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  max-width: 1220px;
}
.ct_bg .productsSection.no01,
.ct_bg .productsSection.no03,
.ct_bg .productsSection.no05 {
  margin-right: 100px;
  border-radius: 0 100px 100px 0;
}
.ct_bg .productsSection.no01 .productsInner01 .textWrap,
.ct_bg .productsSection.no03 .productsInner01 .textWrap,
.ct_bg .productsSection.no05 .productsInner01 .textWrap {
  padding-right: 2.918%;
}
.ct_bg .productsSection.no02,
.ct_bg .productsSection.no04,
.ct_bg .productsSection.no06 {
  margin-left: 100px;
  border-radius: 100px 0 0 100px;
}
.ct_bg .productsSection.no02 .productsInner01,
.ct_bg .productsSection.no04 .productsInner01,
.ct_bg .productsSection.no06 .productsInner01 {
  flex-direction: row-reverse;
}
.ct_bg .productsSection.no02 .productsInner01 .textWrap,
.ct_bg .productsSection.no04 .productsInner01 .textWrap,
.ct_bg .productsSection.no06 .productsInner01 .textWrap {
  padding-left: 4.918%;
}
.ct_bg .productsSection.no01 {
  background: #FFD940;
}
.ct_bg .productsSection.no02 {
  background: #40C3C3;
}
.ct_bg .productsSection.no03 {
  background: #F266BF;
}
.ct_bg .productsSection.no04 {
  background: #685BC7;
}
.ct_bg .productsSection.no04 .productsInner01 .textWrap .title {
  color: #fff;
}
.ct_bg .productsSection.no05 {
  background: #FFD940;
}
.ct_bg .productsSection.no06 {
  background: #40C3C3;
}
.ct_bg .productsSection .productsInner01 .textWrap {
  width: 34.43%;
}
.ct_bg .productsSection .productsInner01 .textWrap .num {
  margin-bottom: 20px;
}
.ct_bg .productsSection .productsInner01 .textWrap .num img {
  max-height: 67px;
  width: auto;
}
.ct_bg .productsSection .productsInner01 .textWrap .title {
  font-size: 28px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
}
.ct_bg .productsSection .productsInner01 .textWrap .logo01 {
  margin-top: 20px;
  max-width: 230px;
}
.ct_bg .productsSection .productsInner01 .col01 {
  width: 65.57%;
}
.ct_bg .productsSection .productsInner01 .col01 .btn02 {
  margin-top: 20px;
}
.ct_bg .productsSection .productsInner01 .col02 {
  overflow: hidden;
  background: #fff;
  border-radius: 30px;
  margin-top: 20px;
}
.ct_bg .productsSection .productsInner01 .col02 > .title {
  text-align: center;
  font-size: 25px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  line-height: 1;
  color: #fff;
  padding: 15px 10px;
  background: #146880;
}
.ct_bg .productsSection .productsInner01 .col02 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 10px 15px;
}

.ct_bg .frameArea01 {
  padding: 0px 4px 4px;
  background: #146880;
  border-radius: 0 0 20px 20px;
}
.ct_bg .frameArea01 > .inner {
  padding: 15px 20px 20px 20px;
  border-radius: 0 0 16px 16px;
  border: 2px solid #FFC090;
  background: #FFF;
}
.ct_bg .frameArea01 > .inner .text02 {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
}

@media screen and (max-width: 1440px) {
  .ct_bg .mainvisual01 .inner01 {
    min-height: 18.89vw;
    margin-top: 1.39vw;
  }
  .ct_bg .mainvisual01 .inner01::before {
    left: calc(50% - 47.50vw);
    width: 27.50vw;
    height: 18.96vw;
  }
  .ct_bg .mainvisual01 .inner01::after {
    left: calc(50% + 19.93vw);
    width: 27.57vw;
    height: 18.89vw;
  }
  .ct_bg .mainvisual01 .inner01 .text01 {
    font-size: 2.64vw;
  }
  .ct_bg .section01.movie::before,
  .ct_bg .section01.lineup::before {
    clip-path: polygon(0 5.56vw, 100% 0, 100% calc(100% - 5.56vw), 0% 100%);
  }
  .ct_bg .section01.movie + .section01.lineup {
    margin-top: -5.56vw;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .title {
    font-size: 1.944vw;
  }
  .ct_bg .productsSection.no06 .productsInner01 .textWrap .title {
	  margin-right: -0.5em;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .num {
    margin-bottom: 1.38vw;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .num img {
    max-height: 4.65vw;
  }
  .ct_bg .productsSection .productsInner01 .col02 > .title {
    font-size: 1.736vw;
    padding: 1.04vw 6.94vw;
  }
  .ct_bg .btn03 a {
    font-size: 1.25vw;
    padding: 0.97vw 1.32vw 0.97vw 2.7vw;
  }
  .ct_bg .btn03 a::before {
    left: 1.35vw;
    border-left: 0.65vw solid #89b3bf;
    border-top: 0.39vw solid transparent;
    border-bottom: 0.39vw solid transparent;
  }
}
@media screen and (max-width: 1240px) {
  .ct_bg .productsSection {
    padding: 4.03vw 4.84vw;
  }
  .ct_bg .productsSection.no01,
  .ct_bg .productsSection.no03,
  .ct_bg .productsSection.no05 {
    margin-right: 8.06vw;
    border-radius: 0 8.06vw 8.06vw 0;
  }
  .ct_bg .productsSection.no02,
  .ct_bg .productsSection.no04,
  .ct_bg .productsSection.no06 {
    margin-left: 8.06vw;
    border-radius: 8.06vw 0 0 8.06vw;
  }

.ct_bg .movieWrap02 {
  margin-top: 20px;
	gap: 20px;
}
.ct_bg .movie02 {
  max-width: 100%; 
}
  .ct_bg .lineupList01 .item {
    padding: 1.21vw;
  }
  .ct_bg .lineupList01 .item > .text01 {
    font-size: 2.02vw;
    margin-top: 1.21vw;
  }
  .ct_bg .lineupList01 .item > .text02 {
    margin-top: 0.97vw;
  }
  .ct_bg .lineupList01 .item > .text02 span {
    padding: 0.40vw 1.21vw;
  }
  .ct_bg .lineupList01 .item > .text03 {
    font-size: 1.28vw;
    margin-top: 0.81vw;
  }
  .ct_bg .lineupList01 .item > .text03 .price {
    font-size: 1.61vw;
  }
  .ct_bg .lineupList01 .item .btn01 {
    margin-top: 1.29vw;
  }
  .ct_bg .navframe01 {
    margin-top: 6.45vw;
    padding: 4.84vw;
  }
  .ct_bg .productsSection .navframe01 {
	margin-top: 6.45vw;
	padding: 2.42vw 4vw;
  }
  .ct_bg .btn01 a {
    padding: 1.81vw 2.42vw;
    font-size: 2.02vw;
  }
  .ct_bg .btn02 a {
    padding: 1.61vw 1.94vw 1.61vw 2.42vw;
    font-size: 2.02vw;
  }
}
@media screen and (max-width: 1000px) {
  .ct_bg .btn03 a {
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 767px) {
  .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 .headTitleArea01 {
    padding: 1.25vw 2.5vw;
  }
  .ct_bg .headTitleArea01 h1 {
    font-size: 3.5vw;
  }
  .ct_bg .headTitleArea02 {
    padding: 3.75vw;
  }
  .ct_bg .headTitleArea02 .logo01 {
    height: 7.5vw;
  }
  .ct_bg .headTitleArea02 .buton01 a{
    padding-left: 15px;
  }
  .ct_bg .headTitleArea02 .buton01 a::before {
    border-left: 9px solid #fff;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
  }
  .ct_bg .mainvisual01 .inner01 {
    min-height: 144.25vw;
    margin-top: 10vw;
  }
  .ct_bg .mainvisual01 .inner01::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 46.875vw;
    background: url("../img/ph01_sp.jpg") no-repeat 0 0 / contain;
    transform: translateY(0);
  }
  .ct_bg .mainvisual01 .inner01::after {
    top: inherit;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 48.5vw;
    background: url("../img/ph02_sp.jpg") no-repeat 0 0 / contain;
    transform: translateY(0);
    z-index: -1;
  }
  .ct_bg .mainvisual01 .inner01 .text01 {
    font-size: 7vw;
    position: relative;
  }
  .ct_bg .section01 {
    position: relative;
  }
  .ct_bg .section01:first-of-type {
    padding-top: 20px;
    padding-bottom: 80px;
  }
  .ct_bg .section01 .inner01 {
    margin: auto;
    padding-top: 50px;
    padding-left: 15px;
    padding-right: 15px;
    max-width: 1200px;
  }
  .ct_bg .section01.type02 .inner01 {
    padding-top: 20px;
    padding-bottom: 70px;
  }
  .ct_bg .section01.movie::before,
  .ct_bg .section01.lineup::before {
    clip-path: polygon(0 10vw, 100% 0, 100% calc(100% - 10vw), 0% 100%);
  }
  .ct_bg .section01.movie + .section01.lineup {
    margin-top: -10vw;
  }
  .ct_bg .section01.movie .inner01,
  .ct_bg .section01.lineup .inner01 {
    padding-top: 90px;
    padding-bottom: 100px;
    margin-left: 0;
    margin-right: 0;
  }
  .ct_bg .section01.lineup .inner01 {
    padding-top: 85px;
    padding-bottom: 115px;
  }
  .ct_bg .section01 > .inner01 > .title01 {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .ct_bg .section01 > .inner01 > .title01 .text {
    font-size: 20px;
    margin-top: 10px;
  }
  .ct_bg .section01.movie .title01 .text,
  .ct_bg .section01.lineup .title01 .text {
    color: #fff;
  }
  .ct_bg .section01:nth-of-type(1) .title01 {
    max-width: 270px;
  }
  .ct_bg .section01.movie .title01 {
    max-width: 180px;
  }
  .ct_bg .section01.lineup .title01 {
    max-width: 200px;
  }
  .ct_bg .section01 > .inner01 > .title02 > .text {
    font-size: 6vw;
  }
  .ct_bg .productsSection {
    padding: 7.50vw 5.00vw 10vw;
  }
  .ct_bg .productsSection.no01 {
    margin-top: 8.3vw;
  }
  .ct_bg .productsSection + .productsSection {
    margin-top: 5vw;
  }
  .ct_bg .productsSection .productsInner01 {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    max-width: 1220px;
  }
  .ct_bg .productsSection.no01,
  .ct_bg .productsSection.no03,
  .ct_bg .productsSection.no05 {
    margin-right: 10px;
    border-radius: 0 100px 100px 0;
  }
  .ct_bg .productsSection.no01 .productsInner01 .textWrap,
  .ct_bg .productsSection.no03 .productsInner01 .textWrap,
  .ct_bg .productsSection.no05 .productsInner01 .textWrap {
    padding-right: 0;
  }
  .ct_bg .productsSection.no02,
  .ct_bg .productsSection.no04,
  .ct_bg .productsSection.no06 {
    margin-left: 10px;
    border-radius: 25vw 0 0 25vw;
  }
  .ct_bg .productsSection.no02 .productsInner01,
  .ct_bg .productsSection.no04 .productsInner01,
  .ct_bg .productsSection.no06 .productsInner01 {
    flex-direction: row-reverse;
  }
  .ct_bg .productsSection.no02 .productsInner01 .textWrap,
  .ct_bg .productsSection.no04 .productsInner01 .textWrap,
  .ct_bg .productsSection.no06 .productsInner01 .textWrap {
    padding-left: 0;
    text-align: right;
  }
  .ct_bg .productsSection .productsInner01 .textWrap {
    width: 100%;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .num {
    margin-bottom: 14px;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .num img {
    max-height: 11.75vw;
    width: auto;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .title {
    font-size: 24px;
    font-size: 6vw;
    line-height: 1.4;
  }
  .ct_bg .productsSection.no06 .productsInner01 .textWrap .title {
	  margin-right: 0;
  }
  .ct_bg .productsSection .productsInner01 .textWrap .logo01 {
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    max-width: 140px;
  }
  .ct_bg .productsSection .productsInner01 .col01 {
    width: 100%;
    margin-top: 7.5vw;
  }
  .ct_bg .productsSection .productsInner01 .col01 .btn02 {
    margin-top: 5vw;
  }
  .ct_bg .productsSection .productsInner01 .col02 {
    margin-top: 7.5vw;
  }
  .ct_bg .productsSection .productsInner01 .col02 > .title {
    font-size: 5vw;
    padding: 3.75vw 2.5vw;
  }
  .ct_bg .productsSection .productsInner01 .col02 ul {
    gap: 2.5vw 1.248vw;
    margin: 3.75vw 2.5vw;
  }
  .ct_bg .productsSection .productsInner01 .col02 ul li {
    width: calc(50% - 0.625vw);
    text-align: center;
  }
  .ct_bg .lineupList01 {
    margin-top: 7.5vw;
    gap: 10vw 0;
  }
  .ct_bg .lineupList01 .item {
    width: 100%;
    padding: 3.75vw;
  }
  .ct_bg .lineupList01 .item .image01 {
    width: 100%;
  }

  .ct_bg .lineupList01 .item > .text01 {
    font-size: 5vw;
    margin-top: 3.75vw;
  }
  .ct_bg .lineupList01 .item > .text02 {
    margin-top: 3vw;
  }
  .ct_bg .lineupList01 .item > .text02 span {
    font-size: 3.5vw;
    padding: 1.25vw 3.75vw;
  }
  .ct_bg .lineupList01 .item > .text03 {
    margin-top: 2.5vw;
    font-size: 3.5vw;
  }
  .ct_bg .lineupList01 .item > .text03 .price {
    font-size: 4.5vw;
  }
  .ct_bg .lineupList01 .item .btn01 {
    margin-top: 4vw;
  }
  .ct_bg .btn01 a {
    padding: 4.625vw 7.5vw;
    font-size: 5vw;
  }
  .ct_bg .btn01 a span::before {
    width: 5.95vw;
    height: 6.3vw;
    background-size: contain;
    margin-right: 5vw;
  }
  .ct_bg .btn01 a span.reserve::before {
    width: 5.25vw;
    height: 5.6vw;
    background-size: contain;
  }
  .ct_bg .btn01 a span.waiting::before {
    width: 7.175vw;
    height: 5.25vw;
    background-size: contain;
  }
  .ct_bg .navframe01 {
    margin-top: 10vw;
    padding: 10vw 7.5vw;
  }
  .ct_bg .productsSection .navframe01 {
	margin-top: 10vw;
    padding: 5vw 3.7vw;
  }
  .ct_bg .navframe01 ul {
    gap: 5vw 0;
  }
  .ct_bg .navframe01 ul li {
    width: 100%;
  }
  .ct_bg .navframe02 {
    display: flex;
    gap: 5vw;
    padding: 0 3.75vw;
  }
  .ct_bg .navframe02 > .col01 {
    width: 100%;
  }
  .ct_bg .navframe02 .noteList01,
  .ct_bg .navframe02 .text04 {
    margin-top: 2.5vw;
  }
  .ct_bg .noteList02.type01 {
    text-align: left;
  }
  .ct_bg .noteList02.type01 li {
    display: block;
  }
  .ct_bg .btn02 a {
    padding: 5.4vw 7.5vw;
    font-size: 4.5vw;
  }
  .ct_bg .btn02 a .arrow::before {
    border-left: 3.0875vw solid #fff;
    border-top: 1.8525vw solid transparent;
    border-bottom: 1.8525vw solid transparent;
    margin-right: 20px;
  }
  .ct_bg .btn02 a .pdf {
    margin-left: 2.5vw;
    padding: 0.5vw 1.25vw 0.75vw 1.25vw;
    font-size: 3.5vw;
  }
  .ct_bg .btn03 a {
    padding: 1.25vw 2.25vw 1vw 6vw;
    font-size: 3.5vw;
    line-height: 1.2;
  }
  .ct_bg .btn03 a::before {
    left: 3.5vw;
    border-left: 1.8025vw solid #89b3bf;
    border-top: 1.025vw solid transparent;
    border-bottom: 1.025vw solid transparent;
  }
  .ct_bg .snsArea01 {
    margin-top: 7.5vw;
  }
  .ct_bg .snsBtn01 > li {
    height: 7vw;
  }
  .ct_bg .copyrightBlock01 {
    margin-top: 4.5vw;
  }
}

@media screen and (min-width: 768px) {
  .ct_bg .lineupList01 .item .btn01:has(a:not([href])) {
    opacity: 0;
    display: block !important;
  }
}
.ct_bg .lineupList01 .item:has(.frameArea01 .inner .mallBtn01 a:not([href])) > .image02,
.ct_bg .lineupList01 .item:has(.frameArea01 .inner .mallBtn01 a:not([href])) > .frameArea01 {
  display: none;
}
.ct_bg .lineupList01 {
  align-items: flex-start;
}