@charset "UTF-8";
/* CSS Document */

/*===================================
	全体のスタイリング
====================================*/
#wrapper {
}

.works_main_imege {
  /* 縦横中央揃えの記述は以下の3行 */
	display: flex;
	justify-content: center;
	align-items: center;
	
	height: 400px;
	background-image: url(../img/exhibition_image.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}


/*===================================
	exhibitions_list 内
====================================*/

#exhibitions_list .menu_title {
	font-family: sans-serif;
	font-size: 170%;
	margin: 80px 0px 50px 390px;
}

.last_spece {
	margin: 0px 0px 30px 0px;
	}


/*===================================
	each_work_wrap内
====================================*/
.each_work_wrap ul { 
	display: flex;
	flex-wrap: wrap;
	margin-left: 390px;
}
.each_work {
	width: 430px;
	margin: 0px 40px 75px 0px;
}

.work_photo {
  height: 225px;
  overflow: hidden;
	/*　 ↑↑↑ 「hoverで写真拡大」させるためのサイズ固定  */
}

.work_photo img{
	transition-duration: 0.3s;
	/*　 ↑↑↑ 「hoverで写真拡大」の秒数  */
}

.work_photo img:hover{
  transform: scale(1.1);
  transition-duration: 0.3s;
	/*　 ↑↑↑ 「hoverで写真拡大」の拡大サイズと秒数  */
}

.work_title {
	background-color: rgba(230, 230, 230, 1);
}

.work_title p{
	font-size: 110%;
	font-family: sans-serif;
	line-height: 1.2em;
	letter-spacing: 0.03em;
	text-align: center;
	padding: 10px;
}




/* モーダル内のCSS ーーーーーーーーーーーーーーーー*/

.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 2;

}
.modal__bg{
    background: rgba(192,192,192,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 20px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 80%;
	height: 85%;
	overflow: scroll;
}
.modal__content img{
	max-width: 100%;
    height: auto;
	margin-bottom: 9%;
}
.tate{
	width: 75%;
}

.modal__content p {
	margin: 30px 0px 40px 0px;
	font-family: sans-serif;
	line-height: 1.6em;
}
.work_text {
	font-family: sans-serif;
	line-height: 1.6em;
	margin-bottom: 30px;
}
.work_text_cap {
	font-family: sans-serif;
	line-height: 1.6em;
	font-size: 75%;
}

.little_spece{
	margin: 0px 0px 40px 0px;
}

.txt_flex {
	display: flex;
}

.work_text_block{
	margin-right: 80px;
}

.js-modal-close p {
	font-size: 120%;
	font-family: serif;
	color: #800000;
	line-height: 1.2em;
	letter-spacing: 0.05em;
	display: inline-block;
}
.js-modal-close p:hover {
	color: #CD5C5C;
}

/* ↓PC時（幅780px以上）では、モーダル内の写真・文の余白を大きくする*/
@media not all and (max-width: 780px){
.modal__content {
	padding: 30px 120px 30px 120px;
	}
}
	
/* モーダル内のCSS　ここまで ーーーーーーーーーーーーー*/



/*「 #exhibitions_list 」のスマホ対応 ----------------  */

@media not all and (min-width: 780px){
.works_main_imege {
	height: 300px;
	}
	
#exhibitions_list .menu_title {
	font-size: 130%;
	margin: 40px 0px 50px 0px;
	text-align: center;
	}

	
.each_work_wrap ul { 
	margin-left: 0px;
	justify-content: center;
	}
	
.each_work{
	margin: 0px 10px 30px 10px;
	width: 90%;
	}

.work_photo img{
	width: 100%;
	}
	
.work_photo{
	height: 140px;
}
	/*=↑SP時に写真と見出しが離れるため 225px → 140pxに =============*/

.work_title {
	font-size: 70%;
	}

}





/*===================================
	footer
====================================*/

footer{
	position:relative;
	background-color: black;
	height: 50px;
	z-index: 1;
}

footer p{
	font-family: sans-serif;
	color: white;
	font-size: 70%;
	text-align: center;
	padding-top: 20px;
	letter-spacing: 0.1em;
}




/*===================================
	header内
====================================*/

#header{
/*	width: 360px;*/
	width: 340px;
	height: 100%;
	position:fixed;
	top:0px;
	left:0px;
	background-color: rgba(135, 130, 130, 0.8);
	/*   ？？　背景に対してグレーを載せにならないか？　
	ならないなら写真＋グレー帯のバックJPEGを作る？
	その場合、レスポンシブにすることがかなり面倒になる*/
}

