@charset "utf-8";
/* Dolls Party 56_Contents Pages */
/* mobile-friendly */

/*SP 320-559 px*/
/*TB 560-959 px*/
/*PC 960 px以上*/

/*-------------------------------
 Contents Page _ Common Parts
---------------------------------*/
/* Layout
	-----------------------------*/
.ctnrConts {
  padding: 0 0; /*背景がシームレスパターン以外時は 0 0*/
  position: relative;
  z-index: 1;
}

.conts-wide-wrap {
  width: min(100%, 160rem);
  margin: 0 auto;
  position: relative;
  padding: 0 2vw 4vmax;
}

.contsInnerBox {
  background: #fff; /*old-browser*/
  background: hsla(0, 0%, 100%, 0.72);
  box-shadow: 0 .2rem 1rem rgba(0, 0, 0, 0.2), 0 0 5rem rgba(0, 0, 0, 0.05);
  /*backdrop-filter: blur(2px);*/
  padding-bottom: calc(var(--rs) * 1.0);
  overflow: auto;
}

.contsInnerBox+.contsInnerBox {
  margin-top: 3rem;
}

.evWrap {
  width: 100%;
  max-width: var(--width-cont);
  padding: 0;
  margin: 0 auto;
  position: relative;
}

.evWrapImg {
  vertical-align: bottom;
  display: block;
}

.evFBox {
  width: min(94%, var(--width-cont));
  padding: 1.5em 0;
  margin: 0 auto;
  position: relative;
}

.hr-standard,
.ctnrConts>hr,
.container>hr,
.evFBox>hr {
  clear: both;
  margin: 2.5vmax auto;
  border: none;
  border-bottom: 1px solid rgb(255 255 255 / 60%);
  border-top: 1px solid rgb(0 0 0 / 20%);
  box-shadow: 0 .2rem .1rem -.1rem #fff;
  width: min(96%, var(--width-cont));
}

/* TITLE
	-----------------------------*/
/*cat-tit*/
.title_category {
  position: relative;
  text-align: center;
  line-height: 1.2;
  padding: calc(var(--fs) * 2.5) 0;
  width: 100%;
  /*background: url(/event/dolpa56/image/bg_title_category.png) 0% 30% / 170% auto no-repeat;*/
}

.title_category > em {
  font-weight: bold;
  max-width: var(--width-cont);
  margin: 0 auto;
  display: inline-block;
  text-align: center;
  position: relative;
  z-index: 3;
  color: #fff;
  font-size: calc(var(--fs) * 2.0 + var(--rs) * 1.2);
  letter-spacing: 0.1em;
  /*縁取り*/
  -webkit-text-stroke: .6rem var(--tmc02);
  text-stroke: .6rem var(--tmc02);
  paint-order: stroke;
}

.title_category > em::after {
  content: attr(data-eng);
  font-size: calc(var(--fs) * 1.0 + calc(var(--rs) * 8.0));
  white-space: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: transparent;
  -webkit-text-stroke: 1px rgb(253 255 192 / 90%);
  text-stroke: 1px rgb(253 255 192 / 90%);
  pointer-events: none;
  z-index: -1;
  margin-top: .05em;
}

.title_category > em > small {
  font-size: var(--fs-l);
  margin-top: .8rem;
  margin-left: 1rem;
}

.tit-icon-dec {}

.tit-icon-number {
  padding: 0;
  width: min(2.5em, 6rem);
  max-width: 100%;
  z-index: 1;
  position: absolute;
  top: 55%;
  left: 0.3em;
  transform: translate(0, -50%);
  filter: drop-shadow(0 0 1px #650401) drop-shadow(0 0 5px #650401);
}

.tit-icon-number__txt {
  display: inline-block;
  padding-left: 2.5em;
}

.tit-icon-number+.tit-icon-number {
  left: 4em;
}

.tit-icon-number+.tit-icon-number+.tit-icon-number__txt {
  padding-left: calc(3.5em * 2);
}

.tit-icon-number--blank {
  padding-left: 1rem;
}

/*ガイドブックナンバー*/
.fa-icon-gbnum {
  content: "";
  display: inline-block;
  width: 1em;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  font-size: max(2em, 3.5rem);
  vertical-align: middle;
  margin-inline: 2px;
}

.fa-icon-gbnum.gb-No01 {
  background-image: url(/event/dolpa56/image/ic_No01.png);
}

.fa-icon-gbnum.gb-No02 {
  background-image: url(/event/dolpa56/image/ic_No02.png);
}

.fa-icon-gbnum.gb-No03 {
  background-image: url(/event/dolpa56/image/ic_No03.png);
}

.fa-icon-gbnum.gb-No04 {
  background-image: url(/event/dolpa56/image/ic_No04.png);
}

.fa-icon-gbnum.gb-No05 {
  background-image: url(/event/dolpa56/image/ic_No05.png);
}

.fa-icon-gbnum.gb-No06 {
  background-image: url(/event/dolpa56/image/ic_No06.png);
}

.fa-icon-gbnum.gb-No07 {
  background-image: url(/event/dolpa56/image/ic_No07.png);
}

.fa-icon-gbnum.gb-No08 {
  background-image: url(/event/dolpa56/image/ic_No08.png);
}

.fa-icon-gbnum.gb-No09 {
  background-image: url(/event/dolpa56/image/ic_No09.png);
}

.fa-icon-gbnum.gb-No10 {
  background-image: url(/event/dolpa56/image/ic_No10.png);
}

.fa-icon-gbnum.gb-No11 {
  background-image: url(/event/dolpa56/image/ic_No11.png);
}

.fa-icon-gbnum.gb-No12 {
  background-image: url(/event/dolpa56/image/ic_No12.png);
}

.fa-icon-gbnum.gb-No13 {
  background-image: url(/event/dolpa56/image/ic_No13.png);
}

.fa-icon-gbnum.gb-No14 {
  background-image: url(/event/dolpa56/image/ic_No14.png);
}

.fa-icon-gbnum.gb-No15 {
  background-image: url(/event/dolpa56/image/ic_No15.png);
}

.fa-icon-gbnum.gb-No16 {
  background-image: url(/event/dolpa56/image/ic_No16.png);
}

.fa-icon-gbnum.gb-No17 {
  background-image: url(/event/dolpa56/image/ic_No17.png);
}

.fa-icon-gbnum.gb-No18 {
  background-image: url(/event/dolpa56/image/ic_No18.png);
}

.fa-icon-gbnum.gb-No19 {
  background-image: url(/event/dolpa56/image/ic_No19.png);
}

.fa-icon-gbnum.gb-No20 {
  background-image: url(/event/dolpa56/image/ic_No20.png);
}


/* タイトル-中央単語色付き */
.tit--dec01 {
  max-width: 94rem;
  padding: 0 1rem;
  margin: 2vmax auto;
  color: var(--tmc01);
  line-height: 1.2;
  font-size: calc(var(--fs-xxl) + .5vw);
  font-weight: bold;
  text-align: center;
}

/* タイトル-中央単語+アンダーライン */
.tit--dec02 {
  text-align: center;
  font-weight: 900;
  font-size: calc(var(--frs) * 3);
  margin-bottom: 1em;
  padding-top: 0.5em;
  position: relative;
  z-index: 2;
}

.tit--dec02>span {
  color: #231815;
  border-bottom: 0.18em solid var(--tmc03);
  padding-bottom: 0.15em;
  display: inline-block;
  position: relative;
}

.tit--dec02>span::after {
  content: "";
  display: block;
  width: 50%;
  height: 0.18em;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(0%, 100%);
  background: rgba(255, 255, 255, 0.4);
}

/* 飾り枠装飾 */
.tit--dec03 {
  display: block;
  position: relative;
  padding: .6em 1em .6em 1.5rem;
  margin-bottom: 2.0rem;
  line-height: 1.25em;
  font-weight: bold;
  text-align: left;
  color: #fff;
  /*ベタ*/  /*background: var(--tmc01);*/
  background: url(/event/dolpa56/image/bg_ptn_wht.png) 50% 50% / min(10%, 5rem) auto repeat ,var(--tmc-gradiet);
  border-top: .3rem solid var(--tmc03);
  border-image: linear-gradient(135deg, var(--grd-gld)) 10;
}

/*.tit--dec03::after {
	content: "";
	width: min(15%,8rem);
	aspect-ratio: 4 / 5;
	background: url(/event/dolpa56/image/onmnt-komame-landmark.png) 50% -35% /cover no-repeat;
	position: absolute;
	bottom: 0;
	right: 0;
	filter: drop-shadow(0 0 5px rgb(225 225 225 / 25%));
}*/
.tit--dec03.ic-none {
  padding-right: 1rem;
}

.tit--dec03.ic-none::after {
  content: none;
}

.tit--dec03>strong {
  font-size: 100%;
  position: relative;
  z-index: 2;
}

/* タイトル-左太実線と下線.1rem */
.tit--dec04 {
  padding: .3em .3em .3em calc(var(--fs) * 1.5);
  line-height: 1.4;
  position: relative;
  height: auto;
  text-indent: 0;
  border-left: var(--tmc01) solid calc(var(--fs) * 1.5);
  box-sizing: border-box;
  margin: 1rem auto .8em;
  border-bottom: var(--tmc01) solid .1rem;
  font-size: calc(var(--fs) * 1.6 + var(--rs) * 0.4);
}

.tit--dec04 .tit-icon-number {
  right: auto;
  left: -.2rem;
  top: 0;
}

.tit--dec04.tit-icon-space {
  padding-left: 5em;
  border-left: 0;
  border-bottom-width: .3rem;
}

/* タイトル-ベタ地に白文字 */
.tit--dec05 {
  padding: .5em 1em !important;
  line-height: 1.25;
  margin: 0 auto 1em;
  background: var(--tmc01);
  color: #fff;
  position: relative;
}

.tit--dec05.tc-bg-note {
  background: #FFD4CA;
  color: var(--tmc01);
}

.tit--dec05.tc-bg-guidebook {
  background: #FEDA26;
  color: #555555;
}

.tit--dec05 .tit-icon-number {
  right: auto;
  left: 0.5rem;
}

.tit--dec05.tit-icon-space {
  padding: 1em 1em 1em 4em !important;
  font-size: var(--fs-ll);
}

.tit--dec05.dec05--type-red {
  background: var(--tmc-red);
  /*赤*/
}

/* タイトル-短いリボン */
.tit--ribbon4 {
  display: inline-block;
  position: relative;
  height: 2em;
  line-height: 2em;
  text-align: center;
  padding: 0 2em 0 1em;
  background: var(--tmc-red);
  color: #FFF;
  box-sizing: border-box;
}

.tit--ribbon4::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  border-width: 1em 0.8em 1em 0;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

/* 大見出し：シンプルに中央寄せ */
.tit--dec06 {
  padding: 1rem 0 1.5rem;
  margin: 0 auto 1.5rem;
  font-size: calc(var(--frs) * 2.5);
}

.tit--dec07 {
  text-align: left;
  position: relative;
  font-size: calc(var(--fs) * 1.8);
  border-top: 3px dotted rgba(0, 0, 0, 0.15);
  width: min(100%, 92rem);
  margin: 1em auto 0;
  height: 1.5em;
}

.tit--dec07>span {
  padding: .3em 2em .3em;
  background: #fff;
  color: #555;
  border: 2px solid;
  display: inline-block;
  text-align: center;
  transform: rotate(-5deg);
  position: absolute;
  top: -1em;
  left: -0.5em;
}

/* HONBUN
	-----------------------------*/
/*Read*/
.text-eventread {}

.txt--read {
  line-height: 1.6;
  margin-bottom: 1em;
  /*padding: 0 1.5rem;*/
  padding: 0 calc(var(--rs) * 1.5);
  /*TEST*/
}

.evlead {
  line-height: 1.6;
  margin-bottom: 1em;
}

.evlead2 {
  font-size: calc(var(--fs) * 1.5);
  line-height: 1.6;
  margin-bottom: 0.5em;
}

.evlead__logo {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
}

.evlead__logo--img {
  margin-left: 1em;
  margin-right: 1em;
}

.evlead__logo--txt {
  flex: 1 0 70%;
}

/* INFOBOX
	-----------------------------*/
/*イベントTPO*/
.event_detal {
  background: #fff;
  box-shadow: 0 0 .2rem 0 #aaa;
  padding: 1em;
  border: none;
  border-radius: 2rem;
  margin: 0 auto 2rem;
  position: relative;
  max-width: var(--width-cont);
}

.event_detal>dl {
  border-bottom: #aaa .1rem dotted;
  margin-bottom: .3rem;
  padding-bottom: .3rem;
  display: table;
  width: 100%;
  line-height: 1.4;
  font-size: calc(var(--fs) * 1.4 + var(--rs) * 0.4);
}

.event_detal>dl:last-child {
  border: none;
}

.event_detal>dl>dt,
.event_detal>dl>dd {
  vertical-align: baseline;
}

.event_detal>dl>dt {
  display: inline-block;
  padding: 0.4rem .3rem;
  color: var(--tmc04);
  vertical-align: top;
}

.event_detal>dl>dd {
  display: inline-block;
  padding: .3rem;
}

.event_detal>dl>dd+dt {
  margin-left: 2em;
}

.event_detal>p {
  padding: .3rem;
}

.event_detal>*:last-child {
  border-bottom: none;
}

.event_detal>ul {}

.event_detal_pic {
  display: block;
  margin: 0 auto 1.5rem;
  width: min(100%, var(--width-cont));
}

.event_detal_pic.bs_border {
  box-shadow: 0 0 .2rem 0 #aaa;
}

.event_detal_pic.mb0 {}

.tit--dec05+.event_detal,
.event_detal_pic.mb0+.event_detal {
  border-radius: 0 0 2rem 2rem;
}

.event_detal_bnrF {
  display: block;
  margin: 0 auto;
  box-shadow: 0px 0px 2px 0px #aaa;
}

.event_detal.event_detal_noboder {
  background: transparent;
  box-shadow: none;
  padding: 1rem 0;
}

dl.evdtl {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}

dl.evdtl>dt {
  padding: .3rem;
  color: var(--tmc04);
  min-width: 5.5em;
}

dl.evdtl>dd {
  padding: .3rem;
}

/*簡易1行*/
.dtl-oneline {
  display: flex;
  align-items: baseline;
  flex-flow: row wrap;
  justify-content: space-between;
  column-gap: 1em;
  background-image: linear-gradient(to right, #aaa 1px, transparent 1px);
  background-size: 4px 2px;
  background-repeat: repeat-x;
  background-position: 0% 50%;
}

.dtl-oneline>* {
  background: #fff;
  padding: 2px;
}

.mapLnk {
  font-size: var(--fs-ll);
  font-weight: bold;
  display: inline-block;
  text-indent: 0 !important;
}

.gb-Num-txt {
  min-width: auto !important;
  opacity: .9;
  background: linear-gradient(transparent 80%, #FAF2D3 80%);
  line-height: 1;
  display: inline-block;
}

.gb-Num-txt::before {
  content: "GB No.";
  font-size: 80%;
}

.gb-Num-txt::after {
  content: " -";
  background: #fff;
  color: #999;
}

/* STEPBOX
	-----------------------------*/
/*イベント参加方法STEP*/
.event-stp__wrap {
  position: relative;
}

.event-stp__heading {
  text-align: center;
  line-height: 1.25;
  padding: 0.5em;
  margin: 0 auto 1em;
  font-size: var(--fs-xxl);
  font-weight: bold;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), #F6EA9E, #F6EA9E, rgba(255, 255, 255, 0));
}

.event-stp__heading::before {
  content: "[";
  margin-right: .7em;
}

.event-stp__heading::after {
  content: "]";
  margin-left: .7em;
}

.event-stp__title {
  background: var(--tmc01);
  color: #fff;
  text-align: center;
  line-height: 1.25;
  padding: 0.5em;
  margin: 0 auto 1em;
}

.event-stp__pastpic {
  position: relative;
  width: 100%;
  max-width: 85rem;
  margin-left: auto;
  margin-right: auto;
}

.note--pastpic {
  text-align: right;
  padding: .5rem;
  color: #777;
  font-size: calc(var(--fs) * 1.0);
}

.event-stp__step-num {
  position: absolute;
  left: -1em;
  top: -0.6em;
  background: var(--tmc01);
  border: .1rem solid var(--tmc01);
  border-radius: 10rem;
  color: #fff;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  font-weight: bold;
  font-size: var(--fs-xxl);
}

.event-stp__chart-box {
  position: relative;
  background: #fff;
  padding: 2rem 1.5em;
  margin: 1em auto;
  border: .2rem solid var(--tmc01);
  border-radius: 2rem;
  width: min(96%, var(--width-box));
  padding-right: 1.2em;
}

.event-stp__chart-mark--down {
  position: relative;
  z-index: 2;
  height: 2em;
  margin-bottom: -1em;
  margin-top: -1em;
}

.event-stp__chart-mark--down::after {
  position: absolute;
  content: "";
  top: -.5em;
  left: calc(50% - 3rem);
  border: 3.0rem solid transparent;
  border-top: 3.0rem solid var(--tmc01);
  width: 0;
  height: 0;
}

.event-stp__schedule {
  margin-bottom: 1rem;
}

.event-stp__chart-read {
  font-size: calc(var(--fs) * 2.0 + .3vw);
  font-weight: bold;
  margin-bottom: .3rem;
}

.event-stp__time {
  color: var(--tmc01);
}

/*イベント参加説明の表*/
.event-stp__table {
  border-collapse: collapse;
  margin: 1rem auto;
  padding: 0;
  /*table-layout: fixed;*/
  background: #fff;
  box-sizing: border-box;
  width: 100%;
  color: #663026;
  font-size: var(--fs-ml);
  border: 0.2rem solid #663026;
}

.event-stp__table th,
.event-stp__table td {
  padding: 1rem;
  vertical-align: middle;
  border: 0.1rem solid #663026;
  font-weight: normal;
}

.event-stp__table th {
  text-align: center;
  position: relative;
}

.event-stp__table td {
  text-align: left;
  position: relative;
}

/*.event-stp__table tr:first-child {
  background: #DABEAA !important;
}
.event-stp__table tr:nth-child(odd) {
	background: rgba(100, 60, 35, 0.1);
}
*/

#dsd-seiriken.event-stp__table>tbody>tr:nth-child(1) {}

#dsd-seiriken.event-stp__table>tbody>tr:nth-child(2) {
  background: rgba(100, 60, 35, 0.07);
}

#dsd-seiriken.event-stp__table>tbody>tr:nth-child(3) {
  background: rgba(100, 60, 35, 0.15);
}

.event-stp__table .dsd-seiriken {
  width: 10em;
}

.event-stp__table .dsd-seiriken i {
  font-size: 4rem;
  display: block;
  margin: 0 auto .5rem;
  text-shadow: .3rem .3rem 1rem rgba(100, 60, 35, 0.2);
  transform: rotate(15deg);
}

.seiriken-a {
  color: #FFD31F;
}

.seiriken-b {
  color: #0060B3;
}

.seiriken-c {
  color: #ffffff;
}

/*イベント参加規約*/
.event__infobox {
  position: relative;
  line-height: 1.5;
  max-width: var(--width-box);
  margin: 0 auto 2em;
}

.event__infobox--nobdr {
  padding: 0;
  border: none;
  background: transparent;
}

