@charset "utf-8";
/* **************************************************************** *
 * @desc@ GALLERY
 * @edit@ 2019/10/08
 * **************************************************************** */

/* ================================================================ *
 * @desc@ カテゴリナビ
 * ================================================================ */
.ctgNav{
	margin:0 auto 60px;
	text-align:center;
}
.ctgNav li{
	display:inline-block;
	padding:0 10px 20px;
	width:140px;
	vertical-align:middle;
}
.ctgNav li>a,.ctgNav li>span{
	overflow:hidden;
	outline:none;
	display:block;
	border-width:1px;
	border-style:solid;
	height:38px;
	background-color:#fff;
	background-position:center;
	background-repeat:no-repeat;
	font-size:1px;
	line-height:0;
	text-indent:-9999px;
}

/* カテゴリ別カラー */
.ctgNav li.movie>a{
	border-color:#8b272b;
	background-image:url(../img/bt_movie_def.png);
}
.ctgNav li.movie>a:hover,.ctgNav li.movie>span{
	border-color:#8b272b;
	background-color:#8b272b;
	background-image:url(../img/bt_movie_cur.png);
}
.ctgNav li.special>a{
	border-color:#3b8e8e;
	background-image:url(../img/bt_special_def.png);
}
.ctgNav li.special>a:hover,.ctgNav li.special>span{
	border-color:#3b8e8e;
	background-color:#3b8e8e;
	background-image:url(../img/bt_special_cur.png);
}
.ctgNav li.present>a{
	border-color:#625f9e;
	background-image:url(../img/bt_present_def.png);
}
.ctgNav li.present>a:hover,.ctgNav li.present>span{
	border-color:#625f9e;
	background-color:#625f9e;
	background-image:url(../img/bt_present_cur.png);
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
}
/* ================================================================ *
 * @desc@ カテゴリボックス
 * ================================================================ */
.ctgBox{
	box-sizing:border-box;
	position:relative;
	margin:0 auto 80px;
	border:1px solid #b5b5b6;
	padding:30px 20px 10px;
	width:980px;
	min-height:350px;
	background:#fff;
	color:#333;
	font-size:1.6rem;
	line-height:1.6em;
	text-align:left;
}
/* Coming Soon... */
.ctgBox.soon{
	display:-webkit-box;
	display:-webkit-flex;
	-webkit-flex-flow:column wrap;
	-webkit-justify-content:center;
	-webkit-align-items:center;

	display:flex;
	flex-flow:column wrap;
	justify-content:center;
	align-items:center;
}
.ctgBox:before{
	content:'';
	display:block;
	position:absolute;
	left:-1px;
	top:-51px;
	z-index:10000;
	background-color:transparent;
	background-position:left top;
	background-repeat:no-repeat;
	width:220px;
	height:50px;
}
.ctgBox:after{
	content:'';
	position:absolute;
	left:-1px;
	top:-31px;
	z-index:9900;
	padding:0 1px;
	width:100%;
	height:30px;
	font-size:1px;
	line-height:1.0em;
}
.ctgBox img{
	line-height:0;
	vertical-align:bottom;
}
/* リード */
.ctgBox .lead{
	margin:0 20px 30px;
	border-bottom:1px solid #b5b5b6;
	padding:0 10px 10px;
	font-size:1.4rem;
	line-height:1.4em;
}
/* アイテムリスト */
.ctgBox ul.items{
	display:-webkit-box;
	display:-webkit-flex;
	-webkit-flex-flow:row wrap;
	-webkit-justify-content:space-between;

	display:flex;
	flex-flow:row wrap;
	justify-content:space-between;
	width:100%;
}
.ctgBox ul.items>li{
	-webkit-flex-grow:0;
	-webkit-flex-shrink:1;

	flex-grow:0;
	flex-shrink:1;
}
.ctgBox ul.items>li.none{
	opacity:0;
	-webkit-flex-basis:auto;
	flex-basis:auto;
}
/* 注釈 */
.ctgBox .note{
	margin:1em 0 0;
	font-size:0.9em;
	line-height:1.4em;
}
.ctgBox .note>li{
	margin:0.5em 0 0 1em;
	text-indent:-1em;
}
/* 小セクション */
.ctgBox section{
	margin:30px 0 0;
	border-top:1px solid #ccc;
	padding-top:30px;
	font-size:0.8em;
	line-height:1.8em;
}
.ctgBox section:first-child{
	margin-top:0;
	border-top:none;
	padding-top:0;
}
.ctgBox section>h1{
	overflow:hidden;
	margin:0 0 30px;
	color:#fff;
	font-size:2.0rem;
	line-height:1.1em;
	font-weight:bold;
	text-align:center;
}
.ctgBox section>h1>span{
	display:inline-block;
	position:relative;
	z-index:10;
	padding:8px 10px 6px;
	min-width:12em;
	background:#000;
	vertical-align:middle;
}
.ctgBox section>h1>span:before,.ctgBox section>h1>span:after{
	content:'';
	position:absolute;
	top:0;
	z-index:-1;
	width:200px;
	height:100%;
	background:#000;
	transform:rotate(-45deg);
}
.ctgBox section>h1>span:before{
	left:-100px;
}
.ctgBox section>h1>span:after{
	right:-100px;
}
/* カテゴリ別カラー */
.ctgBox.movie:before{
	background-image:url(../img/ctg_movie.png);
}
.ctgBox.movie:after{
	background-color:#8b272b;
}
.ctgBox.movie .body>section>h1{
	background-color:#8b272b;
}
.ctgBox.special:before{
	background-image:url(../img/ctg_special.png);
}
.ctgBox.special:after{
	background-color:#3b8e8e;
}
.ctgBox.special .body>section>h1{
	background-color:#3b8e8e;
}
.ctgBox.present:before{
	background-image:url(../img/ctg_present.png);
}
.ctgBox.present:after{
	background-color:#625f9e;
}
.ctgBox.present .body>section>h1{
	background-color:#625f9e;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
	.ctgBox{
		width:auto;
	}
	.ctgBox section>h1>span{
		min-width:8em;
	}
}
/* ================================================================ *
 * @desc@ カテゴリボックス：MOVIE
 * ================================================================ */
