@charset "UTF-8";

/*!
 * PukiWiki - Yet another WikiWikiWeb clone.
 * Copyright
 *   2002-2021 PukiWiki Development Team
 *   2001-2002 Originally written by yu-ji
 * License: GPL v2 or (at your option) any later version
 *
 * Default CSS
 */

pre, dl, ol, p, blockquote {
  line-height:130%;
}
blockquote {
  margin-left:32px;
}
/*body,td {*/
body {
  margin:0;
  font-size: 16px;  /* modified: iPhoneで幅広だと超特大サイズになるので固定値に */
  background: repeating-linear-gradient(
    135deg, #F5E8A3, #F5E8A3 30px, #F0D68A 30px, #F0D68A 60px
  );  /* modified add: しましま背景 */
}  /* modified */
.bodycontainer/*, td*/ {  /* modified: ヘッダー部分を margin: 0 にするため */
  color:black;
  /* background-color:white; */  /* modified remove */
  padding-left: 2%;/* margin-left:2%; */  /* modified: overflow: hidden 用 */
  padding-right: 2%;/* margin-right:2%; */  /* modified */
  font-size:90%;
  /* font-family:verdana, arial, helvetica, Sans-Serif; */
  font-family: "メイリオ", verdana, arial, helvetica, Sans-Serif;  /* modified: メイリオ追加 */

  overflow-x: hidden;  /* modified add: うっかりはみ出しを非表示 */
}
td {
  font-size:90%;  /* 結局のところ .style_td があるのでこれくらいしか効いてない */
}  /* modified: body と一緒くたになってたので分離 */
textarea {
  box-sizing:border-box;
  max-width:99.5%;

  font-size: medium;  /* modified add: スマホで拡大されないようにする */
  width: 99.5%;  /* modified add: なんかtableの中だととんでもない幅広になるので幅指定 */

  margin-bottom: 5px;  /* modified add: textarea強調青枠が直下の文字列と重なるのでちょい隙間追加 */
}

a:link {
  color:#215dc6;
  background-color:inherit;
  text-decoration:none;
}
a:active {
  color:#215dc6;
  background-color:#CCDDEE;
  text-decoration:none;
}
a:visited {
  color:#96c/*#a63d21*/;  /* modified */
  background-color:inherit;
  text-decoration:none;
}
a:hover {
  color:#215dc6;
  background-color:#CCDDEE;
  text-decoration:underline;
}
a.external-link:not(.external-link-silent)::after {
  content:url(../image/external-link.png);
  margin:3px;
}

h1, h2 {
  font-family:verdana, arial, helvetica, Sans-Serif;
  color:inherit;
  /* background-color:#DDEEFF; */
  padding:.3em;  /* modified */
  border:0;
  /* margin:0 0 .5em 0; */
  margin: 1em 0 .5em 0;  /* modified */

  /* modified add start */
  background-color: #6B4F33;
  color: white;
  border-radius: 5px 0 0 5px;
  margin-left: 1px;
  /* modified add end */
}
#contents h2 {
  font-size: 120%;
  padding: .2em;
  padding-left: .5em;
  height: max-content;
}  /* modified add */
h3 {
  font-family:verdana, arial, helvetica, Sans-Serif;
  font-size: 100%;  /* modified add */
  /*border-bottom:3px solid #DDEEFF;
  border-top:1px solid #DDEEFF;
  border-left:10px solid #DDEEFF;
  border-right:5px solid #DDEEFF;*/

  color:inherit;
  background-color:#FFFFFF;
  padding:.2em/*.3em*/;  /* modified */
  /* margin:0 0 .5em 0; */
  margin: 1em 0 .5em 0;  /* modified */

  /* modified add start */
  border-color: #6B4F33;
  border-style: solid;
  border-width: 2px 0px 3px 12px;
  border-radius: 5px 0 0 5px;
  background-color: #faf5d6;
  padding-left: .5em;
  margin-left: 1px;
  /* modified add end */
}
h4 {
  font-family:verdana, arial, helvetica, Sans-Serif;
  font-size: 100%;  /* modified add */
  /* border-left:18px solid #DDEEFF; */
  border-left:12px solid #6B4F33;  /* modified */

  color:inherit;
  background-color:#FFFFFF;
  padding:.2em/*.3em*/;  /* modified */
  /* margin:0 0 .5em 0; */
  margin: 1em 0 .5em 0;  /* modified */

  /* modified add start */
  padding-left: .5em;
  border-radius: 5px 0 0 5px;
  border-bottom: 2px solid #6B4F33;
  /* modified add end */
}
h5, h6 {
  font-family:verdana, arial, helvetica, Sans-Serif;
  color:inherit;
  /* background-color:#DDEEFF; */
  padding:.3em;
  border:0;
  /* margin:0 0 .5em 0; */
  margin:.5em 0 .5em 0;  /* modified */

  /* modified add start */
  background-color: #faf5d6;
  border-top: solid 1px #6B4F33;
  border-bottom: solid 1px #6B4F33;
  /* modified add end */
}
h1.title {
  /* font-size:30px; */
  font-size:24px;  /* modified */
  font-weight:bold;
  background-color:transparent;
  /* padding:12px 0 0 0; */
  padding:12px 12px 0 0;  /* modified */
  border:0;
  /* margin:12px 0 0 0; */
  margin-top: 0;  /* modified */

  /* modified add start */
  display: block;
  /* padding-left: 100px; */
  padding-left: 20px;
  /* modified add end */

  color: black;  /* modified add: 普通の文字（非リンク）を黒く */
}
h1.title > a {
  color: #6B4F33;
}  /* modified add: タイトルリンク色を茶色く */