.event__infobox--waku {
  padding: 1em;
  background: #fff;
  box-shadow: .1rem .1rem .5rem 0 rgba(50, 20, 0, 0.4);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.event__kiyaku-tit {
  background: var(--tmc01);
  color: #fff;
  text-align: center;
  line-height: 1.25;
  padding: 0.5em;
  margin: 0 auto 1rem;
}

.event__kiyaku-tit.bg-red {
  background: var(--tmc-red);
}

.event__kiyaku-lst {
  width: min(calc(100% - 2rem), var(--width-box));
  margin-left: auto;
  margin-right: auto;
}

/*-------------------------------
 layout_card _ Common Parts
---------------------------------*/
.card {
  margin: auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  z-index: 1;
}

.card>* {
  margin: calc(var(--rs) * 1.0);
  position: relative;
  flex: 0 0 auto;
}

.card>* a:not([class]) {
  color: var(--color-text-base);
  text-decoration: none;
}

.card>* a.pre {
  color: var(--color-text-base);
  text-decoration: none;
  pointer-events: none;
  cursor: default;
}

.card--col1>* {
  width: calc(var(--col1) - calc(var(--rs) * 2.0));
}

.card--col2>* {
  width: calc(var(--col2) - calc(var(--rs) * 2.0));
}

.card--col3>* {
  width: calc(var(--col3) - calc(var(--rs) * 2.0));
}

.card--col4>* {
  width: calc(var(--col4) - calc(var(--rs) * 2.0));
}

.card--col5>* {
  width: calc(var(--col5) - calc(var(--rs) * 2.0));
}

.card--col6>* {
  width: calc(var(--col6) - calc(var(--rs) * 2.0));
}

.card--col-auto {
  flex-wrap: wrap;
}

.card--col-auto>* {
  flex: 1;
}

/* Card _  Link button in card */
.card__btn-in {
  padding-bottom: calc(1em + 5rem);
}

/* Card _  Common - Elements */
.card__tit {
  padding: 0.5rem 1rem;
  margin-bottom: 0.8em;
  line-height: 1.2;
  font-size: var(--fs-l);
  text-align: center;
}

.card__tit_sub {
  padding: 0.5rem 1rem 0;
  margin-top: 0.5rem;
  margin-bottom: 0;
  line-height: 1.2;
  font-size: calc(var(--fs) * 1.0);
  text-align: left;
  opacity: .9;
  letter-spacing: 0;
}

.card__tit_sub>* {
  display: inline-block;
}

.card__tit--bold {
  color: var(--color-main);
  font-weight: bold;
}

.card__text {
  padding: 0 1rem;
  margin: 1rem auto;
  font-size: var(--fs-m);
  text-align: left;
  width: 100%;
}

.card__text.ta-r {
  text-align: right;
}

.card__text.ta-c {
  text-align: center;
}

.card__btn {
  width: 100%;
  padding: 0 1rem;
  position: absolute;
  bottom: -0.5rem;
}

.card__time {
  margin: 0.2rem 0;
  color: var(--color-gry-light);
  font-size: var(--fs-xs);
}

.card__label {
  padding: .4em .5em .6em;
  margin: 0;
  border-radius: 0.2rem;
  font-size: calc(var(--fs) * 1.2);
  line-height: 1;
  display: inline-block;
}

/* Card -- Modifier */
.card--frame>* {
  border: 1px solid var(--color-gry-smoke);
}

.card--bs>* {
  box-shadow: var(--bs-cmn);
}

.label--notice {
  background-color: #df8551;
  color: var(--color-white);
}

.label--members-vsvip {
  color: var(--color-white);
  background-color: #B5184A;
}

.label--product-new {
  background-color: #fff;
  color: #E5004F;
  outline: 1px solid #E5004F;
  outline-offset: -1px;
}

.label--product-rtn {
  background-color: #fff;
  color: #a25c5c;
  outline: 1px solid #a25c5c;
  outline-offset: -1px;
  display: none;
}

.label--cont {
  background-color: #64c5af;
  color: var(--color-text-base);
}

.label--cate {
  background-color: #c2c2c2;
  color: var(--color-text-base);
}

/*-------------------------------
 共通：Card - News
---------------------------------*/
.card-news {
  margin: 2rem auto 2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.card-news>li {
  margin: 0 1rem 3rem;
  display: flex;
  flex-direction: column;
}

.card-news>li>a {
  text-decoration: none;
  margin-bottom: .5rem;
}

/* card-news-picup */
.card-news-picup {
  max-width: var(--width-site);
  padding-bottom: 4rem;
  margin: 3rem auto 2rem;
  border-bottom: 0.1rem solid var(--color-gry-smoke);
  justify-content: center;
}

.card-news-picup>li {
  width: calc(var(--col6) - 1rem);
  padding-bottom: 0;
  margin: 0.5rem;
  line-height: 0;
}

.card-news-top {
  max-width: var(--width-site);
}

.card-news-top>li {
  width: calc(var(--col2) - calc(var(--rs) * 2.0));
}

.card-news-top>li:first-child:last-child {
  margin-left: auto;
  margin-right: auto;
}

.card-news-cate {
  max-width: var(--width-site);
}

.card-news-cate>li {
  width: calc(var(--col3) - calc(var(--rs) * 2.0));
  border-bottom: 1px solid #f4f4f4;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}

.card-news__thumb {
  background: var(--color-white);
  line-height: 0;
  position: relative;
}

.card-news__title {
  padding: 1rem 0 0.5rem;
  font-size: var(--fs-ms);
  line-height: 1.3;
  text-align: left;
  word-break: break-all;
}

.card-news__info {
  padding: 0 0;
  margin-bottom: 1rem;
  font-size: var(--fs-s);
  opacity: .8;
  line-height: 1.3;
  text-align: left;
  word-break: break-all;
}

.card-news__data {
  /* Flex - parent */
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-top: auto;
}



/* SLICK-SLIDER 商品紹介スライダー
	-----------------------------*/

.model-slick-slider {}

/*arrow*/
.model-slick-slider .slick-prev,
.model-slick-slider .slick-next {
  z-index: 1;
  height: 36px;
  width: 25px;
  background: rgb(166, 166, 166);
  opacity: .7;
}

.model-slick-slider .slick-prev {
  left: 0;
}

.model-slick-slider .slick-next {
  right: 0;
}

.model-slick-slider .slick-prev:hover,
.model-slick-slider .slick-next:hover {
  background: rgba(0, 132, 249, 0.7);
}

.model-slick-slider .slick-prev::before,
.model-slick-slider .slick-next::before {
  color: rgb(255, 255, 255);
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 900;
  font-size: 25px;
  opacity: 1;
  /* filter: drop-shadow(0px 0px 1px rgba(0,0,0,.5)); */
  /*text-shadow: 0 0 0.2rem rgba(0,0,0,.5);*/
}

.model-slick-slider .slick-prev::before {
  content: "\f104";
}

.model-slick-slider .slick-next::before {
  content: "\f105";
}

.model-slick-slider .slick-prev.slick-disabled,
.model-slick-slider .slick-next.slick-disabled {
  display: none !important;
  /*一通*/
}

/* dots */
.model-slick-slider .slick-dots {
  display: flex;
  justify-content: center;
  margin: -2rem auto 0;
  position: relative;
  z-index: 1;
  background: rgba(255, 255, 255, 0.2);
}

.model-slick-slider .slick-dots>li {
  position: relative;
  margin: 0 1%;
}

.model-slick-slider .slick-dots>li>button {
  width: 2rem;
  height: 2rem;
  padding: 0;
  background: transparent;
  border: 0;
  color: transparent;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  outline: none;
  display: block;
}

.model-slick-slider .slick-dots>li>button:hover,
.model-slick-slider .slick-dots>li>button:focus {
  outline: none;
}

.model-slick-slider .slick-dots>li>button::before {
  content: '\0025cf';
  color: rgba(145, 145, 145, 0.8);
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.model-slick-slider .slick-dots li.slick-active button::before,
.model-slick-slider .slick-dots>li>button:hover::before,
.model-slick-slider .slick-dots>li>button:focus::before {
  color: #EE8395;
}

/* SPEC 商品紹介
	-----------------------------*/
.model-box-wrapper {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.model-box-item__list {
  width: 90%;
  margin: 0 auto 2rem;
  letter-spacing: normal;
  position: relative;
}

.model-box-item__list__name {
  padding: 1rem 1em;
  background: #684A44;
  color: #fff;
  margin: 0;
}

.model-box-inner {
  position: relative;
}

.model-box-inner a:hover {
  filter: initial;
}

.model-box-inner a:hover img {
  opacity: 1;
}

/* SPEC 商品紹介リスト-スペック
	-----------------------------*/
table.spec {
  width: 100%;
  background: #fff;
  margin-bottom: 1rem;
  border: .3rem double #CACACA;
}

table.spec th,
table.spec td {
  padding: 1rem;
  border-bottom: .1rem dotted #CACACA;
  text-align: left;
}

table.spec th {
  color: #666;
  font-size: calc(var(--fs) * 1.4);
  padding-right: 0;
  word-break: keep-all;
}

table.spec td {
  font-size: calc(var(--fs) * 1.4);
}

table.spec td[colspan="2"] {}


/*-------------------------------
 Event Detail - 誌面版共通スペックテーブル
---------------------------------*/
.specTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: calc(var(--fs) * 0.5);
  font-size: calc(var(--fs) * 1.4);
  line-height: 1.3;
}

.specTable-bgWht {
  background: rgb(255 255 255 / 50%);
  border-radius: 2px;
  box-shadow: var(--bs-cmn);
}

.specTable caption {
  padding: calc(var(--rs) * 0.5) calc(var(--fs) * 0.5) calc(var(--rs) * 1);
  font-size: calc(var(--fs) * 1.4 + var(--rs) * 0.6);
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
}

.specTable caption b {
  font-size: 125%;
}

.specTable caption small {
  font-size: 75%;
}

.specTable tr {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
}

.specTable tr:not(:nth-last-of-type(1)) {
  margin-bottom: calc(var(--rs) * 0.5);
}

.specTable th,
.specTable td {
  padding: 0.25em;
}

.specTable th {
  width: 24%;
  max-width: 9em;
  padding-top: 0.4em;
  background: #595757;
  color: #fff;
  border-radius: 2px;
  font-size: 93.75%;
  font-weight: normal;
  line-height: 1.2;
  text-align: center;
  vertical-align: top;
  flex-basis: 24%;
  flex-shrink: 0;
}

.specTable td {
  padding-left: 0.5em;
  text-align: left;
}

.specTable td[colspan] {
  padding-left: 0;
  padding-right: 0;
}

.specTable td.spec-price {
  padding-top: 0;
  font-size: calc(var(--fs) * 1.6);
  font-weight: bold;
}

.specTable ul.note-list>li {
  padding-left: 1em;
  margin-top: 0.2em;
  margin-bottom: 0;
  text-indent: -1em;
  font-size: calc(var(--fs) * 1.2);
  line-height: 1.6;
}

.specTable ul.note-list>li~li {
  margin-top: .2rem;
}



/* pagetop btn
	-----------------------------*/
p.lnkPtop {
  height: 5rem;
  padding: 1em 0;
  margin-bottom: 0;
  font-size: calc(var(--fs) * 1.2);
  text-align: right;
  clear: both;
  letter-spacing: normal;
  font-style: italic;
  position: relative;
  z-index: 1;
}

p.lnkPtop a {
  background: var(--tmc01);
  color: #fff;
  padding: .1em 1em .1em 1em;
  margin-right: 0;
  border-radius: 5rem;
  text-decoration: none;
  opacity: .7;
}

p.lnkPtop a:hover {
  filter: brightness(1.2);
}

/* ----------------------------- */
/*FAQ*/
div.faq-menu {
  width: 100%;
  margin: 0 auto 3em;
  max-height: none;
}

.faq-menu dl {
  width: 95%;
  margin: 2em auto;
  border-bottom: .1rem solid rgba(14, 19, 24, .25);
}

.faq-menu dl dt,
.faq-menu dl dd {
  line-height: 1.6;
}

.faq-menu dl dt {
  display: block;
  text-align: left;
  cursor: pointer;
  position: relative;
  padding: 1em 2em 1em 0;
  margin: 0;
  border-top: .1rem solid rgba(14, 19, 24, .25);
}

.faq-menu dl dt.active {
  font-size: 115%;
  font-weight: bold;
}

.faq-menu dl dt::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-size: 1.2em;
  color: #444;
  position: absolute;
  right: 1rem;
  top: 1em;
  bottom: 0;
  margin: auto;
}

.faq-menu dl dt.active::after {
  content: "\f106";
  opacity: 0.4;
}

.faq-menu dl dt::before {
  content: "Q";
  color: #fff;
  display: inline-block;
  text-align: center;
  background: #f5b2cb;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5em;
  margin-right: .5em;
  font-weight: normal !important;
  border-radius: 10rem;
}

/*.faq-menu dl dd::before	{
			content: "A.";
			color:#dfa9a9;
			display: inline-block;
			text-align: center;
			width: 1.5em;
			height: 1.5em;
			line-height: 1.5em;
			margin-right: .5em;
			font-weight: normal !important;
			border-radius: 10rem;
			}*/
.faq-menu dl dd {
  text-align: left;
  display: none;
  padding: 0 2.2em 1.5em;
  overflow: hidden;
  /*transition: height .3s ease;*/
  border-bottom: .1rem solid rgba(14, 19, 24, .25);
  margin-bottom: -.1rem;
  position: relative;
}

.faq-menu dl dt::first-child,
.faq-menu dl dd::last-child {
  border: none;
}

/*-------------------------------
 ● About 来場案内
---------------------------------*/
/* ABOUTドルパとは？
	-----------------------------*/
.about-videoBox {
  width: 100%;
}

/* ABOUTドルパダイジェスト
	-----------------------------*/
.about-digest-wrap {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.about-digest-slider .slick-slide {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

/* ABOUTドルパの楽しみ方
	-----------------------------*/

/* ABOUTよくあるご質問
	-----------------------------*/

.abt-faq-container {
  max-width: var(--width-cont);
  padding: calc(var(--rs) * .5) 0;
  position: relative;
  margin: 0 auto calc(var(--rs) * 2);
  max-height: none;
  /* min-height: calc(var(--rs) * 24); */
}

.abt-faq-ctg {
  padding: 1rem;
  background: #fff;
  border: 2px solid var(--tmc01);
  border-left-width: 1rem;
  color: var(--tmc01);
  font-size: var(--fs-xl);
  position: relative;
}

.abt-faq-list {
  width: 100%;
  padding-left: 1%;
  padding-right: 1%;
  margin: 0 auto;
  border-bottom: .3rem dotted #D8CEC8;
  font-size: var(--fs-l);
  background: #fff;
}

.abt-faq-list>dt,
.abt-faq-list>dd {
  line-height: 1.6;
}

.abt-faq-list>dt {
  display: block;
  text-align: left;
  cursor: pointer;
  position: relative;
  padding: 1.5rem 2em 1.5rem 3em;
  margin: 0;
  border-top: 1px solid rgba(14, 19, 24, .25);
  text-indent: -2.5em;
}

.abt-faq-list>dt::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1.2em;
  height: 1.2em;
  font-size: 1.2em;
  color: var(--tmc01);
  position: absolute;
  right: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all .35s;
}

.abt-faq-list>dt::before {
  content: "Q";
  color: #fff;
  display: inline-block;
  text-align: center;
  background: var(--tmc05);
  width: 2em;
  height: 2em;
  line-height: 2em;
  margin-right: .5em;
  font-weight: normal !important;
  border-radius: 100px;
}

.abt-faq-list>dt.active {
  color: var(--tmc01);
  font-weight: bold;
}

.abt-faq-list>dt.active::before {}

.abt-faq-list>dt.active::after {
  opacity: 0.4;
  transform: rotate(540deg);
  transition: all .35s;
}

.abt-faq-list>dd {
  text-align: left;
  display: none;
  padding: 0 2.2em 2rem 3em;
  overflow: hidden;
  /*transition: height .3s ease;*/
  border-bottom: 1px solid rgba(14, 19, 24, .25);
  margin-bottom: -1px;
  position: relative;
}

.abt-faq-list>dd::before {
  content: "A";
  color: #fff;
  display: inline-block;
  text-align: center;
  background: var(--tmc01);
  width: 2em;
  height: 2em;
  line-height: 2em;
  font-weight: normal !important;
  border-radius: 100px;
  position: absolute;
  left: .5em;
}

.abt-faq-list>dt::before,
.abt-faq-list>dd::before,
.abt-faq-list>dt::after {
  text-indent: 0;
}

.abt-faq-list>dt:first-child,
.abt-faq-list>dd:last-child {
  border: none;
}

.abt-faq-list>dt.active+dd {
  display: block;
}

.abt-faq-list>dd a:not([class]) {
  font-weight: bold;
  font-size: 108%;
}

.abt-faq-list>dd a.link-text__deco--more {
  padding: 0.4em 1em;
  margin: 1em 1em 0 0;
  background: #D1EBFF;
  border-radius: 0.3rem;
  font-size: var(--fs-ml);
  display: inline-block;
}


/* ABOUTお知らせとお願い
	-----------------------------*/
.pg-nav-wrap {
  width: 100%;
  padding: 1em 0 0.8em;
  margin: 0 auto 2em;
  background: #fff;
  box-shadow: 0 .1rem .5rem 0 rgba(0, 0, 0, 0.3) inset;
  border-radius: 1rem;
  letter-spacing: 0.05em;
  display: flex;
  position: relative;
  z-index: 6;
}

.pg-nav-list {
  width: calc(100% - 1em);
  margin: .5em auto;
  display: flex;
  flex-direction: column;
}

.pg-nav-list--outer {}

.pg-nav-list--inner {
  margin-left: 0;
}

.pg-nav-item {
  margin-left: .5em;
  margin-right: .5em;
  text-indent: -1em;
  padding-left: 1em;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  position: relative;
  font-size: calc(var(--fs) * 1.5);
  line-height: 1.5;
}

.pg-nav-item>a,
.pg-nav-item>span {
  color: #333;
  text-decoration: none;
}

.pg-nav-item>a:hover {
  color: var(--tmc01);
  text-decoration: none;
}

.pg-nav-item>a.pre {
  color: #999;
  pointer-events: none;
  cursor: default;
}

.pg-nav-item>a::before {
  /* xcontent: "\0025bc"; */
  content: "\f107";
  color: var(--color-link-nml);
  margin-right: 0.3em;
}

.pg-nav-item>a.pre::before {
  color: #ccc;
}

/*注意事項抜粋枠*/
div.attended,
dl.attended {
  margin: 1em auto;
  border: solid .3rem #ccc;
  padding: calc(var(--rs) * 1.5);
  background: #fff;
  border-radius: 1rem;
}

dl.attended dt {
  font-size: calc(var(--fs) * 1.8);
  margin-bottom: 1rem;
  padding-top: 1rem;
  text-indent: -1em;
  padding-left: 1em;
  font-weight: bold;
}

dl.attended dd {
  font-size: calc(var(--fs) * 1.5);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: .1rem dotted #CCC;
  padding-left: 2rem;
  line-height: 1.3;
  color: #333;
}

dl.attended dd:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

dl.attended ul.att {
  width: auto;
  font-size: calc(var(--fs) * 1.4);
  margin: 1.5rem 0;
  padding-left: 1.5rem;
}

div.attended {}

div.attended h6 {
  color: #c03;
  margin-bottom: 2rem;
}

div.attended li {
  margin: calc(var(--rs) * 0.5);
  line-height: 1.4;
}

div.attended li a {
  text-decoration: none;
  color: #6D4639;
}

div.attended li a:hover {
  color: #F54986;
}

/* ABOUTご注意
	-----------------------------*/
dl.noteWrnsign,
dl.noteNumbers {
  counter-reset: my-badass-counter;
  width: min(98%, var(--width-cont));
  margin: 0 auto calc(var(--rs)*2);
  padding-top: calc(var(--rs)*2);
}

.noteWrnsign dt,
.noteNumbers dt {
  position: relative;
  font-weight: bold;
  padding: .2rem 0 1.1rem 0;
  font-size: calc(var(--fs) * 1.7);
  line-height: 1.4;
}

/*番号*/
.noteNumbers dt::before {
  content: counter(my-badass-counter);
  counter-increment: my-badass-counter;
  position: absolute;
  left: 0;
  top: -0.05em;
  font-weight: bold;
  aspect-ratio: 1;
  width: 3.0rem;
  height: 3.0rem;
  line-height: 3.0rem;
  border-radius: 100%;
  text-align: center;
  color: #fff;
  background: var(--tmc01);
  /*background: var(--tmc-red);*/
  font-size: 1.6rem;
  /*特殊*/
}

/*WARNING SIGN*/
.noteWrnsign dt::before {
  content: "！";
  position: absolute;
  top: 0.05em;
  left: 0;
  font-weight: bold;
  width: calc(var(--fs) * 3.0);
  line-height: calc(var(--fs) * 3.0);
  border-radius: 100%;
  text-align: center;
  color: #fff;
  background: var(--tmc01);
  font-size: calc(var(--fs) * 2.0);
  aspect-ratio: 1/1;
}

.noteWrnsign dt.red_d {
  color: #cc0033;
}

.noteWrnsign dt.red_d::before {
  background: #cc0033;
}

.noteWrnsign dd,
.noteNumbers dd {
  margin: 0 0 0;
  font-size: calc(var(--fs) * 1.4);
  line-height: 1.6;
}

.noteWrnsign dd {
  border-bottom: .1rem dotted #aaa;
  margin-bottom: 2.0rem;
  padding-bottom: 2.0rem;
}

.noteWrnsign dd>ul.att,
.noteNumbers dd>ul.att {
  padding: 1rem 0 0 1em;
}

.noteWrnsign>dt,
.noteWrnsign>dd,
.noteNumbers>dt,
.noteNumbers>dd {
  padding-left: calc(var(--fs) * 3.8);
}

.noteWrnsign>dd,
.noteNumbers>dd {
  margin-bottom: calc(var(--rs) * 2.5);
  padding-bottom: calc(var(--rs) * 2.5);
}

/*イラスト追加*/
.noteNumbers.note-illust-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--rs);
  justify-content: center;
}

.note-illust-cap {
  background: #fff;
  width: calc(var(--col2) - var(--rs));
  padding: calc(var(--rs) * 1.5) calc(var(--fs) * 1.5) calc(var(--fs) * 1.5);
  border: #B3ACA5 solid 3px;
  border-radius: 1.5rem;
}

.note-illust-cap figure img {
  filter: opacity(85%) sepia(15%);
  display: block;
  margin-bottom: calc(var(--rs) * 1.0);
  transform: scale(96%);
}

/* ABOUT入場チケット
	-----------------------------*/
.mokuji-wrap {
  background: #fff;
  padding: 1em;
  margin: auto;
  text-align: center;
}

.mokuji-list {}

.mokuji-item {
  position: relative;
  display: inline-block;
}

.mokuji-item a {
  color: #333;
  display: inline-block;
  padding: .5rem 1rem;
}

.mokuji-item a::before {
  color: var(--color-link-nml);
  margin-right: .5rem;
}

.mokuji-wrap .mokuji-list .mokuji-item a:hover {
  text-decoration: none;
}

.mokuji-item.pre a {
  pointer-events: none;
  color: #aaa;
  cursor: default;
}

/*チケット事前or当日*/
.ticket-choices-wrap {
  background: rgb(100 75 50 / 8%);
  padding-bottom: 2rem;
}

.ticket-leading {
  display: flex;
  margin: auto;
  padding: calc(var(--rs)* 2) var(--rs) 0;
  align-items: center;
  justify-content: center;
}

.ticket-lead-txt {
  font-size: var(--fs-l);
}

.ticket-lead-txt li {
  text-align: left;
  margin: .5em 0;
  text-indent: -1.5em;
  padding-left: 1.5em;
  line-height: 1.3;
}

.ticket-lead-txt li>i {
  color: #EC3E38;
  margin-right: 0.25em;
  text-indent: 0;
}

.ticket-lead-img {
  width: min(22%, 11rem);
  overflow: hidden;
}

.ticket-leading.ticket-choices-yoyaku {
  flex-direction: row-reverse;
}

.ticket-choices-yoyaku .ticket-lead-img {
  margin-right: calc(var(--rs) * 1.0);
}

.ticket-choices-yoyaku .ticket-lead-txt li>i {
  color: #9CD068;
}

.ticket-choices-tojitu .ticket-lead-txt li>i {
  color: #FF8D49;
}

.ticket-choices-link {
  display: block;
  text-align: center;
  border: .2rem solid;
  padding: 1.2em 1em;
  border-radius: 50rem;
  background: #fff;
  margin: 0 auto;
  width: min(96%, 60rem);
  box-shadow: 0 .8rem .4rem -.6rem rgba(0, 0, 0, .25);
  font-size: calc(var(--fs) * 1.6);
  font-weight: bold;
}

/*チケット事前or当日：ここまで*/

.ticket-stores {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1rem auto 2rem;
  width: min(80%, 38rem);
}

.ticket-stores>li {
  flex: 1;
  position: relative;
  text-align: center;
  font-size: calc(var(--fs) * 1.5);
  padding: 0 1.5em;
  filter: grayscale(1);
}

.ticket-stores>li+li::before {
  content: "or";
  display: block;
  background: #7E5C52;
  color: #fff;
  aspect-ratio: 1/1;
  border-radius: 100rem;
  width: 2.5em;
  line-height: 2.5em;
  position: absolute;
  left: -1.25em;
  top: calc(50% - 1.5em);
  font-weight: bold;
}

.ticket-info-banner {
  display: flex;
  border: .5rem solid #FDD23B;
  background: #FDD23B;
  padding-left: calc(var(--rs) * 1.0);
  margin: 0 auto 1.5rem;
  width: calc(100% - calc(var(--rs) * 2));
  font-size: var(--fs-l);
}

.ticket-info-banner>dt {
  background: #FDD23B;
  display: grid;
  place-items: center;
  padding: 0 calc(var(--rs) * 2.0);
  border-left: #fff dotted calc(var(--rs) * 1.0);
  flex: 1;
}

.ticket-info-banner>dd {
  background: #fffae0;
  flex: 2;
  padding: 1em;
}


.ticket-info-box {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1em;
  background: #fffae0;
  margin: 0 auto 2rem;
  /*box-shadow: 0 .2rem .5rem .2rem rgba(70, 50, 50, 0.2);*/
  border-top: .7em solid #FDD23B;
  border: .5rem solid #FDD23B;
}

.ticket-info-catch+.ticket-info-box {
  border-top-width: 0;
}

.flex_ticket-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.ticket-info-image {
  margin: 0 auto;
  text-align: center;
}

.ticket-info-image>img {
  width: 20rem;
}

.ticket-info-price {
  font-size: var(--fs-ml)
}

.ticket-info-prdct {}

.ticket-info-title {
  font-size: var(--fs-xxl);
  padding: 1rem 0;
  font-weight: bold;
}

.ticket-info-text {
  padding: .5em 0;
}

.ticket-info-mark {
  padding-bottom: 1em;
  line-height: 2;
  display: none;
}

.ticket-info-mark .tkt-type {
  border: .1rem solid;
  padding: .5rem;
  display: inline-block;
  margin: .5rem .25rem;
  font-size: var(--fs-ms);
  line-height: 1.2;
  letter-spacing: .1rem;
}

.ticket-info-mark .tkt-type.gold-d-mark {
  background: #EE8395;
  border-color: #EE8395;
  color: #fff;
}

.ticket-info-mark .tkt-type.os-d-mark {
  background: #78162C;
  border-color: #78162C;
  color: #fff;
}

.ticket-info-mark .tkt-type.red-d-mark {
  background: #A6202F;
  border-color: #A6202F;
  color: #fff;
}

.ticket-info-mark .tkt-type.redmark {
  color: #fff;
  background-color: #EA4335;
}

.ticket-info-mark .tkt-type.red {
  color: #ff4c52;
}

.ticket-info-mark .tkt-type.pnk {
  color: #f466bd;
}

.ticket-info-mark .tkt-type.color-gbop {
  color: #6DC8E2;
}

.color--ticket {
  color: #ffc516;
}

.color--gbop {}

.ticket-info-link {}

.ticket-info-catch {
  width: 100%;
  margin: .5rem auto 0;
  background: #FDD23B;
  position: relative;
  text-align: center;
  font-size: var(--fs-ll);
  padding: .8em 1rem;
}

.ticket-info-sub-catch {
  font-size: var(--fs-ml);
  padding: 1rem;
  border-bottom: .4rem dotted;
  display: inline-block;
  margin: auto;
  border-color: rgba(255, 255, 255, .6);
}



.ticket-info-read {
  padding: .5rem 0;
}

.ticket-info-dtl {
  padding: 1rem 0;
  text-align: left;
  display: flex;
  border-bottom: 1px dotted #aaa;
}

.ticket-info-dtl.bdr--none {
  border-bottom: none;
}

.ticket-info-dtl>dt {
  flex-shrink: 0;
  color: #4E454A;
  font-weight: bold;
  position: relative;
  width: 7em;
}

.ticket-info-dtl>dt>span {
  display: block;
}

/*.ticket-info-dtl > dt::after {
	content: "：";
	margin-right: .3em;
	margin-left: .2em;
  position: absolute;
  right: 0;
}*/
.ticket-info-dtl>dd {
  flex-grow: 1;
}

.ticket-info-spec {
  padding: 1rem 0;
}

.ticket-info-spec hr {
  border: 0;
  border-bottom: .4rem dotted #6DC8E2;
}

.ticket-info-note {
  margin: auto;
  position: relative;
}

.ticket-info-note.bdr--top_dotted {
  width: 100%;
  border-top: .5rem dotted #FDD23B;
  padding-top: 1em;
  margin-top: .5em;
}

.ticket-info-aboutXpass {
  background: #ba2636;
  color: #fff;
  padding: 1rem;
}

.ticket-info-aboutToujitu {
  background: #fff;
  padding: 1.5rem;
  margin-top: 1.5rem;
  border-top: .5rem dotted #FDD23B;
}

.ticket-info-admline {
  text-align: center;
  width: 100%;
  padding: 1em 0;
  margin-top: .5em;
  border-top: .3rem dotted #d9d9d9;
}

.ticket-info-line {
  padding: 1em 0;
  margin-top: .5em;
  border-top: .3rem dotted #d9d9d9;
}

.ticket-info-inport {
  background: #cc0033;
  color: #fff;
  padding: 0.5em;
}

.ticket-info-inport>li {
  padding: .3rem 0;
}

.ticket-info-aboutOvs {
  margin: 1.5rem auto;
  width: 100%;
}

.ticket-info-linkOvs {
  display: block;
  text-align: center;
  border-radius: 10rem;
  background: #00788F;
  padding: 1.2em 1em;
  width: min(94%, 80rem);
  margin: 0 auto;
  color: #fff;
  font-weight: bold;
  font-size: var(--fs-l);
  box-shadow: 0 .8rem .4rem -.6rem rgba(0, 0, 0, .25);
  border: .1rem outset rgba(0, 0, 0, 0.2);
}

.ticket-info-linkOvs .icon--mbs-gl {
  border: .2rem solid #fff;
  border-radius: 100%;
  font-size: 2.2em;
}

.ticket-info-wrapOvs {
  position: relative;
  width: 100%;
  padding: calc(var(--rs) * 2.5);
  background: #E0F0E9;
  border: 4px solid #009FA9;
  margin: calc(var(--fs) * 5.0) auto 0;
}

.ticket-info-dtlOvs {
  margin: 0 auto calc(var(--rs) * 3.0);
  position: relative;
  background: #fff;
  padding-top: 1rem;
  text-align: left;
}

.ticket-info-dtlOvs .tit--dec05 {
  display: block;
}

.ticket-info-dtlOvs .tit--dec05::after {
  content: "";
  width: .8em;
  height: .8em;
  margin: 0;
  border: 0;
  border-top: .3rem solid;
  border-right: .3rem solid;
  display: inline-block;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% + -0.4em);
  right: .8em;
}

.ticket-info-picOvs {
  width: min(50%, 30rem);
  margin: 0 auto;
}

.ticket-info-inrOvs {
  width: 96%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 1.5rem;
  position: relative;
}

.ticket-info-inrOvs p.linkBtn a {
  background: #00788F;
  width: min(90%, 60rem);
  padding: 1.2em 1em;
}

/*海外からの購入*/
/*.evFBox:has(#tkt_ovs_guidebook) {
  width: 100%;
  padding: 0;
}
.contsInnerBox:has(#tkt_ovs_guidebook) {
  padding-bottom: 0;
}*/
/*券種*/
#premium .ticket-info-catch {
  background: linear-gradient(to right, #D9B74C 0%, #FDD23B 30%, #FFF1B0 50%, #FDD23B 70%, #D9B74C 100%);
}

#premium .ticket-info-box {
  background: #FFFAE1;
  border-color: #D9B74C;
}

