@charset "UTF-8";


/* 文章のサブメニュー関連
---------------------------------------------------- */

.st-cat-serial .scse_serial,
.st-cat-ne .scse_ne,
.st-cat-ct1 .scse_ct1,
.st-cat-ct2 .scse_ct2,
.st-cat-wt .scse_wt {
 color: #66C;
 background-color: #DCDCF0;
}

/* 文章のサブメニューの表示調整用 */

.st-cat-wei div,
.st-cat-wu div,
.st-cat-shu div,
.st-cat-jin div,
.st-cat-ta div,
.st-cat-serial div,
.st-cat-ne div,
.st-cat-ct1 div,
.st-cat-ct2 div,
.st-cat-wt div,
.st-cat-none div {
 display: inline-block;
}

/* 三國のサブメニュー用 */

#sub-menu .scsa_wei a:hover,
.st-cat-wei .scsa_wei a {
 color: #669;
 background-color: #DCDCF0;
}

#sub-menu .scsa_wu a:hover,
.st-cat-wu .scsa_wu a {
 color: #966;
 background-color: #F0DCDC;
}

#sub-menu .scsa_shu a:hover,
.st-cat-shu .scsa_shu a {
 color: #669973;
 background-color: #DCF0E1;
}

#sub-menu .scsa_jin a:hover,
.st-cat-jin .scsa_jin a {
 color: #699;
 background-color: #DCF0F0;
}

#sub-menu .scsa_ta a:hover,
.st-cat-ta .scsa_ta a {
 color: #996;
 background-color: #F0F0DC;
}


/* 文章のページ案内の強調用
---------------------------------------------------- */

.line-caution {
 color: #C66;
 border-bottom: 1px #C33 solid;
}


/* 文章の創作キャラ紹介用
---------------------------------------------------- */

h3 {
 margin: 0 2.3em;
 padding: 0 .5em;
 border-bottom: 1px #999 dashed;
 font-size: 1em;
 font-weight: normal;
}

h3::first-letter {
 margin: 0 2px 0 0;
 padding: 0 2px;
 background-color: #DCF0F0;
}

.st-ci-info {
 margin: 0 .5em;
}


/* 文章の名前登録フォームの開閉
---------------------------------------------------- */

.tab-nc-text {
 margin: 1em 0 0;
 padding: 0;
 border-bottom: 1px #CCC solid;
 position: relative;
 display: block;
 cursor: pointer;
}

.form-st-nc {
 text-align: left;
 display: none;
 width: 100%;
}

input[name="tab-nc"] {
 display: none;
}

.tab-nc-text::after {
 margin: 0 .3em;
 content: '（フォームを開く）▽';
 display: inline-block;
}

input:checked + .tab-nc-text::after {
 margin: 0 .3em;
 content: '（フォームを閉じる）△';
}

input:checked + .tab-nc-text + .form-st-nc {
 display: block;
}


/* 文章の名前登録フォーム
---------------------------------------------------- */

#form-nc {
 margin: 0;
 padding: 0;
}

#form-nc fieldset {
 margin: 0;
 padding: 0;
 border: none;
}

#form-nc ul {
 list-style-type: none;
}

.st-nc li {
 margin: 1em 0 0 3.3em;
 padding: 0;
 display: inline-block;
}

/* 戦国の余裕さんの名字の回り込み回避用 */
.st-nc .st-cn-info {
 display: block;
}

.st-nc input {
 margin: 0 0 0 .5em;
 padding: 0 .2em;
 color: #333;
 border: 1px #999 solid;
}

#form-nc .process {
 margin: 3em 0 0;
 padding: 0 0 2em 2em;
 border-bottom: 1px #CCC solid;
}

.process button {
 margin: 0 1em 0 0;
 padding: .5em 1em;
 letter-spacing: 2px;
 background-color: #F0F0F0;
 border: none;
 @media screen and ( max-width: 600px ){
  font-size: .9em;
  line-height: 1.5em;
 }
}

.process button:hover {
 background-color: #DCDCDC;
 cursor: pointer;
}

/* 名前登録フォームのキャラ名下ライン */
ul .st-cn-line {
 margin: 2em 2.3em 0;
 border-bottom: 1px #999 dashed;
 display: block;
 word-break: keep-all;
 overflow-wrap: anywhere;
}


/* 文章の一覧ページ関連
---------------------------------------------------- */

h4 {
 margin: 3em 0 1em;
 font-size: 1.2em;
 font-weight: normal;
}

h4::first-letter {
 margin: 0 1px 0 0;
 padding: 0 2px 1px 3px;
}

.st-list-wrap a {
 margin: 0 1em .5em 1em;
 padding: 0 1em;
 line-height: 2.5em;
 width: 90%;
 background-color: #F0F0F0;
 display: block;
 @media screen and ( min-width: 700px ){
  width: 45%;
  display: inline-block;
 }
}

.st-list-wrap a:hover {
 background-color: #DCDCDC;
}


/* 文章のシングルページ関連
---------------------------------------------------- */

/* 文章のsingleページのタイトル用 */

h2 {
 margin: 50px 0 30px;
 padding: 0 0 .3em 2em;
 font-weight: normal;
 font-size: 1.2em;
 border-bottom: 1px #CCC solid;
 position: relative;
}

h2::before {
 position: absolute;
 top: .3em;
 left: .4em;
 z-index: 2;
 width: .6em;
 height: .6em;
 content: '';
 border-radius: 20%;
}

h2::after {
 position: absolute;
 top: .6em;
 left: .7em;
 width: .6em;
 height: .6em;
 content: '';
 border-radius: 20%;
}

.st-item-box {
 margin: 0;
 padding: .5em 1em 1em;
}

.st-item-date {
 margin: 0;
 padding: 1.5em 0 0;
 text-align: right;
}

.st-item-pagenum {
 margin: 26px 0 0;
 padding: 5px 0 7px;
 font-weight: normal;
 font-size: 1.5em;
 text-align: center;
}

.st-item-line {
 margin: -1px 0 0;
 padding: 5em 2.3em;
 line-height: 2em;
 @media screen and ( max-width: 600px ){
  padding: 5em 1em;
  font-size: 1.4rem;
  line-height: 1.8em;
 }
}

.st-item-memo {
 margin: 3em 2.3em 2em;
 padding: 1em;
 @media screen and ( max-width: 600px ){
  font-size: 1.4rem;
  line-height: 1.8em;
 }
}

/* スマホ以外では改行を非表示 */
@media screen and ( min-width: 499px ){
 .st-item-line span,
 .st-item-memo span {
  display: none;
 }
}

/* ページネーション */

.item-pagination {
 margin: 1em 0 0;
 padding: .3em 0;
 display: flex;
 flex-wrap: wrap;
}

.item-pagination span,
.item-pagination a {
 margin: 5px;
 padding: 2px 10px 5px;
 background-color: #F0F0F0;
}


/* feed関連
---------------------------------------------------- */

#st-info-new {
 margin: 1em 2.3em;
 padding: 1em 1.5em;
 line-height: 2.5em;
 border: 1px #CCC solid;
}

#st-info-new span {
 padding: 0 .5em;
 line-height: 1.8em;
 display: inline-block;
}

#st-info-new p {
 padding: 0;
}

