@charset "utf-8";

/*
メディアはメッセージ。
当サイトの太字は装飾でも構造でもなく、文章の意味内容の一部であり、分離できないものと考えております。
fontタグは新しいかたちの形容詞になり得ると未来を想った夢の涯。
*/

/* ちゆ用リセット */

html {
    font-size        : 62.5%;
}

h1, html, body, div, p, blockquote, ul, li, ol, table, th, td {
    margin           : 0;
    padding          : 0;
}

h1 {
    font-size        : 100%;
    font-weight      : 400;
}

ul {
    list-style       : none;
}

img {
    border           : none;
    vertical-align   : bottom;
}

b {
    font-weight      : 700;
}

/* ちゆ用基本 */

body {
    background-color : #E1F0F0;
    line-height      : 140%;
}

blockquote, .blocksub, .blockwindow {
    color            : #000000;
    background-color : #ffffff;
    border           : 1px solid #000000;
}

.blockdetail {
    color            : #666600;
    background-color : #fde9ac;
    border           : 1px solid #000000;
}

blockquote, .blockwindow {
    margin           : 1.5em;
    padding          : 0em 1em;
}

.blocksub, .blockdetail {
    margin           : 1.5em;
    padding          : 0px 1em;
    font-size        : 14px;
    font-size        : 1.4rem;
}

hr {
    border           : 0;
    margin           : 1.5em 1em;
    border-top-style : dotted;
    border-top-color : #666666;
    border-top-width : 2px;
}

a {
    text-decoration  : none;
}

.invisible, #styleguide, #script_container {
    display          : none;
}

/* エントリのまとまりの見出し */

.pagetitle, .news_group_title {
    font-weight      : 700;
    text-align       : center;
}

.news_group_title {
    margin-top       : 20px;
}

.none_foot {
    margin-top       : 50px;
}

.pagetitle {
    margin-top       : 28px;
    font-size        : 20px;
    font-size        : 2.0rem;
}

/* エントリの見出し */

.style_body {
    font-size        : 14px;
    font-size        : 1.4rem;
    text-align       : right;
    padding-bottom   : 5px;
}

.style_body a:visited, .style_body a:link {
    color            : #0066ff;
}

.news_date, .news_title, .news_long_title {
    padding          : 15px;
}

.news_title {
    background-color : #edfeda;
}

.news_date, .news_long_title {
    background-color : #feefda;
}

/* エントリの本文 */

.news_body, .guide_body {
    background-color : #ffffee;
}

.news_body {
    margin-top       : 10px;
    padding          : 10px;
}

.guide_body {
    margin-top       : 20px;
    padding          : 8px 0px 8px 16px;
    font-size        : 14px;
    font-size        : 1.4rem;
}

.news_body p {
    margin           : 1em 0px 1em;
    text-indent      : 1em;
}

.guide_body p {
    margin           : 0.1em 0px 0.1em;
}

.news_body blockquote p, .blockwindow p {
    text-indent      : 0px;
}

.blocksub p, .blockdetail p {
    margin           : 0.8em 0px;
    text-indent      : 0px;
}

.blockdetail li {
    list-style-type     : disc;
    list-style-position : outside;
    margin-left         : 1em;
    margin-top          : 0.8em;
}

.partition_txt {
    text-indent      : 0px;
    text-align       : center;
}

.img_caption {
    color            : #000000;
}

.implant {
    text-indent      : 1em;
}

.normal_introduction dt, .normal_introduction dl {
    margin           : 1em 0px 1em;
}

/* 文字色とか */

.caption_normal {
    color            : #000000;
}

.tri_bubble {
    color            : #000000;
    background-color : #e8ffe8;
}

.tiyu_date {
    color            : #000000;
    background-color : #fff5ec;
}

.tiyu_title {
    color            : #000000;
    background-color : #edfeda;
}

.normal_block {
    color            : #000000;
    background-color : #ffffff;
}

/* テーブル */