#guidebook .ticket-info-catch {
  background: #1261A5;
  color: #fff;
}

#guidebook .ticket-info-box {
  background: #E0EBF8;
  border-color: #1261A5;
}

#guidebook .ticket-info-aboutToujitu {
  border-color: #E0EBF8;
}

#admissioncard .ticket-info-catch {
  background: #D8325E;
  color: #fff;
}

#admissioncard .ticket-info-box {
  background: #FCE7EB;
  border-color: #D8325E;
}

#admissioncard .ticket-info-aboutToujitu {
  border-color: #FCE7EB;
}

.ticket-list-card {
  display: flex;
  justify-content: center;
}

.ticket-list-card>* {
  flex: 1;
  text-align: center;
  margin: 1rem 1vmin;
  border-radius: .5rem;
  border: .2rem solid;
  color: #393636;
  /*box-shadow: var(--bs-cmn);*/
  box-shadow: .3rem .3rem 0 -.1rem rgba(50, 50, 50, .3);
}

.ticket-list-link {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 1vw 1vw 2rem;
  color: #222;
  position: relative;
}

.ticket-list-link::after {
  border-left: .3rem solid rgba(90, 80, 70, .2);
  border-bottom: .3rem solid rgba(90, 80, 70, .2);
  transform: rotate(-45deg);
  content: "";
  display: block;
  width: .9em;
  height: .9em;
  position: absolute;
  left: 50%;
  bottom: 1rem;
  margin-left: -.45em;
}

.ticket-list-link figure {
  width: min(80%, 22rem);
  margin: 0 auto;
}

.ticket-list-link p {
  margin: 0 auto;
  padding: 1rem .5rem;
  border-radius: 1rem;
  font-weight: bold;
}

.ticket-list-link img {}

.ticket-bg_premium {
  background: #FFF6C4;
  background: linear-gradient(135deg, #F6D66B 0%, #FFF9D9 50%, #F6D66B 100%);
  /*background: linear-gradient(-45deg,#B79526 0%, #D9B74C 10%, #FDD23B 30%,#FFF1B0 50%,#FDD23B 70%, #D9B74C 90%,#B79526 100%);*/
}

.ticket-list-link__mark {
  position: absolute;
  top: -.5em;
  background: #B51349;
  font-size: var(--fs-ms);
  transform: rotate(-8deg);
  color: #fff;
  padding: .2em .5em;
}

.ticket-bg_guidebook {
  background: #D4EBF9;
  background: rgba(184, 222, 245, 0.6);
}

.ticket-bg_admissioncard {
  background: #FCE7EB;
  background: rgba(245, 183, 206, 0.5);
}

.ticket-table-wrap {
  position: relative;
  margin: 0 auto 2rem;
}

.ticket-table-head {
  position: relative;
  padding-left: 22%;
  margin-right: -2%;
}

.ticket-table-info {
  position: relative;
  margin-bottom: 1rem;
}

.ticket-info-navi-middle {
  position: relative;
  width: 100%;
  display: flex;
  margin: 0 auto 1rem;
  padding: 0;
  justify-content: space-between;
  align-items: flex-end;
  font-size: var(--fs-s);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-bottom: .1rem solid #e1e1e1;
}

.ticket-info-navi-middle>li {
  -webkit-transform: translateZ(0px);
  /*for old-browser*/
}

.ticket-info-navi-middle>li+li {}

.ticket-info-navi-middle>li a {
  display: block;
  padding: 1rem .6em;
  color: #666;
  position: relative;
  text-align: center;
}

.ticket-info-navi-middle>li a:hover {
  text-decoration: none;
  color: var(--color-link-nml);
}

.ticket-info-navi-middle>li.select {}

.ticket-info-navi-middle>li.select a {
  color: #222;
  pointer-events: none;
  cursor: default;
}

.ticket-info-navi-middle>li.select a::after {
  content: "";
  display: inline-block;
  width: 90%;
  height: .6rem;
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: 0;
  background: #E1E1E1;
}

/* Guidebook-Option*/
.ticket-option-box {
  position: relative;
  width: 100%;
  background: #FFDFDF;
  margin: 1.5rem 0 .5rem;
  padding: 1.2em;
  border-radius: .8rem;
  box-shadow: .2rem .2rem .4rem rgba(0, 0, 0, 0.15);
}

.ticket-option-box::before {
  content: "";
  position: absolute;
  top: -2.8rem;
  left: 3rem;
  border: 1.5rem solid transparent;
  border-bottom: 1.5rem solid #FFDFDF;
}

.ticket-option-pic {
  text-align: center;
  margin: auto;
  position: relative;
  top: -1em;
  width: min(75%, 17rem);
}

.ticket-option-pic figcaption {
  display: none;
}

.ticket-option-txt {}

.ticket-option-txt>ul {}

.ticket-option-cap {
  color: #CB1E3A;
  font-size: var(--fs-ll);
  font-weight: bold;
  display: inline-block;
}

.ticket-option-itm {
  position: relative;
  line-height: 1.5;
  padding: 1rem;
  background: #fff;
  margin: 0 auto 1rem 0;
}

/*入場券予約受付終了*/
.mark__entry_end {
  position: absolute;
  width: 104%;
  height: 100%;
  left: -2%;
  right: -2%;
  top: 0;
  background: rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: var(--fs-xxl);
  font-weight: bold;
  z-index: 2;
}

.mark__entry_end>p {
  margin: 20% auto auto;
  padding: .6em 1em;
  color: #fff;
  width: min(90%, 60rem);
  background: rgba(140, 0, 0, 0.8);
  font-size: 125%;
  transform: rotate(-5deg);
  box-shadow: var(--bs-cmn);
  text-align: center;
}

/* TICKET販売スケジュール
	-----------------------------*/
.ticket-scdl-table {
  /*font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-feature-settings: "palt";*/
  width: 100%;
  margin: 1rem auto;
  border-spacing: .2rem;
  background: #fff;
  border-collapse: separate;
  border: .1rem solid #aaa;
}

.ticket-scdl-table caption {
  /*background: #FAFAFA;
  padding: calc(var(--rs) * 1.0);*/
  margin-bottom: 1rem;
  filter: drop-shadow(5px -6px 3px rgb(0 0 0 / 2%)) drop-shadow(-5px -6px 3px rgb(0 0 0 / 2%));
}

.ticket-scdl-table th,
.ticket-scdl-table td {
  padding: .7em .5em;
  line-height: 1.3;
  font-size: var(--fs-ml);
  position: relative;
  vertical-align: middle;
}

.ticket-scdl-table th {}

.ticket-scdl-table tr:nth-child(1)>th {
  background: #E70012;
  color: #fff;
}

.ticket-scdl-table tr:nth-child(2)>th {
  background: #FF8890;
  color: #fff;
}

.ticket-scdl-table tr:nth-child(3)>th {
  background: #AFE3EC;
  color: #222;
}

.ticket-scdl-table tr:nth-child(4)>th {
  background: var(--tmc01);
  color: #fff;
}

.ticket-scdl-table td {
  background: #fff;
  border-bottom: .1rem solid #ddd;
}

.ticket-scdl-table td[colspan="2"] {
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.ticket-scdl-table tr:last-child>td {
  border-bottom: none;
}

/* ABOUT入場案内
	-----------------------------*/
.ent_flex__wrap {}

.ent_flex__txt {}

.ent_flex__pic {
  text-align: center;
}

/*入場案内：入場券事前購入有無で分岐*/
.ent-howto__wrap {
  padding: 0 1rem;
  margin-inline: auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: column;
  width: min(100%, var(--width-cont));
}

.ent-howto__box {
  flex: 1;
  display: flex;
  align-items: flex-start;
  padding: calc(var(--rs) * 3.0) 0;
  font-size: calc(var(--fs) * 1.4);
}

.ent-howto__pic {
  margin: 0 auto .5rem;
  flex: 2;
  text-align: center;
}

.ent-howto__pic em {
  font-size: calc(var(--fs) * 1.8);
  font-weight: 600;
  color: #fff;
  /*! background: var(--tmc05); */
  /*! filter: opacity(.4) brightness(1.5); */
  display: inline-block;
  margin: 0;
  padding: 0 .5em;
  border-radius: 2em;
  line-height: 1.1;
  aspect-ratio: 1/1;
  background: #c1ccd9;
  font-weight: 900;
}

.ent-howto__pic em::before {
  content: "case";
  font-size: .8em;
  display: block;
  margin-top: .5em;
}

.ent-howto__txt {
  padding-left: 1rem;
  padding-bottom: 1rem;
  text-align: left;
  flex: 4;
}

.ent-howto__txt>p {
  line-height: 1.6;
}

.ent-howto__tit {
  font-size: 1.2em;
  font-weight: bold;
  margin: 1rem 0;
}

/*入場案内：時間差入場とは
---------------------------------*/
.ent-safety-acbox {
  width: min(100%, 86rem);
  margin: 2rem auto;
  background: #fff;
  position: relative;
  overflow: hidden;
}

.ent-safety-acbox[open] {
  box-shadow: none;
}

.ent-safety-acbox summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 1rem calc(var(--rs) * 2.0);
  color: var(--color-link-nml);
  cursor: pointer;
  font-size: calc(var(--fs) * 1.4 + var(--rs) * 0.6);
  background: #fff;
  font-weight: bold;
  border-bottom: 2px solid var(--color-link-nml);
}

.ent-safety-acbox summary::-webkit-details-marker {
  display: none;
}

.ent-safety-acbox summary::after {
  transform: translateY(-25%) rotate(45deg);
  width: 9px;
  height: 9px;
  margin-left: 10px;
  border-bottom: 3.5px solid;
  border-right: 3.5px solid;
  content: '';
  transition: transform .3s;
}

.ent-safety-acbox[open] summary {
  margin-bottom: calc(var(--fs) * 1.5);
  color: #222;
  background: #FFEF96;
  border-radius: 0;
  border-color: #fff;
}

.ent-safety-acbox[open] summary::after {
  transform: rotate(225deg);
  filter: opacity(.5) grayscale(1);
}

.ent-safety-acbox>div {
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: .5rem calc(var(--rs) * 2.0) calc(var(--rs) * 1.5);
  color: #444;
  transition: transform .5s, opacity .5s;
  line-height: 1.5;
  text-align: left;
}

.ent-safety-acbox[open]>div {
  transform: none;
  opacity: 1;
}

.ent-safety-acbox p {
  font-size: calc(var(--fs) * 1.5);
  line-height: 1.6;
}

.ent-safety-acbox p+p {
  margin-top: 1.5em;
}

.ent-safety-cap {
  font-size: 125%;
  background: linear-gradient(transparent 60%, #FFEF96 60%);
  /*color: var(--tmc01);*/
}

/* 参加方法STEPチャート*/
.step-chart__wrap {
  margin: 2em auto 1em;
  max-width: 86rem;
  position: relative;
}

.step-chart-box {
  position: relative;
  min-height: 3em;
  box-sizing: border-box;
  border: .3rem solid #D9D9D9;
  background: #fff;
  margin: auto auto;
  padding: 1em 1em 1.5em;
  border-radius: 2rem;
}

.step-chart-box+.step-chart-box {
  margin-top: 3.5rem;
}

.step-chart-box+.step-chart-box::before {
  position: absolute;
  content: "";
  top: -4rem;
  left: calc(50% - 2rem);
  border: 2rem solid transparent;
  border-top-color: #D0D0D0;
  width: 0;
  height: 0;
  opacity: 0.9;
}

.step-num--ribbon {
  height: 4rem;
  line-height: 4rem;
  position: absolute;
  top: -2rem;
  left: -1rem;
  padding: 0 3rem;
  background-color: #EE8395;
  -webkit-box-shadow: .1rem .1rem .1rem rgba(0, 0, 0, 0.2);
  box-shadow: .1rem .1rem .1rem rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  color: #fff;
  font-weight: normal;
}

.step-num--ribbon::before {
  position: absolute;
  top: 4rem;
  left: 0;
  content: "";
  border: .5rem solid transparent;
  border-top-color: #731845;
  border-right-color: #731845;
}

.step-num--ribbon+* {
  margin-top: 1em;
}

/*待機列*/
.ent-guide__wrap {
  position: relative;
  max-width: var(--width-cont);
  margin-inline: auto;
  margin-bottom: 1em;
  padding: 0 1vw 0 3vw;
}

.ent-guide__title {
  text-align: center;
  padding: .5em 1em;
  font-weight: bold;
  font-size: 150%;
  background: #4a1919;
  color: #fff;
  line-height: 1.5;
  margin: 0 auto 1em;
}

.ent-guide__title--sumika {
  background: #ff8c00;
}

.ent-guide__title--general {
  background: #0F54BF;
}

.ent-guide__title--special {
  background: #0F54BF;
}

.ent-guide__step-num {
  position: absolute;
  left: -1em;
  top: -0.6em;
  background: var(--tmc01);
  border: .1rem solid var(--tmc01);
  border-radius: 10rem;
  color: #fff;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  font-weight: bold;
  font-size: var(--fs-xxl);
}

.ent-guide__chart-box {
  position: relative;
  background: #fff;
  padding: 2rem 1rem 2rem calc(var(--rs) * 2.0);
  margin: 1em auto;
  border: .2rem solid var(--tmc01);
  border-radius: 2rem;
  width: 100%;
  /*width: calc(100% - 3em);*/
}

.ent-guide__chart-mark--down {
  position: relative;
  z-index: 2;
  height: 2em;
  margin-bottom: -1em;
  margin-top: -1em;
}

.ent-guide__chart-mark--down::before,
.ent-guide__chart-mark--down::after {
  position: absolute;
  content: "";
  top: -.5em;
  left: calc(50% - 3rem);
  border: 3rem solid transparent;
  border-top: 3rem solid var(--tmc01);
  width: 0;
  height: 0;
}

.ent-guide__chart-mark--down::after {
  margin-top: 1em;
  filter: opacity(0.5);
}

.ent-guide__chart-image {
  text-align: center;
  margin-top: 2rem;
}

.ent-guide__chart-iconflex {
  display: flex;
  justify-content: center;
}

.ent-guide__chart-iconflex>* {
  margin: .5rem;
  flex: 0 1 auto;
  font-size: 20px;
  text-align: center;
  padding: 0;
  background: #eaeaea;
  border-radius: 100%;
  width: 3em;
  height: 3em;
  line-height: 3em;
}

.ent-guide__chart-iconflex i.far,
.ent-guide__chart-iconflex i.fas {
  margin: auto;
}

.ent-guide__chart-read {
  font-size: calc(var(--fs-xxl) + .1vw);
  font-weight: bold;
}

.ent-guide__chart-info {
  margin-top: 1.5rem;
  font-size: var(--fs-l);
}

.ent-guide__chart-landmark {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 1rem 0;
  padding: 0.5rem;
  border-radius: 0 0 3rem 0;
}

.ent-guide__chart-landmark>img {
  width: var(--col3);
  object-fit: contain;
  flex: 1 1 auto;
}

.ent-guide__chart-landmark figcaption {
  margin: auto;
  padding: calc(var(--rs) * 1.0);
  font-size: var(--fs-ml);
  line-height: 1.5;
  text-align: left;
  flex: 1 1 auto;
  width: var(--col2);
}

.timtbl-box-sumika .ent-guide__chart-landmark {
  background: hsla(44, 100%, 50%, 0.15);
}

.timtbl-box-general .ent-guide__chart-landmark {
  background: hsla(197, 100%, 50%, 0.16);
}

.ent-guide__chart-step {
  display: flex;
  flex-direction: column;
}

.ent-guide__chart-step>li {
  position: relative;
  padding: .5em 1em;
  border: .1rem dashed #aaa;
  background: #f9f9f9;
  margin: auto;
  flex: 1;
  width: calc(100% - 1rem);
}

.ent-guide__chart-step>li:first-child {
  border-color: #555;
  border-style: solid;
  font-size: 115%;
}

.ent-guide__chart-step>li+li {
  margin-top: 1em;
}

.ent-guide__chart-step>li+li::before {
  content: "↓";
  position: absolute;
  top: -1.2em;
}

.ent-guide__chart-note {
  margin-top: 1em;
  font-size: var(--fs-m);
}

.ent-guide__chart-note--tit {
  padding: .25em .5em;
  background: #E12F3C;
  color: #fff;
  border-radius: .5rem;
  font-size: var(--fs-s);
  display: inline-block;
  text-indent: 0;
  filter: brightness(1.1) opacity(.9);
}

.ent-guide__chart-note--tit i {
  margin-right: .1em;
}

.ent-guide__chart-note--itm {}

.ent-guide__chart-text--markup {}

.ent-guide__chart-text--lines {
  flex: 1;
  border-left: .3rem dotted #cecece;
  padding-left: .4rem;
  padding-right: .4rem;
  margin-top: 1em;
}

.ent-guide__chart-text--dollfie {
  background: #C4E9D7;
  color: #111;
  padding: 1em;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  /*width: calc(100% - 2rem);*/
}

.ent-guide__chart-text--xpass {
  background: #B71B35;
  color: #fff;
  padding: 1em;
  max-width: 84rem;
  margin-left: auto;
  margin-right: auto;
  flex-direction: column;
}

.ent-guide__chart-text--balloon {
  text-align: center;
  background: #ECE7E7;
  width: 100%;
  margin: 1em auto;
  padding: 1em;
}

.ent-guide__chart-img--icon {
  display: block;
  float: right;
  width: min(30%, 15rem);
  position: relative;
}

.ent-guide__chart-img--icon>i {
  font-size: min(calc(100vw / 12), 8rem);
}

.ent-guide__chart-img--illust {
  display: block;
}

.ent-guide__chart-img--map {
  position: relative;
}

.ent-guide__chart-img--map>img {
  width: 100%;
  object-fit: contain;
}

.areaPin {
  margin: 0;
  position: absolute;
  -webkit-animation: mapActive 1s 0s linear infinite;
  animation: mapActive 1s 0s linear infinite;
  overflow: hidden;
}

.areaPin.areaPin-generalline {
  background-color: hsla(205.4, 100%, 50%, 0.55);
  top: 37%;
  left: 30%;
  width: 16%;
  aspect-ratio: 5/3;
  border-radius: 0;
  line-height: 4;
  border-radius: 100%;
}

.areaPin.areaPin-sumikaline {
  background-color: hsla(44.9, 100%, 50%, 0.9);
  top: 57%;
  left: 42%;
  width: 17%;
  aspect-ratio: 8/3;
  border-radius: 0;
  line-height: 4;
}

@keyframes mapActive {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(.6, .6);
    transform: translateY(0) scale(.6, .6)
  }

  25% {
    opacity: .75;
    -webkit-transform: translateY(0) scale(.7, .7);
    transform: translateY(0) scale(.7, .7)
  }

  50% {
    opacity: .5;
    -webkit-transform: translateY(0) scale(.8, .8);
    transform: translateY(0) scale(.8, .8)
  }

  75% {
    opacity: .25;
    -webkit-transform: translateY(0) scale(.9, .9);
    transform: translateY(0) scale(.9, .9)
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(0) scale(2, 2);
    transform: translateY(0) scale(1, 1)
  }
}

/* ABOUT入場時刻表
	-----------------------------*/
.ent-timetable {
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
}

.ent-timetable table {
  max-width: 74rem;
  width: calc(100% - 2rem);
  margin: .5rem auto;
}

.timtbl-box-wrap {
  position: relative;
  border: .5rem solid;
  margin: 0 auto 2rem;
  padding-bottom: 1rem;
  border-radius: 1.5rem 1.5rem 0 0;
}

.timtbl-box-sumika {
  /*border-color: #ED6D00;*/
  border-color: #773B10;
}

.timtbl-box-general {
  /*border-color: #2A71B9;*/
  border-color: #0386C6;
}




.timtbl-title {
  color: #fff;
  padding: 1rem 0 2rem;
  font-size: calc(var(--fs-m) + .3vw);
}

.timtbl-title>dt,
.timtbl-title>dd {
  position: relative;
  z-index: 1;
}

.timtbl-title>dt {
  font-size: 150%;
  font-weight: bold;
}

.timtbl-title>dd {}

.timtbl-box-sumika .timtbl-title {
  /*background: #ED6D00;*/
  background: url(/event/dolpa/assets/image/cmnPrts/bg_ptn_wood02.jpg) #773B10;
}

.timtbl-box-sumika .timtbl-title::before,
.timtbl-box-sumika .timtbl-title::after {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1rem;
  width: min(22%, 16rem);
  height: 0;
  padding-top: 25%;
}

.timtbl-box-sumika .timtbl-title::before {
  background-image: url(/event/dolpa/assets/image/cmnPrts/dec_ivy_sumika01-left.png);
  background-position: top left;
  left: -1rem;
}

.timtbl-box-sumika .timtbl-title::after {
  background-image: url(/event/dolpa/assets/image/cmnPrts/dec_ivy_sumika01-right.png);
  background-position: top right;
  right: -1rem;
}

.timtbl-box-general .timtbl-title {
  /*background: #2A71B9;*/
  background: #0386C6;
}

.timtbl-txt {
  text-align: left;
  padding: 1em 0;
  line-height: 1.8;
  font-size: var(--fs-l);
}

.timtbl-notice {
  padding: 1rem;
  text-align: left;
  max-width: 74rem;
  font-size: var(--fs-m);
  margin: 0 auto 1rem;
}

.ent-timetable table th,
.ent-timetable table td {
  border: 0.1rem solid #666;
  padding: 1rem .5rem;
  vertical-align: middle;
}

.ent-timetable table th {
  font-weight: bold;
}

.timtbl-bg-color {
  background-color: hsla(44, 100%, 50%, 0.1);
}

.timtbl-bg-color02 {
  background-color: #FFE9E4;
}

.timtbl-bg-color03 {
  background-color: hsla(197, 100%, 50%, 0.1);
}

.timtbl-box-general .timtbl-bg-color {
  background-color: hsla(197, 100%, 50%, 0.1);
}

.timtbl-bdr-free>td,
.timtbl-bdr-free>th {
  border-top: double #666 .3rem !important;
}

.ent-timetable table tr {}

.ent-timetable table tr:first-child {
  background-color: #666;
  color: #fff;
}

.ent-timetable table tr:first-child>th {
  border-right: 0.1rem solid #eee;
  font-size: var(--fs-ml);
  font-weight: normal;
}

.ent-timetable table tr:first-child>th:last-child {
  border-right: 0.1rem solid #666;
}

.ent-timetable table th:first-child {
  width: 30%;
}

.ent-timetable table td:nth-child(2) {
  width: 40%;
}

.ent-timetable table td:nth-child(3) {
  width: 30%;
}

.timtbl__groupNum {
  font-size: var(--fs-xxl);
}

.timtbl__groupAll {
  font-size: var(--fs-l);
}

.timtbl__timesMtg {
  font-size: var(--fs-xxl);
  font-weight: bold;
}

.timtbl__timesAdm {
  color: #555;
  font-weight: normal;
}

.timtbl__mark-kome {
  font-size: 1rem;
  /*特殊*/
  color: #000;
  font-weight: normal;
  text-align: right;
  max-width: 74rem;
  margin: 0 auto;
  position: relative;
  line-height: 1;
}


/*
	.ent-timetable table tr:hover .timtbl__groupNum,
	.ent-timetable table tr:hover .timtbl__timesMtg	{ color: red; }
	*/
/* ABOUT会場MAP
	-----------------------------*/
div#eveMap {
  width: 100%;
  max-width: var(--width-site);
  padding: 0 0 calc(var(--rs) * 3.0);
  margin: 0 auto;
  position: relative;
  text-align: center;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(2px);
  /*box-shadow: 0 .2rem 1rem rgba(0, 0, 0, 0.2);*/
}

