@charset "UTF-8";

/* トップページ
======================================== */
.slide {
	background: #fff;
	background: -moz-linear-gradient(top,  #fff 60%, #fff 60%, #ccc 72%, #eee 75%, #fff 85%);
	background: -webkit-linear-gradient(top,  #fff 60%, #fff 60%, #ccc 72%, #eee 75%, #fff 85%);
	background: linear-gradient(to bottom,  #fff 60%, #fff 60%, #ccc 72%, #eee 75%, #fff 85%);
}
.slideshow {
	width: 203px;
	height: 700px;
	position: relative;
	margin: 54px auto 10px;
	overflow: hidden;
}
.slideshow li.none {
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 719px) {
	.slideshow {
		width: 148px;
		height: 510px;
	}
}

/* コンテンツ
======================================== */
section dl + dl {
	margin-top: 20px;
}
section dl dt {
	font-weight: 600;
	margin-bottom: 3px;
}
section .thumb a {
	display: block;
}
.about .thumb {
	margin-top: 5px;
}
.links .thumb {
	float: right;
	margin: 30px 0 0 10px;
}
.manga .thumb,
.illustration .thumb {
	width: 75px;
	height: 75px;
	float: left;
	margin-right: 10px;
}
.alert {
	font-size: 12px;
	color: #b22222;
	border-top: 1px solid #999;
	margin-top: 10px;
	padding-top: 10px;
}
.about .fa.fa-th-large {
	color: #4682b4;
}
@media screen and (max-width: 719px) {
	.links .thumb {
		float: none;
		margin: 0;
	}
}

/* メディアリスト
======================================== */
.gallery {
	background: #fff;
	margin: 0 -10px -10px 0;
}
.gallery ul { 
	list-style: none;
}
.gallery ul:after {
	content: ".";
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
}
.gallery ul li {
	width: 20%;
	float: left;
}
.gallery ul li a {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	position: relative;
	margin: 0 10px 10px 0;
}
.illustration_itadakimono .gallery ul li a {
	background-position: center;
	background-size: 155%;
}
.gallery ul li img {
	display: block;
}
.manga .gallery ul li img {
	background: rgba(0, 0, 0, .5);
}
.gallery ul li span {
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	text-shadow: 1px 1px 2px #000, 0 0 1em #000, 0 0 0.2em #000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media screen and (max-width: 719px) {
	.gallery ul li {
		width: 33.33333333333333%;
	}
}

/* モーダルコンテンツ
======================================== */
body.ps-active,
body.ps-building,
div.ps-active,
div.ps-building {
	background: rgba(255, 255, 255, 1);
	overflow: hidden;
}
body.ps-active *,
div.ps-active * {
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
	display: none;
}
body.ps-active *:focus,
div.ps-active *:focus {
	outline: 0; 
}
div.ps-document-overlay {
	background: #fff;
}
div.ps-uilayer {
	background: #000;
	cursor: pointer;
}
div.ps-zoom-pan-rotate {
	background: #000;
}
div.ps-zoom-pan-rotate * {
	display: block;
}
div.ps-carousel-item-loading {
	background: url(../images/media/loader.gif) no-repeat center center;
}
div.ps-carousel-item-error { 
	background: url(../images/media/error.gif) no-repeat center center;
}
div.ps-caption {
	color: #fff;
	font-size: 13px;
	text-align: center;
	background: rgba(0,0,0,.8);
}
div.ps-caption * {
	display: inline;
}
div.ps-caption-bottom {
	min-height: 44px;
	border-bottom: none;
}
div.ps-caption-content {
	display: block;
	padding: 13px;
}
div.ps-toolbar {
	height: 44px;
	color: #fff;
	font-size: 13px;
	text-align: center;
	background: rgba(0,0,0,.8);
	display: table;
	table-layout: fixed;
}
div.ps-toolbar * {
	display: block;
}
div.ps-toolbar-top {
	border-top: none;
}
div.ps-toolbar-close,
div.ps-toolbar-previous,
div.ps-toolbar-next,
div.ps-toolbar-play {
	width: 10%;
	display: inline-block;
	vertical-align: middle;
	pointer-events: none;
}
div.ps-toolbar-play {
	width: 0;
}
div.ps-toolbar div div.ps-toolbar-content {
	width: 44px;
	height: 44px;
	margin: 0 auto 0;
	background-image: url(../images/media/icons.png);
	background-repeat: no-repeat;
	pointer-events: auto;
	cursor: pointer;
}
div.ps-toolbar-close div.ps-toolbar-content {
	background-position: 0 0;
}
div.ps-toolbar-close:hover div.ps-toolbar-content {
	background-position: 0 -44px;
}
div.ps-toolbar-previous div.ps-toolbar-content {
	background-position: -44px 0;
}
div.ps-toolbar-previous:hover div.ps-toolbar-content {
	background-position: -44px -44px;
}
div.ps-toolbar-previous-disabled div.ps-toolbar-content {
	background-position: -44px -44px;
}
div.ps-toolbar-previous-disabled:hover div.ps-toolbar-content {
	background-position: -44px -88px;
}
div.ps-toolbar-next div.ps-toolbar-content {
	background-position: -132px 0;
}
div.ps-toolbar-next:hover div.ps-toolbar-content {
	background-position: -132px -44px;
}
div.ps-toolbar-next-disabled div.ps-toolbar-content {
	background-position: -132px -44px;
}
div.ps-toolbar-next-disabled:hover div.ps-toolbar-content {
	background-position: -132px -88px;
}
div.ps-toolbar-play div.ps-toolbar-content {
	background-position: -88px 0;
	display: none;
}
div.ps-toolbar-play:hover div.ps-toolbar-content {
	background-position: -88px -44px;
}
div.ps-carousel-item img { /* js側で解除したとポジションの再設定 */
	max-width: 460px;
	max-height: 650px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
@media screen and (max-width: 719px) {
	div.ps-toolbar-close,
	div.ps-toolbar-previous,
	div.ps-toolbar-next,
	div.ps-toolbar-play {
		width: 20%;
	}
	div.ps-toolbar-play {
		width: 0;
	}
	div.ps-toolbar-close:hover div.ps-toolbar-content {
		background-position: 0 0;
	}
	div.ps-toolbar-previous:hover div.ps-toolbar-content {
		background-position: -44px 0;
	}
	div.ps-toolbar-previous-disabled:hover div.ps-toolbar-content {
		background-position: -44px -44px;
	}
	div.ps-toolbar-next:hover div.ps-toolbar-content {
		background-position: -132px 0;
	}
	div.ps-toolbar-next-disabled:hover div.ps-toolbar-content {
		background-position: -132px -44px;
	}
	div.ps-toolbar-play:hover div.ps-toolbar-content {
		background-position: -88px 0;
	}
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (-moz-min-device-pixel-ratio: 1.5),
	   only screen and (min-resolution: 240dpi)
{
	div.ps-toolbar div div.ps-toolbar-content
	{
		-moz-background-size: 176px 88px;
		-o-background-size: 176px 88px;
		-webkit-background-size: 176px 88px;
		background-size: 176px 88px;
		background-image: url(../images/media/icons@2x.png);
	}
}

/* アダルトコンテンツアラート
======================================== */
.ofh {
	overflow: hidden;
}
#opening_out,
.modal {
	width: 100%;
	height: 100%;
	color: #333;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #fff;
	z-index: 1000;
	overflow-y: auto;
	opacity: .95;
	display: none;
}
#opening {
	max-width: 1000px;
	height: auto;
	margin: auto;
	padding: 20px;
}
.mymsg img {
	margin-bottom: 20px;
}
.mymsg p {
	font-size: 16px;
}
.mymsg p + p {
	margin-top: 5px;
}
.btn_out {
	font-size: 0;
	margin: 20px 0;
}
.btn {
	width: 49%;
	background: #e27b38;
	display: inline-block;
	vertical-align: top;
}
.btn + .btn {
	background: #ccc;
	margin-left: 2%;
}
.btn button {
	width: 100%;
	color: #fff;
	font-size: 18px;	
	line-height: 100%;
	text-align: center;
	text-decoration: none;
	border: none;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	display: block;
	padding: 15px 10px;
	cursor: pointer;
}
@media screen and (max-width: 796px) {
	#opening {
		padding: 10px;
	}
	.mymsg p {
		font-size: 14px;
	}
	.btn button {
		font-size: 16px;
	}
}

/* お問い合わせ
======================================== */
.contoct {
	font-size: 14px;
}
.contoct table {
	width: 100%;
	margin: 0 auto;
}
.contoct th,
.contoct td {
	font-weight: normal;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #f0f0f0;
	padding: 15px;
}
.contoct th {
	width: 200px;
	background: #525252;
	color: #fff;
}
.contoct td {
	background: #f0f0f0;
}
.contoct .last th,
.contoct .last td {
	border-bottom: none;
}
.contoct td input[type="text"],
.contoct td input[type="email"],
.contoct td textarea {
	width: 100%;
	font-size: 14px;
	border: 1px solid #525252;
}
.contoct td input[type="text"],
.contoct td input[type="email"] {
	height: 34px;
	line-height: 34px;
	padding: 0 5px;
}
.contoct td textarea {
	height: 300px;
	line-height: 18px;
	padding: 5px;
}
.contoct td input[type="text"]:focus,
.contoct td input[type="email"]:focus,
.contoct td textarea:focus {
	border: 1px solid #f08080;
}
.contoct span {
	height: 18px;
	color: #f08080;
	font-size: 18px;
	font-weight: 600;
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 3px;
}
.contoct span.right {
	margin: 0 3px 0 0;
}
.contoct p.top {
	text-align: left;
	margin-bottom: 5px;
}
.contoct p.bottom {
	display: table;
	margin: 10px auto 0;
}
.contoct .button {
	width: 214px;
	margin: 20px auto 0;
}
.contoct input.input_btn {
	width: 97px;
	height: 34px;
	font-family: FontAwesome;
	color: #fff;
	border: none;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	display: block;
	float: left;
	cursor: pointer;
}
.contoct input#btn_submit {
	background: #46ad72;
	margin-right: 20px;
}
.contoct input#btn_reset {
	background: #fb6964;
}
.contoct input.input_btn:hover {
	opacity: .8;
}
@media screen and (max-width: 719px) {
	.contoct {
		font-size: 12px;
	}
	.contoct th,
	.contoct td {
		display: block;
		border-bottom: none;
		padding: 10px;
	}
	.contoct th {
		width: 100%;
	}
	.contoct td {
		background: transparent;
		padding: 10px 0;
	}
	.contoct .last td {
		padding-bottom: 0;
	}
	.contoct td textarea {
		height: 100px;
	}
	.contoct p.bottom {
		margin: 5px auto 0;
	}
	.contoct .button {
		margin: 15px auto 0;
	}
	.contoct input.input_btn:hover {
		opacity: 1;
	}
}