/* CSS Document */


nav.global ul li.archives a img,
nav.global ul li.archives a span {opacity: 1;}


main section {
	padding: 140px 0 0;
}
#archives{
	/*max-width: 900px;*/
	min-height: calc(100vh - 40px);
	margin: auto;
}
#archives h1{
	margin-bottom: 40px;
}
#archives .lead{
	max-width: 670px;
}

#archives #search{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 10px;
  padding: 20px;
  background: rgba(255, 250, 235,.94);
	position: sticky;
	z-index: 9;
	top: 80px;
	right: 0;
}
#archives #search h2{
  font-size: 110%;
	color: #fdbe00;
}
#archives #search ul{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-left: 40px;
}
#archives #search ul li{
}
#archives #search ul li input[type="radio"] {
  display: none;
}
#archives #search ul li label{
  display: flex;
  align-items: center;
	color: #999;
}
#archives #search ul li label:hover{
  cursor: pointer;
	color: #333;
}
#archives #search ul li label::before{
  content: url("/module/img/checkbox_off.svg");
  width: 23px;
  height: 23px;
  margin-right: 5px;
	background: #fff;
	border-radius: 10px;
}
#archives #search ul li input[type="radio"]:checked ~ label{
  color: #333;
	font-weight: 500;
}
#archives #search ul li input[type="radio"]:checked ~ label::before,
#archives #search ul li input[type="radio"] ~ label.current::before{
  content: url("/module/img/checkbox_on.svg");
}

#archives #search ul li .child{
  flex-direction: column;
	gap: 0;
	margin-left: 3px;
	position: relative;
	top: 7px;
	font-size: 85%;
	height: 0;
	overflow: hidden;
}
#archives #search label.genreMenuBtn::before {
	content: '▼';
	color: #fdd000;
	font-size: 80%;
	text-align: center;
	width: 20px;
	display: block;
	cursor: pointer;
}
#archives #search input {
	display: none;
}
#archives #search input:checked ~ .genreMenuBtn::before {
	content: '×';
	font-size: 120%;
}
#archives #search ul li .child label::before {
	width: 18px;
	height: 18px;
}
#archives #search input:checked ~ form ul li .child {
  height: 100%;
	transition: all .8s;
}


#archives .works{
	padding: 80px 40px;
}
#archives .works ul{
	display: flex;
	flex-wrap: wrap;
	margin: auto;
}
#archives .works ul li{
	width: 350px;
	text-align: center;
}
#archives .works ul li dl{
}
#archives .works ul li dl dt{
	display: flex;
	align-items: flex-end;
	justify-content: center;
	height: 240px;
	border-bottom: 2px solid #fdd000;
	padding: 15px 40px;
	position: relative;
}
#archives .works ul li dl dt.i_lock::after,
#archives .works ul li dl dt.i_youtube::after{
	position: absolute;
	bottom: -10px;
	background: #fff;
	padding: 0 10px;
	line-height: 0;
}
#archives .works ul li dl dt.i_lock::after{
	content:url("../module/img/i_lock.svg");
	width: 15px;
}
#archives .works ul li dl dt.i_youtube::after{
	content:url("../module/img/i_youtube2.svg");
	width: 22px;
}
#archives .works ul li dt img{
	max-height: 240px;
	/*border: 1px solid #ddd;*/
	filter: drop-shadow(3px 3px 2px rgba(0,0,0,.2));
	transition: all 0.4s;
}
#archives .works ul li.printed dt img{
	max-height: 220px;
}
#archives .works ul li.goods dt img{
	max-width: 210px;
}
#archives .works ul li dt img:hover{
	filter: drop-shadow(3px 3px 4px rgba(0,0,0,.2));
	transform: scale(1.1) translateY(-3px);
	transform-origin: bottom;
	transition: all 0.4s;
}
#archives .works ul li dl dd{
	padding: 15px 30px;
	height: 70px;
}
#archives .works ul li dl dd h3{
	font-weight: 500;
	line-height: 1.4em;
	word-break: keep-all;
}
#archives .works ul li dl dd h4{
	font-size: 90%;
	font-weight: 400;
	line-height: 1.4em;
	color: #aaa;
}