.eveMap-caption {
  padding: calc(var(--rs) * 1.5);
  background: #241814;
  color: #fff;
  font-size: calc(var(--fs) * 1.6 + var(--fs) * 0.8);
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto;
}

.eveMap-caption>a {
  text-decoration: underline;
  color: #74DCFB;
  display: inline-block;
  font-size: calc(var(--fs) * 1.6);
}

.eveMap-box {
  position: relative;
}

.eveMap-img {
  display: block;
  margin: auto;
}

.eveMap-circle {
  position: absolute;
  display: block;
  width: min(5%, 6.5rem);
  aspect-ratio: 1 / 1;
  z-index: 1;
  border-radius: 100%;
  /*background: #00ffff96;*/
}

a.eveMap-circle:hover {
  background: linear-gradient(135deg, rgb(255, 255, 255), rgba(255, 255, 255, 0));
  filter: blur(5px);
  mix-blend-mode: overlay;
}

a.eveMap-circle.pre {
  pointer-events: none;
  cursor: default;
}

.about-icNo {
  max-width: 94rem;
  padding: 1em;
  margin: 0 auto 1em;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgb(100 80 50 / 9%);
}

.about-icNo>img {
  display: inline-block;
  max-width: 8rem;
  min-width: 4em;
  vertical-align: bottom;
}

.about-icNo>p {
  position: relative;
  display: inline-block;
  line-height: 1.4;
  text-align: left;
  padding: 0 1em;
}

.about-icNo>i {
  margin: auto .5em auto 0;
}

.about-icNo>span.arrow_l {
  display: inline-block;
  margin: auto .5em auto 0;
}

span.arrow_l {
  position: relative;
  width: 0;
  height: 0;
  border: 1.6rem solid transparent;
  border-right-color: #5B3F3A;
}

.about-icNo>span.arrow_l::after {
  position: absolute;
  content: '';
  top: -.5em;
  left: 1.6rem;
  width: 1.6rem;
  height: 1.6rem;
  background: #5B3F3A;
}

/* ABOUT イベント項目リスト（ガイドブックナンバー）
	-----------------------------*/
.GBNo_mokuji {
  margin: 0 auto 3.0rem;
  padding-bottom: 3.0rem;
  position: relative;
}

dl.GBNo_list {
  width: 900px;
  max-width: 90%;
  margin: 1.0rem auto;
  position: relative;
}

dl.GBNo_list dt {
  position: relative;
  display: inline-table;
  text-align: center;
  padding: 2.0rem 0;
  width: 100%;
  line-height: 1.25;
  font-size: var(--fs-xxl);
  font-weight: bold;
  color: #E21982;
  text-shadow: -.1rem -.1rem .1rem #fff, .1rem .1rem .2rem #fff, .1rem .1rem .1rem #fff, 0 0 .5rem #fff, 0 0 .7rem #fff, 0 0 .9rem #fff, 0 0 2.0rem #fff, 0 0 2.0rem #fff;
}

/*dl.GBNo_list dt small,
			dl.GBNo_list dt:first-line 	{ font-size: calc(var(--fs-l) * 1.5);}*/
dl.GBNo_list dt img {
  display: block;
  margin: 0 auto;
}

dl.GBNo_list dt::before {}

dl.GBNo_list dt a {}

dl.GBNo_list dd {
  position: relative;
  display: inline-table;
  text-align: left;
  width: 100%;
  color: #744;
  border-radius: 2.0rem;
  border: .5rem solid #FB9EB8;
  vertical-align: middle;
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
}

dl.GBNo_list dd:nth-of-type(2n+1) {
  border-color: #FBCA57;
}

dl.GBNo_list dd+dd {
  margin-top: 1.5rem;
}

dl.GBNo_list dd:hover {
  background: #fff;
  transition: all .5s;
}

dl.GBNo_list dd a {
  color: #744;
  text-decoration: none;
  /*display: block;*/
  position: relative;
  padding: .5rem 1em .5rem 0;
  display: flex;
  align-items: center;
}

dl.GBNo_list dd a:hover {
  color: var(--color-link-nml);
}

dl.GBNo_list dd a.until {
  pointer-events: none;
  cursor: default;
  color: #a59999;

}

dl.GBNo_list dd a.link--none {
  pointer-events: none;
  cursor: default;
}

dl.GBNo_list.cntsBig3 dd>a {
  padding-bottom: .8rem;
}

dl.GBNo_list dd>a::after {
  /* content: ">"; */
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  position: absolute;
  right: 1.2rem;
  left: auto;
  top: 50%;
  margin-top: -0.5em;
  color: #E21982;
}

dl.GBNo_list dd a.link--none::after {
  content: none;
}

dl.GBNo_list dd a.until::after {
  content: none;
}

dl.GBNo_list dd a.cnts-li::after {}

dl.GBNo_list dd img.number {
  width: 5.0rem;
  display: inline-block;
  vertical-align: middle;
  margin: 0.5rem 1.0rem;
}

dl.GBNo_list dd img.number.number--big3 {
  width: 6.5rem;
}

dl.GBNo_list dd em {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.4;
  font-size: var(--fs-l);
  width: 85%;
  max-width: 100%;
}

dl.GBNo_list dd>ol {
  position: relative;
  z-index: 2;
  font-size: var(--fs-ml);
  width: auto;
  margin: 0 4.0rem 1.0rem 2.0rem;
}

dl.GBNo_list dd>ol>li {}

/*dl.GBNo_list dd > ol > li::before	{ content:"・";}*/
dl.GBNo_list dd>ol>li a {
  display: inline-block;
  padding: .5rem 0;
  position: relative;
  width: calc(100% - 1em);
}

dl.GBNo_list dd>ol>li a:not(.until)::after {
  /*x-content: ">";*/
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  color: #E21982;
}

dl.GBNo_list dd sup {
  font-size: 45%;
}

dl.GBNo_list dd em sup {
  line-height: 100%;
  vertical-align: 100%;
}

dl.GBNo_list dd>ol>li a:not(.until)::after,
dl.GBNo_list dd>a::after {
  font-size: var(--fs-l);
}

.GBNo_list--read {
  font-size: var(--fs-ms);
  line-height: 1;
  display: inline-block;
}

/* ABOUT取材申込について
	-----------------------------*/
/* ABOUT感染防止対策
	-----------------------------*/
.tit--caution {
  color: #ffffff;
  background: #cc0033;
  padding: .6em 1em;
  line-height: 1.25;
  margin: 0 auto 1em;
  font-weight: bold;
}

.card_caution_wrap {
  flex-wrap: wrap;
  display: flex;
  /*flex-direction: column;*/
}

.card_caution_list {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: .3rem solid #c03;
  border-radius: .8rem;
  margin: .5rem;
  padding: 1rem;
  text-align: center;
  width: calc(var(--col3) - 1rem);
}

.caution-box-border {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: .3rem solid #c03;
  border-radius: .8rem;
  margin: 1rem;
  padding: 1rem;
}

.caution__flexbox {}

.caution__flexbox__image {
  text-align: center;
  padding: .5rem 0;
}

.caution__flexbox__text {}

.caution-box__tit-cap {
  color: #cc0033;
  padding: 1rem 0;
  font-size: var(--fs-xxl);
  font-weight: bold;
  line-height: 1.2;
}

.caution-box__tit-sub {
  display: none;
  font-weight: bold;
  color: #777;
  font-size: var(--fs-s);
}

.caution-box__text {
  margin: .5rem auto 1rem;
}

.caution-box__image {
  text-align: center;
  padding: .5rem 0;
}

/*-------------------------------
 共通パーツ：About-2カラム
---------------------------------*/
.cnt_about_inner {
  width: min(100%, 120rem);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.cnt_about_intro {
  width: var(--col2);
  text-align: left;
  padding-bottom: 1rem;
}

.cnt_about_intro > h3 {
  font-size: calc(var(--fs) * 2.4);
  padding: calc(var(--rs) * 1.0);
  color: var(--tmc01);
}

.cnt_about_intro > h3::after {
  content: attr(data-eng);
  font-size: 0.5em;
  filter: opacity(.5);
  display: inline-block;
  margin-left: .5em;
}

.cnt_about_intro > p {
  font-size: calc(var(--fs) * 1.5);
  line-height: 1.6;
  padding: calc(var(--rs) * 1.0);
}

.cnt_about_intro > p > a {
  font-weight: bold;
}

.cnt_about_intro em:not([class]) {
  font-size: 105%;
  font-weight: bold;
  color: var(--tmc01);
}

.cnt_about_pic {
  width: var(--col2);
  text-align: center;
}

.cnt_about_pic>figcaption {
  padding: .5em;
  font-size: calc(var(--fs) * 1.0);
  text-align: right;
  color: #777;
}

/*-------------------------------
 ● Meets お迎えする
---------------------------------*/
/* MEETS新作ドルフィー注文受付
	-----------------------------*/
.omukae-outline {}

.omukae-outline__schedule {
  padding: 0 1rem 1rem;
  margin-bottom: 1em;
  position: relative;
}

.omukae-scdl__title {
  color: #EE8395;
  margin: 0 0 0.5em;
  padding: 0.3rem 0;
  position: relative;
  font-size: var(--fs-xxl);
  font-weight: bold;
  border-bottom: solid .3rem #FDE1F0;
}

.omukae-scdl__title::before {
  content: "◆"
}

.omukae-scdl__title::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid .3rem #EE8395;
  bottom: -.3rem;
  width: 20%;
}

.omukae-scdl__text {
  padding-left: 2rem;
}

/*すみかSHOP一覧CSS流用中*/
.omukae-scdl__text .smkitm-list-wrap {
  justify-content: center;
}

.omukae-scdl__text .smkitm-list-wrap>li {
  width: 100%;
  background: #444;
  margin-bottom: 1rem;
}

.omukae-scdl__text .smkitm-name {
  font-size: calc(var(--fs) * 1.4);
  background: #444;
  color: #fff;
  text-align: center;
  padding: .8rem 1rem;
}

.omukae-scdl__text .smkitm-list-wrap a {}

.omukae-scdl__text .smkitm-list-wrap a:hover {
  text-decoration: none;
}

/*変則ブレイクポイント*/
@media screen and (min-width:345px) {
  .omukae-scdl__text .smkitm-list-wrap>li {
    width: calc(100% / 2 - 2rem);
  }
}

@media screen and (min-width:700px) {
  .omukae-scdl__text .smkitm-list-wrap>li {
    width: calc(100% / 4 - 2rem);
  }
}



/* MEETS新作アイテム展示販売案内
	-----------------------------*/
.tenjihanbai-info {
  width: auto;
  text-align: left;
  margin: 0 auto;
  position: relative;
}

.tenjihanbai-dlbox {
  line-height: 1.4;
  margin-bottom: 1.5em;
}

.tenjihanbai-dl-tit {
  font-size: var(--fs-xxl);
  padding: 1rem 0;
}

.tenjihanbai-dl-tit::before {
  content: "◆";
  color: var(--tmc04);
  margin-right: .25rem;
}

.tenjihanbai-dl-txt {
  position: relative;
  padding: .5rem 2rem;
}

.tenjihanbai-dl-txt>a.txtlnk {
  display: block;
  position: relative;
  z-index: 5;
}

.tenjihanbai-dl-txt>a.txtlnk.pre:not(.lnkBtn) {
  color: #999;
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

.omukae-reigai-wrap {
  padding: 1rem;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: rgb(216, 231, 251);
}

.omukae-reigai-pic {
  padding: 1rem;
  max-width: 22rem;
}

.omukae-reigai-txt {
  text-align: left;
  padding: 1rem;
  margin: auto 0;
}

.sumikaSHOP-entry {
  border: .2rem solid #8f6552;
  padding: 1em;
  margin: 1em auto;
  background: #fff;
  position: relative;
}

.sumikaSHOP-entry::before {
  content: "";
  position: absolute;
  top: -3.0rem;
  left: 50%;
  margin-left: -1.5rem;
  border: 1.5rem solid transparent;
  border-bottom: 1.5rem solid #8f6552;
}

.sumikaSHOP-entry.tenji-only {
  border-color: transparent;
}

.sumikaSHOP-entry.tenji-only::before {
  border-bottom-color: #fff;
}

.sumikaSHOP-mark--img {
  flex: 0 1 45%;
  text-align: center;
  margin: auto;
}

.after-announce {}

.after-announce--date {
  padding: 0 1em;
  display: inline-block;
  line-height: 2em;
  height: 2em;
  vertical-align: middle;
  background: #FEE1EA;
}

/* MEETS新作ドルフィー販売方法
	-----------------------------*/
/*ND販売パターン*/
.sales-link__list__wrap {
  display: flex;
  flex-wrap: wrap;
  padding: 1rem 0;
}

.sales-link__list__item {
  width: calc(100% - 2rem);
  display: block;
  text-align: center;
  position: relative;
  padding: .8em;
  background: #fff;
  border: solid 1px #aaa;
  margin: 1rem;
  font-weight: bold;
  border-radius: 0.5rem;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
}

.sales-link__list__item::after {}

.sales-link__list__item>em {
  font-size: var(--fs-ml);
  /*color: #fff;
	background: #0089D1;
  box-shadow: 0 .8rem .4rem -.6rem rgba(0,0,0,.25);*/
  border: .2rem solid;
  width: 100%;
  display: block;
  padding: 1em 0;
  border-radius: 10em;
  position: relative;

}

.sales-link__list__item>em::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  margin: 0 0 0 .3em;
  border: 0;
  border-top: 0.2em solid;
  border-right: 0.2em solid;
  display: inline-block;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 1em;
  margin-top: -.25em;
}

.sales-link__list__item.end {}

.sales-link__list__item.end>em {
  background: #bbb;
}

.sales-link__list__icon {
  width: 12rem;
  height: 12rem;
  display: flex;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
}

.sales-link__list__icon.icon__RS,
.sales-link__list__icon.icon__EC {
  filter: grayscale(100%);
}

.sales-link__list__icon>img {
  object-fit: contain;
  vertical-align: baseline;
}

a:hover .sales-link__list__icon.icon__RS,
a:hover .sales-link__list__icon.icon__EC {
  filter: inherit;
}



/*販売方法一覧メニュー*/
.pg-nav-bnr {
  margin: auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  z-index: 1;
  padding-left: calc(1rem - 1%);
  padding-right: calc(1rem - 1%);
}

.pg-nav-bnr>* {
  width: calc(var(--col4) - 2%);
  margin: 1rem 1%;
  position: relative;
}

.pg-nav-bnr a:hover {
  text-decoration: none;
}

.smkitm-label {}

.smkitm-label--DPlimited {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
  display: inline-block;
  font-size: var(--fs-s);
  padding: .5rem .8rem;
  line-height: 1;
  background: #EA618E;
  color: #fff;
}

.smkitm-label--DPlimited.label-tag-yoyakuAll {
  background: #F01160;
  color: #fff;
}

.smkitm-label--DPlimited.label-tag-yoyakuLmt {
  background: #F765A2;
  color: #fff;
}

.smkitm-label--DPlimited.label-tag-lottery {
  background: #F97070;
  color: #fff;
}

.smkitm-label-tag {
  display: flex;
  flex-wrap: wrap;
  padding: .5rem .5rem;
  margin-top: auto;
  font-size: var(--fs-xs);
  font-size: calc(var(--fs) * 1.2);
  flex-direction: column;
}

a.smkitm-label-tag:hover {
  text-decoration: none;
}

.smkitm-label-tag>* {
  flex-shrink: 0;
  flex-grow: 1;
  text-align: center;
  padding: .4rem .5em;
  background: #eee;
  border-radius: .5em;
  margin: .3rem .3rem;
  line-height: 1.2
}

.label-tag-sumikashop {
  background: #fff;
  color: #EE7800;
  border: 1px solid;
  margin-bottom: 0;
}

.label-tag-yoyakuAll {
  background: #F01160;
  color: #fff;
}

.label-tag-yoyakuLmt {
  background: #F765A2;
  color: #fff;
}

.label-tag-hanbaiAll {
  background: #387d39;
  color: #fff;
}

.label-tag-hanbaiLmt {
  background: #3DAA8B;
  color: #fff;
}

.label-tag-hanbaiLtr {
  background: #E26169;
  color: #fff;
}

.label-tag-mbrAll {
  background: #fff;
  color: #942343;
  border: .1rem solid;
}

.label-tag-mbrVSVIP {
  background: #fff;
  color: #B4174E;
  border: .1rem outset #B4174E;
}

.label-tag-mbrGLVSVIP {
  background: #fff;
  color: #B4174E;
  border: .1rem outset #B4174E;
}

.label-tag-deli {
  background: #bbe2f1;
  color: #333;
}

.label-tag-counter {
  background: #FFEBB0;
  color: #333;
}


.card__program>dd .smkitm-label-tag {
  padding: 1px;
}

.card__program>dd>a {
  position: relative;
  display: block;
  overflow: hidden;
}

.card__program>dd>a.pre {
  pointer-events: none;
  cursor: default;
}

.card__program>dd>a.pre::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgb(255 255 255 / 50%);
}

