@charset "utf-8";

.charaLogo {
	margin: 20px 0;
	text-align: center;
}
.charaLogo img {
	width: 200px;
}


/*          キャラクターページ Contents          */
.visual_box {
	position: relative;
	z-index: 3;
}
.visual {
	width: 100%;
	max-width: 1050px;
	margin: auto;
	position: relative;
	box-shadow: 3px 3px 10px rgba(89,77,78,.6);
}
.visual::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
.visualTxt {
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 2;
}
.visual .scale {
	margin: auto;
	overflow: hidden;
}
.visual .scale img {
	transform: scale(1.1);
	-webkit-transition: 2s ease-out;
	transition: 2s ease-out;
}
.visual .scale.in img {
	transform: scale(1.0);
}


/*       rec       */
.rec {
	background: #fefaf3;
	border-radius: 10px;
	width: 100%;
	max-width: 850px;
	margin: 60px auto 0;
	position: relative;
	box-shadow: 0px 0px 3px rgba(89,77,78,.6);
}
	@media screen and (max-width:1100px) {
		.rec {width: 95%;}
	}
.recsvg {
	position: absolute;
	width: 137px;
	opacity:.3;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 0;
}
.recsvg.left {
	left: 10px;
}
.recsvg.right {
	right: 10px;
}
.rec .txtBox {
	padding: 30px 0;
	position: relative;
}
.rec .recName {
	font-size: 2.8rem;
	font-weight: bold;
}
.rec .recDay {
	font-size: 2.8rem;
	font-weight: bold;
}
.rec .recShipping {
	font-size: 1.9rem;
	padding: 15px 0 0;
	font-weight: bold;
}
.rec .recShipping .hippingTxt {
	display: inline-block;
	padding: 3px 10px;
	background: #594d4e;
	color: #FFF;
	letter-spacing: 1px;
}
.recNote {
	font-size: 1.3rem;
	color: #ff0000;
	padding-top: 20px;
	font-weight: bold;
	width: 100%;
	max-width: 850px;
	margin: auto;
}
.recNote li {
	text-align: center;
	/*margin-left: 1.0em;
	text-indent: -1.0em;*/
}

/*       goods       */
.goods {
	padding-top: 50px;
}
.goodstop-svg {
	position: relative;
}
.goodsTopBG {
	vertical-align: bottom;

}
.goodsBox {
	padding: 50px 0;
}
.goodsItem {
	background: #fff;
	width: 100%;
	max-width: 1045px;
	margin: auto;
	box-shadow: 0px 0px 8px rgba(0, 0, 0, .2);
	border-radius: 10px;
	margin-bottom: 45px;
}
	@media screen and (max-width:1100px) {
		.goodsItem {width: 95%;}
	}

.goodsItem .goodsImage {
	width: 50%;
	padding: 15px 0px 15px 15px;
}
.goodsItem .goodsImage img {
	border-radius: 10px;
}
.goodsTxt {
	width: 50%;
	padding: 50px;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}
.goodsTxtBox {
	font-size: 2.1rem;
	padding: 40px;
	text-align: center;
	border: 2px solid #e2cb7d;
	border-radius: 10px;
	flex-grow: 1;
	position: relative;
}
.goodsTxtBox::before {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/ribbon.png)no-repeat;
	width: 44px;
	height: 44px;
	top: -18px;
	right: -18px;
}
.goodsTxtBox .goodstitle {
	margin-bottom: 10px;
}
.goodsTxtBox .goodsname {
	margin-bottom: 30px;
}
.goodsTxtBox .goodsname span {
	font-size: 2.3rem;
}
.goodsTxtBox .goodsprice {
	text-align: right;
	margin-bottom: 65px;
}
.goodsTxtBox .goodsprice span {
	font-size: 1.6rem;
}
.goodsTxt .shopLink {
	width: 95%;
	max-width: 328px;
	margin: auto;
	display: block;
	-webkit-transition: .3s ease-out;
	transition: .3s ease-out;
	filter: drop-shadow(0px 0px 3px rgba(89,77,78,.4));
}
.goodsTxt .shopLink.fin {
	pointer-events: none;
}
	@media screen and (max-width:899px) {
		.goodsTxt {padding: 4vw;}
		.goodsTxtBox {padding: 3vw;}
		.goodsTxtBox .goodsprice {margin-bottom: 15%;}
	}

.goodsdl {
	color: #fff;
	margin-bottom: 25px;
}
.goodsdl span {
	background: #e2cb7d;
	padding: 6px 10px;
	display: inline-block;
	border-radius: 10px;
	font-size: 1.8rem;
}
.Item06 .goodsTxtBox .goodsprice {
	margin-bottom: 45px;
}
.Item06 .goodsTxtBox .dl-fin {
	font-size: 1.8rem;
}
/*          SP          */
@media screen and (max-width:768px) {
	.Item06 .goodsTxtBox .dl-fin {
		font-size: 1.6rem;
	}
}