#header .main_title p {
	color: white;
	font-size: 100%;
	padding: 70px 0px 8px 48px;
	font-family: 'Hina Mincho', serif;
	letter-spacing: 0.1em;
}

#header .main_title h1 a {
	font-family: 'Heebo', sans-serif;
	color: white;
	font-size: 200%;
	padding-left: 48px;
	letter-spacing: 0.05em;
}

#header nav {
	font-family: sans-serif;
	padding-top: 50px;
}

#header nav li a{
	color: white;
	font-size: 110%;
}

#header nav li:nth-child(2) a {
	color: black;

}


#header nav li{
	padding-left: 55px;
	padding-top: 20px;
	letter-spacing: 0.1em;
}

#header .sns_mark {
	padding-left: 45px;
	padding-top: 200px;
}

#header .sns_mark img {
	width: 27px;
	height: 27px;
}

#header .sns_mark li {
	padding: 10px;
}

/* ↓ ハンバーガー用のチェックボックスをPCでは非表示*/
#header input {
	display: none;
}

#menu-icon {
	display: none;
}
	
/* ↓ navのホバー時にボールド指示*/
/*
#header .trans-BOLD:hover {
	font-weight: bold;
}
*/

/* ↓ SNSマークのホバー時に少し大きくなる*/
#header .largement:hover img {
	width: 32px;
	height: 32px;
}


/*「 header 」のスマホ対応 ----------------  */
@media not all and (min-width: 780px){
#header{
	width: 100%;
	height: auto;
	}

#header .main_title p {
	padding: 20px 0px 8px 20px;
	}

#header .main_title h1 a {
	font-size: 150%;
	padding-left: 20px;
	}
#header .main_title h1 {
	padding-bottom: 15px;
	}
#header nav {
	padding-top: 20px;
	}
	
#header nav li{
	padding-left: 30px;
	}

#header .sns_mark {
	padding-left: 20px;
	padding-top: 30px;
	padding-bottom: 20px;
	}

#header .sns_mark ul {
	display: flex;
	}
	
	
	/* ↓ ハンバーガーメニューの記述=======================================*/
    #ham-menu {
        background-color: #808080; /*メニュー背景色*/
        border-radius: 0 0 0 10px; /*左下角丸*/
		box-sizing: border-box;
/*        height: 50%;*/
		/*↑ heightは、スマホ横位置画角などの場合、スタイルが崩れるから指定しない*/
        padding: 0px; /*メニュー内左右上下余白*/
        position: fixed;
        right: -200px; /*メニュー横幅 width と合わせる*/
		width: 200px; /*メニュー横幅*/
        top: 0;
        transition: transform 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
        z-index: 1000;
    }

    #menu-background {
		display: block;
/*        background-color: rgba(255,255,255,1);*/
/*        height: 100%;*/
        opacity: 0;
        position: fixed;
        right: 0;
        top: 0;
        transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
        width: 100%;
        z-index: -1;
    }

    #menu-icon {
        background-color: rgba(0,0,0,0); /*アイコン部分背景色*/
        color: #FFFFFF; /*アイコン（フォント）色*/
        cursor: pointer;
        display: block;
        font-size: 50px; /*アイコン（フォント）サイズ*/
        height: 50px; /*アイコン縦高さ*/
        line-height: 50px; /*縦位置中央化*/
        position: fixed;
        right: 0;
        text-align: center;
        top: 0;
        width: 50px; /*アイコン横幅*/
        transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
        z-index: 1000;
    }

    #menu-cb {
        display: none; /*チェックボックス（cb）本体は消しておく*/
    }

    #menu-cb:checked ~ #ham-menu,
    #menu-cb:checked ~ #menu-icon {
        transform: translate(-200px); /*メニュー本体横幅 width と合わせる*/
    }

    #menu-cb:checked ~ #menu-background {
        opacity: 0.5;
        z-index: 999;
    }
	

	/* ↑ハンバーガーメニューの記述　ここまで=======================================*/
	
	
}
/*「 header 」のスマホ対応　ここまで ----------------  */





/* ↓ navのホバー時に下線指示*/
#header nav a {
  display: inline-block;
  position: relative;
  overflow: hidden;
}

#header nav a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transform: translate(-100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}

#header nav a:hover:after {
  transform: translate(0, 0);
}

#header nav li:nth-child(2) a:after {
	background-color: transparent;
/*  ↑ 4つ目のホバー時に,下線を無効にする background-color: transparent*/
}
/* navの下線--ここまで*/