.card__program>dd>a.pre::after {
  content: "Coming soon";
  font-family: 'Quattrocento', serif;
  display: block;
  white-space: pre;
  font-size: var(--fs-s);
  font-weight: bold;
  text-indent: 0;
  text-align: center;
  height: 1.5em;
  line-height: 1.5em;
  color: #bbb;
  position: relative;
  z-index: 2;
}

/*販売方法概要*/
.sales-method__wrap {}


.sales-method__info {
  width: 100%;
  position: relative;
  border-collapse: separate;
  border-spacing: var(--rs) .2rem;
  margin: 0 auto calc(var(--rs) * 2.0);
  z-index: 2;
}

.sales-method__info caption {
  width: 100%;
  color: #fff;
  position: relative;
}

.sales-method__info caption>p+p {
  border-top: 1px solid;
  margin: .5em auto 0;
  padding-top: .5em;
  width: auto;
  display: inline-block;
}

.sales-method__title {
  width: 100%;
  color: #fff;
  padding: 1em 1rem;
  margin-bottom: 1rem;
  font-size: var(--fs-xxl);
  background: var(--tmc01);
  position: relative;
  border-bottom: .6rem double #fff;
  border-top: .6rem double #fff;
}

.sales-method__titbnr {
  padding: 0 1.5rem;
}

.sales-method__titbnr>img {
  vertical-align: baseline;
  border: .1rem solid #ddd;
}

.sales-method__info__icon {
  text-align: center;
  position: relative;
  /*width: min(50%, 30rem);*/
  width: min(80%, 30rem);
  margin: 0 auto;
}

.sales-method__info__icon.logo_abreast {
  display: flex;
  align-items: center;
  justify-content: center;
}

.sales-method__info__icon img {
  object-fit: contain;
}

.sales-method__info tr {}

.sales-method__info th,
.sales-method__info td {
  padding: .5rem;
  line-height: 1.4;
  position: relative;
  font-size: calc(var(--fs) * 1.4 + var(--rs) * 0.4);
  text-align: left;
  vertical-align: top;
}

.sales-method__info th {
  font-weight: normal;
  /*padding-right: 1em;*/
  min-width: 7em;
  width: 20%;
}

.sales-method__info th::after {
  content: "：";
  position: absolute;
  right: -0.1em;
  opacity: 0.5;
  font-weight: normal;
}

.sales-method__info td {}

.sales-method__info td em,
.sales-method__info td strong {
  vertical-align: baseline;
}

.sales-method__info a.lnkRibon {
  /*background: var(--color-link-cmn);*/
  width: min(90%, 60rem);
  margin-top: 0;
}

.sales-method__info a.lnkRibon.pre {
  background: #aaa;
  color: #fff;
}

.sales-method__outline {
  background: #C4E9D7;
  padding: 1em;
  margin: 1rem auto;
}

/*ND販売方法STEP*/
.sales-chart__box {
  border: .3rem solid #D9B4A0;
  border-radius: 2rem;
  position: relative;
  margin: 0 auto 1.5em;
  padding: 1.5vmax;
  background: #fff;
}

.sales-chart__box.members__note {
  border-color: #c03 !important;
}

.sales-chart__cap {
  text-align: center;
}

.sales-chart__icon {
  max-width: 18rem;
  margin: 0 auto;
  padding: 1rem;
}

.sales-chart__icon img {
  object-fit: contain;
  /*height: 100%;*/
}

.sales-chart__icon i {
  color: #514D4C;
}

.sales-chart__balloon {
  background: #D9B4A0;
  padding: .5em;
  text-align: center;
  font-size: var(--fs-l);
  position: relative;
  margin-bottom: 1.5rem;
  border-radius: 1rem;
}

.sales-chart__balloon::after {
  position: absolute;
  content: '';
  top: 100%;
  left: calc(50% - 1em);
  border: 1.5rem solid transparent;
  border-top: 1.5rem solid #D9B4A0;
  width: 0;
  height: 0;
}

.sales-chart__detail {
  text-align: left;
  line-height: 1.5;
}

.sales-chart__dtl-tit {
  font-size: var(--fs-xl);
  font-weight: bold;
  color: #c03;
  margin-top: .5em;
  /*margin-bottom: .3em;*/
}

.sales-chart__dtl-txt {
  font-size: var(--fs-m);
  padding: .2rem 0;
}

.sales-chart__dtl-txt.small {
  font-size: var(--fs-ms);
}

/*受付店別カラー*/
.sales-method__wrap.sales-method--atDolpa {}

.sales-method__wrap.sales-method--atStores {}

.sales-method__wrap.sales-method--atOnline {}

.sales-method__wrap.sales-method--atOvs {}

.sales-method--atDolpa .sales-method__info caption {
  background: #EE8395;
}

.sales-method--atStores .sales-method__info caption {
  background: #3B82C4;
}

.sales-method--atOnline .sales-method__info caption {
  background: var(--tmc04);
}

.sales-method--atOvs .sales-method__info caption {
  background: #33A479;
}

.sales-method--atStores .sales-chart__box {
  border-color: #6DC8E2;
}

.sales-method--atStores .sales-chart__balloon {
  background: #6DC8E2;
}

.sales-method--atStores .sales-chart__balloon::after {
  border-top-color: #6DC8E2;
}

.sales-method--atOnline .sales-chart__box {
  border-color: #FBB5BB;
}

.sales-method--atOnline .sales-chart__balloon {
  background: #FBB5BB;
}

.sales-method--atOnline .sales-chart__balloon::after {
  border-top-color: #FBB5BB;
}

.sales-method--atOvs {}


/*商品ラインナップ簡易バナー*/
.item-listbnr {
  display: flex;
  overflow: hidden;
  width: calc(100% - 1.3rem);
  /*すみかカードリストと幅統一調整*/
  margin: 1rem auto;
  flex-wrap: wrap;
}

.item-listbnr>* {
  margin: .35rem;
  background: #fff;
  box-shadow: var(--bs-cmn);
  width: calc(100% / 2 - .7rem);
}

.item-grid-bnr {
  display: flex;
  flex-wrap: nowrap;
  margin: 0 auto 1.5rem;
  width: min(100%, 80rem);
}

.grid-bnr_H {
  flex: 2;
  margin-right: .3rem;
}

.grid-bnr_H>a {
  display: block;
  margin-bottom: .3rem;
}

.grid-bnr_Square {
  flex: 3;
  display: flex;
}


/*アフターイベント予告*/
.after-items {
  position: relative;
  width: min(100%, var(--width-box));
  /*padding: 1em;*/
  margin: 0 auto 1rem;
}

.after-items__border-wrap {
  border: .1rem solid #444;
  background: #fff;
}

.after-items>dt,
.after-items>dd {
  position: relative;
}

.after-items>dt {
  background: #EE8395;
  color: #fff;
  font-size: var(--fs-xl);
  padding: .5em 1rem;
}

.after-items>dd {
  padding: 1em;
}

/* 受付中-受付終了リボン */
.ribbon-accepting {
  display: inline-block;
  position: absolute;
  right: -.2rem;
  top: .2rem;
  z-index: 3;
  box-sizing: border-box;
  min-width: 7em;
  padding: 0 1.5em;
  margin: 0;
  height: 2.4rem;
  line-height: 2.4rem;
  text-align: center;
  font-size: var(--fs-l);
  font-weight: bold;
  color: white;
  background: rgba(239, 62, 86, .9);
  box-shadow: 0 .2rem .2rem rgba(0, 0, 0, 0.12);
}

.ribbon-accepting::before {
  position: absolute;
  content: "";
  top: 0;
  right: -.7rem;
  border: none;
  height: calc(2.4rem + .8rem);
  width: .7rem;
  background: rgba(239, 62, 86, .9);
  border-radius: 0 .5rem .5rem 0;
}

.ribbon-accepting::after {
  position: absolute;
  content: "";
  bottom: -.7rem;
  right: -.5rem;
  border: none;
  height: .7rem;
  width: .5rem;
  background: rgba(50, 50, 50, .5);
  border-radius: 0 .5rem .5rem 0;
}

.end .ribbon-accepting,
.ribbon-accepting.end,
.end .ribbon-accepting::before,
.ribbon-accepting.end::before {
  background: rgba(150, 150, 150, .9);
}

.contsInnerBox>.ribbon-accepting.end {
  transform: scale(1.35);
  transform-origin: 100% 0%;
}

/* MEETS天使のすみかSHOP
	-----------------------------*/
.newoutfit-bnr-wrap,
.newoutfit-note-wrap {
  position: relative;
  width: 100%;
}

.newoutfit-bnr-wrap {
  margin: 0 auto 1rem;
}

.newoutfit-note-wrap {
  padding: 0 1rem;
  margin: 0 auto 1rem;
}

#sumika_items {
  justify-content: flex-start;
}

.smkitm-pic-list {
  margin: 0 auto 1em;
  width: var(--width-box);
  max-width: 100%;
  position: relative;
}

.smkitm-list-wrap {
  margin: 0 auto;
  padding: .5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
}

.smkitm-list-wrap>li {
  width: calc(100% / 3 - 1rem);
  margin: 0.5rem;
  position: relative;
}

.smkitm-list-wrap>li>a {
  display: block;
  max-width: 100%;
  position: relative;
}

.smkitm-list-item {
  overflow: hidden;
  background: #fff;
  box-shadow: 0 .1rem .2rem 0 rgba(70, 50, 50, 0.3);
}

.smkitm-list-item.lnkPre a {
  pointer-events: none;
  cursor: default;
}

.smkitm-newdollfie {
  width: calc(100% / 2 - .6rem);
}

.smkitm-newdollfie.smkitm-bankbox--pc {
  background: none;
  box-shadow: none;
}

@media screen and (max-width: 767px) {
  .smkitm-newdollfie.smkitm-bankbox--pc {
    display: none;
  }
}

.smkitm-name {
  display: block;
  font-size: calc(var(--fs) * 1.4);
  color: var(--color-text-base);
  padding: .5rem 1rem;
  line-height: 1.25;
}

.smkitm-text {
  padding: 0 1rem;
}

.smkitm-price {
  display: block;
  font-size: calc(var(--fs) * 1.4);
  color: #252525;
  margin: 0;
  padding: 0 1rem;
  z-index: 2;
  line-height: 2em;
  font-weight: bold;
}

.item-spec-price>small,
.smkitm-price>small,
.price-tax>small {
  font-size: .75em;
  font-weight: normal !important;
  opacity: 0.75;
}

/* 総額表記 */
.price-hontai {
  display: none;
}

.smkitm-brand {
  background: transparent;
  align-self: center;
  text-align: center;
}

.smkitm-brand--tit {
  text-align: center;
}

.smkitm-brand--logo {
  width: 15rem;
  max-width: 100%;
}

/*ドルフィープラス用*/
.smkitm-spgrid {
  margin-bottom: .5rem;
}

.smkitm-spgrid>li:first-child {
  float: right;
  width: calc(100% / 3 * 2);
}

.smkitm-spgrid>li:not(:first-child) {
  float: left;
  width: calc(100% / 3);
}

/* MEETS天使のすみかSHOP：layout_card
	-----------------------------*/
.smkitm-list-wrap {
  margin: 0 auto;
  padding: .5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
}

.smkitm-list-wrap>li>a {
  /* display: block; */
  max-width: 100%;
  position: relative;
  /* 高さ揃え */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
}

.smkitm-list-wrap>li>a:hover {
  text-decoration: none;
}

.smkitm-list-item {
  overflow: hidden;
  background: #fff;
  box-shadow: var(--bs-cmn);
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: .3rem;
}

.card>.smkitm-list-item.card--full,
.card--col1>.smkitm-list-item {
  width: calc(var(--col1) - .6rem);
}

.card--col2>.smkitm-list-item {
  width: calc(var(--col2) - .6rem);
}

.card--col3>.smkitm-list-item {
  width: calc(var(--col3) - .6rem);
}

.card--col4>.smkitm-list-item {
  width: calc(var(--col4) - .6rem);
}

.card--col5>.smkitm-list-item {
  width: calc(var(--col5) - .6rem);
}

.card--col6>.smkitm-list-item {
  width: calc(var(--col6) - .6rem);
}

.card>.smkitm-list-item.card--fifty {
  width: calc(50% - .6rem);
}

.card>.smkitm-list-item.card--quarter {
  width: calc(50% - .6rem);
}

.card.card--col3rows>.smkitm-list-item:not(.card--full) {
  width: calc(100% / 3 - .6rem);
}

.smkitm-list-item .card__tit {
  display: block;
  text-align: left;
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: calc(var(--fs) * 1.5);
}

.smkitm-list-item .card__tit:has(ruby) {
  margin-top: 0 !important;
}

.smkitm-list-item .link-text__deco--more {
  font-weight: normal;
  font-size: 14px;
  /*特殊サイズ*/
  /*font-size: calc(var(--fs) * 1.3);*/
  display: block;
  text-align: right;
  border-top: 1px solid #CCC;
  padding: .5em .5em 0;
}

.smkitm-list-item .link-text__deco--more.pre {
  filter: grayscale(1) opacity(.5);
  background: none;
}

.smkitm-list-item .link-text__deco--more.pre::after {
  all: initial;
  content: " (準備中)";
  font-size: inherit;
  color: inherit;
}

.card>.smkitm-list-item.card--quarter {
  width: calc(25% - .6rem);
}

/* MEETS天使のすみかSHOP： EC販売無し/口田レイアウト
	-----------------------------*/
.smkitm-tlpic {
  margin: 0 auto;
  padding: .2rem 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  gap: .4rem;
}

.smkitm-tlpic--list {
  width: calc(var(--col2) - .2rem);
}

.smkitm-tlpic--part {
  display: grid;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  grid-gap: .4rem;
}


/* MEETS Dear SD Models
	-----------------------------*/
/* DSD Spec */
#dsd_cont {
  /*background: url(/event/dolpa56/image/dsd_bg.jpg) 50% 0% / 100% auto repeat;*/
  padding-bottom: 1em;
  margin: 4em auto;
}

div#dsd_spec {
  width: 90%;
  padding: 1rem;
  background: #652F25;
  background: hsla(15, 94%, 13%, 0.65);
  position: relative;
  margin: 0 auto 1em;
  z-index: 10;
}

div#dsd_spec>ul,
div#dsd_spec>p {
  margin: 2.0rem;
  color: #DFD7D4;
  line-height: 1.4;
}

div#dsd_spec>table.specTbl {
  width: 100%;
  color: #fff;
}

div#dsd_spec>table.specTbl .note {
  color: #e3e3e3;
}

div#dsd_spec>table.specTbl+p {
  text-indent: -1em;
  padding-left: 1em;
}

/* DSD Spec _ Head List */
div#dsd_spec>table.specTbl caption {
  padding: 1rem;
  line-height: 1.4;
}

div#dsd_spec>table.specTbl caption dl {
  padding: 1rem;
  margin: 0 0 1rem;
  border-bottom: .1rem solid #fff;
  font-weight: bold;
}

dl.dsd_head dt {
  margin: 0 1em 0 0;
  letter-spacing: 0.1em;
  float: left;
  width: 100%;
}

dl.dsd_head dd {
  margin: 0 0.5em 0 0;
  letter-spacing: 0.05em;
  display: inline-block;
  float: left;
}

dl.dsd_head dd::after {
  content: "/";
  margin-left: 0.8em;
  text-transform: full-width;
}

dl.dsd_head dd:last-child::after {
  content: "";
  margin-left: 0;
}

div#dsd_spec>table {
  text-align: left;
}

div#dsd_spec>table.specTbl th {
  padding: .3rem 1rem .3rem 2rem;
  position: relative;
  white-space: nowrap;
}

div#dsd_spec>table.specTbl th.fll {
  width: 100%;
}

div#dsd_spec>table.specTbl td {
  padding: .3rem 1rem .3rem 1rem;
  text-indent: -1em;
  position: relative;
}

div#dsd_spec>table.specTbl td::before {
  content: "：";
}

div#dsd_spec>table.specTbl td[colspan="4"] {
  text-indent: 0;
  padding: 0 2rem 2rem;
}

div#dsd_spec>table.specTbl td[colspan="4"]::before {
  content: "";
}

div#dsd_spec>table.specTbl td em {}

div#dsd_spec>table.specTbl td h2 {
  margin: 1rem .5rem;
  padding: .5rem 1.5rem 1.5rem 5em;
  border-bottom: .1rem solid #fff;
  text-indent: -4.5em;
}

/*ドレスセット詳細*/
.spec__sub-box {
  color: antiquewhite;
  border: .1rem solid;
  padding: 0;
  margin: .8em auto;
  max-width: 80rem;
  text-indent: 0;
  background: hsla(15, 94%, 13%, 0.3);
}

.spec__sub-box>dt {
  padding: .7em 1rem;
  border-bottom: .1rem solid;
  text-align: center;
}

.spec__sub-box>dd {
  padding: .8em 1em;
  text-align: left;
}

.spec__sub-list {
  margin: 0 !important;
  display: flex;
  flex-wrap: wrap;
}

.spec__sub-list>li:not(:last-child)::after {
  content: ",";
  padding-right: .7em;
  opacity: 0.8;
  padding-left: .3em;
}


/*詳細ポップアップ*/
#popup_dsd_housebox {
  position: absolute;
  bottom: 0;
  left: 0;
  /*width: 50%;*/
}

#popup_dsd_dress {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  padding-top: 15%;
  padding-left: 5%;
  padding-right: 2%;
}

#popup_dsd_dress01,
#popup_dsd_dress02 {
  margin-bottom: .5em;
}

#popup_dsd_dress01>a,
#popup_dsd_dress02>a {
  display: block;
  background: #71534D;
  background: rgba(78, 40, 33, 0.8);
  color: #fff;
  margin: -1em auto 0;
  text-align: center;
  width: 90%;
  max-width: 26rem;
  padding: .2em 1em;
  position: relative;
  z-index: 2;
}

/*抱っこでお迎えと梱包お渡し*/
div#omkepattern_dsd {
  margin: 0 auto 1em;
  /*background: #FFF0EF;*/
  padding-bottom: 1em;
}

div#omkepattern_dsd h3 {
  margin-bottom: 1.5rem;
  padding: .5em 1.0rem;
  background: var(--tmc-red);
  color: white;
  text-align: center;
  font-size: var(--fs-xl);
  font-weight: normal;
}

div#omkepattern_dsd h4,
div#omkepattern_dsd p,
div#omkepattern_dsd ul {
  width: 99%;
}

div#omkepattern_dsd h4 {
  line-height: 1.5;
  height: auto;
  padding: .5em;
  margin: 1.5rem auto 1rem;
  border: dotted .2rem #fff;
  text-indent: 0;
  color: var(--tmc-red);
  background: #FCBEC1;
}

div#omkepattern_dsd p {
  margin: 0 auto .8em;
  line-height: 1.6;
}

div#omkepattern_dsd ul.note {
  margin: 0 auto 1.5rem;
}

div#omkepattern_dsd ul.note li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6em;
}

.omkepattern_plan {
  display: flex;
}

.omkepattern_plan--img {
  flex: 0 1 20%;
  padding: .8rem;
}

.omkepattern_plan--txt {
  flex: 1 0 80%;
}

.model-box-item__list__name--dsd {
  order: 2;
  background: url(/event/dolpa50/image/bg_tit.png) 100% 50% / cover no-repeat;
  min-width: 50%;
  margin: -1rem auto .5rem;
  z-index: 1;
  position: relative;
  color: #fff;
  font-weight: 500;
  text-align: center;
  font-size: calc(var(--fs) * 2.0);
  filter: sepia(.7) brightness(1.1);
  padding: .8rem 1.5em .8rem 1em;
}

/* MEETS Dollife ICON Models
	-----------------------------*/
/* MEETS SD One-Off Models
	-----------------------------*/
.oneoff-img-head {
  position: relative;
  background: #030207 url(/event/dolpa56/image/picH_oneoff-img.jpg?ver02) top center / 100% auto no-repeat;
}

.oneoff-img-head::before {
  content: "";
  display: block;
  aspect-ratio: 16/1;
  /*960x60px*/
}

.oneoff-img-head::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 7/1;
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 100%);
  backdrop-filter: blur(10rem);
}

.oneoff-img-head>img {
  width: 100%;
  object-fit: contain;
}

.oneoff-img-read {
  /*background: linear-gradient(180deg,#03020700,#030207);*/
  position: relative;
  padding: calc(var(--rs) * 1.0) 6% 6%;
  text-align: center;
  z-index: 1;
  font-weight: 500;
}

.oneoff-img-read>p {
  line-height: 1.6;
  text-shadow: 0 0 2px #2d6dad, 0 0px 3px #2d6dad, 0px 0px 5px #2d6dad;
  filter: drop-shadow(0px 0px 5px #0e2e67) drop-shadow(0px 0px 10px #0e2e67);
  color: #fff;
  font-size: calc(0.6rem + var(--rs) * 1.2);
  padding-bottom: .5em;
}

.oneoff-img-read>p strong {
  font-size: 150%;
}

/*.oneoff-img-read::after {
	content: "";
	width: min(25%, 12rem);
	position: absolute;
	bottom: 1rem;
	right: calc(var(--rs) * 2.0);
	background: url(/assets/image/logo/logo_sd_cmn-std.svg) 100% 100% / contain no-repeat;
	z-index: 1;
	filter: opacity(.7) saturate(3.0);
	aspect-ratio: 5/1;
}*/
.note-oneoff {
  border-top: 3px dotted #eee;
  padding: 1rem 0 0;
}

.note-oneoff li {
  margin-bottom: .5rem;
  padding-left: 2em;
  text-indent: -2em;
  color: #734c44;
}

.note-oneoff i,
.note-oneoff strong {
  color: #FB8E98;
}

/* gallery- Instagram */
.gallery-Insta {
  padding: 0 .5rem;
  margin: 0 auto 2rem;
  position: relative;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: center;
}

.gallery-Insta__list {
  /*width: 100%;*/
  width: calc(100% / 2 - 1rem);
  margin: .5rem;
  border-radius: 0.3rem;
  line-height: 0;
  position: relative;
  overflow: hidden;
  box-shadow: 0 .1rem .2rem 0 rgba(70, 50, 50, 0.3);
}

.gallery-Insta__list>iframe {
  width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.model-box-item__list__name--oneoff {
  background: var(--tmc-red);
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: var(--fs-ll);
}

.model-box-item__list__name--oneoff+div {
  border-left: 1px solid #CACACA;
  border-right: 1px solid #CACACA;
}

.model-box-icon {
  position: absolute;
  display: flex;
  font-size: var(--fs-s);
  font-weight: bold;
  top: 1rem;
  right: 0;
}

.model-label-newmake {
  padding: .3em 1em;
  background: #fff;
  color: #738BAD;
  border: .2rem solid;
  border-radius: .8rem;
  margin-right: .6em;
}

.model-label-newhead {}

.model-name-en {
  font-size: 90%;
  letter-spacing: .05em;
  color: #F48E6F;
  display: none;
}

.model-name-en::before {
  content: "(";
}

.model-name-en::after {
  content: ")";
}

.model-thumb-wrap {
  width: min(98%, var(--width-box));
  margin: 0 auto;
  text-align: center;
  counter-reset: num;
  position: relative;
  z-index: 1;
}

.thumb__list {
  display: flex;
}

.thumb__item {
  flex: 0 0 25%;
}

/* スマホでは横スクロールで表示 */
.slide-x-wrap {
  overflow-y: hidden;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

.thumb__list--oneoff {
  text-align: center;
  display: flex;
  flex-wrap: nowrap;
  padding: 1rem 0;
  /*display: none;*/
}

.thumb__list--oneoff>li {
  flex: 0 0 25%;
  margin: 1.5%;
  background: #fff;
  padding: .2rem;
  vertical-align: top;
  position: relative;
  counter-increment: num;
  box-shadow: 0 .2rem .6rem rgba(0, 0, 0, 0.15);
}

.thumb__list--oneoff>li::before {
  /*content: counter(my-badass-counter);*/
  counter-increment: my-badass-counter;
  content: counter(num);
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  background: var(--tmc-red);
  border-radius: 10rem;
  color: #fff;
  font-weight: bold;
  font-size: 1.5rem;
  /*特殊指定*/
  text-align: center;
  ;
  position: absolute;
  left: calc(50% - 1.5rem);
  bottom: -5%;
  z-index: 2;
  box-shadow: 0 0 0 .2rem #fff, 0 .1rem .3rem .2rem rgba(0, 0, 0, 0.2);
}

.thumb__list--oneoff>li a {
  display: block;
  overflow: hidden;
  height: 100%;
}

.thumb__list--oneoff>li img {
  width: 100%;
  vertical-align: top;
  object-fit: cover;
  /*margin-top: -1.5rem;*/
}

.dealer-audition {
  background: #fffde0;
  margin: 0 auto 3rem;
  padding: 1.5em;
  border: .3rem double #ECA81B;
  max-width: 92rem;
  font-size: calc(var(--fs) * 1.4);
}

/*目次アンカー*/
#floating-btn {
  position: fixed;
  z-index: 99;
  bottom: 10px;
  right: 10px;
  display: none;
}

#floating-btn a {
  position: relative;
  background: #00459D;
  text-decoration: none;
  color: #fff;
  text-align: center;
  display: flex;
  width: 5rem;
  height: 5rem;
  line-height: 5rem;
  border-radius: 10rem;
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.08), 0 1px 2px 0 rgba(0, 0, 0, 0.1);
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  opacity: .6;
}