.ctgBox.movie ul.items{
}
.ctgBox.movie ul.items>li{
	-webkit-flex-basis:448px;
	flex-basis:448px;
	margin:20px 0;
}
.ctgBox.movie ul.items a{
	display:block;
}
.ctgBox.movie ul.items a>img:last-child{
	margin-top:18px;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
}
/* ================================================================ *
 * @desc@ カテゴリボックス：SPECIAL
 * ================================================================ */
.ctgBox.special ul.items{
}
.ctgBox.special ul.items.illust>li{
	-webkit-flex-basis:302px;
	flex-basis:302px;
	margin:20px 0 10px;
	padding:0;
}
.ctgBox.special ul.items.illust>li>*{
	box-sizing:border-box;

	display:-webkit-box;
	display:-webkit-flex;
	-webkit-flex-flow:column nowrap;
	-webkit-justify-content:center;
	-webkit-align-items:center;

	display:flex;
	flex-flow:column wrap;
	justify-content:center;
	align-items:center;

	margin:0;
	border:1px solid #b5b5b6;
	padding:0;
	height:100%;
	text-align:center;
}
.ctgBox.special ul.items.illust>li>*>span{
	width:100%;
}
.ctgBox.special ul .pic{
	flex:0 1 372px;
	background:#fff;
}
.ctgBox.special ul .pic img{
	line-height:0;
	vertical-align:bottom;
}
.ctgBox.special ul .sub{
	flex:0 1 auto;
	padding:5px 0 4px;
	background:#b5b5b6;
	color:#fff;
	font-size:1.6rem;
	line-height:1.2em;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
}
/* ================================================================ *
 * @desc@ カテゴリボックス：PRESENT
 * ================================================================ */
.ctgBox.present ul.items{
}
/* アイコン */
.ctgBox.present ul.items.icon>li{
	-webkit-flex-basis:160px;
	flex-basis:160px;
	margin:20px 0 10px;
	text-align:center;
}
.ctgBox.present ul a{
	display:block;
}
/* 壁紙 */
.ctgBox.present ul.items.wallpaper>li{
	-webkit-flex-basis:160px;
	flex-basis:160px;
	margin:20px 0 10px;
	text-align:center;
}
.ctgBox.present ul.items.wallpaper>li div{
	margin-bottom:20px;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
}