dt {
  font-weight:bold;
  margin-top:1em;
  margin-left:1em;
}

pre {
  border-top:#DDDDEE 1px solid;
  border-bottom:#888899 1px solid;
  border-left:#DDDDEE 1px solid;
  border-right:#888899 1px solid;
  padding:.5em;
  margin-left:1em;
  margin-right:2em;
  white-space:pre-wrap;
  word-wrap:break-word;
  color:black;
  /* background-color:#F0F8FF; */
  background-color: #faf5d6;  /* modified */
}

img {
  border:none;
  vertical-align:middle;
}

ul {
  margin-top:0/*.5em*/;  /* modified */
  margin-bottom:.5em;
  line-height:130%;
}

em {
  font-style:italic;
}

strong {
  font-weight:bold;
}

thead td.style_td,
tfoot td.style_td {
  color:inherit;
  /* background-color:#D0D8E0; */
  background-color:#F3F3F3;  /* modified */
}
thead th.style_th,
tfoot th.style_th {
  color:inherit;
  /* background-color:#E0E8F0; */
  background-color:#F3F3F3;  /* modified */
}
.style_table {
  padding:0;
  border:0;
  margin: 10px 0px/*auto*/;  /* modified: 左寄せ＆上下に空白 */
  text-align:left;
  color:inherit;
  /* background-color:#ccd5dd; */
  background-color:#ffffff;  /* modified */
  border: #cccccc solid 1px;  /* modified add */
  border-collapse: collapse;  /* modified add */
}
.style_th {
  padding:5px;
  margin:1px;
  text-align:center;
  color:inherit;
  background-color:#EEEEEE;
  border: #cccccc solid 1px;  /* modified add */
}
.style_td {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#ffffff/*#EEF5FF*/;  /* modified */
  border: #cccccc solid 1px;  /* modified add */
}

ul.list1 {
  list-style-type:disc;
}
ul.list2 {
  list-style-type:circle;
}
ul.list3 {
  list-style-type:square;
}
ol.list1 {
  list-style-type:decimal;
}
ol.list2 {
  list-style-type:lower-roman;
}
ol.list3 {
  list-style-type:lower-alpha;
}

.list-indent1 {
  padding-left:16px;
  margin-left:0/*16px*/;  /* modified: 空きすぎ間隔を狭める */
}
/* list-indent2,3,4 are used for leaping list level indentation */
.list-indent2 {
  padding-left:32px;
  margin-left:0/*32px*/;  /* modified */
}
.list-indent3 {
  padding-left:48px;
  margin-left:0/*48px*/;  /* modified */
}
.list-indent4 {
  padding-left:64px;
  margin-left:0/*64px*/;  /* modified */
}

div.ie5 {
  text-align:left/*center*/;  /* modified */
}
span.noexists {
  color:#a63d21/*inherit*/;  /* modified */
  background-color:#FFFACC;
}
span.noexists>a {
  color:#a63d21;
}  /* modified add */

.small {
  font-size:80%;
}

.super_index {
  color:#DD3333;
  background-color:inherit;
  font-weight:bold;
  font-size:60%;
  vertical-align:super;
}

a.note_super {
  color:#DD3333;
  background-color:inherit;
  font-weight:bold;
  font-size:60%;
  vertical-align:super;
}

div.jumpmenu {
  font-size:60%;
  text-align:right;
  user-select:none;
}

hr.full_hr {
  border-style:ridge;
  border-color:#6B4F33/*#333333*/;  /* modified */
  border-width:1px 0;
}
div#body_main>main>hr.full_hr{
  margin-left: -.5em;
}  /* modified add: 本文中の区切り線は横幅いっぱいに */
hr.note_hr {
  width:90%;
  border-style:ridge;
  border-color:#6B4F33/*#333333*/;  /* modified */
  border-width:1px 0;
  text-align:center;
  margin:1em auto 0em auto;
  margin-bottom: 1em;  /* modified add: 場所移動によるレイアウト修正 */
}

