@charset "utf-8";

/* Windows8対応 */
@-ms-viewport{width: device-width;}

html {
	font-family: "Meiryo", "メイリオ", "ヒラギノ", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Helvetica;
	font-size: 14px;
	line-height: 1;
	color: #484848;
	overflow-y: auto !important;
}

html,
body {
	height: 100%;
}

body.for_agecheck {
	overflow: hidden;
}

button {
	margin: 0; /* iOS */
	padding: 0;
	border: none;
	background: none;
	font: inherit;
	cursor: pointer;
}

button:disabled {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

.l-widgetWrapper {
	display: table;
	width: 100%;
	border: 2px solid #e2e2e2;
	box-sizing: border-box;
}

/*	Header
----------------------------------------- */

.l-widgetHeader {
	height: 47px;
	border: 1px solid #fff;
	border-bottom: none;
	box-sizing: border-box;
}

.l-widgetHeader > div {
	display: table;
	width: 100%;
	height: 100%;
	border: 1px solid #ebebeb;
	box-sizing: border-box;
	box-shadow: 0 0 0 1px #fff inset;
	background-color: #f7f7f7;
}

.l-widgetHeader .logo {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

/*	Footer
----------------------------------------- */

.l-widgetFooter {
	border: 1px solid #fff;
	border-top: none;
	background: -webkit-linear-gradient(top,  #454545 0%,#323232 100%);
	background: -ms-linear-gradient(top,  #454545 0%,#323232 100%);
	background: linear-gradient(to bottom,  #454545 0%,#323232 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#454545', endColorstr='#323232',GradientType=0 );
}

.widgetFooter-lower {
	padding: 12px 7px;
	border: 1px solid #323232;
}

.l-widgetFooter .footerLogo {
	text-align: center;
}

/*	年齢認証
----------------------------------------- */

.ageCheckLayer {
	display: none;
	position: absolute;
	z-index: 10000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
}

.f-ageCheck {
	display: none;
	position: fixed;
	z-index: 10001;
}

.f-ageCheck .ageCheckInner {
	text-align: center;
}

.f-ageCheck .text {
	padding: 10px 0 40px;
	font-size: 16px;
	color: #fff;
}

.f-ageCheck .buttonWrap {
	font-size: 0;
}

.f-ageCheck button {
	display: inline-block;
	background: #fff;
	vertical-align: top;
	cursor: pointer;
}

.f-ageCheck .button-yes {
	margin-right: 12px;
}

.f-ageCheck button:hover img {
	opacity: 0.7;
}

/* ※18歳未満の方は閲覧できません */
.f-ageCheck .attention {
	color: #fff;
}

/*	parts
----------------------------------------- */

.l-widgetContainer .anchorBtn {
	display: block;
	margin: auto;
}

.l-widgetContainer .anchorBtn:hover {
	opacity: 0.7;
}

.l-widgetWrapper .p-imgWrap {
	display: block;
	position: relative;
	margin: auto;
}

.l-widgetWrapper .p-imgWrap:hover {
	opacity: 0.7;
}

.l-widgetWrapper .p-imgWrap img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.l-widgetWrapper .p-selfpost {
	right: inherit !important;
}

.l-widgetWrapper .p-ellipsis {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}