body {
  padding: 0;
  margin: 0;
}

body * {
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

body > div {
  width: 480px;
}

h1, h2, h3, h4, h5, h6 {
  padding-top: 5px;
  padding-bottom: 5px;
}

/* tableの罫線設定 */
table {
  border-collapse: collapse;
  border: 2px solid;
}

/* tableのhide設定 */
.caption_only > *:not(caption) {
  display: none;
}
.caption_only > caption {
  margin-bottom: 0;
}

/* table-headerの背景色 */
th {
  background: #eee;
}

/* table-cellの罫線設定 */
tr > * {
  white-space: nowrap;
  border: 1px solid;
}

/* theadとtbodyの境界線 */
tbody tr:first-child  > * {
  border-top: 2px solid;
}

/* table-cellの右罫線削除 */
table .nobdr {
  border-right-style: none;
}

/* table-cellの左罫線削除 */
table .nobdl {
  border-left-style: none;
}

/* 親密度テーブル 取得値と計算値の境界線（3列目右罫線） */
table[name=friendly] tr > *:nth-child(3) {
  border-right: 2px solid;
}

/* カウントテーブル 左ヘッダとの境界線 */
table[name=count] tr > th:first-child {
  border-right: 2px solid;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button
{
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

div[name=change_table_relative] {
  position: relative;
  left: unset;
  right: unset;
  margin: 0;
  width: 160px;
}

div[name=change_table_text] {
  position: absolute;
  width: 158px;
  height: 38px;
  border: 1px solid;
}

div[value=exceed] .exceed {
  display: unset;
  line-height: 40px;
  left: 5px;
}

div[value=before_m] .before_m {
  display: unset;
  line-height: 20px;
  left: 5px;
}

div[value=before_c] .before_c {
  display: unset;
  line-height: 20px;
  left: 5px;
}

div[value=reachable] .reachable {
  display: unset;
  line-height: 20px;
}

div[name=change_table_triangle] {
  position: absolute;
  top: 12.5px;
  right: 0px;
  left: unset;
  width: 7px;
  height: 7px;
  margin: 0;
  border-left: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(-45deg);
}

select[name=change_table_select] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  font-size: 25px;
  border: 1px solid;
  width: 170px;
  height: 40px;
}

select[name=change_table_select] option {
  font-size: 12px;
}

.header {
  background: #cff;
}

.footer {
  background: #eee;
}

.button {
  border: 2px solid #333;
  border-radius: 5px;
  background: #eee;
  cursor: pointer;
}

.bookmarklet {
  left: 0;
  right: 0;
  width: 80%;
  margin: auto;
  font-weight: bold;
  color: #36f;
  border: 3px solid #6cf;
  border-radius: 10px;
  background: #cef;
  cursor: pointer;
}

.input_bg {
  background: #ffd;
  border-radius: 10000px;
  padding: 0 5px;
}

.modal_back {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000a;
}

.fade {
  transition: opacity 1s, visibility 0s ease 1s;
  opacity: 0;
  visibility: hidden;
}

/* showを追加、削除：トランジションによるフェードイン、フェードアウト */
.fade.show {
  transition-delay: 0s;
  opacity: 1;
  visibility: visible;
}

.modal_frame {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 450px;
  height: 90vh;
  margin: auto;
  border: 3px solid #ccc;
  border-radius: 30px;
  background: #fff;
  overflow-y: auto;
}

.usage {
  left: 0;
  right: 0;
  width: 420px;
  margin: 15px auto;
}

.close_button {
  position: absolute;
  left: unset;
  right: calc(50% - 210px);
  top: calc(5vh + 10px);
  border: 2px solid;
  border-radius: 15px;
  background: #eee;
  cursor: pointer;
}

.bookmarklet_text {
  width: 100%;
  height: auto;
}

.nodisp {
  display: none;
}

/* 親密度テーブル モード: countのとき */
table.disp_mode_count .mode_reach { display: none; }

/* 親密度テーブル モード: reachのとき */
table.disp_mode_reach .mode_count { display: none; }

/* 到達可能: 通常時（800到達！！は見せない）*/
.reach800 { display: none }

/* 到達可能: 800到達時（trに.disp800trを追加） */
tr.disp800tr .reach800 { display: inline; }
tr.disp800tr .reachXXX { display: none; }

.w5	{ width: 5px; }
.w10	{ width: 10px; }
.w15	{ width: 15px; }
.w20	{ width: 20px; }
.w25	{ width: 25px; }
.w30	{ width: 30px; }
.w35	{ width: 35px; }
.w40	{ width: 40px; }
.w45	{ width: 45px; }
.w50	{ width: 50px; }
.w55	{ width: 55px; }
.w60	{ width: 60px; }
.w65	{ width: 65px; }
.w70	{ width: 70px; }
.w75	{ width: 75px; }
.w80	{ width: 80px; }
.w85	{ width: 85px; }
.w90	{ width: 90px; }
.w95	{ width: 95px; }
.w100	{ width: 100px; }
.w105	{ width: 105px; }
.w110	{ width: 110px; }
.w115	{ width: 115px; }
.w120	{ width: 120px; }
.w125	{ width: 125px; }
.w130	{ width: 130px; }
.w135	{ width: 135px; }
.w140	{ width: 140px; }
.w145	{ width: 145px; }
.w150	{ width: 150px; }
.w155	{ width: 155px; }
.w160	{ width: 160px; }
.w165	{ width: 165px; }
.w170	{ width: 170px; }
.w175	{ width: 175px; }
.w180	{ width: 180px; }
.w185	{ width: 185px; }
.w190	{ width: 190px; }
.w195	{ width: 195px; }
.w200	{ width: 200px; }
.w205	{ width: 205px; }
.w210	{ width: 210px; }
.w215	{ width: 215px; }
.w220	{ width: 220px; }
.w225	{ width: 225px; }
.w230	{ width: 230px; }
.w235	{ width: 235px; }
.w240	{ width: 240px; }
.w245	{ width: 245px; }
.w250	{ width: 250px; }
.w255	{ width: 255px; }
.w260	{ width: 260px; }
.w265	{ width: 265px; }
.w270	{ width: 270px; }
.w275	{ width: 275px; }
.w280	{ width: 280px; }
.w285	{ width: 285px; }
.w290	{ width: 290px; }
.w295	{ width: 295px; }
.w300	{ width: 300px; }
.w305	{ width: 305px; }
.w310	{ width: 310px; }
.w315	{ width: 315px; }
.w320	{ width: 320px; }
.w325	{ width: 325px; }
.w330	{ width: 330px; }
.w335	{ width: 335px; }
.w340	{ width: 340px; }
.w345	{ width: 345px; }
.w350	{ width: 350px; }
.w355	{ width: 355px; }
.w360	{ width: 360px; }
.w365	{ width: 365px; }
.w370	{ width: 370px; }
.w375	{ width: 375px; }
.w380	{ width: 380px; }
.w385	{ width: 385px; }
.w390	{ width: 390px; }
.w395	{ width: 395px; }
.w400	{ width: 400px; }
.w405	{ width: 405px; }
.w410	{ width: 410px; }
.w415	{ width: 415px; }
.w420	{ width: 420px; }
.w425	{ width: 425px; }
.w430	{ width: 430px; }
.w435	{ width: 435px; }
.w440	{ width: 440px; }
.w445	{ width: 445px; }
.w450	{ width: 450px; }
.w455	{ width: 455px; }
.w460	{ width: 460px; }
.w465	{ width: 465px; }
.w470	{ width: 470px; }
.w475	{ width: 475px; }
.w480	{ width: 480px; }

.h5	{ height: 5px; }
.h10	{ height: 10px; }
.h15	{ height: 15px; }
.h20	{ height: 20px; }
.h25	{ height: 25px; }
.h30	{ height: 30px; }
.h35	{ height: 35px; }
.h40	{ height: 40px; }
.h45	{ height: 45px; }
.h50	{ height: 50px; }
.h55	{ height: 55px; }
.h60	{ height: 60px; }
.h65	{ height: 65px; }
.h70	{ height: 70px; }
.h75	{ height: 75px; }
.h80	{ height: 80px; }
.h85	{ height: 85px; }
.h90	{ height: 90px; }
.h95	{ height: 95px; }
.h100	{ height: 100px; }

.t_c	{ text-align: center; }
.t_r 	{ text-align: right; }
.t_l 	{ text-align: left; }

.m_1	{ margin: 1px; }
.m_v1	{ margin: 1px 0; }
.m_h1	{ margin: 0 1px; }
.m_2	{ margin: 2px; }
.m_v2	{ margin: 2px 0; }
.m_h2	{ margin: 0 2px; }
.m_3	{ margin: 3px; }
.m_v3	{ margin: 3px 0; }
.m_h3	{ margin: 0 3px; }
.m_4	{ margin: 4px; }
.m_v4	{ margin: 4px 0; }
.m_h4	{ margin: 0 4px; }
.m_5	{ margin: 5px; }
.m_v5	{ margin: 5px 0; }
.m_h5	{ margin: 0 5px; }
.m_6	{ margin: 6px; }
.m_v6	{ margin: 6px 0; }
.m_h6	{ margin: 0 6px; }
.m_7	{ margin: 7px; }
.m_v7	{ margin: 7px 0; }
.m_h7	{ margin: 0 7px; }
.m_8	{ margin: 8px; }
.m_v8	{ margin: 8px 0; }
.m_h8	{ margin: 0 8px; }
.m_9	{ margin: 9px; }
.m_v9	{ margin: 9px 0; }
.m_h9	{ margin: 0 9px; }
.m_10	{ margin: 10px; }
.m_v10	{ margin: 10px 0; }
.m_h10	{ margin: 0 10px; }
.m_11	{ margin: 11px; }
.m_v11	{ margin: 11px 0; }
.m_h11	{ margin: 0 11px; }
.m_12	{ margin: 12px; }
.m_v12	{ margin: 12px 0; }
.m_h12	{ margin: 0 12px; }
.m_13	{ margin: 13px; }
.m_v13	{ margin: 13px 0; }
.m_h13	{ margin: 0 13px; }
.m_14	{ margin: 14px; }
.m_v14	{ margin: 14px 0; }
.m_h14	{ margin: 0 14px; }
.m_15	{ margin: 15px; }
.m_v15	{ margin: 15px 0; }
.m_h15	{ margin: 0 15px; }
.m_16	{ margin: 16px; }
.m_v16	{ margin: 16px 0; }
.m_h16	{ margin: 0 16px; }
.m_17	{ margin: 17px; }
.m_v17	{ margin: 17px 0; }
.m_h17	{ margin: 0 17px; }
.m_18	{ margin: 18px; }
.m_v18	{ margin: 18px 0; }
.m_h18	{ margin: 0 18px; }
.m_19	{ margin: 19px; }
.m_v19	{ margin: 19px 0; }
.m_h19	{ margin: 0 19px; }
.m_20	{ margin: 20px; }
.m_v20	{ margin: 20px 0; }
.m_h20	{ margin: 0 20px; }

.p_1	{ padding: 1px; }
.p_v1	{ padding: 1px 0; }
.p_h1	{ padding: 0 1px; }
.p_2	{ padding: 2px; }
.p_v2	{ padding: 2px 0; }
.p_h2	{ padding: 0 2px; }
.p_3	{ padding: 3px; }
.p_v3	{ padding: 3px 0; }
.p_h3	{ padding: 0 3px; }
.p_4	{ padding: 4px; }
.p_v4	{ padding: 4px 0; }
.p_h4	{ padding: 0 4px; }
.p_5	{ padding: 5px; }
.p_v5	{ padding: 5px 0; }
.p_h5	{ padding: 0 5px; }
.p_6	{ padding: 6px; }
.p_v6	{ padding: 6px 0; }
.p_h6	{ padding: 0 6px; }
.p_7	{ padding: 7px; }
.p_v7	{ padding: 7px 0; }
.p_h7	{ padding: 0 7px; }
.p_8	{ padding: 8px; }
.p_v8	{ padding: 8px 0; }
.p_h8	{ padding: 0 8px; }
.p_9	{ padding: 9px; }
.p_v9	{ padding: 9px 0; }
.p_h9	{ padding: 0 9px; }
.p_10	{ padding: 10px; }
.p_v10	{ padding: 10px 0; }
.p_h10	{ padding: 0 10px; }
.p_11	{ padding: 11px; }
.p_v11	{ padding: 11px 0; }
.p_h11	{ padding: 0 11px; }
.p_12	{ padding: 12px; }
.p_v12	{ padding: 12px 0; }
.p_h12	{ padding: 0 12px; }
.p_13	{ padding: 13px; }
.p_v13	{ padding: 13px 0; }
.p_h13	{ padding: 0 13px; }
.p_14	{ padding: 14px; }
.p_v14	{ padding: 14px 0; }
.p_h14	{ padding: 0 14px; }
.p_15	{ padding: 15px; }
.p_v15	{ padding: 15px 0; }
.p_h15	{ padding: 0 15px; }
.p_16	{ padding: 16px; }
.p_v16	{ padding: 16px 0; }
.p_h16	{ padding: 0 16px; }
.p_17	{ padding: 17px; }
.p_v17	{ padding: 17px 0; }
.p_h17	{ padding: 0 17px; }
.p_18	{ padding: 18px; }
.p_v18	{ padding: 18px 0; }
.p_h18	{ padding: 0 18px; }
.p_19	{ padding: 19px; }
.p_v19	{ padding: 19px 0; }
.p_h19	{ padding: 0 19px; }
.p_20	{ padding: 20px; }
.p_v20	{ padding: 20px 0; }
.p_h20	{ padding: 0 20px; }

.s_5	{ font-size: 5pt; }
.s_6	{ font-size: 6pt; }
.s_7	{ font-size: 7pt; }
.s_8	{ font-size: 8pt; }
.s_9	{ font-size: 9pt; }
.s_10	{ font-size: 10pt; }
.s_11	{ font-size: 11pt; }
.s_12	{ font-size: 12pt; }
.s_13	{ font-size: 13pt; }
.s_14	{ font-size: 14pt; }
.s_15	{ font-size: 15pt; }
.s_16	{ font-size: 16pt; }
.s_17	{ font-size: 17pt; }
.s_18	{ font-size: 18pt; }
.s_19	{ font-size: 19pt; }
.s_20	{ font-size: 20pt; }
.s_21	{ font-size: 21pt; }
.s_22	{ font-size: 22pt; }
.s_23	{ font-size: 23pt; }
.s_24	{ font-size: 24pt; }
