@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200&display=swap');




html {
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	scroll-behavior: smooth;
	background-color: #000;
}

a {
	text-decoration-thickness: 1px;
}

  .inner {
	width: 90％;
	margin: 0 3rem;
	padding-bottom: 2rem;
} 


/*ファーストビュー*/
#fv {
    border-top:1px solid transparent;
	position: relative;
	width: 100%;
}

.catch {
	margin: 3rem 0;
}

.catch img {
	margin: 0 auto;
	max-width: 30%;
	width: 100%;
}

.container {
	position: relative;
	width: auto;
}

.bookCover {
	margin: 2rem auto 0;
}
.bookCover img{
	margin: 0 auto; 
	max-height: 70vh;
	border-radius: 5px;
	box-shadow: 0 15px 30px 0 rgba(60, 194, 235, 0.3);
}

.date {
	max-width: 300px;
	margin-bottom: 2.5rem;
}

.date img {
	position: absolute;
	right: 30%;
	bottom: 5%;
	max-width: 15%;
}


/*見出し関連*/
h2 {
	margin: 0 auto;
	padding-top: 2rem;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-size: 2rem;
	font-weight: lighter;
	letter-spacing: 0.05em;
}

.headlineWhite {
	color: #fff;
}
.headlineBlack {
	color: #212634;
}
.enHL,
.jaHL {
	display: block;
	margin: 0 auto 0.2em;
	padding-bottom: 0.2em;
	width: 70%;
}
.headlineWhite .enHL {
	border-bottom: solid 1.5px #fff;
}
.headlineBlack .enHL {
	border-bottom: solid 1.5px  #212634;
}

/*コンテンツ関連*/

 .contentText {
	margin: 5rem auto;
	font-size: 1.25rem;
	width: 50%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2em;
	overflow-wrap: break-word;
}

.centering {
	text-align: center;
}

.contentArea {
	margin: 11rem 0;
}

.censored {
	background-color: #000;
	color: #000;
}

.textWhite,
.textWhite a {
	color: #fff;
}

.textBlack,
.textBlack a {
	color: #212634;

}

/*共通コンテンツ背景*/
#story,
#special01,
#special02 {
	padding: 2rem 0;
	background-color: #212634;
}
#message,
#event {
	padding: 2rem 0;
	background-color: rgb(255,255,255,0.9);
}
#information,
#yomomi {
	background-color: #fff;
}
/*FV背景*/

#fvBg,
#spaceBg,
#voiceBg {
	display: block;
	position: sticky;
	top: 0;
	z-index: -1;
	height: 0;
	max-height: 0;
	overflow: visible;
}

#fvBg::before,
#spaceBg::before,
#voiceBg::before {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-repeat: no-repeat;
	-webkit-background-size: contain;
	background-size: cover;	
}


#fvBg::before {
	background: url("../img/fv_bg.jpg");
	background-size: cover;	
}

/*星空背景*/
#spaceBg::before {
	background: url("../img/message_bg.jpg");
	background-size: cover;	
}

/*声背景*/
#voiceBg::before {
	background: url("../img/voice_bg.jpg");
	background-size: cover;	
}


/*あらすじ*/
#story .circle {
	margin: 3rem auto;
	width: 70%;
}

/*伏井出先生より*/
#message .aa {
	display: block;
	margin-top: 2rem;
	animation-fill-mode: forwards;
}

/*イベント情報*/


#event a{
	color: #212634;
	text-decoration: none;
	cursor: pointer;
}
#event a:hover{
	opacity: .8;
}

#event dd {
	margin: 0.5rem 0 3rem ;
	padding-left: 2rem;
	background: url("../img/event_site.png") left/1.75rem no-repeat;
	letter-spacing: 0.1em;
}

/*フクイデストの声*/

#voice .innner {
	margin: 0 auto;
	padding: 2rem auto;
}
#voice .voiceList {
	margin: 5rem 0 10rem;
}

#voice .voiceList li{
	margin: 3.5rem 0;
	padding: 1.5rem 2rem 1rem;
	font-size: 1.25rem;
	background: #fff;
	list-style: none;
	line-height: 2rem;
}

#voice .sender {
	display: block;
	text-align: right;
}

#voice #mail {
	padding: 5rem 0;
	background: #fff;
}

.waitingMail img {
	width: 30%;
	margin: 0 auto;
}

#voice #mail .contentText {
	margin: 2rem auto;
}

#voice #mail .mailNote{
	width: 50%;
	margin: 0 auto;
	font-size: 1.25rem;
	padding: 0.5rem 1rem;
	background: #eee;
	line-height: 1.75rem;
}

#voice #mail ul {
	margin: 1.5rem;
	list-style: "※";
}

#voice #mail li {
	padding-left: 0.75rem;
}

#voice .mailForm img {
	margin: 2rem auto;
}
#voice .mailForm a {
	display: block;
	width: 30%;
	transition: .5s;
	margin: 0 auto;
}
#voice .mailForm a:hover {
	opacity: .5;
}

/*コラボ*/
#special .container {
	margin: 2rem;
}
.menuImage {
	margin: 2rem auto;
}
.menuImage img{
	width: 50%;
	margin: 0 auto;
}

.menuText .menuName {
	padding-bottom: 0.5rem;
	font-size: 2.5rem;
}
.menuText .menuValue {
	display: block;
	text-align: right;
	border-top: solid 1.5px #fff;
}
.menuText .menuComment {
	line-height: 1.5em;
}
/*広告ギャラリー*/
.addimg {
	width: 200px;
}

.addcontainer {
	width: 800px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem 0;
}

/*インフォメーション*/

#information .bookInfomation {
	margin: 0 auto;
	text-align: center;
}

#information .bookName {
	margin-top: 2rem;
}

.circleMini {
	width: 70%;
	margin: 0 auto;
}

#information .bookInfomation ul {
	margin-top: 1.5rem;
	list-style: disc inside;
	padding: 0.25rem 0;
}
#information .trueInformation,
#information .credit,
#information .thanks {
	text-align: center;
	margin-top: 2rem;
} 


/* フッター*/
footer {
	position: sticky;
	top: 100vh;
	width: 100%;
	padding: 5rem;
}
#yomomi * {
	margin: 0 auto;
	padding-top: 0.25rem;
}

/* スマホビュー */
@media screen and (max-width: 1080px) {
.inner {
		width: 80％;
		margin: 0;
  	} 

.contentArea {
	margin: 5rem 0;
	padding: 0;
	}

	.catch img {
		max-width: 70vw;
	}
	.bookCover img{
		max-width:50vw;
	}
	.date img{
		bottom: 5%;
		right: 15%;
		max-width: 25%;
	}
	h2 {
		font-size: 1.75rem;
	}
	.contentText {
		width: 75%;
		margin: 3rem auto;
		font-size: 1rem;
   }
   #voice .voiceList li {
		font-size: 1rem;
   }
	.waitingMail img {
		width: 80%;
	}
   #voice #mail .mailNote {
		width: 70%;
		margin: 1.5rem auto;
	    font-size: 0.75rem;
   }
	#voice .mailForm a {
		width: 70%;
	}
	#voice .mailForm img {
		width: 100%;
	}
	.menuText .menuName {
		font-size: 1.5rem;
	}
	.circleMini {
		width: 80%;
	}
}