.table_paper, .table_skeleton {
    margin           : 1.5em auto;
    color            : #000000;
}

.table_skeleton {
    border-collapse  : collapse;
}

.table_border {
    border-collapse  : separate;
    border-spacing   : 4px;
}

.table_paper {
    border-collapse  : separate;
    border-spacing   : 2px;
    padding          : 0.5em;
    background-color : #ffffff;
    border           : 1px solid #000000;
}

.table_paper td {
    padding          : 0.1em;
}

.table_skeleton td {
    text-align       : center;
}

.wside_obj {
    padding-right    : 4px;
    padding-left     : 4px;
}

/* Wikiの引用とか */

.wiki_block {
    margin           : 1.5em;
    padding          : 1em 1.5em;
    border           : 1px solid #000000;
    color            : #252525;
    background-color : #ffffff;
    font-size        : 94.4%;
}

.wiki_block P {
    text-indent      : 0em;
}

.wiki_h2 {
    margin-bottom    : 0.25em;
    border-bottom    : 1px solid #aaa;
}

.wiki_cut {
    margin-top       : 2.5em;
}

.mw-headline {
    font-size        : 1.5em;
}

.mw-editsection {
    font-size        : 0.75em;
    margin-left      : 1em;
}

.wiki_editlink, .wiki_reference {
    color            : blue;
}

ol.references {
  list-style-type    : inherit;
  line-height        : 1.5em;
  margin             : .3em 0 0 3.2em;
  padding            : 0;
  list-style-image   : none;
}

/* 別サイトの引用とか */

.two_channel {
    margin           : 1.5em 1.5em 0.1em;
    padding          : 0em 0.5em;
    border           : 1px solid #000000;
    color            : #000000;
    background-color : #efefef;
}

.aa_box {
    text-align       : center;
    margin           : 1.5em 1.5em 0.1em;
    padding          : 0em 0.5em;
    border           : 1px solid #000000;
    color            : #000000;
    background-color : #efefef;
}

.for_aa {
    font-family      : "ＭＳ Ｐゴシック","MS PGothic","Mona","mona-gothic-jisx0208.1990-0",sans-serif;
    line-height      : 100%;
}

.quote_caption {
    margin           : 0.1em 1.5em 1.5em;
    padding-right    : 0.5em;
    text-align       : right;
    font-size        : 14px;
    font-size        : 1.4rem;
}

.quote_caption a:visited {
    color            : #993399;
}

.two_channel dt {
    margin-bottom    : 0.2em;
}

.two_channel dd {
    margin-bottom    : 1em;
}

.name_nomail, .name_trip {
    color            : #008800;
}

.name_nomail {
    font-weight      : 700;
}

/* エントリの本文内とかの画像 */

.img_border img, .table_border img {
    border           : solid 1px #000000;
}

p.img_noborder, p.img_border {
    margin           : 1.5em 0;
    text-indent      : 0px;
}

.img_noborder, .img_border {
    text-align       : center;
}

.img_container>.img_noborder, .img_container>.img_border {
    float            : left;
    margin           : 0px 0px 0px 5px;
}

.img_rev>.img_noborder, .img_rev>.img_border {
    float            : right;
    margin           : 0px 5px 0px 0px;
}

.img_top {
    vertical-align   : top;
}

.img_container>.img_noborder:first-child, .img_container>.img_border:first-child {
    margin           : 0;
}

.img_container {
    margin           : 1.5em auto;
    overflow         : hidden;
    text-align       : center;
    /* background-color:#edfeda; border:1px solid #000000; */
}

/* エントリのフッタ */

.news_foot {
    margin-top       : 20px;
    text-align       : right;
}

/* 補足 */

.sub_txt {
    font-size           : 14px;
    font-size           : 1.4rem;
    color               : #444444;
    background-color    : #ffffff;
    padding             : 1em;
    margin-top          : 50px;
}

.sub_txt a:visited {
	color               : #993399;
}

