﻿@charset "UTF-8";

body {
  margin: 0;
  padding: 0;
  /* IEのようにCSSカスタムプロパティ(var())や
     prefers-color-schemeに対応しないブラウザ向けの既定色。
     対応ブラウザは下の@mediaブロックで上書きされる。 */
  background: #000000;
  color: #ffffff;
}

/*****************************************
  *----------------------------------
  |  ThisCssVersion: 10.2.2       |
  |  © 2021-2024 By PusyuuWanko/  |
  |  LastUpdate: 2024-01-30       |
  |  License: none                |
  |  PusyuuMultiApp               |
----------------------------------*
******************************************/

/* 色、模様、サイズ、調整部
-----------------------------------------------------------------*/

/* prefers-color-scheme未対応ブラウザ(IE等)向けの既定テーマ。
   対応ブラウザは下の@media (prefers-color-scheme: light/dark)で
   上書きされる。 */
h1 {
  color: #00ff7f;
}
h3 {
  color: #80ff00;
}
h4 {
  color: #6699ff;
}
h5 {
  color: #41e0e0;
}
strong {
  color: #d5ff00;
}
a {
  color: #00d5ff;
  transition: all 0.3s;
  text-decoration: none;
}
a:hover {
  color: #0ae10a;
  text-decoration: underline;
}
summary {
  color: #02d780;
}
summary:active {
  color: #00aacc;
}

html {
  scroll-behavior: smooth;
}

::selection {
  background-color: rgba(10,255,10,0.5);
}

::-webkit-scrollbar {
  width: 10px;
}
 
::-webkit-scrollbar-track {
  background-color: #fff;
}
 
::-webkit-scrollbar-thumb {
  box-shadow: inset 0 0 6px rgb(10,255,10);
  border-radius: 10px;
}

::selection {
  background-color: rgba(10,255,10,0.5);
}

button {
  border-radius: 3px;
  border-width: 0;
  padding: 5px;
  color: #000;
  background: #00d5ff;
  box-shadow: 5px 5px 0 #000;
  transition: box-shadow .0.3s;
  transition: color 0.3s;
}
button:active {
  color: #fff;
  box-shadow: 0 0 0 rgba(0,0,0,0.0);
  background: #00aacc;
}

select {
  cursor: pointer;
  width: 100%;
}

input[type="file"] {
  width: 100%;
}

summary {
  cursor: pointer;
}

.senn-1 {
  height: 5px;
  width: 80%;
  background-color: #aaff00;
  border: none;
}

.senn-2 {
  height: 5px;
  width: 60%;
  background-color: black;
  border: none;
}

.marukado_waku {
  border: solid 2px skyblue;
  border-radius: 5px;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
}

#custom-menu {
  display: none;
  position: absolute;
  /* var()未対応ブラウザ向けのフォールバック値。対応ブラウザは
     直後のvar()指定で上書きされる。backdrop-filterが使えない
     場合でもこの背景色だけで視認性を確保する。 */
  background: rgba(20, 20, 20, 0.9);
  background: var(--page_base_bgcolor);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  color: #ffffff;
  color: var(--page_base_dcolor);
  border: 0.5px solid #ffffff;
  border: var(--page_base_border);
  padding: 15px;
  width: 80vw;
}
#custom-menu > ul {
  padding: 5px;
}
#custom-menu > ul > li {
  list-style: none;
}
#custom-menu > small {
  color: #0f0;
  padding: 5px;
}

.text {
  animation: flash 5s linear infinite;
  webkit-animation: flash 1s linear infinite;
}
@keyframes flash {
  0%,33%,66%,100%{
  opacity: 0;
}
12%{
  color:#ff5353;
  opacity: 1;
}
24%{
  color:#ffcf53;
  opacity: 1;
}
36%{
  color:#e8ff53;
  opacity: 1;
}
48%{
  color:#53ff5d;
  opacity: 1;
}
60%{
  color:#53ffbc;
  opacity: 1;
}
72%{
  color:#5393ff;
  opacity: 1;
}
  84%{
color:#ca53ff;
opacity: 1;
}
100%{
  color:#ff53bd;
  opacity: 1;
}
}
@-webkit-keyframes flash {
  0%,33%,66%,100%{
  opacity: 0;
}
12%{
  color:#ff5353;
  opacity: 1;
}
24%{
  color:#ffcf53;
  opacity: 1;
}
36%{
  color:#e8ff53;
  opacity: 1;
}
48%{
  color:#53ff5d;
  opacity: 1;
}
60%{
  color:#53ffbc;
  opacity: 1;
}
72%{
  color:#5393ff;
  opacity: 1;
}
  84%{
color:#ca53ff;
opacity: 1;
}
100%{
  color:#ff53bd;
  opacity: 1;
}
}