span.size1 {
  font-size:xx-small;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size2 {
  font-size:x-small;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size3 {
  font-size:small;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size4 {
  font-size:medium;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size5 {
  font-size:large;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size6 {
  font-size:x-large;
  line-height:130%;
  text-indent:0;
  display:inline;
}
span.size7 {
  font-size:xx-large;
  line-height:130%;
  text-indent:0;
  display:inline;
}

/* html.php/catbody() */
strong.word0 {
  background-color:#FFFF66;
  color:black;
}
strong.word1 {
  background-color:#A0FFFF;
  color:black;
}
strong.word2 {
  background-color:#99FF99;
  color:black;
}
strong.word3 {
  background-color:#FF9999;
  color:black;
}
strong.word4 {
  background-color:#FF66FF;
  color:black;
}
strong.word5 {
  background-color:#880000;
  color:white;
}
strong.word6 {
  background-color:#00AA00;
  color:white;
}
strong.word7 {
  background-color:#886800;
  color:white;
}
strong.word8 {
  background-color:#004699;
  color:white;
}
strong.word9 {
  background-color:#990099;
  color:white;
}

/* html.php/edit_form() */
.edit_form {
  clear:both;
}
.edit_form textarea,.edit_form select {
  width:95%;
}

/* pukiwiki.skin.php */
div#header {
  padding:0;
  margin:0;
  word-break:break-all;
  /*width: 100%;*/  /* modified add */
  width: max-content;  /* modified add: 左上に移動した対応 */
  max-width: 100%;  /* modified add: ↑でデカくなりすぎないように */
  /*min-height: 80px;*/  /* modified add */

  position: absolute;  /* modified add: 配置を左上に変更 */
  font-family: verdana, arial, helvetica, Sans-Serif;  /* modified add */
}

div#navigator {
  clear:both;
  padding:4px 0 0 0;
  margin:0;
}

div#contents {
  display:flex;
  flex-flow:row nowrap;
  word-break:break-all;
  overflow-wrap:break-word;
  word-wrap:break-word;
}

div#menubar_outer_wrapper {
  order: 1;  /* #menubar の中から移動 */
}  /* modified add: #menubar のラッパーを追加 */
div#menubar {
  min-width:220px/*12em*/;  /* modified */
  max-width:220px/*12em*/;  /* modified */
  /* padding:0; */  /* modified */
  /* margin:4px; */
  /*margin-top: 0;*/  /* modified add */
  margin-bottom: 4px;
  margin-left: 4px;
  margin-right: 4px;

  font-size:90%;
  overflow:hidden;
  /* order:1; */  /* modified: ↑のラッパーに移動 */
  flex-grow:0;
  height: max-content !important;  /* modified add （Adsenseが勝手に上書きする…。） */
  /*padding-bottom: 10px;*/  /* modified add: 下がぎっちりするので隙間 */
  background-color: white;  /* modified add */

  /*margin-top: 100px;*/  /* modified add: ヘッダーが無くなった分空ける */
}
div#menubar ul {
  margin:0 0 0 1em;
  padding:0 0 0 .5em;
}
div#menubar ul li {
  line-height:inherit/*110%*/;  /* modified */
}
div#menubar h4 {
  /*font-size:110%;*/
  font-size: 100%;  /* modified */
}
#menubar h2:first-of-type {
  margin-top: 0;
}  /* modified add: #menubar の最初のh2は上にぴったりさせる */

#rightbar {
  min-width:14em;
  max-width:14em;
  padding:0;
  margin:4px;
  font-size:90%;
  overflow:hidden;
  order:3;
  flex-grow:0;
}
#rightbar ul {
  margin:0 0 0 1em;
  padding:0 0 0 .5em;
}
#rightbar ul li {
  line-height:110%;
}
#rightbar h4 {
  font-size:110%;
}

div#contents_body_wrapper {
  order:2;
  flex-grow:1;

  margin-top: 20px;  /* modified add: ヘッダーが無くなった分空ける */
  max-width: 100%;  /* modified add: うっかりはみ出しコンテンツが発生したときに抑える */
  min-width: 0;  /* modified add: なぜかこれが無いとPC版で最大横幅がbodyの100%になる */
}
div#header_bottom_ad {
  display: none;  /* PCは非表示（スマホは個別に表示設定する） */
  /* display: block; */
  /* max-height: 120px; */  /* これは効かない */
}  /* modified add: 横幅が広いならヘッダー下に広告は表示しない */
div#body {
  /* padding:0; */  /* modified */
  /* margin:0 0 0 .5em; */  /* modified */
  /*padding-left: 0.5em;*/  /* modified */
  /*padding-right: 1px;*/  /* modified add: ちょっとだけ隙間を空ける */
  /* max-width:98%; */  /* 既に2%ずつ狭まってるのに無意味に狭くなってる気がするので除外 */
  height: max-content;  /* modified add */
  background-color: white;  /* modified add */

  margin-top: 10px;  /* modified add: バナー広告と間を空ける */

  /*overflow-x: hidden*/;  /* modified add: はみ出し対策（わざとはみ出すコンテンツが欠ける） */
}
div#body_main {  /* modified: 中身にdivを追加したので一部を#bodyから移行 */
  /* padding:0; */  /* modified */
  /* margin:0 0 0 .5em; */  /* modified */
  padding-left: 0.5em;  /* modified */
  /*padding-right: 1px;*/  /* modified add: ちょっとだけ隙間を空ける */
}

div#note {
  clear:both;
  padding:0;
  margin:0;
  word-break:break-all;
  padding: 1em .5em 0 .5em;  /* modified add: 場所移動によるレイアウト修正 */
}
div#attach {
  clear:both;
  padding:0;
  margin:0;
}
div#toolbar {
  clear:both;
  padding:0;
  margin:0;
  text-align:right;
}
div#lastmodified {
  font-size:80%;
  padding:0;
  margin:0;
}
div#related {
  font-size:80%;
  padding:0;
  margin:16px 0 0 0;
}
div#related .page_passage {
  font-size:60%;
}
div#footer {
  font-size:70%;
  padding:0;
  margin:16px 0 0 0;
  text-align: center;  /* modified: add */
}
div#banner {
  float:right;
  margin-top:24px;
}
div#preview {
  color:inherit;
  background-color:#F5F8FF;
}
/*img#logo {*/
/*a#logo {*/  /* modified: リンクが分離してたので一緒にした */
#logo > img {  /* modified: タイトルらへんのヘッダーをごっそり左上に移動した */
  /* float:left; */
  /* margin-right:20px; */  /* modified: absoluteにしたので不要 */

  /* modified add start: ロゴを左上てっぺんにひっつける */
  position: absolute;
  /* top: 0; */
  /* modified add end */

  margin-top: -80px;  /* modified add: 高さを倍にした分だけ上端の上に更にはみ出す */
}