.sub_txt a:hover {
    color               : #ff0000;
}

.sub_txt h1 {
    font-weight         : 700;
    margin-bottom       : 0.8em;
}

.sub_txt li {
    list-style-type     : circle;
    list-style-position : outside;
    margin-left         : 1em;
    margin-top          : 0.8em;
}

.sub_txt ul>li:first-child {
	margin-top          : 0px;
}

.top_partition {
    padding-top         : 1em;
    margin-top          : 1em;
    border-top-style    : dotted;
    border-top-color    : #999999;
    border-top-width    : 2px;
}

.indent_sub_line {
    margin-left         : 1em;
}

/* 補足内の画像（オーバーライド的に。ひどい書き方…） */

.sub_txt .img_noborder, .sub_txt .img_border {
    margin           : 0;
    text-align       : left;
}

.sub_txt .img_container>.img_noborder, .sub_txt .img_container>.img_border {
    float            : left;
    margin           : 0px 0px 0px 5px;
    text-align       : center;
}

.sub_txt .img_container>.img_noborder:first-child, .sub_txt .img_container>.img_border:first-child {
    margin           : 0;
}

.sub_txt .img_container {
    margin           : 0.5em auto 0.5em 0;
    overflow         : hidden;
    /* background-color:#999999; border:1px solid #000000; */
}

/* 基本デザイン（左メニューあり） */

body {
    font-size        : 16px; /* 自分用。一部のツールの関係で */
    font-size        : 1.6em;
    color            : #ff208f;
}

#sub_container {
    position         : fixed;
    _position        : absolute;
    top              : 0;
    left             : 0;
    width            : 200px;
}

#main_container {
    margin           : 15px 10px 25px 210px;
    _overflow        : auto;
    max-width        : 1000px;
}

.news_head {
    margin-top       : 50px;
    overflow         : hidden;
}

.top_sub {
    margin-top       : 20px;
}

.news_date {
    float            : left;
    width            : 230px;
}

.news_date a:visited, .news_date a:link, .news_long_title a:visited,  .news_long_title a:link {
    color            : #ff208f;
}

.news_date a:hover, .news_long_title a:hover {
    color            : #ff0000;
}

.news_title {
    margin-left      : 270px;
    min-width        : 160px;
}

.many_txt {
    color            : #660000;
}

.note .news_body, .note .guide_body {
    color            : #660000;
    background-color : #FFF4FB;
}

.note .news_long_title {
    color            : #660000;
    background-color : #FADAEE;
}

/* 画像サイズの微妙な調整用（特殊。超てけと） */

@media only screen and (max-width:921px)
{
    .short_change {
        max-width     : 270px;
        height        : auto;
    }
    
    .short_vanish {
        display       : none;
    }
}

/* 基本デザイン（左メニューなし。前項へのオーバーライド的に。てけと） */

@media only screen and (max-width:819px)
{
    body {
        font-size     : 1.4em;
        color         : #000000;
    }

    #sub_container, #greeting_container {
        display       : none;
    }

    #main_container {
        margin        : 5px;
    }

    .top_main {
        margin-top    : 0px;
    }

    .news_date {
        float         : none;
        width         : auto;
    }

    .news_date a:visited, .news_date a:link, .news_long_title a:visited, .news_long_title a:link {
        color         : #000000;
    }

    .news_title {
        margin-left   : 0px;
        margin-top    : 5px;
    }

    .news_body {
        margin-top    : 5px;
    }
    
    .guide_body {
        margin-top    : 20px;
    }

    .style_body {
        display       : none;
    }

    .small_only_narrow {
        font-size    : 9px;
        font-size    : 0.9rem;
    }
}

/* 幅が狭い場合のみ（スマホなど想定。てけと。そしてひどい） */

.visible_only_narrow {
    display           : none;
}

