@charset 'utf-8'; /*文字コード指定*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300&family=Zen+Kaku+Gothic+New&display=swap"); /*フォントのダウンロード*/
@import url('https://fonts.googleapis.com/css2?family=Caveat&display=swap'); /*フォントのダウンロード*/
/* ----- css reset(各ブラウザで指定されているスタイルを初期化)と全体設定 ----- */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, textarea, p, th, td, img {
	margin: 0; /*ボックス外側の余白(値1つは上下左右をまとめて指定)*/
	padding: 0; /*ボックス内側の余白(値1つは上下左右をまとめて指定)*/
	border: 0; /*境界線指定*/
}
html, body {
	height: 100%; /*領域の高さ指定*/
}
body {
	font-size: 75%; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 2; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	background: #fff; /*背景指定*/
	font-family: "Zen Kaku Gothic New",'メイリオ', Meiryo, Osaka, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro'; /*フォントの種類指定(左から優先順位)*/
	color: rgb(0, 0, 0); /*文字色指定*/
}
ol, ul {
	list-style: none; /*リストマーカーの種類指定(noneはなし)*/
}
a {
	color: rgb(0, 155, 193); /*文字色指定*/
}
a:hover {
	text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}
.color1 {
	color: rgb(255, 0, 0); /*文字色指定*/
}
.info {
	color:rgb(128, 128, 128);
	font-size: 1em;;
}
/*-----------------キャラクター----------------*/
.character_lavel{
	font-size: 80;
	text-align: center;
	border-bottom: solid 1px;
	margin-bottom: 40px;
}
.character_icon {
	display: flex;
	list-style: none;
	justify-content: space-around;
	padding-left: 0;
	margin: 10px;
}
/*画像サイズ指定*/
.character_icon img{
	border-radius:50%;
	border: 1px solid rgb(0, 0, 0);
	width: 180px;
	height: 180px;
	margin: 5px;
	object-fit:cover
}
.character_icon p{
	text-align: center;
}

.character_text{
	text-align: center;
	font-size: 12px;
}

.character_name{
	font-size: 13px;
	font-weight:bold;
	padding: 5px;
}

.character_text_detail{
	text-align: left;
	font-size: 12px;
	margin: 5px;
	padding: 10px;
}
/*--------------小説の表示設定-----------------*/
 .novellist__text {
  display: block;
  color: rgb(128, 128, 128); /*文字色指定*/
  font-size: 80%;
  margin: 10px;
  margin-left: 20px;
}
.document{
	font-size: 1vw;
}
/*-----------------イラスト一覧-----------------*/
.illust_icon {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 15px;
	grid-gap: 15px;
}

/*画像サイズ指定*/
.illust_icon img{
	width: 140px;
	height: 140px;
	margin: 10px;
}

.illust img{
	width: 100%;
	height: auto;
}
/*-----------------ボタンデザイン-----------------*/
.btn {
  text-align: center;
}
.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #67c5ff;
  border: solid 2px #67c5ff;
  border-radius: 3px;
  transition: .4s;
}

.btn-flat-border:hover {
  background: #67c5ff;
  color: white;
}
/*-----------------タブデザイン-----------------*/
.tab_container {
  padding-bottom: 1em;
  background-color: #fff;
  border:1px solid #67c5ff;
  margin: 0 auto;
  width: 90%;
}
.tab_item {
  width: calc(100%/3);
  padding:15px 0;
  border-bottom: 3px solid #67c5ff ;
  background-color: #ececec;
  text-align: center;
  color: #67c5ff ;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.tab_item:hover {
  opacity: 0.75;
}
input[name="tab_item"] {
  display: none;
}
.tab_content {
  display: none;
  padding: 1em 1em 0;
  clear: both;
  overflow: hidden;
}
#tab1:checked ~ #tab1_content,
#tab2:checked ~ #tab2_content,
#tab3:checked ~ #tab3_content {
  display: block;
}
.tab_container input:checked + .tab_item {
  background-color: #67c5ff ;
  color: #fff;
}
/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #67c5ff;
  color: #fff;
}
/*--------------プロフィールデザイン------------*/
.plifile_text{
	padding: 10px;
	
}
.plifile_text li{
	border-bottom: 1px solid;
	border-color: #67c5ff;
	padding: 5px;
	width: auto;
}
/*--------------年表デザイン------------*/
.li1{
	padding: 10px;;
	background-color: rgb(200, 200, 200);
}
.li2{
	padding: 10px;;
	background-color: rgb(255, 255, 255);
}
/*--------------リストタイトル------------*/
.list_title{
	font-size: 30px;
}
/*-----------------------------------------------*/
.top_wrapper {
	float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 100%; /*領域の高さ指定*/
}
.top_content {
	margin-left: 200px; /*ボックス外側左の余白*/
	height: 100%; /*領域の高さ指定*/
}
.wrapper {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin: auto; /*ボックス外側の余白*/
	height: 100%; /*領域の高さ指定*/
	overflow: scroll; /*floatの解除*/
}
.main {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	float: left; /*要素を左か右に寄せて配置(leftは左に寄せる)*/
	margin-right: -340px; /*ボックス外側右の余白*/
	background: #fff; /*背景指定*/
}
.content {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
	margin-left: -200px; /*ボックス外側左の余白*/
}
.content_inner {
	margin: 140px 250px 50px 200px; /*ボックス外側の余白*/
}

