@charset "utf-8";

/*--------------------
common
--------------------*/
#swipe_menu ul li:first-child a .swipe_menu_title:first-child:after {
	content: " Home";
}
article .wm-h3 {
	font-size: 1.25rem;
	padding-top: 0;
	padding-bottom: 0;
	line-height: 1.8;
}
.categoryTag li {
	font-size: .571rem;
	margin-bottom: 5px;
}
.categoryTag a {
	background-color: rgba(0,0,0,0.09);
	display: inline-block;
	padding: 2px 0.8em 2px 2.1em !important;
	position: relative;
}
.categoryTag a:before {
	margin-right: 0;
	position: absolute;
	top: calc((0.7em + 2px) - 5px);
	left: 0.7em;
}
@media only screen and (min-width: 801px) {
	.categoryTag li { font-size: .714rem; }
	.categoryTag a { padding-left: 1.8em !important; }
}

@media (max-width: 800px) {
	article .wm-h3 {
		font-size: 1.07rem;
		padding-top: 0.2rem;
		padding-bottom: 0.2rem;
		line-height: 1.6;
	}
}


/*--------------------
Important(重要なお知らせ/game_center/loc/*)
--------------------*/
#load_important { margin: 0; padding: 0; }
.gamecenter_important { border: 3px double #e60000; margin: 0 5px 20px; padding: 1em; background: rgba(230,0,0,.05); }
.gamecenter_important dt { font-size: 107.1%; font-weight: bold; color: #e60000; line-height: 1.5; }
.gamecenter_important dd { line-height: 1.5; }
.gamecenter_important dd strong { color: #e60000; }
.gamecenter_important dd { line-height: 1.5; }
.gamecenter_important dd p { line-height: 1.5; margin-top: 0.5em; }
.gamecenter_important dd p + p { line-height: 1.5; margin-top: 1em; text-align: right; }
.gamecenter_important dd p a { color: #e60000; }
.gamecenter_important.type_date dt { font-size: 100%; float: left; }
.gamecenter_important.type_date dd { margin: 0 0 0 7.5em; }
.gamecenter_important.type_date dd p { margin-top: 0; }
.gamecenter_important.type_date dd p a { display: block; }
@media (max-width: 640px) {
	.gamecenter_important { margin-top: 5px;}
	.gamecenter_important.type_date dt { float: none; }
	.gamecenter_important.type_date dd { margin: 0.3em 0 0; }
}


/*--------------------
original
--------------------*/
/*flexbox*/
.flex-layout {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: start;
	justify-content: flex-start;
	/*-webkit-box-align: stretch;*/
	/*align-items: stretch;*/
	-webkit-box-orient:horizontal;
	-webkit-box-direction:normal;
	flex-flow: row wrap;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	padding: 0;
	box-sizing: border-box;
}
.flex-layout > * {
	display: block;
	width: 50%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
/*flexbox column*/
.flex-layout.col1 > * { width: 100%; }
.flex-layout.col2 > *,
.flex-layout.col2to1 > * { width: calc(100% / 2); }
.flex-layout.col3 > *,
.flex-layout.col3to1 > *,
.flex-layout.col3to2 > *,
.flex-layout.col3to2to1 > * { width: calc(100% / 3); }
.flex-layout.col4 > *,
.flex-layout.col4to2 > *,
.flex-layout.col4to2to1 > *,
.flex-layout.col4to3to2 > * { width: calc(100% / 4); }
.flex-layout.col5 > *,
.flex-layout.col5to2 > *,
.flex-layout.col5to3 > *,
.flex-layout.col5to3to1 > *,
.flex-layout.col5to3to2 > * { width: calc(100% / 5); }
.flex-layout.col6 > *,
.flex-layout.col6to2 > *,
.flex-layout.col6to3 > *,
.flex-layout.col6to3to1 > *,
.flex-layout.col6to4 > *,
.flex-layout.col6to4to2 > *,
.flex-layout.col6to4to3 > * { width: calc(100% / 6); }
.flex-layout.col7 > *,
.flex-layout.col7to3 > *,
.flex-layout.col7to3to1 > *,
.flex-layout.col7to3to2 > *,
.flex-layout.col7to4 > *,
.flex-layout.col7to4to2 > *,
.flex-layout.col7to4to3 > *,
.flex-layout.col7to5 > *,
.flex-layout.col7to5to2 > *,
.flex-layout.col7to5to3 > * { width: calc(100% / 7); }
.flex-layout.col8 > *,
.flex-layout.col8to3 > *,
.flex-layout.col8to3to1 > *,
.flex-layout.col8to3to2 > *,
.flex-layout.col8to4 > *,
.flex-layout.col8to4to1 > *,
.flex-layout.col8to4to2 > *,
.flex-layout.col8to4to3 > *,
.flex-layout.col8to5 > *,
.flex-layout.col8to5to1 > *,
.flex-layout.col8to5to2 > *,
.flex-layout.col8to5to3 > *,
.flex-layout.col8to6 > *,
.flex-layout.col8to6to2 > *,
.flex-layout.col8to6to3 > *,
.flex-layout.col8to6to4 > * { width: calc(100% / 8); }

/*base*/
#grayboxList .wm-border a { word-break: break-all; }
.boxSolid1px { padding: 1em; border: 1px solid #c8c8c8; }
.boxSolid2px { padding: 1em; border: 2px solid #c8c8c8; }
.boxSolid3px { padding: 1em; border: 2px solid #c8c8c8; }
.boxDouble3px { padding: 1em; border: 3px double #c8c8c8; }
.boxDouble6px { padding: 1em; border: 6px double #c8c8c8; }
.textLeft { text-align: left; }
.textRight { text-align: right; }
.textCenter { text-align: center; }
.annotation { font-size: 85.7%; }
.annotation li { text-indent: -1em; margin-top: 0.2em; padding-left: 1em; }
.inlineBlock li { display: inline-block; padding-right: .25em; }

/*vendor prefix Firefox only (focused chara_shop)*/
/*@-moz-document url-prefix(){ .contentsMenu > li { min-height: 4em; } }*/
.contentsMenu li { max-height: none !important; }
.contentsMenu li a { margin: 0 0 -85px !important; padding: 15px 0.5em 100px !important; top: 0 !important; -webkit-transform: none !important; transform: none !important; }

/*twitter icon (focused chara_shop)*/
#tw-icon i { speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; }
#tw-icon i:before { display: inline-block; content: "　"; width: 1.5em; background: url(../images/icon_tw.png) no-repeat center center / 84% auto; }
.tw-block { padding: 1em; border: 1px solid #c8c8c8; border-radius: 5px; font-size: 85.7%; text-align: center; }
.tw-link { margin-top: 0.7em; }
.tw-link p { display: inline-block; padding: 0; }
.tw-link p a,
.tw-link p span { text-decoration: none !important; border-radius: 100px; box-shadow: 0 0 0 1px #55acee inset; }
.tw-link p a { display: block; padding: 0 0 0 15px; color: #55acee !important; }
.tw-link p span { display: inline-block; margin-left: 5px; padding: 5px 15px; background: #55acee; color: #fff !important; }
.tw-link p a:hover { background: #d9eeff; }
.tw-link p a:hover span { background: #88c5f8; }

/* shoplist Timer (focused chara_shop)*/
.closeTimer { display: none; }
.closeTimer:after { margin-left: 5px; font-weight: normal; color: #e00; content: "※終了しました"; }
.noShop { padding: 50px 20px; text-align: center; border: 1px solid rgba(0,0,0,0.2); }
.noShop:before { display: inline; content: "※現在開催中の店舗はございません。"; }

/*shoplist (focused chara_shop & release)*/
.locations { padding: 1em; border: 1px solid #c8c8c8; }
.locations dt,
.releaseLoc dt { padding: 6px 10px; font-weight: bold; border-bottom: 1px solid #c8c8c8; background: #ddd; }
.locations dd,
.releaseLoc dd { margin-top: 5px; }
.locations dd:first-of-type,
.releaseLoc dd:first-of-type { margin-top: 10px; }
.locations dd b, .releaseLoc dd b { display: inline-block; margin-right: 0.5em; padding: 0.2em 0.5em; background: #bbb; border-radius: 4px; font-size: 85.7%; font-weight: normal; color: #fff; text-align: center; }
.locations.type2 { padding: 0; border: none; display: table; width: 100%; box-sizing: border-box; }
.locations.type2 + .locations.type2 { padding-top: 20px; border-top: 1px solid #ddd; }
.locations.type2 dt { display: table-cell; word-break: keep-all; width: 40%; text-align: center; vertical-align: middle; border: none; position: relative; }
.locations.type2 dt .nowrap { font-style: normal; white-space: nowrap; }
.locations.type2 dt:after { content: ""; width: 0; height: 0; border: 10px solid transparent; border-left-color: #ddd; position: absolute; top: 50%; left: 100%; margin-top: -10px; }
.locations.type2 dd { margin: 0 0 0 20px; position: relative; padding-left: 5em; }
.locations.type2 dd:first-of-type { margin-top: 0.5em; }
.locations.type2 dd:last-of-type { margin-bottom: 0.5em; }
.locations.type2 dd + dd { margin-top: 10px; }
.locations.type2 dd b { position: absolute; top: -0.2em; left: 0; }

/*copyright*/
.officialCopyright, .releaseCopy { font-size: 85.7%; }
.officialCopyright { margin-top: 40px; padding-top: 20px; border-top: 1px solid #ccc; }
.officialCopyright span,
.releaseCopy span { display: inline-block; word-break: keep-all; margin: 0.5em; }

@media (max-width: 800px) {
	/*flexbox column*/
	.flex-layout.col2to1 > *,
	.flex-layout.col3to1 > * { width: 100%; }
	.flex-layout.col3to2 > *,
	.flex-layout.col3to2to1 > *,
	.flex-layout.col4to2 > *,
	.flex-layout.col4to2to1 > *,
	.flex-layout.col5to2 > *,
	.flex-layout.col6to2 > * { width: calc(100% / 2); }
	.flex-layout.col4to3to2 > *,
	.flex-layout.col5to3 > *,
	.flex-layout.col5to3to1 > *,
	.flex-layout.col5to3to2 > *,
	.flex-layout.col6to3 > *,
	.flex-layout.col6to3to1 > *,
	.flex-layout.col7to3 > *,
	.flex-layout.col7to3to1 > *,
	.flex-layout.col7to3to2 > *,
	.flex-layout.col8to3 > *,
	.flex-layout.col8to3to1 > *,
	.flex-layout.col8to3to2 > * { width: calc(100% / 3); }
	.flex-layout.col6to4 > *,
	.flex-layout.col6to4to2 > *,
	.flex-layout.col6to4to3 > *,
	.flex-layout.col7to4 > *,
	.flex-layout.col7to4to2 > *,
	.flex-layout.col7to4to3 > *,
	.flex-layout.col8to4 > *,
	.flex-layout.col8to4to1 > *,
	.flex-layout.col8to4to2 > *,
	.flex-layout.col8to4to3 > * { width: calc(100% / 4); }
	.flex-layout.col7to5 > *,
	.flex-layout.col7to5to2 > *,
	.flex-layout.col7to5to3 > *,
	.flex-layout.col8to5 > *,
	.flex-layout.col8to5to1 > *,
	.flex-layout.col8to5to2 > *,
	.flex-layout.col8to5to3 > * { width: calc(100% / 5); }
	.flex-layout.col8to6 > *,
	.flex-layout.col8to6to2 > *,
	.flex-layout.col8to6to3 > *,
	.flex-layout.col8to6to4 > * { width: calc(100% / 6); }

	/*shoplist (focused chara_shop & release)*/
	.locations.type2 { display: block; }
	.locations.type2 dt { display: block; width: 100%; text-align: left; padding: 1em; box-sizing: border-box; }
	.locations.type2 dt:after { border: 10px solid transparent !important; border-top-color: #ddd !important; top: 100%; left: 50%;  margin-top: 0; margin-left: -10px; }
	.locations.type2 dd { margin: 0; position: relative; }
	.locations.type2 dd:first-of-type { margin-top: 20px; }
	.locations.type2 dd:last-of-type { margin-bottom: 0; }
}
@media (max-width: 480px) {
	/*flexbox column*/
	.flex-layout.col3to2to1 > *,
	.flex-layout.col4to2to1 > *,
	.flex-layout.col5to3to1 > *,
	.flex-layout.col6to3to1 > *,
	.flex-layout.col7to3to1 > *,
	.flex-layout.col8to3to1 > *,
	.flex-layout.col8to4to1 > *,
	.flex-layout.col8to5to1 > * { width: 100%; }
	.flex-layout.col4to3to2 > *,
	.flex-layout.col5to3to2 > *,
	.flex-layout.col7to3to2 > *,
	.flex-layout.col8to3to2 > *,
	.flex-layout.col6to4to2 > *,
	.flex-layout.col7to4to2 > *,
	.flex-layout.col8to4to2 > *,
	.flex-layout.col7to5to2 > *,
	.flex-layout.col8to5to2 > *,
	.flex-layout.col8to6to2 > * { width: calc(100% / 2); }
	.flex-layout.col6to4to3 > *,
	.flex-layout.col7to4to3 > *,
	.flex-layout.col8to4to3 > *,
	.flex-layout.col7to5to3 > *,
	.flex-layout.col8to5to3 > *,
	.flex-layout.col8to6to3 > * { width: calc(100% / 3); }
	.flex-layout.col8to6to4 > * { width: calc(100% / 4); }

	/*shoplist (focused chara_shop & release)*/
	.locations.type2 dd { padding-left: 0 !important; padding-top: 2em !important; }
}


/*--------------------
game_center shop page
--------------------*/
/*main images*/
#shopImage { max-width: 640px; margin: 0 auto 1em; }
#shopImage figure { max-width: 100%; position: relative; padding-bottom: 56.25%; overflow: hidden; }
#shopImage figure img { display: block; margin: 0 auto; width: auto; height: auto; max-width: 100%; max-height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#photoList { margin-left: -5px; }
#photoList li { border: 3px solid transparent; box-sizing: border-box; background-clip: content-box; margin-left: 5px; }
#photoList .cur { background-color: #fa0; }

/*wm*/
.wm_carea #shopImage { padding-bottom: 20px; }
.wm_carea #photoList { text-align: center; }
.wm_carea #photoList li { float: none; display: inline-block; }
.wm_carea #storeNav li:nth-child(3) { display: none; }

/*game list*/
#loc-gameList.matchList .list dt,
#loc-gameList.matchList .list dd { font-size: 78.5%; }
#loc-gameList.matchList .list dt:after { display: none; }
#loc-gameList.matchList .list dt:first-of-type { display: none; }
#loc-gameList.matchList .list dd:first-of-type { color: #ff5c00; font-size: 100%; text-decoration: underline; margin-bottom: 0.3em; }
#loc-gameList.matchList .list dt:last-of-type { color: #777; font-size: 71.4%; padding: 1px 5px; background: #e5e5e5; margin-right: 0.3em; border-radius: 4px; }
#loc-gameList.matchList .list dd .detail { padding-top: 1em; margin-top: 1em; border-top: 1px dashed #ddd; }
#loc-gameList.matchList .list dd .detail .copyr { font-size: 91%; line-height: 1.4; }
#loc-gameList.matchList a:hover { opacity: .7; display: block; }
#loc-gameList.matchList a:hover .list dd:first-of-type { text-decoration: none; }
#recommend_prize .no-data,
#loc-gameList.matchList .no-data { width: 100% !important; margin-top: 20px; padding: 20px; min-height: auto; border: 1px solid #e1e1e1 !important; box-sizing: border-box; text-align: center; }
#recommend_prize .no-data { margin-left: 10px; margin-right: 10px; }
#recommend_prize .no-data:before,
#loc-gameList.matchList .no-data:before { content: "※"; }

/*facilities icon*/
#storeInfo .storeInfo_outline .facilities img[src*="images/am_icon"] { width: 23%; max-width: 80px; }
#storeInfo .storeInfo_outline .facilities li { width: 100%; }

/*game center news -: tPath create*/
.tPathLocName { margin-top: 10px; padding: 0 0.2em 0.5em; font-size: 85.7%; border-bottom: 1px solid #ccc; }
.tPathLocName li { max-width: 100%; margin: 0.2em 0 0; padding: 0 0.6em 0 0; position: relative; display: inline-block; box-sizing: border-box; overflow: hidden; text-overflow: ellipsis;  }
.tPathLocName li:before { content: ">"; margin: 0; padding-right: 0.6em; }
.tPathLocName li:first-child { padding-left: 1.5em; }
.tPathLocName li:first-child:before, .tPathLocName li:first-child:after { display: block; content: ""; position: absolute; padding: 0; }
.tPathLocName li:first-child:before { top: 0; left: 0; width: 10px; height: 100%; background: #999; }
.tPathLocName li:first-child:after { left: -1px; top: 50%; border: solid transparent; height: 0; width: 0; border-color: rgba(255,255,255,0); border-right-color: #fff; border-width: 4px; margin-top: -4px; }
.tPathLocName li:first-child:hover:before { background: #b91e23; }
.tPathLocName li a { color: #666; white-space: nowrap; }
.tPathLocName li a:hover { color: #b91e23; }

/*game center news : Add shopmenu*/
#lNav nav { padding-bottom: 30px; }
#lNav .shopmenu { margin-bottom: 30px; position: relative; }
#lNav .shopmenu:after { content: ""; display: block; width: 40%; height: 0; margin: 0 30%; padding: 0; border-bottom: 6px dotted #e8e8e8; position: absolute; left: 0; bottom: 0; }

/*snsButton clone (only in the [.setSNS]class)*/
.setSNS { padding-bottom: 20px; }
#snsButton-clone { display: none; margin: 20px auto 0; position: static; width: 260px; }
#snsButton-clone li { display: inline-block; width: 80px; }
#snsButton-clone a { display: block; width: 43px; height: 40px; margin: 0 auto; white-space: nowrap; text-indent: 100%; background-image: url(/assets/images/icon_type_a.png); background-repeat: no-repeat; overflow: hidden; position: relative; text-decoration: none; }
#snsButton-clone a[href*='facebook.com'] { background-position: 0 -250px; }
#snsButton-clone a[href*='twitter.com'] { background-position: -49px -250px; }
#snsButton-clone a[href*='line.me'] { background-position: -150px -250px; }

/*Staff recruitment*/
.locStaffWanted { margin-top: 25px; padding: 10px; background: #B91E23; border-radius: 10px; }
.locStaffWanted dt { color: #fff; font-size: 128.5%; font-weight: bold; }
.locStaffWanted dd { margin-top: 5px; padding: 5px 10px; background: #fff; border-radius: 5px; position: relative; }
.locStaffWanted dd a { display: block; margin: 0 0 5px; }
.locStaffWanted dd:after { content: ""; position: absolute; right: 15px; bottom: 100%; width: 48px; height: 64px; background: url(/common/tmpl/images/staff002_a.png) no-repeat center top; background-size: 100% auto; }

@media (min-width: 801px) {
	/*telephone link*/
	#storeInfo .storeInfo_outline .loc .loc_tel a { color: inherit; text-decoration: none; pointer-events: none; }
}

@media (max-width: 800px) {
	/*game list*/
	#recommend_prize .no-data,
	#loc-gameList.matchList .no-data { text-align: left; }

	/*facilities icon*/
	#storeInfo .storeInfo_outline .facilities img[src*="images/am_icon"] { width: 16%; }

	/*snsButton clone (only in the [.setSNS]class)*/
	#snsButton-clone { display: block; }
}

@media (max-width: 640px) {
	/*main images*/
	#shopImage { margin-top: 1em; }
}

@media (max-width: 480px) {
	/*main images*/
	#photoList li { margin-left: 0.5vw; }
	#photoList { margin-left: -0.5vw; }

	/*facilities icon*/
	#storeInfo .storeInfo_outline .facilities img[src*="images/am_icon"] { width: 23%; }
}


/*--------------------
chara_shop Select language
--------------------*/
/* crosslanguage */
#common_page_header .header_nav_utility li {
	vertical-align: top;
}
.header_lang {
	margin: 0 auto;
	padding: 0;
}
.changeLanguage {
	position: relative;
	z-index: +1;
}
.changeLanguage .lang_btn {
	font-size: 100%;
	line-height: 28px;
	margin: 0 0 0 22px;
	padding: 0 15px 0 0;
	position: relative;
	cursor: pointer;
}
.changeLanguage .lang_btn:hover {
	opacity: 0.7;
}
.changeLanguage .lang_btn:before {
	content: "";
	width: 18px;
	height: 18px;
	margin: 5px 0 0;
	padding: 0;
	position: absolute;
	left: -22px;
	top: 0;
	opacity: 0.5;
	background: url(../images/icon_language.png) no-repeat center center/ contain;
}
.changeLanguage .lang_btn:after {
	content: "";
	width: 0;
	height: 0;
	margin: -3px 0 0;
	padding: 0;
	position: absolute;
	right: 0;
	top: 50%;
	border-style: solid;
	border-color: transparent;
	border-width: 7px 4px;
	border-top-color: #bbb;
}
.changeLanguage .lang_btn.active:after {
	margin-top: -11px;
	border-top-color: transparent;
	border-bottom-color: #bbb;
}
.changeLanguage .lang_menu {
	display: none;
	margin: 0;
	padding: 0;
	background: #fff;
	box-shadow: 0 0 0 1px #e8e8e8 inset, 4px 4px 0 0 rgba(0,0,0,0.1) !important;
}
.changeLanguage .lang_menu a,
.changeLanguage .lang_menu a:link {
	display: block !important;
	color: #666;
	margin: 0;
	padding: 10px 20px;
	position: relative;
	white-space: nowrap;
	line-height: 1.5;
}
.changeLanguage.spLang .lang_menu a,
.changeLanguage.spLang .lang_menu a:link {
	display: block !important;
	color: #666;
	margin: 0;
	padding: 10px 20px;
	position: relative;
}
.changeLanguage .lang_menu a:hover,
.changeLanguage .lang_menu a:active {
	background: #e8e8e8;
}
.changeLanguage .lang_menu a:hover:before,
.changeLanguage .lang_menu a:active:before {
	border-color: #ee4d4d;
	border-style: solid;
	border-width: 1px 1px 0 0;
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	margin: -4px 0 0;
	transform: rotate(45deg);
	vertical-align: top;
	position: absolute;
	left: 8px;
	top: 50%;
}

@media (max-width: 800px){
	.header_lang {
		min-width: auto;
		position: absolute;
		top: 38px;
		left: 0;
		right: 0;
	}
	.changeLanguage {
		position: absolute;
		top: -12px;
		right: 120px;
	}
	.changeLanguage .lang_btn {
		position: relative !important;
		top: 0 !important;
		width: 36px;
		height: 36px !important;
		font-size: 0 !important;
		background: #ddd;
		margin: 0;
		padding: 0;
		border-radius: 18px;
	}
	.changeLanguage .lang_btn:before {
		left: 8px !important;
		top: 1px !important;
	}
	.changeLanguage .lang_btn:after {
		right: 50% !important;
		margin: 0 -4px 0 0 !important;
		top: auto !important;
		bottom: 1px;
		border-top-color: #999 !important;
		border-width: 4px !important;
	}
	.changeLanguage .lang_btn.active:after {
		bottom: 5px;
		border-top-color: transparent !important;
		border-bottom-color: #999;
	}
	.changeLanguage .lang_menu {
		opacity: 1 !important;
		height: auto !important;
		position: absolute;
		right: 0;
	}
}