/*    */
.shopPrBox {
	width: 100%;
	max-width: 1045px;
	margin: 70px auto 20px;
	position: relative;
	padding: 60px 0;
	box-shadow: 0px 0px 5px rgba(150, 130, 91, .6);
	border-radius: 10px;
}
	@media screen and (max-width:1100px) {
		.shopPrBox {width: 95%;}
	}

.shopPrComing {
	font-size: 4.5rem;
	padding: 70px 0 60px;
}
.shopPrComingtxt {
	font-size: 1.8rem;
}
.shopPrBox.af {
	background: #fbf7ec;
	padding: 60px 80px;
}
.shopPr .goodsImage {
	margin: 30px 0;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 0px 5px rgba(150, 130, 91, .6);
}
.shopPrBox .goodsImage img {
	padding: 30px 0;
}
.shopPrGoodsBox {
	position: relative;
}
.goodsBottom {
	background: #eee1b4;
	border-radius: 10px;
	padding: 60px 45px;

}
.shopPrGoodsBox .goodsDetails {
	font-size: 2.6rem;
}
.goodsDetails .goodsprice {
}
.goodsDetails .goodsprice span {
	font-size: 2.0rem;
}
.shopPrGoodsBox .shop img {
	filter: drop-shadow(0px 0px 3px rgba(89,77,78,.4));
}
.shopPrGoodsTxt {
	font-size: 2.0rem;
	text-align: left;
	background: #fffdf1;
	border-radius: 10px;
	padding: 30px;
	margin: 50px 0;
}
.shopPrGoodsBox .txt {
	font-size: 2.0rem;
	text-align: left;
}
.shopPrGoodsBox .top {
	padding-top: 20px;
}
.noteBox .txt.red {
	color: #FF3C50;
	font-size: 1.8rem;
	line-height: 35px;
	font-weight: bold;
}
.noteBox .txt.day {
	font-size: 2.2rem;
	line-height: 35px;
}
.noteBox ul.txt {
	font-size: 1.8rem;
}
.noteBox ul.txt li {
	text-align: left;
	margin-left: 1em;
	text-indent: -1em;
}


#shopList {
	padding: 30px 0;
}
.noteBox {
	padding: 30px 0;
}
.noteBox .title {
	font-size: 2.2rem;
	padding-bottom: 10px;
}
.shoplist {
	width: 100%;
	margin-top: 10px;
	font-size: 1.8rem;
}
.shoplist tr:nth-child(2n-1) {
	background: #ecdda9;
}
.shoplist tr:first-child {
	background: #776c6c;
}
.shoplist .pre {
	width: 15%;
	padding: 7px 0 7px 17px;
	vertical-align: baseline;
	text-align: center;
}
.shoplist tr:first-child {
	color: #FFF;
}
.shoplist .shopName {
	width: 85%;
}
.shoplist .shopName {
	margin: auto;
}
.shoplist .shopName .new {
	display: inline-block;
	margin-left: 15px;
	color: #FF3C50;
	font-weight: bold;
}

.shoplist .shopName .shopNeme {
	margin-right: 10px;
}
.shoplist .shopName .note {
	color: #FFF;
	padding: 0 5px;
	border-radius: 5px;
	font-size: 1.4rem;
	background: #776c6c;
}







/*          Special Contents          */
.special_Dec::before {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/special/Dec.png)no-repeat;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-size: 430px;
}
.special_Dec::after {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/special/Dec.png)no-repeat;
	transform: scale(-1, 1);
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	background-size: 430px;
}
	@media screen and (max-width:1100px) {
		.special_Dec::before,.special_Dec::after {background-size: 40%;}

	}


.logoBox {
	padding: 120px 0 60px;
	margin: auto;
	position: relative;
	z-index: 1;
}
.special .title {
	font-size: 4.6rem;
}

.specialBG {
	position: relative;
}
.specialBG::before {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/special/left.png)no-repeat;
	width: 234px;
	height: 320px;
	left: 50%;
	bottom: 40px;
	z-index: -1;
	filter: drop-shadow(1px 1px 1px rgba(89,77,78,.6));
}
.specialBG::after {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/special/right.png)no-repeat;
	width: 239px;
	height: 325px;
	right: 50%;
	bottom: 40px;
	z-index: -1;
	filter: drop-shadow(1px 1px 1px rgba(89,77,78,.6));
}


.specialTxtBox {
	padding: 40px 0;
	font-size: 2.1rem;
}
.specialTxtBox .txt1 {
	padding-bottom: 30px;
}
.specialTxtBox .txt2 {
	color: #009bd2;
	position: relative;
	z-index: 2;
}
.specialWrap {
	padding: 20px 0;
	width: 100%;
	max-width: 1120px;
	margin: auto;
}
.periodImg p {
	padding-top: 10px;
	font-size: 1.8rem;
}