/* aname.inc.php */
.anchor_super {
  font-size:xx-small;
  vertical-align:super;
  margin-left:.5em;
}

/* list.inc.php */
.page_passage {
  font-size:small;
}

/* calendar*.inc.php */
.style_calendar {
  padding:0;
  border:0;
  margin:3px;
  color:inherit;
  background-color:#CCD5DD;
  text-align:center;
}
.style_td_caltop {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#EEF5FF;
  font-size:80%;
  text-align:center;
}
.style_td_today {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#FFFFDD;
  text-align:center;
}
.style_td_sat {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#DDE5FF;
  text-align:center;
}
.style_td_sun {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#FFEEEE;
  text-align:center;
}
.style_td_blank {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#EEF5FF;
  text-align:center;
}
.style_td_day {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#EEF5FF;
  text-align:center;
}
.style_td_week {
  padding:5px;
  margin:1px;
  color:inherit;
  background-color:#DDE5EE;
  font-size:80%;
  font-weight:bold;
  text-align:center;
}

/* calendar_viewer.inc.php */
div.calendar_viewer {
  color:inherit;
  background-color:inherit;
  margin-top:20px;
  margin-bottom:10px;
  padding-bottom:10px;
}
span.calendar_viewer_left {
  color:inherit;
  background-color:inherit;
  float:left;
}
span.calendar_viewer_right {
  color:inherit;
  background-color:inherit;
  float:right;
}

/* clear.inc.php */
.clear {
  margin:0;
  clear:both;
}

/* counter.inc.php */
div.counter {
  font-size:70%;
}

/* diff.inc.php */
span.diff_added {
  color:blue;
  background-color:inherit;
  background-color: skyblue;  /* modified add start */
  display: inline-block;
  width: 100%;  /* modified add end */
}
span.diff_removed {
  color:red;
  background-color:inherit;
  background-color: pink;  /* modified add start */
  display: inline-block;
  width: 100%;  /* modified add end */
}
/* modified add start: 空行も色付き行にする */
.diff_added:empty::after, .diff_removed:empty::after {
  content: "\a";  /* 直後に改行を追加（コピペはされない） */
}
/* modified add end */

/* hr.inc.php */
hr.short_line {
  text-align:center;
  width:80%;
  border-style:solid;
  border-color:#6B4F33/*#333333*/;  /* modified */
  border-width:1px 0;
}

/* include.inc.php */
h5.side_label {
  text-align:center;
}

/* navi.inc.php */
ul.navi {
  margin:0;
  padding:0;
  text-align:center;
}
li.navi_none {
  display:block;
  float:none;
}
li.navi_left {
  display:block;
  float:left;
  text-align:left;
}
li.navi_right {
  display:block;
  float:right;
  text-align:right;
}

/* new.inc.php */
span.comment_date {
  font-size:x-small;
}
span.new1 {
  color:red;
  background-color:transparent;
  font-size:x-small;
}
span.new5 {
  color:green;
  background-color:transparent;
  font-size:xx-small;
}

/* comment.inc.php */
._p_comment_form input[name="msg"] {
  max-width:90%;
}

/* pcomment.inc.php */
._p_pcomment_form input[name="msg"] {
  max-width:90%;
}
._p_pcomment_form input[name="name"] {
  font-size: medium;
}  /* modified add: 名前のサイズを中に */

/* article.inc.php */
._p_article_form input[name="subject"] {
  max-width:82%;
}

/* popular.inc.php */
span.counter {
  font-size:70%;
}

/* ref.inc.php */
div.img_margin {
  margin-left:32px;
  margin-right:32px;
}

/* vote.inc.php */
td.vote_label {
  color:inherit;
  /*background-color:#FFCCCC;*/
  background-color: #EEEEEE;  /* modified */
  /*border: #cccccc solid 1px;*/  /* modified add */
}
td.vote_td1 {
  color:inherit;
  /* background-color:#DDE5FF; */
  background-color: #ffffff;  /* modified */
}
td.vote_td2 {
  color:inherit;
  /* background-color:#EEF5FF; */
  background-color: #faf5d6;  /* modified */
}

/* topicpath.inc.php */
span.topicpath-slash {
  margin:0 0.2em;
}
span.topicpath-top {
  user-select:none;
}

/* bugtrack.inc.php */
tr.bugtrack_list_header th {
  background-color:#ffffcc;
}
tr.bugtrack_list_header th:nth-child(1) {
  min-width: 7em;
}
tr.bugtrack_list_header th:nth-child(2) {
  min-width: 2em;
}
tr.bugtrack_list_header th:nth-child(3) {
  min-width: 4em;
}
tr.bugtrack_list_header th:nth-child(4) {
  min-width: 4em;
}
tr.bugtrack_list_header th:nth-child(5) {
  min-width: 3em;
}
tr.bugtrack_state_proposal td {
  background-color:#ccccff;
}
tr.bugtrack_state_accept td {
  background-color:#ffcc99;
}
tr.bugrack_state_resolved td {
  background-color:#ccffcc;
}
tr.bugtrack_state_pending td {
  background-color:#ffccff;
}
tr.bugtrack_state_cancel td {
  background-color:#cccccc;
}
tr.bugtrack_state_undef td {
  background-color:#ff3333;
}
._p_bugtrack_form input[name="summary"],
._p_bugtrack_form textarea {
  box-sizing:border-box;
  width:35em;
  max-width:99.5%;
}