#floating-btn i {
  color: #fff;
  margin: auto;
  text-shadow: 2px 3px 5px rgba(0, 0, 0, 0.2);
}

#floating-btn a:hover {
  text-decoration: none;
  /*background: #006FAB77;*/
  filter: brightness(1.3);
}

/* MEETS D'COORD Models
	-----------------------------*/
/* MEETS Auction Models
	-----------------------------*/
.auc_theme {
  /*background: url(/event/dolpa56/image/bg_contsInner.jpg) 50% 0% / 100% auto repeat-y;*/
  padding: 3vw 3vw 0;
  margin-top: 2rem;
}

.auc_intro {
  position: relative;
  width: min(96%, 85rem);
  margin: 0 auto;
  padding: 0 0 2em;
  text-align: center;
  color: #6f2929;
}

.auc_intro>dt {
  font-size: min(calc(var(--fs-xl) + 1vw), 33px);
  text-shadow: 0 0 1rem #FFF, 0 0 .4rem #FFF, 0 0 1rem #FFF, 0 0 .4rem #FFF, 0 0.1rem 0.4rem #FFF;
  margin-bottom: 1rem;
  color: var(--tmc-red);
}

.auc_intro>dt>small {
  font-style: italic;
  font-family: "Times New Roman", Times, serif;
  color: #c4a326;
}

.auc_intro>dd {
  line-height: 1.8;
  font-size: var(--fs-l);
}

.auc_mainImg {
  margin: 0 auto 3em;
  width: min(100%, 84rem);
  box-shadow: 0 .3rem .7rem -.1rem rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 1;
}

.auc-dtl-wrap {
  position: relative;
  margin: 0 auto 3em;
  width: min(96%, 85rem);
}

.auc-dtl-wrap>.note-list {
  width: calc(100% - 4rem);
  margin: 2rem auto;
  filter: drop-shadow(0 0 0.5rem #FCF8ED) drop-shadow(0 0 0.2rem #FCF8ED);
}

.auc-tit {
  padding: 1em 1rem;
  background: var(--tmc01);
  color: #fff;
  text-align: center;
  border-bottom: 1px solid;
  border-top: 1px solid;
  /*border-image: linear-gradient(135deg, var(--grd-gld));
	border-image-slice: 100%;
	border-image-slice: 1;*/
}

.auc-pic-wrap {
  width: 100%;
  padding: 0;
  margin: 0 auto;
  position: relative;
}

.auc-pic__chach {
  width: 100%;
  position: relative;
}

.auc-pic__gallery {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
}

.auc-pic__gallery li {
  width: var(--col6);
  flex-grow: 1;
  position: relative;
  text-align: center;
  border-top: .1rem solid #fff;
}

.auc-pic__gallery li+li {
  border-left: .1rem solid #fff;
}

.auc-pic__gallery li:nth-child(4) {
  border-left: none;
}

/*オークションスペック*/
.auc-spec {
  clear: both;
  /* border-collapse: collapse; */
  border-collapse: separate;
  border-spacing: 0;
  margin: 0 auto;
  background: rgba(255, 255, 255, .9);
  position: relative;
  width: 100%;
  border: 1rem solid transparent;
}

.auc-spec caption {
  padding: 1em 7rem .5em 2rem;
  font-size: var(--fs-xxl);
  line-height: 1.4;
  vertical-align: middle;
  margin: 0 0;
  text-align: left;
  background: rgba(255, 255, 255, .9);
}

.auc-spec caption>* {
  display: inline-block;
}

.auc-spec caption small {
  font-size: .65em;
}

.auc-spec caption>img {
  vertical-align: middle;
  position: absolute;
  top: 2.0rem;
  right: 1.0rem;
  width: 5rem;
  z-index: 10;
}

.auc-spec th,
.auc-spec td {
  font-size: var(--fs-ml);
  padding: .5em 1.0rem;
  line-height: 1.4;
  display: block;
}

.auc-spec th {
  font-weight: normal;
  color: var(--tmc04);
  position: relative;
  background: rgba(247, 238, 194, 0.5);
  text-align: left;
}

.auc-spec td {
  min-width: 85%;
}

.auc-spec tr:nth-last-child(1) th,
.auc-spec tr:nth-last-child(1) td {
  border-bottom: none;
}


/*-------------------------------
 ● Enjoy 楽しむ
---------------------------------*/
/* ENJOY プライベートフォトサイト
	-----------------------------*/
.time_schedule_turn {}

.time_schedule_turn>dt {}

.time_schedule_turn>dd {}

.time_schedule_turn>dd+dt {}

/* ENJOY お茶会スペース
	-----------------------------*/
.tea_menu__wrap {
  text-align: left;
  width: 100%;
  border-collapse: collapse;
  margin: auto;
  display: flex;
  flex-direction: column;
  padding: .5rem 0;
}

.tea_menu__list {
  display: flex;
  flex-wrap: wrap;
  padding: 1rem 0 0;
  margin: .25rem auto;
  width: 100%;
}

.tea_menu__pic {
  width: 13.5rem;
  flex: 0 0 40%;
}

.tea_menu__detail {
  vertical-align: middle;
  padding: 1rem;
  position: relative;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.tea_menu--sitename {
  margin-right: .5rem;
  min-width: 8em;
  padding-left: 1rem;
  font-size: var(--fs-xl);
  display: inline-block;
  position: relative;
  background: #231815;
  color: #fff;
  text-align: center;
}

.tea_menu--chair {
  padding: .5rem 1rem;
  opacity: 0.8;
}

.tea_menu--price {
  padding-left: 1rem;
}

.tea_menu__balloon {
  border-radius: 6rem;
  padding: .3em 1em;
  background: #EC76A8;
  color: #fff;
  margin: 0 .5em .5em;
  font-size: calc(var(--fs) * 1.3);
  flex-grow: 1;
}

/* ENJOY メンバーズブース
	-----------------------------*/
.vsvip__conts {
  width: 100%;
  margin: 0 auto 1em;
  align-items: flex-start;
  flex-wrap: wrap;
}

.vsvip__conts .evlead__logo--txt {
  flex: 1 1 auto;
}

.vsvip__conts .evlead__logo--img {
  max-width: 30rem;
  margin-right: 0;
  margin-left: 0;
  text-align: center;
}

.vsvip__conts .evlead__logo--img.round {
  border-radius: 100%;
  overflow: hidden;
  background: #f4f4f1;
}

.vsvip__conts .evlead__logo--img img {
  object-fit: contain;
}

/* ENJOY ビューティーサロン
	-----------------------------*/
.bty_course_tit {
  width: 85rem;
  max-width: 100%;
  margin: 0 auto;
  padding: 1.5rem 1rem;
  color: #fff;
  background: #5F403B url(https://dollfie.volks.co.jp/shop/tenshinosato/assets/image/fcs_sato/sato_pseb_bg_cntsAll.png) 50% 50% / calc(100% / 8.27) auto repeat;
  text-align: center;
  font-weight: normal;
  font-size: calc(var(--fs) * 1.7);
}

.bty_course_tit span {
  display: inline-block;
  background: #EE8395;
  color: #ffffff;
  padding: .5rem;
  margin: 0 .5rem;
  font-size: var(--fs-ms);
}

.bty_menu {
  width: 100%;
  max-width: 85rem;
  margin: 0 auto .5em;
  background: #F9F9F9;
  box-shadow: 0 0 .6rem 0 rgba(72, 42, 42, 0.5) inset;
  padding: .2em 0;
}

.bty_menu dl {
  border-bottom: dotted #999 .1rem;
  padding: 1.2em 1rem;
}

.bty_menu dl>div {
  flex: 1 1 auto;
  width: 30rem;
  padding: 1rem 0;
}

.bty_menu>dl:last-child {
  border: none;
  margin-bottom: .5rem;
}

.bty_menu dt,
.bty_menu dd {
  padding: .2rem;
}

.bty_menu dt {
  font-weight: bold;
  font-size: calc(var(--fs) * 1.6);
}

.bty_menu dt:first-line {}

.bty_menu dt::before {
  content: "◆";
  display: inline-block;
  width: 2rem;
  color: #734944;
  opacity: .5;
}

.bty_menu dd {
  margin-left: 2rem;
  line-height: 1.5;
  font-size: calc(var(--fs) * 1.5);
}

.bty_menu dd.bty_menu_note {
  font-size: calc(var(--fs) * 1.4);
}

.bty_menu dt+dd {}

.bty_menu dd+dt {}

.bty_menu_more {
  color: #9B6E59;
}

.bty_menu_more::before {
  content: "…";
  margin-right: .2em;
}

/* ENJOY ドルフィー生誕25周年記念プロジェクト in ドルパ
	-----------------------------*/
/*ドルパ＄ハントとは？*/
.bg_ptn_dpdollar {
  position: relative;
  background: url(/special/dollfie25th/assets/image/pjct_dpdollar_bg.jpg) 50% 0% / 100% auto repeat;
  padding: 1em;
  margin: 0 auto;
}

.tit_dpdollar_about {
  margin: 0 auto 1.5rem 0;
  padding-right: 25%;
  position: relative;
  z-index: 2;
}

.tit_dpdollar_about::after {
  content: "";
  /*background: url(/event/dolpa56/image/dollfie25th_dpdollar_1-10Qun.png) 50% 0% / contain no-repeat;*/
  display: block;
  position: absolute;
  width: min(25%, 20rem);
  height: 0;
  padding-top: 20%;
  right: -1rem;
  top: 0;
  transform: translate(0, -50%) rotate(-10deg);
}

/*ドルパ＄ハント：レート表*/
.tbl__dpdollar__wrap {}

.tbl__dpdollar__wrap table {
  width: 100%;
  margin: 1rem auto;
  /*background: #786d56;
	border-collapse: separate;
	border-spacing: 1px;*/
  border: .2rem solid #777;
  table-layout: fixed;
}

.tbl__dpdollar__wrap caption {
  width: min(90%, 22em);
  text-align: left;
  background: #666;
  color: #fff;
  padding: .5em var(--fs-ml);
  font-size: var(--fs-xl);
  margin: 0 auto .2em 0;
  font-weight: normal;
}

.tbl__dpdollar__wrap th,
.tbl__dpdollar__wrap td {
  padding: .5em 1em;
  color: #333;
  font-size: var(--fs-ml);
  vertical-align: middle;
  line-height: 1.4;
  border-right: .1rem solid #777;
  border-bottom: .1rem solid #777;
}

.tbl__dpdollar__wrap th {
  background: #FFBEAF;
  text-align: center;
}

.tbl__dpdollar__wrap th:nth-child(1) {
  width: 33%;
}

.tbl__dpdollar__wrap th:nth-child(3) {
  width: 7em;
}

.tbl__dpdollar__wrap td {
  background: #fff;
  text-align: left;
}

.tbl__dpdollar__wrap td.ta-c {
  text-align: center;
}

.tbl__dpdollar__wrap td.dpdollar-bdr-dotted {
  border-bottom: dotted .1rem #999;
}

/*.tbl__dpdollar__wrap td:nth-child(3)::first-letter*/
.tbl__dpdollar__wrap td.dpdollar_rate::first-letter {
  font-size: 150%;
  letter-spacing: .05em;
}

.dpdollar_wchance {
  background: rgba(255, 255, 255, .6);
  padding: 1em;
  margin: 1em 0 0;
}

/*フォトスタジオ*/
/*別サイトへの移植時はidと[initial;]部分を削除可*/
#photostudio .photostudio-info-wrap {
  margin: 0 auto;
  position: relative;
  padding: .3rem;
  display: flex;
  /*flex-wrap: wrap;*/
  flex-direction: column;
}

#photostudio .photostudio-info-clm {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 0 auto 1em;
  width: 100%;
}

#photostudio .photostudio-info-cap {
  display: block;
  background: #fde563;
  min-width: auto;
  width: min(100%, 68rem);
  margin: 1rem auto .5rem 0;
  padding: .5rem 1rem;
  font-size: var(--fs-xl);
  font-weight: bold;
  color: #5F3140;
  order: 1;
}

#photostudio .photostudio-info-cap>u {
  font-weight: normal;
}

#photostudio .photostudio-info-lst {
  display: block;
  position: relative;
  padding: .5rem 1rem;
  font-size: var(--fs-ml);
  margin: 0 auto .5em 0;
  width: 100%;
  order: 3;
}

#photostudio .photostudio-info-pic {
  width: min(100%, 40rem);
  text-align: center;
  margin: 0 auto 1rem;
  order: 2;
}

#photostudio .photostudio-comments {
  color: var(--tmc-red);
  font-size: var(--fs-m);
  font-weight: bold;
}

#photostudio .photostudio-info-lst i.fa-circle-s {
  color: #FABE00;
}

/*-------------------------------
 ● Join 参加する
---------------------------------*/
.dealer_mapimg {
  margin: 0 auto 1rem;
  text-align: center;
  /*display: none;*/
}

.dealer_mapimg p {
  max-width: 80rem;
  margin: 0 auto;
}

.dealer_mapimg img {}

/* JOIN Dealer List
	-----------------------------*/
dl.navi_dealerlist {
  text-align: center;
  padding-bottom: .6rem;
  margin-bottom: .6rem;
  font-size: 0;
  line-height: 1;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}

dl.navi_dealerlist dt {
  padding: .5em;
  line-height: 1.25;
  margin: 0 auto .5em;
  font-size: var(--fs-xl);
  background: var(--tmc-red);
  color: #fff;
  text-align: center;
}

dl.navi_dealerlist dd {
  margin: 0;
  text-align: center;
  display: inline-block;
  position: relative;
  font-size: calc(var(--fs) * 0.8 + var(--rs) * 1.0);
}

dl.navi_dealerlist dd:first-child {
  flex-shrink: 0;
  flex-grow: 1;
  max-width: 9rem;
  text-align: center;
}

dl.navi_dealerlist dd a {
  padding: 1rem .5em;
  color: #666;
  display: flex;
  align-items: center;
  justify-content: center;
}

dl.navi_dealerlist dd.dlr-select {}

dl.navi_dealerlist dd.dlr-select a {
  color: #fff;
  background: var(--tmc01);
  pointer-events: none;
  cursor: default;
  height: 100%;
}

dl.navi_dealerlist dd a:hover {
  color: var(--color-link-nml);
  text-decoration: none;
}

dl.navi_dealerlist dd a::before {
  content: "\0025bc";
  margin-right: 0.1em;
  font-size: 14px;
  /*特殊*/
}

dl.navi_dealerlist dd.dlr-select a::before {
  color: var(--tmc01);
  position: absolute;
  left: 50%;
  bottom: -0.8em;
  margin-left: -0.5em;
}

/* JOIN Dealer List 五十音順-先出しリスト
	-----------------------------*/
.dealer-comingsoon {
  position: relative;
  padding: 2rem 0;
  margin-bottom: 2rem;
}

dl.dealer-syllabary-order {
  position: relative;
  font-size: calc(var(--fs) * 1.6) !important;
  padding: 1rem 0 3rem;
}

dl.dealer-syllabary-order>div {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  padding: 1rem 1rem 1rem 2rem;
  border-left: .5rem dotted rgba(45, 54, 92, 0.2);
  margin-left: 1rem;
  gap: .5rem;
}

dl.dealer-syllabary-order>div+div {
  margin-top: 2rem;
}

dl.dealer-syllabary-order dt {
  font-weight: bold;
  font-size: 150%;
  width: 100%;
  margin-left: -1.5em;
  margin-bottom: .5rem;
}

dl.dealer-syllabary-order dt i.fas {
  color: var(--tmc01);
  text-shadow: 0 0 2px #fff;
  filter: drop-shadow(0 0 2px #fff);
}

dl.dealer-syllabary-order dd {
  padding: .5rem 1em;
  line-height: 1.5;
  border: 1px solid #ccc;
  background: #fff;
}

/*dl.dealer-syllabary-order dd:not(:last-child)::after {
  content: "／";
  opacity: .3;
  display: inline-block;
  padding: 0 .2rem 0 1.2rem;
}*/

/* JOIN Dealer List Table
	-----------------------------*/
.tbl_dealerlist {
  width: 100%;
  position: relative;
  margin: 0 auto 2em;
  background: #fff;
  border-width: .2rem .1rem .1rem .2rem;
  border-collapse: separate;
  border-spacing: 0;
  border-color: #aaa;
  border-style: solid;
}

.tbl_dealerlist caption {
  padding: 1em 0;
  background: #b70003;
  box-shadow: 0 .3rem .5rem 0 rgba(256, 256, 256, 0.4);
  color: #fff;
  font-size: var(--fs-xxl);
  font-weight: bold;
  text-align: center;
  text-shadow: 0 .1rem .3rem rgba(0, 0, 0, 0.6);
}

.tbl_dealerlist tbody {
  display: flex;
  flex-wrap: wrap;
}

.tbl_dealerlist tr {
  max-width: 50%;
  flex: 1 0 50%;
  border-bottom: .1rem solid #aaa;
  border-right: .1rem solid #aaa;
}

.tbl_dealerlist th,
.tbl_dealerlist td {
  font-size: calc(var(--fs) * 1.5);
}

.tbl_dealerlist th {
  /*width: 10%;*/
  padding: 1em 0 1em 0em;
  text-align: left;
  /*vertical-align: middle;*/
  white-space: nowrap;
}

.tbl_dealerlist th[colspan] {
  background: #ccc;
}

em.mark-dealer,
.tbl_dealerlist th span {
  color: #fff;
  background: #666;
  padding: .2rem .2rem .4rem;
  display: inline-block;
  font-size: .9em;
  min-width: 5em;
  text-align: center;
  font-weight: normal;
}

em.mark-dealer {
  padding: .2rem 1rem;
}

.tbl_dealerlist td {
  /*width: 40%;*/
  padding: 1em 0.5em;
  vertical-align: middle;
}

/* JOIN チャリティー
	-----------------------------*/
/* チャリティー 義援金寄付先 */
.cha__donation-wrap {
  padding: 2rem;
  margin: 0 auto 2rem;
  background: #DEE9FD;
  color: #0056B8;
  width: 100%;
  max-width: 92rem;
  /*box-shadow: var(--bs-cmn);*/
}

.cha__donation-wrap>* {
  margin-left: auto;
  margin-right: auto;
}

.cha__donation-flex {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: .1rem solid #A0BDEA;
}

.cha__donation--logo {
  flex: 0 1 auto;
  max-width: 30rem;
}

.cha__donation--text {
  text-align: center;
  padding-left: 1.5rem;
  /*flex: 1 0 auto;*/
}

.cha__donation--text a {
  color: #0056B8;
}

/* チャリティーグッズ */
.chaitm-pic-list {
  margin: 0 auto 1em;
  width: var(--width-box);
  max-width: 100%;
  position: relative;
}

.chaitm-list-wrap {
  margin: 0 auto;
  padding: var(--rs);
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
}

.chaitm-list-wrap>li {
  width: calc(var(--col3) - 1rem);
  margin: 0.5rem;
  position: relative;
}

.chaitm-list-wrap>li.col1 {
  width: 100%;
}

.chaitm-list-wrap>li.col2 {
  width: calc(50% - 1rem);
}

.chaitm-list-wrap>li>a {
  display: block;
  max-width: 100%;
  position: relative;
}

.chaitm-list-item {
  overflow: hidden;
  background: #fff;
  box-shadow: 0 .1rem .3rem 0 rgba(70, 50, 50, 0.3);
}

.chaitm-list-item>a::after {
  content: "\f0fe";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  position: absolute;
  right: .4rem;
  top: .4rem;
  color: #fff !important;
  opacity: .9;
  font-size: min(calc(100vw / 40), 1.5rem);
  text-shadow: 0 0 .5rem rgba(0, 160, 255, 0.3), 0 0.1rem 0.2rem rgba(0, 160, 255, 0.4), 0 0.1rem 0.2rem rgba(0, 160, 255, 0.5);
}

.chaitm-pic-image {}

.chaitm-name {
  display: block;
  font-weight: bold;
  font-size: var(--fs-ml);
  color: #555;
  padding: 1rem;
  /*overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;*/
}

.chaitm-price {
  position: relative;
  bottom: auto;
  background: transparent;
  color: #666;
  display: block;
  text-align: right;
  padding: 0 1rem .5rem;
}

/*チャリティーグッズクリック拡大*/
/*チャリティー新作-目玉商品*/
.chaitm_picup__wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.chaitm_picup__card {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-end;
  width: 61%;
  margin: 20% auto 0 32%;
  height: 0;
  padding-top: 42%;
  position: relative;
}

.chaitm_picup__list {
  position: relative;
}

.chaitm_picup__list.chaitm01 {
  margin-right: 7%;
  flex: 1;
}

.chaitm_picup__list.chaitm02 {
  flex: 1;
}

.chaitm_picup__list>a {
  display: block;
}

.chaitm_picup__list>a::after {
  content: "\f00e";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  position: absolute;
  left: 3%;
  bottom: 3%;
  color: #fff !important;
  opacity: .9;
  font-size: min(calc(100vw / 40), 2rem);
  text-shadow: 0 0 .5rem rgba(0, 0, 0, 0.3), 0 0.1rem 0.2rem rgba(0, 0, 0, 0.4), 0 0.1rem 0.2rem rgba(0, 0, 0, 0.5);
}

.chaitm_picup__list>a:hover img {
  opacity: 0 !important;
}

.chaitm_picup__list>a:hover::after {
  color: #C28040;
}

.chaitm_picup--thumb {
  object-fit: contain;
  opacity: 0;
}


/* JOIN SNSキャンペーン
	-----------------------------*/
#campTerms {
  width: min(100%, var(--width-cont));
  padding: 1% 2%;
  margin: 0 auto;
  background: hsla(214, 100%, 80%, 0.14);
  position: relative;
}