/*header　ページ上の内容*/
header {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	left: 200px; /*左からの距離(positionで指定している場合に適用)*/
	right: 250px; /*左からの距離(positionで指定している場合に適用)*/
	height: 100px; /*領域の高さ指定*/
	background: #fff; /*背景指定*/
	z-index: 1000; /*ボックス重なり順序指定*/
}

/*左上のロゴ*/
h1 {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 100px; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	font-family:'Caveat', cursive; /*フォントの種類指定(googleのwebフォント)*/
	font-size: 4em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 40px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
	padding: 10px; /*ボックス内側の余白*/
	width: 200px; /*幅指定*/
}
h1 a {
	color: rgb(0, 0, 0); /*文字色指定*/
	text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}
h1 a:hover {
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	/*透明度設定*/
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6; /*ここまで透明度設定*/
}
/*中央上の見出し*/

header h2 {
	font-size: 5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	font-weight: normal; /*フォントの太さ指定(normalは標準)*/
	font-family: 'Caveat', cursive;; /*フォントの種類指定(左から優先順位)*/
	text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
	width: 100%;
}
/*メインの内容*/

.top_section {
	margin: 200px auto 0; /*ボックス外側の余白*/
	width: 60%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.top_h2 img {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
article {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
article h3 {
	font-size: 3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	font-weight: normal; /*フォントの太さ指定(normalは標準)*/
	margin-bottom: 10px; /*ボックス外側下の余白*/
}
article li, p {
	font-size: 1.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
section {
	margin: 0 auto; /*ボックス外側の余白*/
	width: 80%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
/*左下の内容*/

.copyright {
	font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 15px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	bottom: 20px; /*下からの距離(positionで指定している場合に適用)*/
	left: 20px; /*左からの距離(positionで指定している場合に適用)*/
	width: 180px; /*幅指定*/
}
/*googlesearch*/

.search {
	width: 300px; /*幅指定*/
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 20px; /*上からの距離(positionで指定している場合に適用)*/
	right: 20px; /*右からの距離(positionで指定している場合に適用)*/
}
.search input[type="text"] {
	width: 80%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 8px !important; /*ボックス内側の余白*/
	font-size: 1.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	/*ボックス角丸設定*/
	border-radius: 5px 0 0 5px;
	-moz-border-radius: 5px 0 0 5px;
	-webkit-border-radius: 5px 0 0 5px; /*ここまでボックス角丸設定*/
	font-weight: bold; /*フォントの太さ指定(boldは太字)*/
	/*ボックス境界線設定*/
	border-top: 1px solid #a5a5a5;
	border-left: 1px solid #a5a5a5;
	border-bottom: 1px solid #a5a5a5;
	border-right: none !important; /*ボックス境界線設定*/
}
.search button {
	width: 20%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	/*背景グラデーション指定*/
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #fff), color-stop(1.00, #cecece));
	background: -webkit-linear-gradient(#fff, #cecece);
	background: -moz-linear-gradient(#fff, #cecece);
	background: -o-linear-gradient(#fff, #cecece);
	background: -ms-linear-gradient(#fff, #cecece);
	background: linear-gradient(#fff, #cecece); /*ここまで背景グラデーション指定*/
	border: 1px solid #a5a5a5; /*境界線の一括指定*/
	padding: 7px; /*ボックス内側の余白*/
	color: #666; /*文字色指定*/
	font-size: 1.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	border-radius: 0 5px 5px 0;
	-moz-border-radius: 0 5px 5px 0;
	-webkit-border-radius: 0 5px 5px 0;
	cursor: pointer; /*マウスカーソルの形状指定(pointerはリンクカーソル)*/
}
.search button:hover {
	/*透明度設定*/
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7; /*ここまで透明度設定*/
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
 -o-transition: 0.s;
	transition: 0.5s; /*ここまで時間的変化指定*/
}
/*右側の内容*/

.right_content {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 120px; /*上からの距離(positionで指定している場合に適用)*/
	right: 20px; /*右からの距離(positionで指定している場合に適用)*/
	width: 300px; /*幅指定*/
}
.ad {
	width: 300px; /*幅指定*/
	height: 250px; /*領域の高さ指定*/
	background: #fff; /*背景指定*/
}

/*ページトップに戻るアイコン*/

.pagetop:hover {
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	color: #fff; /*文字色指定*/
	/*透明度設定*/
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6; /*ここまで透明度設定*/
}

/*レスポンシブ設定*/

@media screen and (max-width: 768px) {
h3, p, ol, li, th, td, dl {
	font-size: 1.2em !important; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
.top_wrapper {
	padding-top: 50px; /*ボックス内側上の余白*/
}
.top_content {
	margin-left: 0; /*ボックス外側左の余白*/
}
header {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 50px; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	right: 0; /*左からの距離(positionで指定している場合に適用)*/
	height: 50px; /*領域の高さ指定*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
h1 {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 5px; /*上からの距離(positionで指定している場合に適用)*/
	left: 50px; /*左からの距離(positionで指定している場合に適用)*/
	font-size: 2.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	width: auto; /*幅指定*/
	padding: 0; /*ボックス内側の余白*/
}
.mov_header {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 50px; /*領域の高さ指定*/
	z-index: 1000; /*ボックス重なり順序指定*/
	background: #fff; /*背景指定*/
}
.mov_header2 {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 50px; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 50px; /*領域の高さ指定*/
	z-index: 2000; /*ボックス重なり順序指定*/
	background: #fff; /*背景指定*/
}
header h2 {
	font-size: 2.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.wrapper {
	overflow: visible; /*floatの解除を初期値に戻す*/
}
.content {
	float: none; /*要素を左か右に寄せて配置(noneはなし)*/
	margin: 120px 0 20px; /*ボックス外側の余白*/
}
.content_inner {
	margin: 0;/*ボックス外側の余白*/
}
article h3 {
	font-size: 1.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}

.top_section {
	margin: 100px auto 0; /*ボックス外側の余白*/
	width: 80%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
section {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
form {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.search {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 50px; /*上からの距離(positionで指定している場合に適用)*/
	left: 5%; /*左の距離(positionで指定している場合に適用)*/
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.search input[type="text"] {
	padding: 10px !important; /*ボックス内側の余白*/
	width: 85%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	font-size: 1.2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	font-weight: normal; /*フォントの太さ指定(normalは標準)*/
}
.search button {
	width: 15%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 10px; /*ボックス内側の余白*/
	font-size: 1.2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
.right_content {
	clear: both; /*floatの回り込み解除*/
	position: static; /*ボックスの配置方法(staticは指定なし)*/
	margin: 20px auto; /*ボックス外側上の余白*/
}
.copyright {
	width: 220px; /*幅指定*/
	/*透明度設定*/
	opacity: 0.3;
	filter: alpha(opacity=30);
	-moz-opacity: 0.3; /*ここまで透明度設定*/
}
}
/*背景の重ね紙
.illust_icon li{
	width: 140px;
	height: 140px;
	padding: 8px;
	border: 1px solid #eee;
	background: #fff;
	border-radius: 2px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
	position: relative;
	margin: 20px;
}

.illust_icon li:before,
.illust_icon li:after{
	content: "";
	display: block;
	width: 100%x;
	height: 100%;
	border: 1px solid #ddd;
	background: #fff;
	border-radius: 2px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}

.illust_icon li:before{
	-webkit-transform: rotate(-5deg);
	transform: rotate(-5deg);
}

.illust_icon li:after{
	-webkit-transform: rotate(5deg);
	transform: rotate(5deg);
}
*/

@media screen and (max-width: 767px) {
section {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.illust_icon{
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	grid-gap: 10px;
}
}