#single{
	margin: auto;
}
#single article {
	margin: 20px auto 120px;
}
#single h1 {
	color: #333;
	font-weight: 500;
	margin: 20px;
}
#single h2 {
	margin: 60px 0 30px;
	text-align: center;
	font-size: 3rem;
	font-weight: 400;
	color: #fdd000;
	letter-spacing: 4px;
	display: flex;
	flex-direction: column;
}
#single h3 {
	margin: 60px 0 40px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: 400;
	letter-spacing: 4px;
}
#single h2 img {
	width: 100px;
	margin: auto;
}
#single .lead {
	margin: 20px auto 120px;
}
#single .info {
	background: rgba(255, 250, 235,.94);
	position: relative;
}
#single .info::after {
	content: '';
  position: absolute;
  top: 100%;
	left: 50%;
	transform: translateX(-50%);
  border-right: 20px solid transparent;
	border-left: 20px solid transparent;
  border-top: 20px solid rgba(255, 250, 235,.94);
}
#single .info dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1200px;
	margin: auto;
	padding: 40px;
}
#single .info dl dt{
	width: 400px;
	max-height: 300px;
	text-align: right;
}
#single .info dl dt img{
	max-height: 100%;
	filter: drop-shadow(3px 3px 2px rgba(0,0,0,.3));
}
#single .info dl dd{
	width: calc(100% - 480px);
	padding: 10px 0;
	line-height: 1.7em;
}
#single .info dl dd .linkBtn{
	margin: 20px 0 10px;
}
#single .info dl dd .linkBtn li a{
	display: inline-block;
	background: #fdd000;
	color: #fff;
	padding: 1px 20px;
	border-radius: 20px;
}
#single .info dl dd .linkBtn li a:hover {
	background: #fdc405;
}
#single .info dl dd .atn{
	font-size: 85%;
	line-height: 1.6em;
	margin: 10px;
}






#single .gallery {
	/*max-width: 1200px;*/
}
#single .gallery .block {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 80px;
	padding: 0 80px;
}
#single .gallery .block dl{
	font-size: 95%;
	border: 1px solid #ddd;
	background: #fff;
	filter: drop-shadow(2px 2px 2px rgba(0,0,0,.2));
	width: 480px;
}
#single .gallery .block dl dd{
	margin: 25px 20px;
	text-align: center;
}
#single .gallery .block dl dd img{
	filter: drop-shadow(0 0 1px rgba(0,0,0,.3));
}
#single .gallery .block dl dt{
	border-bottom: 4px dotted #ccc;
	margin: 5px;
	padding: 20px 15px;
}



#single #web .gallery .block dl.wPC { width: 840px;}
#single #web .gallery .block dl.wSP { width: 340px;}

#single #web .gallery .block dl dd{
	position: relative;
	overflow-y: scroll;
	height: 540px;
	margin: 25px 3px 25px 20px;
	padding-right: 17px;
}
#single #web .gallery .block dl dd img{
	border: 1px solid #eee;
	box-sizing: border-box;
}



#single #printed .gallery .block dl.portrait { width: 480px;}
#single #printed .gallery .block dl.landscape { width: 620px;}
#single #printed .gallery .block dl.landscape dd img{	max-height: 430px; width: auto;}

#single #printed .gallery .block dl.square { height: 480px;}
#single #printed .gallery .block dl.square dd{ height: 355px;}
#single #printed .gallery .block dl.square dd img{ object-fit: contain; height: 100%;}



#single #movies .gallery .block dl{	width: 900px;}



#single #goods .gallery .block dl.portrait { width: 480px;}
#single #goods .gallery .block dl.landscape { width: 620px;}
#single #goods .gallery .block dl.landscape dd img{	max-height: 430px; width: auto;}

#single #goods .gallery .block dl.square { height: 480px;}
#single #goods .gallery .block dl.square dd{ height: 355px;}
#single #goods .gallery .block dl.square dd img{ object-fit: contain; height: 100%;}



#single .linkBtn.list{
	display: flex;
	justify-content: center;
}
#single .linkBtn.list li a{
	display: flex;
	align-items: center;
	background: #fdd000;
	color: #fff;
	line-height: 1.4em;
	padding: 0 20px;
	border-radius: 30px;
}
#single .linkBtn.list li a::before {
	content: url("../module/img/i_archives_wht.svg");
	width: 30px;
	margin-right: 5px;
}
#single .linkBtn.list li a:hover {
	background: #fdc405;
}


#single .relation {
	margin: 200px auto 0;
	background: #f9f9f9;
	padding: 10px 40px;
	position: relative;
}
#single .relation h3{
	margin: 0;
	font-size: 240%;
	font-weight: 600;
	line-height: unset;
	letter-spacing: 2px;
	color: #f9f9f9;
	position: absolute;
	top: -26px;
	left: 50%;
	transform: translate(-50%);
}
#single .relation ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#single .relation ul li {
	width: 350px;
	text-align: center;
}
#single .relation ul li dl dt {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	height: 200px;
	border-bottom: 2px solid #fdd000;
	padding: 15px 40px;
	position: relative;
}
#single .relation ul li dl dt img {
	max-height: 200px;
	/* border: 1px solid #ddd; */
	filter: drop-shadow(3px 3px 2px rgba(0,0,0,.3));
	transition: all 0.4s;
}
#single .relation ul li dl dd {
	padding: 15px 30px;
	height: 70px;
}
#single .relation ul li dl dd h4 {
	font-weight: 500;
	line-height: 1.4em;
	word-break: keep-all;
}
#single .relation ul li dl dd h5 {
	font-size: 90%;
	line-height: 1.4em;
	font-weight: 400;
	color: #aaa;
}