.termsHeader {
  padding: 2% 0;
  text-align: center;
}

.terms-title {
  padding-bottom: calc(var(--rs) * 0.5);
  margin-bottom: calc(var(--fs) * 2);
  border-bottom: 1px solid #bbb;
  color: #000;
  font-size: calc(var(--fs) * 2.4);
  position: relative;
}

.terms-title::after {
  content: "";
  width: 100%;
  height: 1px;
  background: rgb(255 255 255 / 90%);
  position: absolute;
  left: 0;
  bottom: -2px;
}

.termsHeader>p {
  margin-top: 0.5em;
  font-size: calc(var(--fs) * 1.7);
  font-weight: bold;
}

/*terms contents*/
#termsConts {
  width: min(100%, 120rem);
  padding: 1% calc(var(--fs) * 0.5);
  margin: calc(var(--fs) * 1) auto;
  border: 1px solid #555;
  background: #fff;
  border-radius: calc(var(--fs) * 1);
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  text-align: left;
}

#termsContsWrapper {
  padding: 1em;
  /*height: calc(var(--fs) * 30);
  overflow-y: scroll;
  scrollbar-width: thin;
  scrollbar-color: #f00;  */
}

#termsContsWrapper::-webkit-scrollbar {
  width: calc(var(--rs) * 1);
  height: calc(var(--rs) * 1);
}

#termsContsWrapper::-webkit-scrollbar-track {
  border-radius: 0.5rem;
  background: #fcfcfc;
  box-shadow: 0 0 0.3rem #aaa inset;
}

#termsContsWrapper::-webkit-scrollbar-thumb {
  background: #f00;
  border-radius: 0.5rem;
}

/*terms contents section*/
.termsConts-sctn+.termsConts-sctn {
  margin-top: 2em;
}

.termsConts-title {
  margin-bottom: calc(var(--fs) * 0.5);
  color: #000;
  font-size: calc(var(--fs) * 1.7);
}

.termsConts-title::before {
  content: "\0025a0";
  margin-right: 0.25em;
}

.termsConts-sctn>p {
  margin-bottom: 1em;
  line-height: 1.5;
  font-size: calc(var(--fs) * 1.4);
  text-align: justify;
}