.window {
  z-index: 666;
  display: none;
}
.window:target {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100vh;
  width: 100vw;
  height: 100dvh;
  width: 100dvw;
  display: flex;
  justify-content: center;
  align-items: center;
}
.window > div {
  position: fixed;
  animation: m-show 0.3s linear 0s;
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  /* var()未対応ブラウザ向けのフォールバック背景色。
     backdrop-filterが使えなくてもこれだけで視認性を確保する。 */
  background-color: rgba(20, 20, 20, 0.95);
  background-color: var(--page_base_bgcolor);
  position: relative;
  height: 100vh;
  width: 100vw;
  height: 100dvh;
  width: 100dvw;
  border-radius: 0px;
  cursor: default;
}
@keyframes w-show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.window > div > div {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
}
.window > div >  div > div {
  padding: 25px;
}
.window > div > div > div> .appframe-size {
  width: 100%;
  height: 75vh;
}

.window > div > a {
  position: relative;
  display: block;
}
.window > div > a::before {

}
.window > div > a::after {
  content: "✕";
  color: white;
  position: absolute;
  right: 20px;
  top: 20px;
  width: 35px;
  height: 35px;
  z-index: 1;
  border-radius: 3px;
  border: 1px solid #ff0000;
  background: rgba(255,0,0,0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

table {
  border-collapse: separate;
  border-radius: 2px;
  border-spacing: 0;
  border: 1px solid #0055ff;
}

th {
  border: 1px solid #0055ff;
  padding: 5px;
}

tr {
  border: 1px ridge #0055ff;
}

td {
  border: 1px solid #0055ff;
  padding: 5px;
}

.center {
  display: flex;
  justify-content: center;
}

.left {
  display: flex;
  justify-content: left;
}

.right {
  display: flex;
  justify-content: right;
}

.avater {
  display: flex;
  justify-content: center;
  margin: 10px;
}
.avater_image {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  justify-content: center;
}

.section {
  /* <section>はHTML5の要素で、古いブラウザは既定でinline扱いにしてしまう
     （paddingの上下が効かなくなる）ため、明示しておきます。 */
  display: block;
  padding: 10px;
}

.article {
  display: block;
  padding: 10px;
}

@media (prefers-color-scheme: light) {
  body {
    background: #ffffff;
    color: #111;
  }
  h1 {
    color: #005dff;
  }
  h2 {
    background: -webkit-linear-gradient(left, #008cff, #00ff00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  h2:after {
    content: "";
    display: block;
    width: 100%; height: 2px;
    background-image: -webkit-linear-gradient(left, #008cff, #00ff00);
    background-image: -ms-linear-gradient(left, #008cff, #00ff00);
  }
  h3 {
   color: #0327cf;
  }
  h4 {
    color: #1362ff;
  }
  h5 {
    color: #035294;
  }
  strong {
    color: #0700ac;
  }
  a {
    color: #045fe7;
    transition: all 0.3s;
    text-decoration: none;
  }
  a:hover {
    color: #096709;
    text-decoration: underline;
  }
  summary {
    color: #019156;
  }
  summary:active {
    color: #00aacc;
  }
  .modal .modal_content-wrapper {
    background-color: rgba(255,255,255,0.5);
  }
  #loading {
    background: #ffffff;
  }
  :root {
    --page_base_bgcolor: rgba(255,255,255,0.5);
    --page_base_border: 0.5px solid #333333;
    --page_base_dcolor: #111;
  }
}
@media (prefers-color-scheme: dark) {
  body {
    background: #000000;
    color: #fff;
  }
  h1 {
    color: #00ff7f;
  }
  h2 {
    background: -webkit-linear-gradient(left, #00ffff, #00ff00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  h2:after {
    content: "";
    display: block;
    width: 100%; height: 2px;
    background-image: -webkit-linear-gradient(left, #00ffff, #00ff00);
    background-image: -ms-linear-gradient(left, #00ffff, #00ff00);
  }
  h3 {
   color: #80ff00;
  }
  h4 {
    color: #6699ff;
  }
  h5 {
    color: #41e0e0;
  }
  strong {
    color: #d5ff00;
  }
  a {
    color: #00d5ff;
    transition: all 0.3s;
    text-decoration: none;
  }
  a:hover {
    color: #0ae10a;
    text-decoration: underline;
  }
  summary {
    color: #02d780;
  }
  summary:active {
    color: #00aacc;
  }
  .modal .modal_content-wrapper {
    background-color: rgba(0,0,0,0.5);
  }
  #loading {
    background: #000000;
  }
  :root {
    --page_base_bgcolor: rgba(0,0,0,0.1);
    --page_base_border: 0.5px solid #FFFFFF;
    --page_base_dcolor: color: #fff;
  }
}

/* みすぼらしい画面消し調整部
-----------------------------------------------------------------*/

#loading {
  height: 100%;
  width: 100%;
  transition: all 1s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: scroll;
}

.loaded {
  opacity: 0;
  visibility: hidden;
}

.load_content {
  display: flex;
  justify-content: center;
  margin-top: 40vh;
}

/* メイン調整部
-----------------------------------------------------------------*/

.main {
  word-break: break-all;
  width: auto;
  height: 100vh;
  height: 100dvh;
  /* <main>はHTML5の要素なので、flexを理解しない古いブラウザでも最低限
     ブロック表示になるよう先に書いておきます（flex宣言はそちらが
     上書きします）。 */
  display: block;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.main_wrapper {
  padding: 25px;
}

/* 画像AUTOリサイズ
-----------------------------------------------------------------*/

.img-rs_syou {
  width: 13vw;
  height: auto;
}

.img-rs_tyuu {
  width: 30vw;
  height: auto;
}

.img-rs_dai {
  width: 87vw;
  height: 100vh;
}

.img-rs_saidai {
  width: 100%;
  height: 100%;
}

/* アプリアイコン調整部
-----------------------------------------------------------------*/

.app_link {
  text-decoration: none;
  color: #fff000;
  transition: all 0.1s;
  color: #fff000;
  display: block;
  border-radius: 5px;
  margin: 3px;
}
.app_link:hover {
  color: #fff000;
}
.app_link:active {
  background-color: rgba(10,255,10,0.3);
  border: 1px solid #00cc00;
  color: #ffffff;
}
.app_box-1 {
  height: 40px;
  padding: 5px;
  background-color: rgba(255,255,255,0.3);
  border: 0.5px solid #ffffff; /* var()未対応ブラウザ向けフォールバック */
  border: var(--page_base_border);
  border-radius: 5px;
}
.app_name {
  font-size: 12px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  text-shadow: 1px 1px #000; 
}
.app_wrapper {
  text-align: center;
  margin: 15px;
  width: 50px;
  height: 80px;
  display: inline-block;
}

/* コンテナーボックス、DisplayFlex、調整部
-----------------------------------------------------------------*/

.box-1 {
  padding: 8px 19px;
  margin: 10px;
  color: #2c2c2f;
  background: #666666;
  border-top: solid 5px #fff;
  border-right: solid 5px #fff;
  border-left: solid 5px #fff;
  border-bottom: solid 5px #fff;
}
.box-1 p {
  margin: 0; 
  padding: 0;
}

.box-2 {
  padding: 0.5em 1em;
  margin: 10px;
  font-weight: bold;
  border: solid 3px #000000;
  background-color: yellow;
}
.box-2 p {
  margin: 0; 
  padding: 0;
}

.box-3 {
  padding: 0.5em 1em;
  margin: 10px;
  background: #FFF;
  border: solid 3px #6091d3;
  border-radius: 10px;
  background-color: #000000;
}
.box-3 p {
  margin: 0; 
  padding: 0;
}

.box-4 {
  padding: 0.5em 1em;
  margin: 10px;
  border: double 5px #4ec4d3;
  background: #adff2f;
}
.box-4 p {
  margin: 0; 
  padding: 0;
}

.box-5 {
  padding: 0.5em 1em;
  margin: 10px;
  background: #00bfff;
  border: dashed 5px #2e2eff;
}
.box-5 p {
  margin: 0; 
  padding: 0;
}

.box-6 {
  padding: 0.5em 1em;
  margin: 10px;
  color: #00BCD4;
  background: #666666;
  border-top: solid 6px #FFFFFF;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.50);
}
.box-6 p {
  margin: 0; 
  padding: 0;
}

.box-7 {
  padding: 0.5em 1em;
  margin: 10px;
  background: #FFF;
  border-radius: 10px;
  background-color: #008099;
}
.box-7 p {
  margin: 0; 
  padding: 0;
}

.box-8 {
  padding: 0.5em 1em;
  margin: 10px;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  box-shadow: 0 5px 20px rgba(255, 255, 255, 0.5);
}
.box-8 p {
  margin: 0;
  padding: 0;
}

.box-9 {
  padding: 0.5em 1em;
  margin: 10px;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
}
.box-9 p {
  margin: 0;
  padding: 0;
}

.yokoori {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

/* sm tb版 レスポンシブ化調整部
-----------------------------------------------------------------*/

@media only screen and (max-width:960px) {

  /* sm tb版 色、模様、サイズ、調整部
  -----------------------------------------------------------------*/

  .section {
    padding-top: 15%;
  }

  .article {
    padding-top: 15%;
  }

  /* sm tb版 メイン調整部
  -----------------------------------------------------------------*/

  .main {

  }

  .main_wrapper {
    padding: 10px;
  }

  /* sm tb版 コンテナーボックス、DisplayFlex、調整部
  -----------------------------------------------------------------*/

  .yokoori {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; 
  }

  /* sm tb版 画像AUTOリサイズ
  -----------------------------------------------------------------*/

  .img-rs_syou {
    width: 30vw;
    height: auto;
  }

  .img-rs_tyuu {
    width: 40vw;
    height: auto;
  }

  .img-rs_dai {
    width: 85vw;
    height: 100vh;
  }
}
/* sm版 レスポンシブ化調整部
-----------------------------------------------------------------*/

@media only screen and (max-width:600px) {

}