.password {
	margin: 20px auto 120px;
}
.password h4{
	margin: 60px 0 20px;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 600;
	letter-spacing: 2px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	color: #595757;
}
.password h4::before{
	content: url("../module/img/i_lock.svg");
	width: 30px;
	display: block;
}
.password .post-password-form{
	text-align: center;
	max-width: 500px;
	margin: auto;
	background: #eee;
	border-radius: 5px;
	padding: 5px;
}
.password .post-password-form p{
	margin: 20px;
	word-break: keep-all;
}
.password .post-password-form input[type="password"]{
	padding: 2px 4px;
	line-height: 1.4em;
}
.password .post-password-form input[type="Submit"]{
	background: #fff;
	border-radius: 2px;
	border: 1px solid #9a9aa7;
	padding: 2px 8px;
	line-height: 1.6em;
	cursor: pointer;
}
.password .post-password-form input[type="Submit"]:hover{
	background: #fdd000;
}




@media screen and (max-width: 480px) {
  
	nav.global ul li.archives a { background: #FDBE00;}
	nav.global ul li.archives::before { display: block;}
	
	
	
	#archives{
	}
	#archives #search {
		justify-content: flex-start;
		padding: 10px 20px 15px;
		line-height: 1.6em;
		top: 70px;
		font-size: 90%;
	}
	#archives #search form {
		width: 100%;
		font-size: 90%;
	}
	#archives #search ul {
		gap: 10px;
		margin: 0;
	}
	#archives #search ul li {
		margin-right: 5px;
	}
	#archives #search input:checked ~ form ul li .child {
		margin-bottom: 10px;
	}
	
	
	#archives .works {
		padding: 80px 10px;
	}
	#archives .works ul li {
		width: 50%;
	}
	#archives .works ul li dl {
		padding: 5px;
	}
	#archives .works ul li dl dt {
		padding: 15px 20px;
		height: 110px;
	}
	#archives .works ul li dt img {
		max-width: 100% !important;
		max-height: 110px !important;
	}
	#archives .works ul li dl dd {
		padding: 10px;
		height: 50px;
	}
	#archives .works ul li dl dd h3 {
		font-size: 85%;
	}
	#archives .works ul li dl dd h4 {
		font-size: 80%;
	}
	
	
	
	
	#single article {
		margin: 20px auto 40px;
	}
	#single .info dl {
		padding: 40px 30px 20px;
	}
	#single .info dl dt {
		width: auto;
		max-height: 240px;
		display: flex;
		justify-content: center;
	}
	#single .info dl dd {
		width: auto;
	}
	
	
	
	#single .gallery .block {
		gap: 30px;
		padding: 0 40px;
	}
	#single .gallery .block dl dt {
		padding: 10px 15px;
	}
	#single #web .gallery .block dl dd {
		height: auto;
	}
	
	
	#single #web .gallery .block dl.wPC { width: auto;}
	#single #web .gallery .block dl.wSP { width: auto;}
	#single #web .gallery .block dl dd{	height: auto;}


	#single #printed .gallery .block dl.portrait { width: auto;}
	#single #printed .gallery .block dl.landscape { width: auto;}
	#single #printed .gallery .block dl.landscape dd img{	max-height: 200px;}

	#single #printed .gallery .block dl.square { height: auto;}
	#single #printed .gallery .block dl.square dd{ height: auto;}
	#single #printed .gallery .block dl.square dd img{ max-height: 200px;}


	#single #movies .gallery .block dl{	width: 100%;}


	#single #goods .gallery .block dl.portrait { width: auto;}
	#single #goods .gallery .block dl.landscape { width: auto;}
	#single #goods .gallery .block dl.landscape dd img{	max-height: 200px;}

	#single #goods .gallery .block dl.square { height: auto;}
	#single #goods .gallery .block dl.square dd{ height: auto;}
	#single #goods .gallery .block dl.square dd img{ max-height: 200px;}

	
	
	#single .relation {
		margin: 140px auto 40px;
		padding: 10px;
	}
	#single .relation ul li {
		width: 50%;
	}
	#single .relation ul li dl {
		padding: 5px;
	}
	#single .relation ul li dl dt {
		padding: 15px 20px;
		height: 110px;
	}
	#single .relation ul li dt img {
		max-height: 110px;
	}
	#single .relation ul li dl dd {
		padding: 10px;
		height: 50px;
	}
	#single .relation ul li dl dd h4 {
		font-size: 85%;
	}
	#single .relation ul li dl dd h5 {
		font-size: 70%;
	}
	
	
	
	.password h4 {
		font-size: 1.9rem;
		letter-spacing: 1px;
		margin: 60px 0 10px;
	}
	.password .post-password-form {
		margin: 10px 40px 80px;
		font-size: 80%;
	}
	.password .post-password-form p {
		margin: 10px;
		word-break: unset;
	}
	.password .post-password-form input[type="password"] {
		width: 70px;
	}
	
	
	
	
	
	
	
}