/* tracker.inc.php */
._p_tracker_form th {
  min-width:5em;
}

/* search2.inc.php  */
.search-result-page-summary {
  font-size:70%;
  color:gray;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Mobile-friendly Responsive layout */
@media (max-width:767px) {
/*@media (max-width:850px) {*/  /* modified: なんか横スクロールバーが発生するようになったので拡張⇒直ったので取りやめ */
  div#contents {
    flex-flow:column wrap;
  }
  div#menubar_outer_wrapper {
    order: 2;  /* #menubar の中から移動 */
  }  /* modified add: #menubar のラッパーを追加 */
  div#menubar {
    width:auto;
    /* max-width:none; */
    font-size:100%;
    /* order:2; */  /* modified: ↑のラッパーに移動 */
    margin: 0;  /* 右にズレるので余白をリセット */
    max-width: 100%;  /* 中身が膨れないようにガワをカチカチにする */
    margin-top: 30px !important;  /* .wikititle_spacer のmarginを縮める */
  }
  div#rightbar {
    width:auto;
    max-width:none;
    font-size:100%;
    order:3;
  }
  /*div#body {*/
  div#contents_body_wrapper {  /* modified: ラッパー追加 */
    order:1;
    width: 100%;  /* modified: 横幅びっちりにする */
    max-width: 100%;  /* modified: こっちも */
    margin-top: 100px;  /* modified add: ヘッダーが無くなった分空ける */
  }
  div#header_bottom_ad {
    display: block;
    width: calc(100% / 0.96);  /* 広告枠は画面いっぱいにしとく */
    margin-left: calc(100% / 0.96 * -0.02);
    text-align: center;
  }  /* modified add: 横幅が狭いならヘッダー下に広告表示 */
  div#body img {
    /*max-width:95%;*/
    max-width: 100%;
    /*height:auto;*/
  }  /* modified: 改良 */

  ._p_tracker_form th,._p_tracker_form td {
    display:block;
    text-align:left !important;
    width:auto !important;
    margin:0;
  }
  ._p_tracker_form td input[type=text],
  ._p_tracker_form td textarea {
    box-sizing:border-box;
    width:99.5%;
  }

  tr.bugtrack_list_header th:nth-child(1) {
    min-width: 4em;
  }
  tr.bugtrack_list_header th:nth-child(2) {
    min-width: 1em;
  }
  tr.bugtrack_list_header th:nth-child(3) {
    min-width: 1em;
  }
  tr.bugtrack_list_header th:nth-child(4) {
    min-width: 3em;
  }
  tr.bugtrack_list_header th:nth-child(5) {
    min-width: 3em;
  }
  ._p_bugtrack_form th,._p_bugtrack_form td {
    display:block;
    text-align:left !important;
    margin:0;
  }
  ._p_bugtrack_form input[name="summary"],
  ._p_bugtrack_form textarea {
    box-sizing:border-box;
    width:99.5%;
  }

  /* modified add start */
  /* 横幅が狭いときに表セルの横padding・テキストの間隔を縮める */
  table.full_width .style_td {
    padding: 5px 1px;
    line-height: 120%;
  }
  table.full_width .sort {
    padding-bottom: 16px;  /* 追加：ソート矢印のぶんは空ける */
  }
  /* 表を限界いっぱいまで横に拡げる */
  table.full_width {
    width: calc((100% + 0.5em * 0.90) / 0.96 - 2px);  /* iPhoneで微妙にはみ出るので固定値を削る */
    margin-top: 10px;
    margin-right: calc(-1 * (100% + 0.5em * 0.90) / 0.96 * 0.02);
    margin-bottom: 0;
    margin-left: calc(-1 * (100% + 0.5em * 0.90) / 0.96 * 0.02 - 0.5em * 0.90);
    /*overflow-x: hidden;*/  /* 一応設定するがあまり意味ない */
  }

  /* クラス指定があれば表以外も限界いっぱいに拡げる */
  :not(table).full_width {
    width: calc((100% + 0.5em * 0.90) / 0.96 - 2px);  /* iPhoneで微妙にはみ出るので固定値を削る */
    margin-right: calc(-1 * (100% + 0.5em * 0.90) / 0.96 * 0.02);
    margin-left: calc(-1 * (100% + 0.5em * 0.90) / 0.96 * 0.02 - 0.5em * 0.90);
  }
  /* 表以外の .full_width の中身のただの表（table.full_width からほぼコピペ） */
  :not(table).full_width table:not(.full_width) .style_td {
    padding: 5px 1px;
    line-height: 120%;
  }
  :not(table).full_width table:not(.full_width) .sort {
    padding-bottom: 16px;  /* 追加：ソート矢印のぶんは空ける */
  }
  :not(table).full_width table:not(.full_width) {
    width: 100%;  /* 最大幅 */
    margin-top: 10px;
    margin-bottom: 0;
  }

  /* 横幅が狭いときにタイトルのpaddingを縮める */
  /* h1.title {
    padding-top: 0;
    padding-left: 80px;
  }*/

  /* ロゴ横のwikiタイトルを改行無しにする */
  #wikititle_text > br {
    display: none;
  }

  /* お知らせエリアの上のメニューボタン避けの隙間を空けない */
  /*#pagetop_notice_area {
    margin-top: 5px;
  }*/  /* 場所を変えたので不要 */

  /* メニューのリストの間隔を空ける */
  div#menubar ul li {
    /* line-height: 150%; */
    margin-top: 0.5em;
    margin-bottom: 0.5em;
  }

  /* ul の隙間が空きまくるのを縮める */
  ul {
    padding-left: 1em;
  }

  /* 差分・編集履歴 の pre の表示幅を拡げる */
  pre.backup_source {
    margin-left: -.5em;
    margin-right: 0;
  }

  /* modified add end */
}