.termsConts-sctn a {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

.termsConts-sctn>ul {
  padding-left: 1em;
  font-size: calc(var(--fs) * 1.4);
  list-style: disc;
}

.termsConts-sctn>ul li {
  margin-bottom: 0.5em;
}

/* JOIN ゲームブース
	-----------------------------*/
/*-------------------------------
 ● Theme テーマ
---------------------------------*/
#theme {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.theme-read-wrap {}

.theme-read {
  position: relative;
  z-index: 2;
}

.theme-container {
  position: relative;
  margin: 0 auto;
  width: min(100%, 108rem);
  /*box-shadow: 0 0 1.5rem 0.5rem rgba(82, 3, 81, 0.15);*/
}

.theme-vn__wrap {
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.theme-vn__list {
  position: relative;
  margin: calc(var(--rs) * 1.0) 0;
  padding: 0;
  box-shadow: 0 0 1.5rem 0.5rem rgba(50, 30, 0, 0.15);
}

.tm-vn-img {
  display: block;
  margin: 0 auto;
  vertical-align: bottom;
}

.theme-vn__list>.contsInnerBox {
  padding-top: 1px;
  box-shadow: none;
  width: min(89%, var(--width-cont));
  margin-bottom: 3%;
}

.theme-vn__list a.linkBtn {
  font-size: calc(var(--fs) * 1.5);
  width: min(90%, 60rem);
  margin: calc(var(--rs) * 1.0) auto;
}


.theme_and-more {
  margin-top: 10%;
}

.theme-linkBtn--col1 {
  margin: 0 auto 2%;
  padding: .1rem 2.5%;
  flex: 1;
  text-align: center;
}

.theme-linkBtn--col2 {
  margin: 0 auto 2%;
  padding: .1rem 2.5%;
  flex: 1;
  text-align: center;
  width: 50%;
}

.lnkBtn-tm {
  font-size: calc(100vw / 40);
}

a.lnkBtn-tm {
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  background: #1DA1F1;
  border-radius: 10rem;
  border: .1rem solid;
  box-shadow: inset 0 -.2em rgba(0, 0, 0, 0.2);
  color: #fff;
  display: block;
  padding: 1rem 1em;
}

a.lnkBtn-tm:hover {
  background: #20B1FF;
  color: #fff;
  text-decoration: none;
}

a.lnkBtn-tm.pre {
  pointer-events: none;
  background: #c0c0c0;
  cursor: default;
}

.lnkArea-tm {
  position: absolute;
  z-index: 2;
  display: block;
  text-align: center;
  border-radius: 5%;
  width: 12%;
}

/* 点滅リンク link icon balloon */
.lnkIc-tm {
  font-size: min(calc(100vw / 25), 2.5rem);
}

.lnkIc-tm {
  position: absolute;
  z-index: 2;
  display: inline-block;
  padding: .5em;
  color: #fff;
  text-align: center;
  background: var(--color-link-nml);
  border-radius: 100%;
  line-height: 1;
  box-shadow: .1rem .3rem .6rem rgba(0, 0, 0, 0.3);
  -webkit-animation: poyopoyo
    /*blink*/
    1.5s ease-in-out infinite alternate;
  -moz-animation: poyopoyo
    /*blink*/
    1.5s ease-in-out infinite alternate;
  animation: poyopoyo
    /*blink*/
    1.5s ease-in-out infinite alternate;
}

.lnkIc-tm:hover {
  background: var(--color-link-nml);
  color: #fff;
  text-decoration: none;
  opacity: 1 !important;
}

.lnkIc-tm i {
  margin: 0;
  padding: .14em 0;
  vertical-align: middle;
}

.lnkIc-tm.pre {
  pointer-events: none;
  background: #c0c0c0;
  cursor: default;
  display: none;
}

/* 点滅 */
@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes blink {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes blink {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}



/*-------------------------------
 テーマ項目紹介　グリッドレイアウト（jQuery:Masonry併用中止）
---------------------------------*/
.theme__contents .grid {
  display: flex;
  flex-wrap: wrap;
}

.grid-item {
  width: calc(100% - 3rem);
  margin: 1.5rem;
  box-sizing: border-box;
}

.grid-item--large {
  width: calc(100% - 3rem);
}

@media (min-width: 767px) {
  .grid-item {
    width: calc(50% - 3rem);
  }

  .grid-item--large {
    width: calc(100% - 3rem);
  }
}

/*-------------------------------
 テーマ項目紹介　テキスト化ver.
---------------------------------*/
.theme__contents {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--width-cont);
  padding: 2vmax 1rem 4vmax;
  /*background: url(/event/dolpa56/image/bg_body_ptn.png) 50% 0% / calc(var(--width-cont)*1.2) auto repeat-y;*/
}

.theme_box_wrap {
  position: relative;
  background: #F8F8F8;
  box-shadow: 0 .1rem 1rem -.2rem rgba(70, 50, 50, 0.5);
}

.theme_box_cap {
  display: flex;
  justify-content: flex-start;
  align-content: center;
  position: relative;
  z-index: 2;
  margin: 2rem 2% 1rem -1rem;
  padding: .1em 2rem .1em 2rem;
  color: #ffffff;
  box-shadow: 0 .7rem .5rem -.7rem rgba(70, 50, 50, 0.5);
  line-height: 1.25em;
  font-weight: bold;
  background-blend-mode: multiply;
}

.theme_box_icNo {
  flex: 0 0 5rem;
  margin-top: -0.5em;
  margin-bottom: -0.5em;
  margin-right: 0.3em;
}

.theme_box_icNo>img {}

.theme_box_icRt {
  position: relative;
  margin: auto 0 auto auto;
  flex: 0 0 5rem;
}

.theme_box_tit {
  margin: auto 0;
  font-size: var(--fs-xl);
  padding-top: .4em;
  padding-bottom: .4em;
  padding-right: .5rem;
  text-align: left;
  flex-grow: 2;
}

.theme_box_tit>img {
  display: inline-block;
  vertical-align: baseline;
}

.theme_box_txt {
  padding: .5em 5% 1em;
  width: 100%;
  line-height: 1.6;
}

p.theme_box_txt {
  font-size: var(--fs-ml);
}

ul.theme_box_txt {
  font-size: var(--fs-s);
}

.theme_box_pic--pdng {
  display: block;
  padding: 0 5%;
  margin: 0 auto 1rem;
  object-fit: contain;
}

.theme_box_pic--full {
  display: block;
  object-fit: contain;
}

.theme_box_more {
  display: flex;
  flex-direction: column;
  margin: 2vmax auto;
  width: min(98%, 100rem);
  padding-top: 2rem;
}

.theme_box_more>span {
  margin: auto auto 0;
  align-self: flex-end;
}

.theme_box_cap.tm_cap_sub {
  background: no-repeat;
  box-shadow: none;
  margin: 1vmax auto 1vmax 5%;
  padding-left: 0px;
}

.tm_cap_sub .theme_box_tit {
  color: #7D512C;
  border-bottom: 1px solid;
  padding-bottom: .6em;
}

.theme_pic_itaku {
  margin-top: -3rem;
  z-index: 2;
  position: relative;
}


/*テーマ内で詳細記載*/
.theme_box_wrap>.event_detal {
  border-radius: 1rem;
  width: calc(100% - 2rem);
  margin: 0 auto 1rem;
  font-size: var(--fs-ml);
  background: transparent;
  border: none;
  box-shadow: none;
}

.theme_box_wrap>.event_detal>dl {
  border-bottom: rgba(200, 174, 141, 0.5) .1rem solid;
}

.theme_box_wrap>.event_detal> :last-child {
  margin-bottom: 0;
}

.bg-red-box>.event_detal>dl>dt {
  filter: brightness(110%);
}



/*-------------------------------
 ● Event Program Big3
---------------------------------*/
.pic-up-big3__text__wrap {
  padding: 0 .5rem .5rem;
  position: relative;
  margin: auto !important;
  width: 100%;
  max-width: var(--width-box);
}

.pic-up-big3__text__list {
  display: flex;
  align-items: center;
  padding: 1.4rem .5rem;
  font-size: calc(var(--fs) * 1.6);
}

.pic-up-big3__text__list+.pic-up-big3__text__list {
  border-top: .3rem dotted #e1e1e1;
}

.pic-up-big3__text__link {
  flex: 1 1 auto;
  position: relative;
  padding-right: 2em;
  padding-left: .2em;
}

.pic-up-big3__text__link:hover {
  text-decoration: none;
}

.program_picup_big3 .pic-up-big3__text__link::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 60%;
  margin-top: -1em;
  color: #fff;
  background: var(--tmc05);
  border-radius: 100%;
  padding: .5em;
  font-size: min(15px, var(--fs-xxl));
}

.pic-up-big3__text__link::before {}

.pic-up-big3__text__list i {
  max-width: 6rem;
  margin-right: .5rem;
  flex: 0 0 10%;
}

.pic-up-big3__text__list p {
  color: #333;
  filter: brightness(88%) saturate(150%);
  font-size: calc(var(--fs) * 0.8 + var(--rs) * 0.6);
  line-height: 1.2;
  margin-bottom: .3rem;
}

.pic-up-big3__text__list h3 {
  color: var(--tmc02);
}

/*-------------------------------
 ● Event Program All
---------------------------------*/
.card__program {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.card__program>dt {
  display: none;
}

.card__program>dd {
  width: calc(var(--col4) - calc(var(--rs) * 4));
  position: relative;
  flex: 0 0 auto;
  margin: calc(var(--rs) * 2);
  background: #fff;
  box-shadow: var(--bs-cmn);
  text-align: left;
  display: flex;
  flex-direction: column;
}

.card__program>dd:not([class]) {}

.card__program>dd>a {}

.card__program>dd>a>em,
.program__tit {
  display: block;
  width: 100%;
  padding: .5rem;
  color: #222;
  text-decoration: none;
  /*font-size: var(--fs-m);*/
  font-size: calc(var(--fs) * 1.4);
  text-align: center;
}

.card__program>dd>a:hover {
  text-decoration: none;
}

.card__program>dd>a:hover em,
a:hover .program__tit {
  color: var(--color-link-cmn-hover);
  text-decoration-color: var(--color-link-cmn-hover);
}

.card__program>dd>a>img {}

.card__program>dd>*:last-child {
  margin-top: auto;
  margin-bottom: 0;
}

.card__program>dd>a:not([href]) {
  pointer-events: none;
  cursor: default;
}

.card__program>dd>a:not([href])>em {
  opacity: .55;
  filter: grayscale(50%);
}

.card__program.card__program_picup {
  /*flex-wrap: nowrap;*/
  flex-wrap: wrap;
  margin-bottom: 1.5vmax;
}

.card__program>dd.program_picup_theme {
  width: calc(100% - 2rem);
  text-align: center;
  padding: 0;
}

.card__program>dd.program_picup_big3 {
  /*flex: 6;*/
  width: calc(100% - 2rem);
  background-color: #fff;
  background: hsla(0, 0%, 100%, 0.92);
}

.program_picup_theme>a {
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.program_img_cards {
  display: flex;
}

.program_img_cards>img {
  flex: 1;
  object-fit: contain;
  width: calc(100% / 3);
}

.program_img_logo {
  display: block;
  margin: auto auto;
  text-align: center;
  width: min(94%, 40rem);
  padding: calc(var(--rs) * 1.0) 1rem calc(var(--rs) * 2.0);
}

.program_img_logo>img {
  filter: drop-shadow(0px 0 0.5em #fff) drop-shadow(0px 0 1px #fff);
}

.program_ic_gbNum {
  position: relative;
  z-index: 1;
}

.program_ic_gbNum img {
  position: absolute;
  top: -1.5rem;
  right: -1rem;
  width: 40%;
  max-width: 4rem;
  filter: drop-shadow(-.1rem .1rem 0rem #fff);
  padding: 1%;
}

.program_ic_gbNum img.gbNum-double {
  margin-right: min(30%, 4.5rem);
}

/* アイコン点滅 */
@-webkit-keyframes ic-blink {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes ic-blink {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@keyframes ic-blink {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

.program_text_info {
  width: 100%;
  margin: auto;
  text-align: center;
  background: #ececec;
  font-size: calc(var(--fs) * 1.2);
  padding: .5rem;
  line-height: 1.4;
  border-top: .5rem solid #fff;
}

.program_text_info>small {
  /*font-size: min(var(--fs-xs),10px);*/
}

.program_label {
  margin: 0 auto .5rem;
  /*font-size: var(--fs-ms);*/
  font-size: calc(var(--fs) * 1.4);
  padding: .4rem .3rem;
  text-align: center;
  border: .1rem solid transparent;
  width: 100%;
  line-height: 1.2;
  font-weight: bold;
}

.pgm_cat--lottery {
  /*background: #FFC591;*/
  background: #FFB0BD;
  color: #333;
}

.pgm_cat--sumikashop {
  background: #F29A29;
  color: #fff;
}

.pgm_cat--yoyaku {
  background: #02a48e;
  color: #fff;
}

.pgm_cat--goods {
  background: #F79D2A;
  color: #fff;
}

.pgm_cat--dealer {
  background: #AFDDF0;
  color: #333;
}

.pgm_cat--exhibition {
  background: #D3B2EC;
  color: #333;
}

.pgm_cat--special {
  background: #18177F;
  color: #fff;
}

.pgm_cat--extra {
  background: #694A44;
  color: #fff;
}

.pgm_cat--attraction {
  background: #FFB0BD;
  color: #333;
}

.pgm_cat--teasp {
  background: #C9DE7E;
  color: #333;
}

.pgm_cat--eventsp {
  background: var(--tmc-red);
  color: #fff;
}

.pgm_cat--service {
  /*background: #A7D4F0;
	color: #333;*/
  background: #2083DB;
  color: #fff;
}

.pgm_cat--other {
  background: #694A44;
  color: #fff;
}

.pgm_cat--bigThree {
  background: var(--tmc02);
  color: #fff;
  font-size: calc(var(--fs) * 1.6);
}

.pgm_cat--theTheme {
  background: var(--tmc02);
  color: #fff;
  font-size: calc(var(--fs) * 1.6);
}

/*-------------------------------
 ● After Report アフターレポート
---------------------------------*/
/* REPORT表紙
	-----------------------------*/
/* REPORTもくじ
	-----------------------------*/
.ar-list-link {
  padding: 2rem 0;
  border: none;
  margin: 0 1%;
  text-align: center;
}

.ar-list-link li {
  padding: 0;
  margin-bottom: 1em;
  border: none;
  text-align: center;
  vertical-align: top;
  position: relative;
}

.ar-list-link li {
  width: 95%;
  margin: 0 auto .5rem;
  padding: .5%;
  display: inline-block;
  text-align: left;
}

.ar-list-link li.full {
  width: 95%;
  margin: 2rem auto;
}

/*ボタン色変え*/
/*.ar-list-link li.full a:not(:hover) {
	  background: #56B8EA;
	  color: #fff;
	}*/
.ar-list-link a {
  padding: 1em;
  border-radius: .5rem;
  text-decoration: none;
  margin: auto;
  background: #fff;
  /*line-height: 1.2;*/
  display: block;
  border: .2rem solid;
}

.ar-list-link a:hover {
  color: #f5a;
  text-decoration: none;
}

.ar-list-link li a.pre {
  background: #fff;
  color: #bbb;
  pointer-events: none;
  cursor: default;
  box-shadow: none;
}

.ar-list-link li a.pre::after {
  content: "Coming Soon";
  font-size: var(--fs-xxs);
  position: absolute;
  right: -.2rem;
  background: #bbb;
  color: #fff;
  padding: .2rem .5rem;
}

.ar-list-link li a.restart {
  background: #EE8395;
  color: #fff;
  border: none;
}

.ar-list-link li a.restart:hover {
  color: #fff;
  filter: brightness(1.2);
}

/* REPORTページ送り
	-----------------------------*/
.ar-pager {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  background: #F7EFDF;
}

.ar-page-nav {
  display: inline-block;
  font-size: var(--fs-xs);
  padding: 1rem;
  text-align: center;
}

.ar-page-cap {
  flex: 3;
  font-weight: bold;
  color: #222;
}

.ar-page-btn {
  flex: 1;
  font-weight: bold;
  color: #EE8395;
}

.ar-page-btn>i {
  margin: 0 .25em;
}

/* REPORTギャラリー
	-----------------------------*/
ul.gallery {
  margin: 0 auto 1.5em;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

ul.gallery li {
  line-height: 0;
  margin: 1px;
  width: calc(100% / 3 - 2px);
  position: relative;
  border: .3rem solid #fff;
  box-shadow: .1rem .2rem .3rem rgba(46, 19, 12, 0.3);
}

ul.gallery li.col2 {
  width: calc(100% / 2 - 2px);
}

ul.gallery li.col1 {
  width: calc(100% - 2px);
}

ul.gallery li a {
  position: relative;
  display: block;
}

ul.gallery li a img,
ul.gallery li img {
  width: 100%;
  height: auto;
}

ul.gallery li a::before {
  /*content: url(/assets/image/icons/ic_magnify_blue_l.gif);
  position: absolute;
  right: -.3rem;
  top: -.3rem;
  z-index: 10;*/
  content: none;
  /*ALL拡大*/
}

ul.gallery.gallery-no-border li {
  border: none;
  box-shadow: none;
}

/* magnificPopup */
.mfp-title {
  font-size: var(--fs-l) !important;
}

.mfp-counter {
  font-size: var(--fs-s) !important;
}

#report .sns-nm {
  display: none;
}

#report .real-time-link>* {
  flex: 1;
}

.widget-wrap {
  flex: 1;
  background: #fff;
  margin: 1rem;
  box-shadow: .1rem .2rem .3rem rgba(46, 19, 12, 0.3);
}

.snscp-widget {
  text-align: center;
}

.snscp-widget>* {
  margin-left: auto !important;
  margin-right: auto !important;
}





/* ================================== TB START ================================== */
@media (min-width: 560px) {

  /*-------------------------------
 Contents Page _ Common Parts
---------------------------------*/
  /* TB */
  /* Layout
	-----------------------------*/
  /* TB */
  /* TITLE
	-----------------------------*/
  /* TB */
  /*cat-tit*/
  .title_category {}

  .title_category>em>small {
    font-size: var(--fs-xl);
  }

  /* HONBUN
	-----------------------------*/
  /* TB */
  .evlead2 {
    margin-left: 1.5rem;
  }

  /* INFOBOX
	-----------------------------*/
  /* TB */
  .event_detal>dl>dt {
    min-width: 5em;
    margin-right: .5em;
  }

  /* STEPBOX
	-----------------------------*/
  /* TB */
  .event-stp__schedule {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .event-stp__time {
    margin-left: auto;
    /*min-width: 9em;*/
    /*contest*/
    text-align: left;
    border-bottom: 3px dotted #ddd;
    margin-right: 0;
    padding-left: 1rem;
  }

  /* SLICK-SLIDER 商品紹介スライダー
    -----------------------------*/
  /* TB */
  /* SPEC 商品紹介
	-----------------------------*/
  /* TB */
  .model-box-wrapper {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .model-box-item__list {
    flex: 0 0 50%;
    width: 50%;
    margin: 0 0 .2rem 0;
    position: relative;
    padding: .5rem;
  }

  .slide-x-wrap {
    overflow: hidden;
  }

  /* SPEC 商品紹介リスト-スペック
	-----------------------------*/
  /* TB */
  /*-------------------------------
 ● About 来場案内
---------------------------------*/
  /* TB */
  /* ABOUTドルパとは？
	-----------------------------*/
  /* TB */
  .about-videoBox {
    padding: 1rem;
    width: 50%;
    flex: 1;
  }

  /* ABOUTお知らせとお願い
	-----------------------------*/
  /* TB */
  .pg-nav-list {
    flex-wrap: nowrap;
  }

  .pg-nav-list--inner {
    flex-direction: column;
  }

  .pg-nav-item {
    flex-grow: 2;
  }

  .pg-nav-list--outer {
    flex-direction: row;
    justify-content: space-around;
  }

  .pg-nav-list--outer>.pg-nav-item+.pg-nav-item {}

  .pg-nav-list--outer>.pg-nav-item+.pg-nav-item::before {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    left: -1.5rem;
    top: 0;
    background: #ddd;
  }

  /* ABOUT入場チケット
	-----------------------------*/
  /* TB */
  .ticket-info-box {}

  .flex_ticket-wrap {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    width: 100%;
  }

  .ticket-info-image {
    width: 25%;
  }

  .ticket-info-prdct {
    width: calc(100% - 25% - 1em);
    margin-left: 1em;
  }

  .ticket-info-title {
    width: 100%;
    text-align: center;
  }

  .ticket-info-title-sub {
    width: 100%;
  }

  .ticket-info-mark {
    width: 100%;
  }

  .ticket-info-dtl>dt {
    min-width: 8em;
  }

  .ticket-info-read {
    width: 100%;
  }

  .ticket-info-spec {
    width: 100%;
  }

  .ticket-info-note {
    width: 100%;
  }

  .ticket-info-navi-middle>li {
    flex: 1 0 auto;
  }

  /* Guidebook-Option*/
  .ticket-option-box {
    padding-bottom: 1rem;
  }

  .ticket-option-pic {
    float: right;
    z-index: 1;
    margin: -3rem -2rem 0 -1rem;
    top: 0;
  }

  .ticket-option-itm {
    width: 90%;
  }

  .ticket-option-cap {
    margin-bottom: 1rem;
  }

  /* ABOUT入場案内
	-----------------------------*/
  /* TB */
  .ent_flex__wrap {
    display: flex;
  }

  .ent_flex__txt {
    flex: 1 1 auto;
  }

  .ent_flex__pic {
    width: min(25%, 30rem);
  }

  .ent-guide__wrap {
    padding: 0;
    /*
box-shadow: 0 .1rem .2rem 0 rgba(70, 50, 50, 0.5);
background: #f7f7f7;
	*/
  }

  .ent-guide__read {
    width: calc(100% - 3em);
    margin: 0 auto 1em;
  }

  .ent-guide__chart-box {
    width: calc(100% - 3em);
  }

  .ent-guide__chart-text--xpass {
    flex-direction: row;
  }

  /* ABOUT入場時刻表
	-----------------------------*/
  /* TB */
  .timtbl-box-wrap {
    border-width: 1rem;
  }

  .ent-timetable table th,
  .ent-timetable table td {
    line-height: 1.2;
  }

  .ent-timetable table th:first-child {
    width: 25%;
  }

  .ent-timetable table td:nth-child(2) {
    width: 40%;
  }

  .ent-timetable table td:nth-child(3) {
    width: 35%;
  }

  .timtbl__groupNum {
    font-size: calc(var(--fs-xxl) * 1.2);
  }

  .timtbl__groupAll {
    font-size: var(--fs-xxl);
  }

  .timtbl__timesMtg {
    /*font-size: calc(var(--fs-xxl) * 1.2);*/
  }

  .timtbl__mark-kome {
    font-size: var(--fs-m);
  }

  /* ABOUT会場MAP
	-----------------------------*/
  /* TB */
  /* ABOUT取材申込について
	-----------------------------*/
  /* TB */
  /* ABOUT感染防止対策
	-----------------------------*/
  /* TB */
  .tit--caution {}

  /*.card_caution_wrap {
    flex-direction: row;
    justify-content: center;
  }*/
  .card_caution_list {}

  .caution-box-border {}

  .caution__flexbox {
    padding: .5rem 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  .caution__flexbox__image {
    flex: 0 0 30%;
  }

  .caution__flexbox__text {
    flex: 1 1 auto;
    margin-left: 1.5rem;
  }

  /*-------------------------------
 ● Meets お迎えする
---------------------------------*/
  /* TB */
  /* MEETS新作ドルフィー注文受付
	-----------------------------*/
  /* TB */
  /* MEETS新作アイテム展示販売案内
	-----------------------------*/
  /* TB */
  .omukae-reigai-wrap {
    flex-direction: row;
  }

  /* MEETS新作ドルフィー販売方法
	-----------------------------*/
  /* TB */
  .sales-method__info__icon {
    position: absolute;
    top: -5em;
    right: 0;
    z-index: 1;
    width: min(15%, 12rem);
  }

  .sales-method__info__icon.logo_abreast {
    width: min(30%, 22rem);
  }

  .sales-method__info__icon.logo_DP {
    width: min(20%, 20rem);
  }

  .sales-method__info__icon img {}

  .sales-method__info tr {
    display: flex;
    align-items: baseline;
  }

  .sales-method__info th {
    flex: 1;
  }

  .sales-method__info td {
    flex: 6;
  }

  /*商品ラインナップ簡易バナー*/
  /* TB */
  .item-listbnr {
    flex-wrap: nowrap;
  }

  .item-listbnr>* {
    order: 0 !important;
    flex: 1 !important;
  }

  /*アフターイベント予告*/
  /* TB */
  /* 受付中-受付終了リボン */
  /* TB */

  /* MEETS天使のすみかSHOP
	-----------------------------*/
  /* TB */
  .smkitm-list-wrap>li {
    width: calc(100% / 4 - 1rem);
  }

  /* MEETS Dear SD Models
	-----------------------------*/
  /* TB */
  /* MEETS Dollife ICON Models
	-----------------------------*/
  /* TB */
  /* MEETS SD One-Off Models
	-----------------------------*/
  /* TB */

  /* gallery- Instagram */
  .gallery-Insta {}

  .gallery-Insta__list {
    /*width: calc(var(--col3) - 2rem);*/
    border-radius: 0.3rem;
  }

  .thumb__list--oneoff {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .thumb__list--oneoff>li {
    flex-basis: auto;
    width: calc(100% / 6 - 2%);
    margin: 1%;
  }

  .thumb__list--oneoff>li::before {
    left: -2%;
    bottom: -2%;
    transform: scale(1.2);
  }

  /* MEETS D'COORD Models
	-----------------------------*/
  /* TB */
  /* MEETS Auction Models
    -----------------------------*/
  /* TB */
  .auc-pic__gallery li:nth-child(4) {
    border-left: .1rem solid #fff;
  }

  .auc-spec {}

  .auc-spec caption {
    font-size: calc(var(--fs-xxl) * 1.2);
    font-weight: bold;
  }

  .auc-spec caption>img {
    vertical-align: middle;
    position: absolute;
    top: 2.0rem;
    right: 2.0rem;
    width: 6rem;
    z-index: 10;
  }

  .auc-spec th,
  .auc-spec td {
    display: table-cell;
    border-bottom: .1rem dotted #ccc;
    text-align: left;
  }

  .auc-spec th {
    background: transparent;
    width: 15%;
  }

  .auc-spec th:not([class])::after {
    content: ":";
    position: absolute;
    right: 0.5rem;
    opacity: .6;
  }

  /*-------------------------------
 ● Enjoy 楽しむ
---------------------------------*/
  /* TB */
  /* ENJOY プライベートフォトサイト
	-----------------------------*/
  /* TB */
  /* ENJOY お茶会スペース
	-----------------------------*/
  /* TB */
  .tea_menu__wrap {
    flex-direction: row;
  }

  .tea_menu__list {
    flex: 1;
    margin: .1rem;
    width: auto;
    flex-direction: column;
  }

  .tea_menu__pic {
    width: calc(100% - 2rem);
    flex: 1;
    margin: auto;
  }

  /* ENJOY メンバーズブース
	-----------------------------*/
  /* TB */
  .vsvip__conts .evlead__logo--txt {
    flex: 0 0 66%;
    margin-right: 2%;
  }

  .vsvip__conts .evlead__logo--img {
    flex: 1 1 32%;
  }

  /* ENJOY ビューティーサロン
	-----------------------------*/
  /* TB */
  /* ENJOY ドルフィー生誕25周年記念プロジェクト in ドルパ
	-----------------------------*/
  /* TB */


  /*-------------------------------
 ● Join 参加する
---------------------------------*/
  /* TB */
  /* JOIN Dealer List Table
	-----------------------------*/
  /* TB */
  dl.navi_dealerlist dd a {
    padding: 1rem 1em;
  }

  .tbl_dealerlist th {
    font-size: var(--fs-sm);
    vertical-align: middle;
    padding: 1em 0 1em 1em;
  }

  /*-------------------------------
 ● Theme テーマ
---------------------------------*/
  /* TB */
  .lnkBtn-tm {
    font-size: var(--fs-m);
  }

  .lnkIc-tm {}

  .theme_and-more {
    margin-top: 10rem;
    margin-bottom: 4rem;
  }

  /*-------------------------------
 テーマ項目紹介　テキスト化ver.
---------------------------------*/
  /* TB */
  .theme_box_more {
    /*background: url(/event/dolpa56/image/theme-andmore-dec.png) 50% 0 / 100% auto no-repeat;*/
    /*background-position-y: -10rem;*/
    /*詳細追加前*/
    top: auto;
    bottom: 0;
  }

  /*テーマ個別処理*/
  .theme_box_wrap.tm_color_harajuku {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }

  .theme_box_txt.tm_harajuku_read {
    margin-bottom: -8vmax;
  }

  .tm_box_harajukuL {
    flex: 5;
    max-width: 55%;
  }

  .tm_box_harajukuR {
    flex: 4;
    max-width: calc(45% - 1.5rem);
    margin-top: 2rem;
    margin-bottom: 0;
    padding: .5em .2em 0;
    margin-right: 1.5rem;
    margin-left: 0;
    box-shadow: none;
  }

  /*-------------------------------
 ● Event Program Big3
---------------------------------*/
  /* TB */

  .pic-up-big3__text__list h3 {
    font-size: var(--fs-xl);
  }

  /*-------------------------------
 ● Event Program All
---------------------------------*/
  /* TB */

  /*-------------------------------
 ● After Report アフターレポート
---------------------------------*/
  /* TB */
  /* REPORT表紙
	-----------------------------*/
  /* TB */
  /* REPORTもくじ
	-----------------------------*/
  /* TB */
  .ar-list-link {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }

  .ar-list-link li {
    width: 49%;
    align-self: stretch;
  }

  .ar-list-link li.full {
    width: 90%;
  }

  .ar-list-link a {
    height: 100%;
  }

  /* REPORTページ送り
	-----------------------------*/
  .ar-page-cap {
    flex: 5;
  }

  /* REPORTギャラリー
	-----------------------------*/
  /* TB */
}

/* =================================== TB END =================================== */

/* ================================== MD START ================================== */
@media (min-width: 767px) {

  /*-------------------------------
 共通パーツ：About-2カラム
---------------------------------*/
  /* TB */
  .cnt_about_intro {
    padding-left: 1rem;
  }

  .cnt_about_pic>figcaption {
    text-align: left;
  }

  /*-------------------------------
 ● Event Program All
---------------------------------*/
  /* TB */
  .program_ic_gbNum img {
    max-width: 5rem;
    top: -1.8rem;
    right: -1.5rem;
  }

  .card__program {
    justify-content: center;
  }

  .card__program.card__program_picup {
    flex-wrap: nowrap;
    width: min(100%, 120rem);
  }

  .card__program.card__program_contents>dd {
    box-shadow: var(--bs-cmn), var(--bs-cmn);
    width: calc(var(--col5) - var(--rs) * 4);
    /*width: min(calc(100%/3 - var(--rs) * 3), 27rem);*/
    max-width: 48rem;
  }

  .card__program>dd.program_picup_theme {
    flex: 2;
  }

  .card__program>dd.program_picup_big3 {
    flex: 3;
  }

}

/* =================================== MD END =================================== */

/* ================================== PC START ================================== */
@media (min-width: 960px) {

  /*-------------------------------
 Contents Page _ Common Parts
---------------------------------*/
  /* PC */
  /* Layout
	-----------------------------*/
  /* PC */
  .ctnrConts {
    z-index: 1;
    padding-bottom: 0;
  }

  .ctnrConts,
  .contsInnerBox {}

  .evFBox {}

  /* TITLE
	-----------------------------*/
  /* PC */
  .title_category {
    padding: 2.5rem 0;
    background: none;
  }

  /* タイトル-中央単語+アンダーライン */
  .tit--dec02 {
    font-size: min(33px);
  }

  /* 飾り枠装飾 */
  .tit--dec03 {
    margin-top: .4em;
  }

  .tit-icon-number {}

  /*
  .title_category > em {
    mix-blend-mode: multiply;
  }*/
  /* HONBUN
	-----------------------------*/
  /* PC */
  /* INFOBOX
	-----------------------------*/
  /* PC */
  .event_detal>dl>dd {
    min-width: 25%;
  }

  .event_detal>dl.pc_move-up--50 {
    width: calc(100% / 2);
    float: left;
  }

  .event_detal>dl.pc_move-up--30 {
    width: calc(100% / 3);
    float: left;
  }

  /* STEPBOX
	-----------------------------*/
  /* PC */
  /* SLICK-SLIDER 商品紹介スライダー
	-----------------------------*/
  /* PC */
  /* SPEC 商品紹介
	-----------------------------*/
  /* PC */
  /* SPEC 商品紹介リスト-スペック
	-----------------------------*/
  /* PC */
  /*-------------------------------
 ● About 来場案内
---------------------------------*/
  /* PC */
  /* ABOUTドルパとは？
	-----------------------------*/
  /* PC */
  /* ABOUTお知らせとお願い
	-----------------------------*/
  /* PC */
  .pg-nav-list--outer {}

  .pg-nav-list--inner {
    flex-direction: row;
  }

  /* ABOUT入場チケット
	-----------------------------*/
  /* PC */
  .ticket-info-navi-middle {
    flex-wrap: wrap;
    overflow: hidden;
  }

  .ticket-info-navi-middle::-webkit-scrollbar {
    display: none;
    height: 0 !important;
  }

  .ticket-info-picOvs {}

  /* Guidebook-Option*/
  .ticket-option-pic {
    width: 19rem;
    margin-top: -4rem;
  }

  /* TICKET販売スケジュール
	-----------------------------*/
  /* PC */
  .ticket-scdl-table th,
  .ticket-scdl-table td {
    font-size: var(--fs-ll);
  }

  .ticket-scdl-table th {
    width: 25rem;
  }

  /* ABOUT入場案内
	-----------------------------*/
  /* PC */
  /*入場案内：入場券事前購入有無で分岐*/
  .ent-howto__wrap {
    flex-direction: row;
    gap: 1rem;
    flex-wrap: nowrap;
  }

  .ent-howto__box {
    flex-direction: column;
    width: var(--col3);
    padding: 1rem;
    background: #FFF;
    box-shadow: 0 2px 10px rgba(0, 68, 187, 0.1);
    border: 1px solid #c1ccd9;
  }

  .ent-howto__pic {
    width: min(100%, 22rem);
    margin-inline: auto;
  }

  .ent-howto__txt {
    text-align: left;
    padding-left: 0;
  }

  .ent-howto__tit {
    text-align: center;
  }

  /* ABOUT入場時刻表
	-----------------------------*/
  /* PC */
  /* ABOUT会場MAP
	-----------------------------*/
  /* PC */
  /* ABOUT イベント項目リスト（ガイドブックナンバー）
	-----------------------------*/
  /* PC */
  dl.GBNo_list dt {
    font-size: calc(var(--fs) * 3.0);
  }

  dl.GBNo_list dd em {
    font-size: calc(var(--fs) * 2.4);
  }

  dl.GBNo_list dd>ol {
    font-size: calc(var(--fs) * 2.2);
  }

  dl.GBNo_list dd>ol>li a:not(.until)::after,
  dl.GBNo_list dd>a::after {
    font-size: var(--fs-xxl);
  }

  .GBNo_list--read {
    font-size: var(--fs-m);
  }

  /* ABOUT取材申込について
	-----------------------------*/
  /* PC */
  /* ABOUT感染防止対策
	-----------------------------*/
  /* PC */
  /*-------------------------------
 ● Meets お迎えする
---------------------------------*/
  /* PC */
  /* MEETS新作ドルフィー注文受付
	-----------------------------*/
  /* PC*/
  .omukae-scdl__text .smkitm-list-wrap {
    justify-content: flex-start;
  }

  /* MEETS新作アイテム展示販売案内
	-----------------------------*/
  /* PC */
  .tenjihanbai-info {
    padding: 1em 0;
  }

  .tenjihanbai-dlbox {}

  .tenjihanbai-dl-tit {
    font-size: calc(var(--fs-l) * 1.5);
  }

  .sumikaSHOP-entry {
    padding: 1em 1.5em;
  }

  .sumikaSHOP-entry>div {
    align-items: center;
  }

  .after-announce--date {
    position: absolute;
    right: 0;
  }

  /* MEETS新作ドルフィー販売方法
	-----------------------------*/
  /* PC */
  /*ND販売パターン*/
  .sales-link__list__item {
    width: calc(50% - 2rem);
  }

  /*ND販売方法STEP*/
  .sales-chart__box {
    display: flex;
    align-items: center;
    padding: 1rem;
  }

  .sales-chart__cap {
    flex: 1;
  }

  .sales-chart__icon {}

  .sales-chart__balloon {}

  .sales-chart__detail {
    flex: 3;
    margin-left: 2rem;
  }

  .sales-chart__dtl-tit {}

  .sales-chart__dtl-txt {}

  .sales-chart__dtl-txt.small {}

  /*商品ラインナップ簡易バナー*/
  /* PC */

  /*アフターイベント予告*/
  /* PC */
  /* 受付中-受付終了リボン */
  /* PC */
  /*販売方法一覧メニュー*/
  /* PC */
  .pg-nav-bnr {
    flex-wrap: nowrap;
  }

  .pg-nav-bnr>* {
    flex: 1;
  }

  /* MEETS天使のすみかSHOP
	-----------------------------*/
  /* PC */
  .smkitm-list-wrap>li {
    width: calc(100% / 4 - 2rem);
    margin: 1rem;
  }

  u .smkitm-price {
    position: relative;
    bottom: auto;
    background: transparent;
    font-size: var(--fs-ms);
  }

  /* MEETS Dear SD Models
	-----------------------------*/
  /* PC */
  /* MEETS Dollife ICON Models
	-----------------------------*/
  /* PC */
  /* MEETS SD One-Off Models
	-----------------------------*/
  /* PC */

  .thumb__list--oneoff>li {}

  .thumb__list--oneoff>li img {}

  .model-box-item__list {}

  /* MEETS D'COORD Models
	-----------------------------*/
  /* PC */
  /* MEETS Auction Models
    -----------------------------*/
  /* PC */

  /*-------------------------------
 ● Enjoy 楽しむ
---------------------------------*/
  /* PC */
  /* ENJOY プライベートフォトサイト
	-----------------------------*/
  /* PC */
  /* ENJOY お茶会スペース
	-----------------------------*/
  /* PC */
  .tea_menu__detail {
    display: block;
  }

  .tea_menu__pic {}

  .tea_menu--sitename {
    /*display: block;*/
  }

  .tea_menu--chair {
    display: inline-block;
  }

  .tea_menu--price {
    display: inline-block;
  }

  /* ENJOY メンバーズブース
	-----------------------------*/
  /* PC */

  /* ENJOY ビューティーサロン
	-----------------------------*/
  /* PC */
  /* ENJOY ドルフィー生誕25周年記念プロジェクト in ドルパ
	-----------------------------*/
  /* PC */
  #photostudio .photostudio-info-clm {
    flex-direction: row;
  }

  #photostudio .photostudio-info-lst {
    order: 2;
    max-width: 65%;
  }

  #photostudio .photostudio-info-pic {
    order: 3;
    margin-top: -3rem;
    margin-bottom: 3rem;
    max-width: 37%;
    margin-right: -2%;
  }

  /*-------------------------------
 ● Join 参加する
---------------------------------*/
  /* PC */
  /* JOIN チャリティー
	-----------------------------*/
  /* PC */
  /* JOIN ゲームブース
	-----------------------------*/
  /* PC */
  /*-------------------------------
 ● Theme テーマ
---------------------------------*/
  /* PC */


  .theme-header-wrap {}

  .theme-header-wrap::after {}

  .theme-title {}

  .theme-read-wrap {}

  .theme-read {}

  .lnkBtn-tm {}

  .lnkIc-tm {
    font-size: 3rem;
  }


  /*-------------------------------
 テーマ項目紹介　テキスト化ver.
---------------------------------*/
  /* PC */
  .theme__contents {
    max-width: 100rem;
    background: transparent;
  }

  .theme_box_wrap {
    display: flex;
    flex-direction: column;
  }

  .theme_box_icNo {
    flex-basis: 7rem;
  }

  .theme_box_icRt {
    flex-basis: 8rem;
    margin-top: -1em;
    margin-bottom: -1em;
    margin-right: -1em;
  }

  /*テーマ個別処理*/
  .theme_box_txt.tm_harajuku_read {
    margin-bottom: -13rem;
  }

  .theme_pic--oneoff {}

  .theme_pic--oneoff_main {
    margin-right: 15%;
  }

  .theme_pic--oneoff_sub {
    position: absolute;
    top: 8rem;
    right: 1rem;
    z-index: 2;
    width: min(25%, 21rem);
  }

  .theme_txt_oneoff {}

  .theme_txt_oneofflink {}

  .theme_ic_newmark {
    height: 6rem;
    padding-top: 6rem;
    width: 10rem;
    left: 7rem;
    top: -1.5rem;
  }

  /*-------------------------------
 ● Event Program Big3
---------------------------------*/
  /* PC */
  /*-------------------------------
 ● Event Program All
---------------------------------*/
  /* PC */
  /*-------------------------------
 ● After Report アフターレポート
---------------------------------*/
  /* PC */
  /* REPORT表紙
	-----------------------------*/
  /* PC */
  /* REPORTもくじ
	-----------------------------*/
  /* PC */
  /* REPORTページ送り
	-----------------------------*/
  /* PC */
  .ar-page-cap {
    flex: 8;
  }

  /* REPORTギャラリー
	-----------------------------*/
  /* PC */
}

/* =================================== PC END ============================== */


/* =================== LargeMonitor =================== */
@media (min-width: 1280px) {

  .ctnrConts {}

  .title_category {}

  .theme-header-area {}

  .smkitm-list-item {}

  .smkitm-list-item img {
    /*min-height: 273px;*/
    object-fit: contain;
  }
}

/* ==================== LargeMonitor END ==================== */

/*-------------------------------
 ポップアップギャラリー上書き
---------------------------------*/
/* magnificPopup */
.mfp-title {
  font-size: var(--fs-l) !important;
}

.mfp-counter {
  font-size: var(--fs-s) !important;
}

/*ポップアップ インライン用*/
.popup-inline-box {
  position: relative;
  margin: 5px auto;
  width: min(100%, var(--width-cont));
  background: #fff;
  padding: calc(var(--rs) * 2.0);
}

.popup-inline-box h1,
.popup-inline-box h2,
.popup-inline-box h3,
.popup-inline-box h4,
.popup-inline-box h5,
.popup-inline-box h6 {
  font-weight: normal;
  font-size: var(--fs-xl);
  margin: 0 0 1rem;
}

.popup-inline-box .image img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}

.popup-inline-box .image {
  margin-bottom: calc(var(--rs) * 1.0);
}

.popup-inline-box .image {
  text-align: center;
}

.popup-inline-box .popup-modal-dismiss {
  text-align: right;
}

.popup-inline-box .popup-modal-dismiss a {
  display: inline-block;
  margin-right: auto;
  text-align: right;
  padding: .5em 0 0 1em;
  margin-top: 3em;
  color: #333333;
  font-size: calc(var(--fs) * 1.2);
  border-radius: .5rem;
  opacity: 0.8;
  cursor: pointer;
}