.iconBox {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
	padding: 0 0 100px;;
}
.iconList {
	width: 50%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
.iconList li {
	margin: 20px 15px;
	width: 250px;
}
.iconList li a {
	-webkit-transition: .3s ease-out;
	transition: .3s ease-out;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	display: block;
}

.iconList li a img {
	pointer-events: none;
}

/*          event Contents          */
.event .title {
	font-size: 4.6rem;
}
.eventTopTxtBox {
	padding: 40px 0 0;
	font-size: 2.0rem;
}
.eventTopTxtBox .note {
	font-size: 1.6rem;
	padding: 20px 0;
	font-weight: bold;
}
.eventWrap {
	width: 100%;
	margin: 40px auto 60px;
	max-width: 1000px;
	background: #e2dddc;
	padding: 25px;
	border-radius: 10px;
	box-shadow: 0px 0px 8px rgba(89,77,78,.6);
}
.eventBox {
	background: #ffffff;
	width: 100%;
	border-radius: 10px;
	padding: 60px 65px;
}
.eventTitleBox {
	margin-bottom: 60px;
}
.title_dot_top {
	position: relative;
}
.title_dot_top::before {
	content: "";
	position: absolute;
	background: url(/shop/bd2022/free/img/event/ribbon.png)no-repeat;
	width: 54px;
	height: 34px;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -8px;
	z-index: 1;
}
.title_dot_top::after {
	content: "";
	position: absolute;
	background: #fff;
	width: 78px;
	height: 34px;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -8px;
	z-index: 0;
}
.eventTitleBox .number {
	font-size: 5.8rem;
	font-weight: bold;
}
.eventTitleBox .txt {
	font-size: 3.4rem;
	font-weight: bold;
	top: -3px;
	position: relative;
}
.eventTitle_dot {
	width: 100%;
	height: 0.6em;
	stroke: #e1ca7d;
}
.eventTitle_dot>line {
	fill: none;
	stroke-width: 8;
	stroke-linecap: round;
	stroke-dasharray: 0, 28;
	stroke-dashoffset: 19;
}
.eventCon01 .ConTxtBox p {
	font-size: 2.4rem;
	line-height: 40px;
}
.eventCon01 .ConTxtBox p span {
	font-weight: bold;
	font-size: 3.0rem;
	background: linear-gradient(transparent 65%, rgba(225,202,125,.5) 65%,rgba(225,202,125,.5) 93%,transparent 0% );
}



.eventWrapNote {
	width: 100%;
	margin: 40px auto 60px;
	max-width: 1000px;
	background: rgba(225,202,125,.5);
	padding: 40px;
	border-radius: 10px;
	box-shadow: 0px 0px 8px rgba(89,77,78,.6);
}
.eventNote .title {
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 20px;
	text-align: center;
}
.eventNote ul li {
	text-align: left;
	font-size: 1.7rem;
	padding-left: 1em;
	text-indent: -1em;
}
.eventWrapLp {
	width: 100%;
	max-width: 750px;
	margin: auto;
	padding-top: 40px;
}
.eventLimitListBox .title {
	font-size: 2.4rem;
	font-weight: bold;
}
.eventLimitList {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 40px 0 60px;
}
.eventLimitList li {
	margin-bottom: 25px;
}
.eventLimitList li a {
	filter: drop-shadow(0px 0px 3px rgba(89,77,78,.6));
}
.eventCon02 .eventTxtBox {
	font-size: 2.4rem;
	line-height: 45px;
}
.eventCon02 .ConBox01 .ConImgBox img {
	border: solid 3px #009bd2;
}
.eventCon02 .txtBox01 .txt01 {
	padding-bottom: 20px;
}
.eventCon02 .txtBox01 .Box01 {
	background: #776c6c;
	color: #FFF;
	padding: 10px 5px;
	margin: 0 20px;
	line-height: 32px;
}
.eventCon02 .txtBox02 .txt02 span {
	font-weight: bold;
	font-size: 3.0rem;
	background: linear-gradient(transparent 65%, rgba(225,202,125,.5) 65%,rgba(225,202,125,.5) 93%,transparent 0% );
	letter-spacing: -3px;
}
.note.red {
	color: #FF3C50;
}
.eventCon02 .note {
	font-size: 1.4rem;
	padding-left: 1em;
	text-indent: -1em;
	font-weight: bold;
	padding-top: 30px;
}
.eventCon02 .ConBox02 {
	background: rgba(225,202,125,.3);
	border-radius: 10px;
	margin: 60px 0 90px;
	padding: 30px 40px;
}
.eventCon02 .ConBox02 .txt01 {
	font-size: 2.8rem;
	font-weight: bold;
	padding-bottom: 30px;
}
.eventCon02 .ConBox02 .txt02 {
	font-size: 2.6rem;
	font-weight: bold;
}
.eventCon02 .ConBox02 .note {
	text-align: left;
	font-size: 1.5rem;
	font-weight: normal;
}

.eventCon02 .ConBox02 .box01 .listBox {
	font-size: 2.2rem;
}
.eventCon02 .ConBox02 .box02 {
	width: 60%;
	margin: auto;
	padding-top: 30px;
}
.eventCon02 .ConBox02 .box02 .eventTitle_dot {
	vertical-align: top;
}
.eventCon02 .ConBox02 .box02 .eventTitle_dot>line {
	stroke-width: 13px;
	stroke-dasharray: 0, 40;
}

.eventCon02 .ConBox03 .txt01 {
	font-size: 2.2rem;
	padding: 20px 0 0;
}
.eventCon02 .ConBox03 .days {
	font-size: 2.4rem;
	font-weight: bold;
	padding: 40px 0 0;
}
.eventCon02 .ConBox03 .days p {
	font-size: 2.6rem;
	margin-top: 15px;
}
.eventCon02 .ConBox03 .days p .dldays {
	background: #e1ca7d;
	display: inline-block;
	padding: 2px 5px 3px;
}
.eventCon02 .ConBox03 .dlComing {
	font-size: 2.6rem;
	padding: 40px 0;
}
.eventCon02 .ConBox03 .ConImgBox {
	padding: 20px 0;
}

.eventCon02 .ConBox03 .CondlBox {
	padding-bottom: 20px;
	font-size: 2.0rem;
}
.eventCon02 .ConBox03 .CondlBox a {
	color: #fff;
	padding: 5px 30px;
	display: inline-block;
	border-radius: 30px;
}
.eventCon02 .ConBox03 .CondlBox a:hover {
	text-decoration: none;
}
.eventCon02 .ConBox03 .finTxt {
	font-size: 1.6rem;
	font-weight: bold;
	color: #FF3C50;
	padding-top: 30px;
}
.dlFinBox {
	padding-top: 30px;
}
.dlFinBox .button {
	padding: 30px 0;
	cursor: pointer;
}
.eventCon02 .dlFinBox .box {
	display: none;
}
.eventCon02 .dlFinBox .box .finTxt {
	padding: 10px 0;
	font-size: 1.8rem;
}
.eventCon02 .dlFinBox .box ul {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
	padding-top: 20px;
	width: 580px;
	margin: auto;
}
.eventCon02 .dlFinBox .box ul li {
	padding-bottom: 30px;
	width: 250px;
	margin: 0 20px;
}
.eventCon02 .dlFinBox .box ul li p {
	font-size: 2.0rem;
	padding-bottom: 10px;
	font-weight: normal;
}


.eventCon03 .txt {
	font-size: 2.2rem;
}
.eventCon03 .txt span {
	font-weight: bold;
}
.eventCon03 .txt01 span {
	font-size: 2.8rem;
	background: linear-gradient(transparent 65%, rgba(225,202,125,.5) 65%,rgba(225,202,125,.5) 93%,transparent 0% );
}
.eventCon03 .txt02 {
	margin: 50px 0;
}
.eventCon03 .txt03 {
	margin: 50px 0;
}
.dlcBox {
	margin: 30px 0;
}
.dlcBox .name {
	font-size: 2.4rem;
	font-weight: bold;
	padding: 20px 0 10px;
}
.dlcBox img {
	padding: 0;
	border: 3px solid #623600;
	overflow: hidden;
}
.dlcBox .download_button {
	font-size: 2.0rem;
	padding-top: 20px;
}
.dlcBox .download_button a {
	color: #fff;
	padding: 5px 50px;
	display: inline-block;
	border-radius: 30px;
}
.dlcBox .download_button a:hover {
	text-decoration: none;;
}
.filterBox img {
	filter: drop-shadow(0px 0px 3px rgba(89,77,78,.6));
}




/*          gallery          */
.gallery .title {
	font-size: 4.6rem;
}
.galleryTopTxtBox {
	padding: 60px 0 0;
	font-size: 2.0rem;
}
.galleryNav {
	margin: 30px 0 90px;
	position: relative;
}
.galleryNav p {
	font-size: 1.7rem;
	margin: 20px 0;
	font-weight: bold;
}
.galleryNavList {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
	width: 100%;
	max-width: 600px;
	margin: auto;
}
.galleryNavList li {
	width: 100%;
	max-width: 170px;
	margin: 7px 10px;
}
.galleryNavList a {
	display: block;
	cursor: pointer;
}
.gallerytop-svg {
	position: relative;
}
.galleryTopBG {
	fill: rgba(226,203,125,.25);
	vertical-align: bottom;
}
.gallerytop-svg .charaNameBox {
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	max-width: 300px;
}
.galleryBox {
	background: rgba(226,203,125,.25);
}
.galleryList {
	width: 100%;
	max-width: 1045px;
	margin: auto;
	padding: 120px 0;
}
.galleryList div {
	margin-right: 70px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	pointer-events: none;
}
.dir-gallery .footerContent {
	background: rgba(226,203,125,.25);
}
@media screen and (max-width:1000px) {
	.galleryList div {
		margin-right: 0px;
	}
	.galleryList {
		width: 90%;
		max-width: 500px;
	}
}




/*+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-     Footer Contents     -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/

/*+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-     Media Screen     -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/
/*          SP          */
@media screen and (max-width:768px) {
/*  
font-size設定
PC      SP
1.0rem->2.2vw
1.4rem->2.6vw
+1.2
  */
	.charaLogo {
		margin: 10px 0;
	}
	.charaLogo img {
		width: 100px;
	}

	/*          chara Contents          */
	
	.visualTxt {
		margin-bottom: 10px;
	}
	.visualTxt img {
		width: 80%;
		margin: auto;
	}
	.rec {
		width: 95%;
		max-width: 500px;
		margin: 50px auto 0;
	}
	.recsvg {
		width: 15%;
	}
	.recsvg.left {
		left: 10px;
	}
	.recsvg.right {
		right: 10px;
	}
	.rec .txtBox {
		padding: 15px 0;
	}

	.rec .recName {
		font-size: 2.4rem;
	}
	.rec .recDay {
		font-size: 2.2rem;
	}
	.rec .recShipping {
		font-size: 1.6rem;
		padding: 5px 0 0;
	}
	.recNote {
		font-size: 1.0rem;
		width: 95%;
		max-width: 500px;
	}
	.recNote li {
	}
	
	.goods {
		padding-top: 60px;
	}
	.goodsTopBG {
		height: 30px;
	}
	.goods .title {
		font-size: 4.0rem;
		bottom: -35px;
	}
	.goodsBox {
		padding: 0 0 10px;
	}
	.goodsItem {
		width: 95%;
		max-width: 500px;
		margin: 10px auto 40px;
		padding: 10px;
	}
	.goodsItem .goodsImage {
		padding: 10px 0 0;
		width: 100%;
	}
	.goodsItem.Item06 .goodsImage {
		padding: 0;
	}
	.goodsTxt {
		width: 100%;
		padding: 5%;
	}
	.Item06 .goodsTxt {
		width: 100%;
		padding: 8% 4% 4%;
	}
	.goodsTxtBox {
		font-size: 1.8rem;
		width: 100%;
		padding: 7%;
	}
	.goodsdl {
		margin-bottom: 10px;
	}
	.goodsTxtBox .goodstitle {
		margin-bottom: 5px;
	}
	.goodsTxtBox .goodsname {
		margin-bottom: 10px;
	}
	.Item06 .goodsTxtBox .goodsname {
		margin-bottom: 10px;
	}
	.goodsTxtBox .goodsprice {
		font-size: 1.6rem;
		margin-bottom: 8%;
	}
	.Item06 .goodsTxtBox .goodsprice {
		margin-bottom: 8%;
	}
	.goodsTxtBox .goodsname span {
		font-size: 2.0rem;
	}
	.goodsTxtBox .goodsprice span {
		font-size: 1.4rem;
	}
	
	.shopPrBox {
		width: 95%;
		max-width: 500px;
		padding: 30px 20px;
		margin: 20px auto;
	}
	.shopPrBox .titleBox {
		width: 75%;
		margin: auto;
	}
	.shopPrComingtxt {
		font-size: 1.4rem;
		text-align: left;
	}
	.shopPrComing {
		font-size: 2.5rem;
		padding: 40px 0;
	}
	.shopPrBox .goodsImage {
		padding: 20px 0 20px;
	}
	.noteBox .title {
		font-size: 1.6rem;
	}
	.noteBox .txt {
		font-size: 1.4rem;
	}
	.noteBox ul.txt {
		font-size: 1.4rem;
	}
	.shopPrBox.af {
		padding: 30px 4%;
	}
	.goodsImage img {
		padding: 0;
	}
	.goodsBottom {
		padding: 7% 5%;
	}
	.shopPrGoodsBox .goodsDetails .goodstitle {
		font-size: 1.8rem;
	}
	.shopPrGoodsBox .goodsDetails {
		font-size: 2.0rem;
	}
	.goodsDetails .goodsprice {
		position: relative;
		bottom: 0;
		font-size: 1.8rem;
		right: 0;
		padding: 5px 0;
	}
	.goodsDetails .goodsprice span {
		font-size: 1.4rem;
	}
	.shopPrGoodsBox .shop {
		width: 70%;
		margin: auto;
		padding-top: 20px;
	}
	.shopPrGoodsTxt {
		font-size: 1.4rem;
		padding: 15px;
		margin: 30px 0;
	}
	.shopPrGoodsBox .txt {
		font-size: 1.4rem;
	}
	.shopPrGoodsBox .right {
		padding-top: 20px;
	}
	.noteBox {
		padding: 20px 0;
	}
	.noteBox .txt.red {
		font-size: 1.4rem;
		line-height: normal;
		text-align: left;
		margin-left: 1em;
		text-indent: -1em;
	}
	.noteBox .txt.day {
		 font-size: 1.8rem;
		line-height: normal;
	}
	.shoplist {
		margin-top: 0;
		font-size: 1.3rem;
	}
	.shoplist .pre {
		width: 25%;
		padding: 3px 5px 3px;
		text-align: center;
	}
	.shoplist .shopName {
		padding: 5px;
	}
	.shoplist .shopName .new {
		margin-left: 10px;
	}
	
	.shoplist td {
		text-align: left;
	}
	.shoplist th {
		text-align: center;
	}
	.shopPrGoodsBox .txt .tsp {
		display: block;
	}
	.shoplist .shopName .note {
		font-size: 1.2rem;
		display: inline-block;
	}






	
	/*          Special Contents          */
	.logoBox {
		padding: 120px 0px 60px;
		width: 80%;
		max-width: 500px;
		margin: auto;
	}
	
	.specialWrap {
		width: 95%;
		max-width: 500px;
		padding: 0;
	}

	.specialBox {
		padding: 10px;
	}
	.specialTxtBox {
		padding: 40px 0 30px;
		font-size: 1.5rem;
	}
	.specialTxtBox .txt1 {
		padding-bottom: 15px;
	}
	.special .title {
		font-size: 4.0rem;
	}
	.periodImg {
		width: 95%;
	}
	.specialBG {
		max-width: 500px;
		margin: auto;
	}
	.specialBG::before {
		width: 100%;
		height: 65%;
		left: 0;
		bottom: 60%;
		background-size: contain;
		background-position: left;
	}
	.specialBG::after {
		width: 100%;
		height: 65%;
		right: 0;
		bottom: 60%;
		background-size: contain;
		background-position: right;
	}
	.periodImg p {
		font-size: 1.4rem;
	}
	
	.iconBox {
		width: 95%;
		margin: auto;
		padding: 0;
	}
	.iconList {
		width: 100%;
	}
	.iconList li {
		margin: 10px 15px;
	}
	.specialLastTxt {
		padding-bottom: 50px;
		font-size: 1.4rem;
	}
	.bBgBox .bBg {
		top: 6px;
		background-size: 30rem;
	}
	
	
	
	/*          event Contents          */
	.event .title {
		font-size: 4.0rem;
	}
	.eventTopTxtBox {
		padding: 40px 0 0;
		font-size: 1.5rem;
		width: 90%;
		margin: auto;
		text-align: left;
	}
	.eventTopTxtBox .note {
		font-size: 1.4rem;
		margin-left: 1em;
		text-indent: -1em;
	}
	.eventWrap {
		width: 95%;
		margin: 30px auto 40px;
		padding: 15px;
		max-width: 500px;
	}
	.eventBox {
		padding: 8% 5%;
	}
	.eventTitleBox .number {
		font-size: 2.6rem;
		display: block;
	}
	.eventTitleBox .txt {
		font-size: 1.8rem;
	}
	.titleTxtBox {
		margin: 10px 0;
	}
	.eventTitle_dot>line {
		stroke-width: 15px;
		stroke-dasharray: 0, 50;
		stroke-dashoffset: 25;
	}
	.title_dot_top::before {
		background-size: 30px;
		width: 30px;
		height: 19px;
		top: 0px;
		bottom: 0;
	}
	.title_dot_top::after {
		background-size: 30px;
		width: 30px;
		height: 19px;
		top: 0px;
		bottom: 0;
	}
	.eventTitleBox {
		margin-bottom: 15px;
	}
	.eventCon01 .ConTxtBox p {
		font-size: 1.4rem;
		line-height: 20px;
		margin: 15px 0;
	}
	.eventCon01 .ConImgBox img {
		width: 65%;
		margin: auto;
	}
	.eventCon01 .ConTxtBox p span {
		font-size: 1.8rem;
	}


	.eventWrapNote {
		width: 95%;
		padding: 20px;
		max-width: 500px;
	}
	.eventNote .title {
		font-size: 1.8rem;
	}
	.eventNote ul li {
		font-size: 1.2rem;
	}

	.eventWrapLp {
		width: 95%;
		max-width: 500px;
		padding-top: 0px;
	}
	.eventLimitListBox .title {
		font-size: 1.6rem;
	}
	.eventLimitList {
		margin: 30px auto 20px;
		width: 95%;
	}
	.eventLimitList li {
		width: 47%;
	}
	.txtBox01 {
		padding: 20px 0 0;
	}
	.eventCon02 .eventTxtBox {
		font-size: 1.4rem;
		line-height: 20px;
	}
	.eventCon02 .txtBox01 .Box01 {
		padding: 5px 10px;
		margin: 0;
		line-height: 20px;
		display: inline-block;
	}
	.eventCon02 .txtBox01 .txt01 {
		padding-bottom: 10px;
	}
	.eventCon02 .txtBox02 .txt02 span {
		font-size: 1.8rem;
		letter-spacing: 0;
	}
	.eventCon02 .note {
		font-size: 1.4rem;
		text-align: left;
		padding-top: 20px;
	}
	.eventCon02 .ConBox02 {
		margin: 30px 0;
		padding: 8% 5%;
	}
	.eventCon02 .ConBox02 .txt01 {
		font-size: 1.8rem;
		display: -webkit-flex;
		display: flex;
		justify-content: center;
    align-items: center;
	}
	.eventCon02 .ConBox02 .txt01 .left {
		margin-right: 10px;
	}
	.eventCon02 .ConBox02 .txt01 .right {
		margin-left: 10px;
	}
	.eventCon02 .ConBox02 .box01 .listBox {
		font-size: 1.4rem;
		padding-bottom: 30px;
	}
	.eventCon02 .ConBox02 .box01 .listBox img {
		width: 80%;
		max-width: 300px;
		margin: auto;
	}
	.eventCon02 .ConBox02 .box02 {
		width: 95%;
		padding-top: 0;
	}
	.eventCon02 .ConBox02 .txt02 {
		font-size: 4vw;
	}
	.eventCon02 .ConBox02 .note {
		font-size:1.4rem;
	}
	
	.eventCon02 .ConBox03 .txt01 {
		font-size: 1.2rem;
		padding: 20px 0 0;
	}
	.eventCon02 .ConBox03 .days {
		font-size: 1.6rem;
		padding: 20px 0 0;
	}
	.eventCon02 .ConBox03 .days p {
		font-size: 1.4rem;
		margin-top: 10px;
	}
	.eventCon02 .ConBox03 .CondlBox {
		font-size: 1.4rem;
	}
	.eventCon02 .ConBox03 .dlComing {
		font-size: 2.0rem;
	}
	.eventCon02 .ConBox03 .finTxt {
		font-size: 1.4rem;
		padding-top: 20px;
	}
	
	.dlFinBox {
		padding-top: 0px;
	}
	.eventCon02 .dlFinBox .box ul {
		width: 100%;
	}
	.eventCon02 .dlFinBox .box .finTxt {
		font-size: 1.4rem;
	}
	.eventCon02 .dlFinBox .box ul li {
		width: 45%;
		margin: 0px 5px;
	}
	.eventCon02 .dlFinBox .box ul li p {
		font-size: 1.6rem;
		padding: 0  0 10px;
	}
	.eventCon03 .txt {
		font-size: 1.4rem;
		margin: 20px 0;
	}
	.eventCon03 .txt01 span {
		font-size: 1.8rem;
	}
	.dlcBox .name {
		font-size: 1.6rem;
	}
	.dlcBox .download_button {
		font-size: 1.4rem;
		padding-top: 20px;
	}
	.filterBox a {
		margin: 40px 0 0;
		display: block;
	}

	@media screen and (min-width:500px) {
		.eventCon02 .ConBox02 .txt02 {
			font-size: 1.8rem;
		}
	}
	/*          gallery          */
	.gallery .title {
		font-size: 4.0rem;
	}
	.galleryTopTxtBox {
		padding: 40px 0 0;
		font-size: 1.5rem;
		width: 90%;
		margin: auto;
	}
	.galleryNavList {
		width: 90%;
		max-width: 500px;
	}
	.galleryNav p {
		font-size: 1.4rem;
	}
	.galleryNav {
		margin: 30px 0 60px;
	}
	.galleryNavList li {
		width: 42%;
		margin: 5px 10px;
	}
	.galleryTopBG {
		height: 30px;
	}
	.gallerytop-svg .charaNameBox {
		bottom: -40px;
		max-width: 250px;
	}
	.galleryList {
		width: 90%;
		max-width: 500px;
		padding: 100px 0;
	}
	.galleryList div {
		margin-right: 3%;
	}
	@media screen and (max-width:500px) {
		.galleryTopTxtBox {
			text-align: left;
		}
		.galleryTopTxtBox .txtbr {
			display: none;
		}
	}

}
/*          PC          */
@media screen and (min-width:769px) {
/*          Site Contents          */
	.bannerList {
		width: 700px;
	}
	.bannerList li {
		width: 45%;
		margin: 0 15px;
	}
	

	/*          goods          */
	.rec .txtBox.fin {
		padding: 40px 0;
	}
	.rec .fin .recShipping {
		padding: 30px 0 0;
	}

	.goods .title {
		font-size: 4.6rem;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}

	.goodsItem {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.goodsItem .goodsImage {
		height: 530px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.goodsTxtBox {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.goodsTxtBox .TxtBox {
	}
	.goodsTxt .shopLink:hover {
		opacity: .8;
	}
	.shopPrGoodsBox .txt {
		font-size: 2.0rem;
		text-align: left;
		margin-left: 5em;
		text-indent: -5em;
	}
	.shopPrGoodsBox .shop {
		max-width: 328px;
		margin: auto;
		padding-top: 30px;
	}
	
	@media screen and (max-width:1100px) {
		.shopPrBox.af {
			padding: 30px 4%;
		}
		.goodsBottom {
			padding: 6% 5%;
		}
		.shopPrGoodsBox .shop {
			padding-top: 30px;
		}
		.shopPrGoodsBox .right {
			width: 30%;
		}
	}

	.shoplist .shopName {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.shopPrGoodsBox .shop a:hover {
		opacity: .8;
	}
	




	
	/*          Special Contents          */
	.specialBG::before {
		transform: translateX(-210%);
		-webkit-transform: translateX(-210%);
		-ms-transform: translateX(-210%);
	}
	.specialBG::after {
		transform: translateX(210%);
		-webkit-transform: translateX(210%);
		-ms-transform: translateX(210%);
	}
		@media screen and (max-width:1100px) {
		.specialBG::before {
			transform: translateX(-48vw);
			-webkit-transform: translateX(-48vw);
			-ms-transform: translateX(-48vw);
			background-size: 20vw;
		}
		.specialBG::after {
			transform: translateX(48vw);
			-webkit-transform: translateX(48vw);
			-ms-transform: translateX(48vw);
			background-size: 20vw;
			background-position: top right;
		}
			
		}
	.iconList li a:hover {
		opacity: .8;
	}

	/*          event Contents          */
	.eventCon01 {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
	}
	.eventCon01 .ConImgBox {
		width: 50%;
		max-width: 300px;
	}
	.eventCon01 .ConTxtBox {
		width: 50%;
		display: table;
		margin-left: 30px;
	}
	.eventCon01 .ConTxtBox p {
		display: table-cell;
		vertical-align: middle;
	}
	.eventLimitList li {
		-webkit-transition: .3s ease-out;
		transition: .3s ease-out;
	}
	.eventLimitList li:hover {
		opacity: .6;
	}
	.eventCon02 .ConBox01 {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.eventCon02 .ConBox01 .ConImgBox {
		width: 50%;
		max-width: 360px;
	}
	.eventCon02 .ConBox01 .eventTxtBox {
		width: 45%;
		margin: 0 0 0 30px;
	}
	.eventCon02 .ConBox02 .box01 {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.eventCon02 .ConBox02 .box01 .listBox {
		width: 47%;
	}
	.download_button a {
		-webkit-transition: .3s ease-out;
		transition: .3s ease-out;
	}
	.eventCon02 .ConBox03 .CondlBox a {
		-webkit-transition: .3s ease-out;
		transition: .3s ease-out;
	}
	.download_button a:hover {
		opacity: .6;
	}
	.eventCon02 .ConBox03 .CondlBox a:hover {
		opacity: .6;
	}
	.filterBox a {
		-webkit-transition: .3s ease-out;
		transition: .3s ease-out;
	}
	.filterBox a:hover {
		opacity: .6;
	}

	.themecardBox {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.themecardBox .dlcBox {
		width: 47%;
	}



	
	@media screen and (max-width:1100px) {
		.eventWrap {
			width: 95%;
		}
		.eventWrapNote {
			width: 95%;
		}

	}
	@media screen and (max-width:1000px) {
		.eventTopTxtBox .note.red {
			width: 95%;
			margin: auto;
			text-align: left;
			padding-left: 1em;
			text-indent: -1em;
		}
		.eventBox {
			padding: 7% 5%;
		}
		.eventCon01 .ConTxtBox {
			margin-left: 0px;
		}
	
		.eventCon01 .ConTxtBox p {
			font-size: 2.4vw;
		}
		.eventCon01 .ConTxtBox p span {
			font-size: 3.2vw;
		}
		.eventCon02 .eventTxtBox {
			font-size: 2.1vw;
		}
		.eventCon02 .txtBox02 .txt02 span {
			font-size: 3.0vw;
		}
		.eventCon02 .txtBox01 .txt01 {
			padding-bottom: 5%;
		}
		.eventCon02 .eventTxtBox {
			line-height: 4.5vw;
		}
		.eventCon02 .ConBox02 .box01 .listBox {
			font-size: 2.1vw;
		}
		.eventCon02 .ConBox02 .txt02 {
			font-size: 2.6vw;
		}
		.eventCon02 .ConBox03 .txt01 {
			font-size: 2.4vw;
		}
		.eventCon02 .ConBox03 .days {
			font-size: 2.6vw;
		}
		.eventCon02 .ConBox03 .days p {
			font-size: 2.8vw;
		}
		.eventCon03 .txt {
			font-size: 2.3vw;
		}
		.eventCon03 .txt01 span {
			font-size: 3.2vw;
		}
	}
	

}