@media print {
  a:link,
  a:visited {
    text-decoration:underline;
  }
  img#logo,
  div#navigator,
  div#menubar,
  div#rightbar,
  div#related,
  div#attach,
  div#toolbar {
    display:none;
  }
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*                                                                 */
/* modified add start: 以下、好きに追加したCSS定義（含プラグイン）     */
/*                                                                 */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */


/* キャンセルボタンとかいう謎要素を非表示に */
._plugin_edit_cancel {
  /* visibility: hidden; */
  display: none;
}


/* https://dajya-ranger.com/pukiwiki/sortable-table-plugin/ */
/* sortable-table.js */
.sort-arrow {
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 2px;
  background-image: url("../image/sort-blank.png");
}
.sort-arrow.descending {
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 2px;
  background-image: url("../image/sort-descending.png");
}
.sort-arrow.ascending {
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 2px;
  background-image: url("../image/sort-ascending.png");
}
/* filterable-table.js */
.filter-box {
  width: 100%;
  width: calc(100% - 6px);  /* modified add */
  height: 1.5em;
  margin: 0;
}


/* region: 好きに変更してある */
div.divregion_summary {
  background-color: white;
  border:gray 1px solid;
  position: relative;
  border-radius: 3px;
  /* width: max-content; */  /* これをやると幅が広いとはみ出る */
  padding: 5px 5px 5px 0;
  margin: 2px 0;
  max-width: inherit;
  cursor:pointer;
  /* user-select: none; */
  display: inline-block;  /* width: max-content の代わり */
}
div.divregion_button {
  height:14px;
  left:0;
  line-height:14px;
  position:absolute;
  text-align:center;
  top:0;
  width:14px;
  /* margin: 2px; */
  color:gray;
  margin: auto;
  bottom: 0;
  left: 3px;
}
div.divregion_title {
  position:relative;
  padding-left: 20px;
}
div.divregion_contents{
  border-bottom: solid 1px gray;
  border-left: solid 1px gray;
  padding-left: 1em;
  margin-bottom: 14px;
}
div.divregion_h1{
  color:inherit;
  background-color:#DDEEFF;
  padding:1px 4px;
  position:relative;
}
div.divregion_h2{
  border-bottom: solid 1px #DDEEFF;
  border-left: solid 10px #DDEEFF;
  position:relative;
}
div.divregion.closed > div > .divregion_button::before {
  content: "＋";
}
div.divregion.opened > div > .divregion_button::before {
  content: "－";
}
div.divregion.closed > .divregion_contents {
  display: none;
}


/* メニューボタン（頑張って作った） */
#menubutton {
  position: fixed;
  left: auto;
  right: 0;
  top: 0;
  padding: 10px 5px;
  background: skyblue;
  opacity: 0.4;
  font-weight: bold;
  border-radius: 10% / 0 0 0 30%;
  user-select: none;
  cursor: pointer;
  cursor: hand;

  z-index: 999;  /* 最前面に表示する */
}

/* タイムスタンプを更新しないオプションのコーナーを隠す */
.no_timestamp_option {
  /* visibility: hidden; */
  display: none;
}

/* 編集画面のプレビューボタン系に隙間を空ける */
#editpage_submit_buttons {
  margin: 5px;
}

/* #search() の検索コーナーのAND/ORのラジオボタンを隠す */
.plugin_search_form label {
  display: none;
}
/* ついでに見た目調整 */
.plugin_search_form {
  display: flex;
  margin: 0 5px;
  align-items: center;  /* 上下真ん中 */
}
.plugin_search_form > input[type="search"],
._plugin_search2_form input[type="search"] {
  border-radius: 5px;
  font-size: medium;
  flex-grow: 1;
  min-width: 0;  /* なんかはみ出る問題に対処：https://qiita.com/mpyw/items/dfc63c1fed5dfc5eda26 */
}
.plugin_search_form > input[type="submit"],
._plugin_search2_form input[type="submit"] {
  border-radius: 5px;
  margin-left: 5px;
  font-size: medium;  /* Safari用 */
}


/* 動的非表示＆再表示用 */
.display_none, .display_none_level2 {
  display: none;
}
.display_none_important {
  display: none !important;
}
/* フォームボタン2連打禁止用 */
.pointer_events_none {
  pointer-events: none;
  color: gray;
}

/* List.js のソート後の▲▼ */
/*.list_js_table .sort:after {
  content: url("/image/sort-blank.png");
  display: block;
}
.list_js_table .sort.asc:after {
  /* content: "▲"; * /
  content: url("/image/sort-ascending.png");
  display: block;
}
.list_js_table .sort.desc:after {
  /* content: "▼"; * /
  content: url("/image/sort-descending.png");
  display: block;
}*/
.list_js_table .sort {
  background-repeat: no-repeat;
  background-position: center bottom 3px;
  padding-bottom: 16px;

  background-image: url("/image/sort-blank.png");
}
.list_js_table .sort.asc {
  background-image: url("/image/sort-ascending.png");
}
.list_js_table .sort.desc {
  background-image: url("/image/sort-descending.png");
}