@media only screen and (max-width:640px)
{
    .visible_only_narrow {
        display       : block;
    }

    .visible_only_wide {
        display       : none;
    }

    img {
        max-width     : 270px;
        height        : auto;
    }

    .img_container>.img_noborder, .img_container>.img_border {
        float         : none;
        margin        : 1.5em auto;
    }

    .img_container>.img_noborder:first-child, .img_container>.img_border:first-child {
        float         : none;
        margin        : 1.5em auto;
    }

    .img_container {
        margin        : 0;
        overflow      : hidden;
    }

    .sub_txt .img_container>.img_noborder, .sub_txt .img_container>.img_border {
        float         : none;
        margin        : 0.5em auto;
    }

    .sub_txt .img_container>.img_noborder:first-child, .sub_txt .img_container>.img_border:first-child {
        margin        : 0.5em auto;
    }

    .sub_txt .img_container {
        margin        : 0;
        overflow      : hidden;
    }
}

/* スタイル切替用 */

.samurai_visible {
    display           : none;
}

.samurai_invisible {
    display           : block;
}

/* ごあいさつ */

.comic_speaking {
    font-size          : 14px;
    font-size          : 1.4rem;
    padding            : 0.6em;
    margin             : 15px 5px 0px;
    background-color   : #ffffff;
    border             : 1px solid #000000;
    border-radius      : 10px;
    position           : relative;
}

.comic_speaking:after, .comic_speaking:before {
    right              : 100%;
    top                : 50%;
    border             : solid transparent;
    content            : " ";
    height             : 0;
    width              : 0;
    position           : absolute;
    pointer-events     : none;
}

.comic_speaking:after {
    border-color       : rgba(255, 255, 255, 0);
    border-right-color : #ffffff;
    border-width       : 10px;
    margin-top         : -10px;
}

.comic_speaking:before {
    border-color       : rgba(0, 0, 0, 0);
    border-right-color : #000000;
    border-width       : 11px;
    margin-top         : -11px;
}

/* メニューの小見出し */

.menu_title {
    margin             : 3px 0px 0px 2px;
    font-size          : 13px;
    font-size          : 1.3rem;
}

.menu_title a:visited, .menu_title a:link {
    color              : #333333;
}

.menu_title a:hover {
    color              : #ff0000;
}

/* メニューの本体部分 */

#menu_topic, #recently_box, #remake_box, #alternative_box {
    margin-left        : 5px;
    line-height        : 100%;
}

/* メニューのjs用 */

.open_list, .close_list {
    position           : relative;
}

.open_list {
    display            : block;
}

.close_list {
    display            : none;
}

/* メニュー内の階層 */

.category {
    font-size          : 11px;
    font-size          : 1.1rem;
    margin-top         : 2px;
}

.category_open>.category:first-child, .category_close>.category:first-child {
    margin-top         : 0px;
}

.category a:visited, .category a:link {
    color              : #666666;
}

.category a:hover {
    color              : #ff0000;
}

/* メニューの基本項目（ひどい書き方…） */

.open_list>ul {
    color              : #666666;
    font-size          : 12px;
    font-size          : 1.2rem;
    margin-left        : 20px;
}

.open_list>ul:first-child {
    margin-left        : 10px;
}

.open_list>ul a:visited, .open_list>ul a:link {
    color              : #0066ff;
}

.open_list>ul a:hover {
    color              : #ff0000;
}

.open_list>ul>li {
    margin-top         : 1px;
}

.open_list>ul>li:first-child {
    margin-top         : 0px;
}

/* 高さが狭い場合のみ */

@media only screen and (max-height:920px)
{
    #top_picture {
        width          : 200px;
        height         : 200px;
        overflow       : hidden;
    }

    #top_picture img {
        margin-top     : -52px;
    }
}

@media only screen and (max-height:810px)
{
    #top_picture {
        height         : 140px;
    }

    #top_picture img {
        margin-top     : -70px;
    }
}

.visible_only_high {
    display            : none;
}

@media only screen and (min-height:810px)
{
    .visible_only_high {
        display        : block;
    }
}
