@charset "UTF-8";

/*----------------------------------------
 1:全体
----------------------------------------*/
*,*:before,*:after{
	box-sizing: border-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	-o-box-sizing: content-box;
	-ms-box-sizing: content-box;
}
body {
	color: #020104;
	font-size: 1em;
	line-height: 1.2em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
}

@media (max-width: 768px) {
	body{
		font-size: 3vw;
	}
}
/*リンク*/

a {
	color: #020104;
	text-decoration: none;
}
a:visited {
	color: #020104;
}
a:hover {
	text-decoration:underline;
	color:#FF661E;
}
a:active {
	color: #020104;
}

/*画像*/
img {
	vertical-align: middle;
	-ms-interpolation-mode: bicubic;
	max-width: 100%;
}
@media (max-width: 768px) {
	img{
		width: 100%;
		max-width:100%;
	}
}

/*common layout*/
.container {
	*zoom: 1;
	margin: 0 auto;
    max-width: 1004px;
    width: 100%;
    min-width: 1004px;
}
header,
.mainvisual,
footer{
    min-width: 1004px;
}
@media (max-width: 768px) {
	.container {
		width: 96%;
		min-width: 96%;
		padding:0 2%; 
	}
	header,
	.mainvisual,
	footer{
		min-width: 100%;
	}
}
@-ms-viewport {
	width: device-width;
}
h1, h2, h3, h4, h5, p, ul, ol, li, dl, dt, dd {
	margin: 0;
	line-height: 1.2em;
}
ul, ol {
	padding: 0;
}

/*----------------------------------------
 ヘッダー
----------------------------------------*/

header{
	width:100%;
	background:#221713;
	color:#fff;
}
header .container{
	position: relative;
}
header .container:after{
  content: "";
  display: block;
  clear: both;
}
.logo{
	float: left;
	width: 352px;
}
nav.gnav {
	float: right;
	width:auto;
	padding-top:40px;
	padding-bottom:20px;
}
ul.gnav_list{
	list-style: none;
	font-size: 0;
}
li.gnav_item {
	font-size: 0.9rem;
	display: inline-block;
	padding-right: 1.8em;
}
li.gnav_item:last-child{
	padding-right: 0;
}
li.gnav_item a,
li.gnav_item a:visited{
	color: #fff;
}
li.gnav_item.-current,
li.gnav_item.-current a,
li.gnav_item a:hover{
	color:#FF661E;
}

@media (max-width: 768px) {
	.logo{
		float: none !important;
		width:50%;
		margin: 0 auto;
	}
	nav.gnav {
		float: none;
		text-align: center;
		margin: 0 auto;
		padding-top: 1em;
		padding-bottom: 1em;
	}
	li.gnav_item {
		padding-top: 0.5em;
		padding-right: 1.5em;
	}
}
/*----------------------------------------
メイン 
----------------------------------------*/
.mainvisual{
	text-align: center;
}
.mainvisual img{
	width: 100%;
}
.top_description_content{
	padding-top: 1em;
	padding-bottom:1em;
}
.second_description_content{
	padding-top: 1em;
	padding-bottom:1em;
}
h1{
	font-size: 1.8em;
}
h1:first-child{
	padding-top: 0;
}
.top_description_content h1,
.second_description_content h1{
	background:#FF661E;
    margin: 0 calc(50% - 50vw) 0.5em;
	padding:0.5em calc(50vw - 50%);
	color:#fff;
}

@media (min-width: 768px) and (max-width: 1004px) {
	.top_description_content h1,
	.second_description_content h1{
		background:#FF661E;
		margin: 0 0 0.5em;
		padding:0.5em 0;
		color:#fff;
	}
}

h2{
	font-size: 1.2em;
	font-weight: normal;
}
.top_description_content h2,
.second_description_content h2{
	padding-bottom:1em
}

.second_description_content h2.date{
	color:#FF661E;
}
p{
	line-height: 1.5em;
}

@media (max-width: 768px) {
	.top_description_content,
	.second_description_content{
		padding-top: 1em;
	}
}

/*イベント*/
.event_item{
	margin-bottom:1em;
	border: 1px solid #000;
	display: block;
	position: relative;
}
.event_item:after{
  content: "";
  display: block;
  clear: both;
}
.event_item .event_thumb {
    overflow: hidden;
    width: 200px;
    height: 200px;
    position: relative;
	float: left;
	display: block;
}
.event_item .event_thumb img{
	position: absolute;
	top:50%; /* または200px(heightの半分) */
	left: 50%; /* この値を変更すると左右に位置をずらせる */
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	max-width: initial; /* サイズ指定をリセット！ */
	width: auto;
	height: 100%;
}

.event_item .event_detail {
	float: right;
	width: calc(100% - 200px);
	box-sizing: border-box;
}
.event_item .event_detail,
.login_description{
	padding:1.4em 1.3em;
	position:relative;
}
@media (max-width: 768px) {
	.event_item{
		margin-bottom:3em;
	}
	.event_item .event_thumb{
		width: 100%;
		float: none;
	}
	.event_item .event_thumb img{
		width: 100%;
		height: auto;
	}
	.event_item .event_detail{
		width: 100%;
		float: none;
	}
}
@media (max-width: 768px) {
	.event_item{
		margin-bottom:3em;
	}
	.login_description{
		padding:1.5em 2em;
		margin-bottom:3em;
	}
}
.event_date{
	padding-bottom: 1em;
	color:#FF661E;
}
.event_item h3.event_title{
	font-size:1.5em;
	padding-bottom: 0.7em;
}
.event_linkarea a{
	display: block;
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent:-999px;
	background/*¥**/:#fff¥9; /*IE対応*/
	filter:alpha(opacity=0);
}
.event_linkarea a:hover{
	background: #000;
	opacity: 0.1;
}

/*ログイン情報*/
.login_description{
	border: 1px solid #000;
	margin-bottom: 1em;
}
.login_account{
	padding-top:1em;
	padding-left: 1em;
}

/*会員限定*/
.member-only{
	background:#f00;
	padding:0.5em 1em;
	margin-bottom:1em;
	color:#fff;
	display: inline-block;
}

/*----------------------------------------
 フッター
----------------------------------------*/
footer{
	margin-top: 70px;
	background: #221713;
	color:#fff;
}
.footer_copyright{
	padding:1.5em 0;
	font-size:0.8em;
}
/*----------------------------------------
 フォトギャラリー
----------------------------------------*/
ul#lightgallery{
	list-style: none;
	font-size: 0;
	text-align: center;
}
ul#lightgallery li{
	font-size: 1rem;
	display: inline-block;
	padding: 0.2% 0.2% 0.2% 0;
	width:19.8%;
}

ul#lightgallery li:nth-child(5n){
	padding-right: 0;
}

@media (max-width: 768px) {
	ul#lightgallery{
		text-align: left;
	}
	ul#lightgallery li{
		padding: 0.5vw 1% 0.5vw 0;
		width:49%;
	}
}