/* List.js の検索窓 */
.list_js_search {
  width: 16em;
  font-size: medium;
  border-radius: 10px;
  padding: 5px 10px;
}

/* メインカラムとサイドバーの下部を丸っこくするやつ */
.cardlike_top {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  padding-top: 30px;
  border-top: solid #6B4F33;
  /* margin-top: 20px; */
}
.cardlike_bottom {
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px;
  padding-bottom: 40px;
  border-bottom: solid #6B4F33;
  margin-bottom: 20px;
}
html {
  min-height: 100%;  /* 縦に短いページでも背景が最下部まで行くように */
}

/* table_edit2 の鉛筆が小さくなりすぎないように */
.tableedit2_pencil {
  min-width: 9px;
}

/* 下線 */
.underline {
  /* border-bottom: solid 1px; */
  text-decoration-line: underline;  /* メイリオと相性が悪いので普通の下線に */
}


/* 大規模レイアウト変更 */
#wikititle_text {
  font-size: 20px;
  font-weight: bold;
  color: #6B4F33;

  margin-left: 60px;
  margin-top: 25px;

  line-height: 1.2;  /* 行間を狭めにする */
}

#body_header {
  margin-bottom: 10px;
  /* margin-left: -0.5em; */
  /* background: linear-gradient(transparent, #faf5d6 50%); */
  /*! background-color: #faf5d6;*/
  margin-top: -30px;  /* .cardlike_top の padding-top: 30px の分だけバック */
  /*margin-right: -1px;*/  /* body の margin-right と対応*/
}

#body_header_top {
  /* display: flex; */
  /* justify-content: space-between; */
  background-color: #faf5d6;
  border-radius: 30px 30px 0 0;
  border-bottom: solid #6B4F33 2px;

  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 5px;

  margin-bottom: 1em;
}

#body_header_right {
  /* margin-top: 20px;
  margin-right: 10px; */

  text-align: right;
  font-size: smaller;
  min-width: max-content;
  margin-bottom: 10px;
}

#edit_menu {
  margin: 0 0 0 auto;
  padding: 5px 30px;

  background-color: #faf5d6;
  border: solid 1px #6B4F33;
  border-radius: 12px;

  font-size: small;
  /* min-width: max-content; */
  /* width: max-content; */

  display: inline-block;
  text-align: left;
}
#edit_menu > ul {
  padding-left: 1em;
  line-height: 2;
}

.wikititle_spacer {
  /* wikiタイトルと被らないようにするやつ */
  margin-top: 100px !important;
}
/* 大規模レイアウト変更ここまで */


/* button の見た目をリンクっぽくするやつ */
button.linklike{
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;

  color: #215dc6;
}
button.linklike:hover{
  color: #215dc6;
  background-color: #CCDDEE;
  text-decoration: underline;
}

/* ボタンの上下に隙間を空ける */
input[type="submit"], input[type="file"], button {
  margin: 5px auto;
}
/* Safariでボタンの文字サイズが小さくなるので固定値にする */
input[type="submit"], button {
  font-size: 1em;
}

/* 旧型ファイル添付ボタンの隙間はびっちりにする */
._p_pcomment_fileselector_oldtype > input[type="file"]:not(:last-of-type) {
  margin-bottom: 0;
}
._p_pcomment_fileselector_oldtype > input[type="file"]:not(:first-of-type) {
  margin-top: 0;
}

/* ヘッダーらへんに表示するお知らせエリア */
#pagetop_notice_wrapper {
  /*margin: 20px 0 5px 0;*/  /* メニューボタンと被るので上に隙間を空ける（スマホ版は空けない） */
  margin: 5px .5em 10px .5em;  /* 場所を移動したので隙間は普通に */

  text-align: center;
}
#pagetop_notice_area {
  background: #faf5d6;
  padding: 5px 10px;
  border: solid #6B4F33 3px;
  border-radius: 20px;

  display: inline-block;  /* text-align: center 用 */
}
#pagetop_notice_title {
  position: relative;  /* ×ボタン用 */

  color: #6B4F33;
  font-weight: bold;
  text-align: center;
}
#pagetop_notice_contents {
  padding: 0 .5em;
  text-align: center;
}
#pagetop_notice_closer {  /* ×ボタン */
  position: absolute;
  top: 0;
  right: 10px;

  cursor: pointer;
}

/* フッターの関連コンテンツが邪魔くさいのでとりあえず適当に非表示 */
#contents_footer {
  width: 100%;
  display: none;
}

/* backup でソース表示をtextareaにした対応 */
#backup_source {
  width: 100%;
  height: min(30em, 50vh);
  font-size: small;
}

/* #pcomment のコメント欄の添付画像（lightbox） */
.pcomment_area li > ._p_ref_wrap,
.pcomment_area ._p_pcomment_image_preview > ._p_ref_wrap {
  margin-top: 5px;  /* img にやると a の中身に隙間ができるので */
  display: inline-block;  /* ↑の margin を効かせるため（inlineだとテキストの高さになる） */
}
.pcomment_area li > ._p_ref_wrap,
.pcomment_area ._p_pcomment_image_preview > ._p_ref_wrap {
  border: solid 1px lightgray;
}

/* 画像プレビューコーナーの上の隙間を調整 */
.pcomment_area ._p_pcomment_image_preview {
  margin-top: -5px;
}
.pcomment_area ._p_pcomment_image_preview:empty {
  margin-top: 0;
}


/* #pcomment の体裁を綺麗に：ここから */
.pcomment_area > form > hr,
#body_main.pcomment_area > main > hr,
#body_main.pcomment_area > main > div#preview > hr {
  display: none;  /* 区切り線をとりあえず非表示 */
}

/* レベル1 ul */
.pcomment_area ul.list1 {
  /* margin-right: .5em; */
  margin-right: 0;
  margin-bottom: 0;
  margin-left: -.5em;  /* padding-left の分だけ左にはみ出す */

  border-top: solid 2px #6b4f33;

  padding: .5em;
  padding-right: 0;

  list-style-type: none;  /* 箇条書きの黒点を消す */
}
.pcomment_area ul.list1:last-of-type {
  border-bottom: solid 2px #6b4f33;  /* 最後に枠線 */
}
.pcomment_area ul.list1:nth-of-type(2n+1) {
  background-color: #faf5d6;  /* 奇数行を色付き背景にする */
}

/* レベル2以降 ul */
.pcomment_area ul.list2 {
  margin: .5em;
  margin-bottom: 0;
  padding: 0;
}

/* レベル2以降 ul>li */
.pcomment_area ul.list2 > li {
  margin-left: 16px;

  border: solid 2px #6b4f33;  /* 4辺の上と左右に枠線 */
  border-bottom: none;
  border-radius: 5px;

  padding: .5em;

  background-color: white;
  list-style-type: disc;     /* 黒点でレベル1っぽくする（↓が非対応のやつ向け） */
  list-style-type: '\27A1';  /* ⇒ の絵文字にする */
}
.pcomment_area ul.list2 > li:last-of-type {
  border-bottom: solid 2px #6b4f33;  /* 最後の下に枠線 */
}

/* #pcomment の体裁を綺麗に：ここまで */


/* 取消線をもうちょっと目立つように2重線に */
del {
  text-decoration-style: double;
}

/* デバッグ出力コーナー */
#debug_info {
  display: none;

  position: fixed;
  bottom: 0;
  left:   0;
  right:  0;
  /* width: 100%; */

  background-color: black;
  color: white;
  opacity: 0.5;

  z-index: 9999;  /* 最前面に出しとく */
}

/* テーブル行編集のヘッダをちょっと小さく */
#table_edit2 th {
  font-size: 90%;
  font-weight: normal;
}

/* テーブル行編集の入力欄がスマホで拡大されないように */
#table_edit2 input[type="text"] {
  font-size: medium;

  /* デカくなりすぎないように */
  width: 100%;
  box-sizing: border-box;
}

/* 1列目が空＆2列目が table_edit2 の鉛筆だったときは非表示（疑似区切り線用） */
div.ie5 table.style_table tr > td:nth-of-type(1):empty + td:nth-of-type(2)
    > a > img.tableedit2_pencil {
  display: none;
}

/* table_row_visibility_switcher.html などその辺を囲むやつ用 */
.wiki_utilities_wrapper {
  text-align: center;
}
.wiki_utilities_container {
  display: inline-block;
  text-align: center;

  background: #faf5d6;
  padding: 10px 20px;
  border: solid #6B4F33 2px;
  border-radius: 10px;
  margin-bottom: .5em;
}

/* ホーム画面にブックマークを追加しませんかの画面下部固定お知らせコーナー */
#bookmark_notice_wrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;

  text-align: center;
}
#bookmark_notice {
  display: inline-flex;
  position: relative;

  background-color: #faf5d6;
  color: #6B4F33;

  border-top: solid 2px #6B4F33;
  border-left: solid 1px #6B4F33;
  border-right: solid 1px #6B4F33;
  border-radius: 20px 20px 0 0;
  padding: 1em 2.5em 1em .5em;

  z-index: 9999;  /* 最前面に出しとく */
}
#bookmark_notice > img {
  margin: auto .5em auto 0;
  border: solid #6B4F33 1px;
  border-radius: 25%;

  height: 100%;
  max-height: 20vw;
}
#bookmark_notice_contents {
  margin-top: auto;
  margin-bottom: auto;

  color: black;
  text-align: center;
}
#bookmark_notice_closer {
  position: absolute;
  right:0;
  top: 0;
  width: 1.5em;

  font-size: 2em;
  text-align: center;

  cursor:pointer;
}

/* レインボー（ネタ） */
@keyframes rainbow1 {
  0%    { color: #F00; }
  16.6% { color: #FF0; }
  33.3% { color: #0F0; }
  50.0% { color: #0FF; }
  66.6% { color: #00F; }
  83.3% { color: #F0F; }
  100%  { color: #F00; }
}

.rainbow, .rainbow1 {
	animation: rainbow1 3s linear infinite;
}

/* 流れるレインボー */
@keyframes rainbow2 {
  from { background-position-x:   0%; }
  to   { background-position-x: 200%; }
}

.rainbow2 {
	background-image: repeating-linear-gradient(
		to right, #F00, #FF0, #0F0, #0FF, #00F, #F0F, #F00
	);
	background-size: 200%;
	animation: rainbow2 2s linear infinite;

	background-clip: text;
	-webkit-background-clip: text;  /* Chrome用 */
	-webkit-text-fill-color: transparent;  /* 非対応以外で透明 */
}
