/* VAST PLUGIN STYLES */
.vjs-ad-playing.vjs-ad-playing .vjs-progress-control {
  pointer-events:none
}
.vjs-ad-playing.vjs-ad-playing .vjs-play-progress {
  background-color:#ffe400
}
.vjs-ad-loading .vjs-loading-spinner {
  display:block;
  visibility:visible
}
.vjs-ad-playing .vjs-captions-button {
  display:none
}
.vjs-ad-playing .vjs-audio-button {
  display:none
}
.vjs-ad-loading .vjs-loading-spinner:before {
  border-top-color:#fff
}
.vjs-ad-loading .vjs-loading-spinner:after {
  border-top-color:#fff;
  -webkit-animation-delay:0.44s;
  animation-delay:0.44s
}
.vjs-ad-loading .vjs-big-play-button,
.vjs-ad-loading .vjs-poster,
.vjs-ad-content-resuming .vjs-big-play-button,
.vjs-ad-content-resuming .vjs-poster {
  display:none
}

/*
Original @ https://github.com/theonion/videojs-vast-plugin (commit bf6ce85fa763299739f6a7c801b5be4b90b3b363)
*/

.vast-skip-button {
  display: block;
  position: absolute;
  top: 5px;
  right: 0;
  width: auto;
  background-color: #000;
  color: #AAA;
  font-size: 12px;
  font-style: italic;
  line-height: 12px;
  padding: 10px;
  z-index: 2;
}

.vast-skip-button.enabled {
  cursor: pointer;
  color: #fff;
}

.vast-skip-button.enabled:hover {
  cursor: pointer;
  background: #333;
}

.vast-remaining-time {
  display: block;
  position: absolute;
  bottom: 35px;
  left: 75px;
  width: auto;
  color: #aaa;
  font-size: 12px;
  font-style: italic;
  line-height: 12px;
  z-index: 2;
}

.vast-remaining-time-icon {
  position: absolute;
  bottom: 30px;
  color: #aaa !important;
  font-size: 20px !important;
  z-index: 2;
}

.vast-remaining-time-icon:focus {
  text-shadow: 0 0 1em #fff;
}

.vast-remaining-time-icon-play {
  left: 15px;
}

.vast-remaining-time-icon-mute {
  left: 40px;
}

.vjs-controls-enabled .vast-remaining-time {
  bottom: 55px;
}

.vjs-controls-enabled .vast-remaining-time-icon {
  bottom: 50px;
}

.vast-blocker {
  display: block;
  position: absolute;
  z-index: 2;
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.video-js.vjs-watermark {
  display: block;
}
.video-js .vjs-watermark-content {
  opacity: 0.99;
  position: absolute;
  padding: 5px;
  -webkit-transition: visibility 1s, opacity 1s;
  -moz-transition: visibility 1s, opacity 1s;
  -ms-transition: visibility 1s, opacity 1s;
  -o-transition: visibility 1s, opacity 1s;
  transition: visibility 1s, opacity 1s;
}
.video-js .vjs-watermark-top-right {
  right: 0;
  top: 0;
}
.video-js .vjs-watermark-top-left {
  left: 0;
  top: 0;
}
.video-js .vjs-watermark-bottom-right {
  right: 0;
  bottom: 30px;
}
.video-js .vjs-watermark-bottom-left {
  left: 0;
  bottom: 30px;
}
.video-js.vjs-user-inactive.vjs-playing .vjs-watermark-fade {
  opacity: 0;
}
.vjs-watermark-content > a:nth-child(1) img,
.vjs-watermark-content > img:nth-child(1) {
  max-width: 100%;
  width: 20vw;
  max-height: 12vh;
  position: relative;
  top: 1rem;
}
.admin-message {
  margin: 15px 0;
  padding: 15px;
  border-radius: 8px;
  border-left: 4px solid;
  font-size: 16px; /* 14px から 16px に変更 */
  line-height: 1.6; /* 1.5 から 1.6 に変更で読みやすさ向上 */
  position: relative;
  animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Light theme styles */
.admin-message-info {
  background-color: #e3f2fd;
  border-left-color: #2196f3;
  color: #0d47a1;
}

.admin-message-warning {
  background-color: #fff3e0;
  border-left-color: #ff9800;
  color: #e65100;
}

.admin-message-success {
  background-color: #e8f5e8;
  border-left-color: #4caf50;
  color: #2e7d32;
}

.admin-message-error {
  background-color: #ffebee;
  border-left-color: #f44336;
  color: #c62828;
}

.admin-message-default {
  background-color: #f5f5f5;
  border-left-color: #757575;
  color: #424242;
}

/* 新規追加: 透明スタイル */
.admin-message-transparent {
  background-color: transparent;
  border-left-color: transparent;
  color: inherit; /* 親要素の文字色を継承 */
  border-left: none; /* 左の境界線を完全に削除 */
  padding-left: 0; /* 左パディングも調整 */
}

/* Dark theme styles */
body.dark .admin-message-info {
  background-color: #1a237e;
  border-left-color: #64b5f6;
  color: #bbdefb;
}

body.dark .admin-message-warning {
  background-color: #e65100;
  border-left-color: #ffb74d;
  color: #ffe0b2;
}

body.dark .admin-message-success {
  background-color: #1b5e20;
  border-left-color: #81c784;
  color: #c8e6c9;
}

body.dark .admin-message-error {
  background-color: #b71c1c;
  border-left-color: #e57373;
  color: #ffcdd2;
}

body.dark .admin-message-default {
  background-color: #424242;
  border-left-color: #bdbdbd;
  color: #e0e0e0;
}

/* ダークテーマでも透明スタイルは透明のまま */
body.dark .admin-message-transparent {
  background-color: transparent;
  border-left-color: transparent;
  color: inherit;
  border-left: none;
  padding-left: 0;
}

/* Responsive design */
@media (max-width: 768px) {
  .admin-message {
    margin: 10px 0;
    padding: 12px;
    font-size: 15px; /* モバイルでも 13px から 15px に変更 */
  }
  
  /* モバイルでの透明スタイル調整 */
  .admin-message-transparent {
    padding-left: 0;
  }
}

/* Links styling */
.admin-message a {
  color: inherit;
  text-decoration: underline;
  font-weight: 500;
}

.admin-message a:hover {
  opacity: 0.8;
}

/* 透明スタイルでのリンク調整 */
.admin-message-transparent a {
  color: #007bff; /* 透明背景の場合はリンク色を明示的に設定 */
}

body.dark .admin-message-transparent a {
  color: #64b5f6; /* ダークテーマでのリンク色 */
}

/* Lists styling */
.admin-message ul,
.admin-message ol {
  margin: 8px 0;
  padding-left: 20px;
}

.admin-message li {
  margin: 4px 0;
}

/* Headers styling */
.admin-message h1,
.admin-message h2,
.admin-message h3,
.admin-message h4,
.admin-message h5,
.admin-message h6 {
  margin: 10px 0 8px 0;
  font-weight: 600;
}

.admin-message h1 { font-size: 1.6em; } /* 1.5em から 1.6em に */
.admin-message h2 { font-size: 1.5em; } /* 1.4em から 1.5em に */
.admin-message h3 { font-size: 1.4em; } /* 1.3em から 1.4em に */
.admin-message h4 { font-size: 1.3em; } /* 1.2em から 1.3em に */
.admin-message h5 { font-size: 1.2em; } /* 1.1em から 1.2em に */
.admin-message h6 { font-size: 1.1em; } /* 1em から 1.1em に */

/* 文字の太さをオプションで調整可能にする追加クラス */
.admin-message-bold {
  font-weight: 600;
}

.admin-message-normal {
  font-weight: 400;
}

/* 追加: より大きな文字サイズオプション */
.admin-message-large {
  font-size: 18px;
}

.admin-message-extra-large {
  font-size: 20px;
}.vjs-airplay-button .vjs-icon-placeholder{background:url('data:image/svg+xml,<svg fill="%23FFFFFF" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <defs>%0A        <path d="M0 0h24v24H0V0z" id="a"/>%0A    </defs>%0A    <defs>%0A        <path d="M0 0h24v24H0V0z" id="c"/>%0A    </defs>%0A    <clipPath id="b">%0A        <use overflow="visible" xlink:href="%23a"/>%0A    </clipPath>%0A    <clipPath clip-path="url(%23b)" id="d">%0A        <use overflow="visible" xlink:href="%23c"/>%0A    </clipPath>%0A    <path clip-path="url(%23d)" d="M6 22h12l-6-6zM21 3H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h4v-2H3V5h18v12h-4v2h4c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"/>%0A</svg>%0A') center center no-repeat;background-size:contain;display:inline-block;width:22px;height:22px}.vjs-airplay-button:hover{cursor:pointer}.vjs-airplay-button:hover .vjs-icon-placeholder{background-image:url('data:image/svg+xml,<svg fill="%23FFFFFF" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <defs>%0A        <path d="M0 0h24v24H0V0z" id="a"/>%0A    </defs>%0A    <defs>%0A        <path d="M0 0h24v24H0V0z" id="c"/>%0A    </defs>%0A    <clipPath id="b">%0A        <use overflow="visible" xlink:href="%23a"/>%0A    </clipPath>%0A    <clipPath clip-path="url(%23b)" id="d">%0A        <use overflow="visible" xlink:href="%23c"/>%0A    </clipPath>%0A    <path clip-path="url(%23d)" d="M6 22h12l-6-6zM21 3H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h4v-2H3V5h18v12h-4v2h4c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"/>%0A</svg>%0A')}.vjs-airplay-button.vjs-airplay-button-lg:not(.vjs-hidden){display:flex;align-items:center;width:auto;padding:0 4px}.vjs-airplay-button.vjs-airplay-button-lg:not(.vjs-hidden) .vjs-airplay-button-label{flex-grow:1;margin-left:4px}.vjs-airplay-button.vjs-airplay-button-lg:not(.vjs-hidden) .vjs-icon-placeholder{flex-grow:1}.vjs-chromecast-button .vjs-icon-placeholder{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAvJJREFUaAXtmTtoFFEUhrMhpRZipQELBQsbwUoEQYPaWFhpYSloJ1bai502tqnVRojYWPlA1CKCjWUKLYRsGmOKdKKs3xnmzpz57+xjdMaZhTnw79zzuOdx79zH7i4s9NSPQD8C/Qh0ZgRGo9EyeAKGoGu0SUKW27IfsEFgUsVn+P1B1tHnNnkdHwwGm5bfokvyAe2uJ2/pWo73rWHkZ2AIfyCRdv9jixk4aGn6AkY+bwwynZe31bYF6WOH/Pwr5PVz0+4LaHuq+hloewaWQgJhVQd+Xp79K9T2TM39DGRrgINul9G060TAV9ovwEfWR+EURNY9sqN6DG0hXwXn2sxac4tyUYMx/DvkJ6PO/0Gg+UQh1WAKv4b+cOSkQYHmE0JlN04M9iK067RdUw+B8+Ai2AfKaAfhFdbHqzJl3TIrwPuc6dyizxJYAc9AGf1CeNM7bqqtwSvHwcEp8EEdpfzDyg4rdtC4Fbvn5ji6BWzklRqdCQ2WZ5S2MNgFG+ANuAtOREa57QX0O8CTFdXYVusDWTvKTQ1S3gq6HBkjQH4MaBE/kDWyO+G3QFFOBW3MrCOKEkNmM6Gv01rkvAaBphS5VIMS/juyM9oRma0JpdoPOw2gedgrsQccBVfBU/ATKJmsrAjdnd5HAf5RoIlMdUeHI6Bs/7eZKLxO8LbFKtW6oNX51AKCAR1vg9/iYD3owxO9FrsadHU8JX68C00KQmcrQqmwO6E8KwZ2i82uKpP8z6IT33EBGNg5YLvNDRAFRqYjvOEDo7drh22jnmpbzN6ptX3spC0Gr+ELv5PC25rQhV047NA/Ap7uRYH+UuCdWju4WQwNea7AP8Yumwluf1+QPRe7S8K/FL6w2E2niczKi1/71pjQuAJMaUVcT6zyDy3gdK5KWt+ET35BFlkd7NvgZFIBZnMtGKbPT8IX/i1Bl41MatdEAdv4viN5jJ1a+6KfEdNth52nSnpz5DtXbA+xj/5iypLrG/0I9CPQj0ArI/AHixCE2UoSwqgAAAAASUVORK5CYII=) center center no-repeat;background-size:contain;display:inline-block;width:22px;height:22px}.vjs-chromecast-button:hover{cursor:pointer}.vjs-chromecast-button:hover .vjs-icon-placeholder{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAvJJREFUaAXtmTtoFFEUhrMhpRZipQELBQsbwUoEQYPaWFhpYSloJ1bai502tqnVRojYWPlA1CKCjWUKLYRsGmOKdKKs3xnmzpz57+xjdMaZhTnw79zzuOdx79zH7i4s9NSPQD8C/Qh0ZgRGo9EyeAKGoGu0SUKW27IfsEFgUsVn+P1B1tHnNnkdHwwGm5bfokvyAe2uJ2/pWo73rWHkZ2AIfyCRdv9jixk4aGn6AkY+bwwynZe31bYF6WOH/Pwr5PVz0+4LaHuq+hloewaWQgJhVQd+Xp79K9T2TM39DGRrgINul9G060TAV9ovwEfWR+EURNY9sqN6DG0hXwXn2sxac4tyUYMx/DvkJ6PO/0Gg+UQh1WAKv4b+cOSkQYHmE0JlN04M9iK067RdUw+B8+Ai2AfKaAfhFdbHqzJl3TIrwPuc6dyizxJYAc9AGf1CeNM7bqqtwSvHwcEp8EEdpfzDyg4rdtC4Fbvn5ji6BWzklRqdCQ2WZ5S2MNgFG+ANuAtOREa57QX0O8CTFdXYVusDWTvKTQ1S3gq6HBkjQH4MaBE/kDWyO+G3QFFOBW3MrCOKEkNmM6Gv01rkvAaBphS5VIMS/juyM9oRma0JpdoPOw2gedgrsQccBVfBU/ATKJmsrAjdnd5HAf5RoIlMdUeHI6Bs/7eZKLxO8LbFKtW6oNX51AKCAR1vg9/iYD3owxO9FrsadHU8JX68C00KQmcrQqmwO6E8KwZ2i82uKpP8z6IT33EBGNg5YLvNDRAFRqYjvOEDo7drh22jnmpbzN6ptX3spC0Gr+ELv5PC25rQhV047NA/Ap7uRYH+UuCdWju4WQwNea7AP8Yumwluf1+QPRe7S8K/FL6w2E2niczKi1/71pjQuAJMaUVcT6zyDy3gdK5KWt+ET35BFlkd7NvgZFIBZnMtGKbPT8IX/i1Bl41MatdEAdv4viN5jJ1a+6KfEdNth52nSnpz5DtXbA+xj/5iypLrG/0I9CPQj0ArI/AHixCE2UoSwqgAAAAASUVORK5CYII=)}.vjs-chromecast-button.vjs-chromecast-casting-state .vjs-icon-placeholder{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA49JREFUaAXtmTtoFFEUhrMhVtFCBEEDFgoWNqIgaCAQg9pYWGlhKWgnNkaxDHba2KZWGyFiI0J8ohZRbOwMqIWQpDGmSCfK+p1x7+y5/8zuzmQ3yQbmwL9z3vfc59zdHRioqBqBagSqEeibEajX6yPgIVgE/UYLFGS1jfgBqwWhYfiMvCvo+vS5TF2Ha7XagtU36Iq8C9/vxVu5VuMdY4z8DCwi70m0/f+xxAzstTJ9B+q+bhxSm9dvFm8b0rcd6vNLyNu3DF91YLOnaqhoAboGi8at1S+s8U7xW34JpTNQtMedRmSj7WVmYJLi5je6wJ63x14YA89sT6wnaeHaltpLyyQ8CT5q4l7JWpDmDfb0bYvDKkq7TgR8h38KPrA/orcguoSIsSV4E0yBbYmyRx+6J60DPrXaB8yhBS2hnwanfALPYzsCvoKekc9vvCZWe8ZBAxryW57HM8H/G9iNrWdLStvQetRetAMhzwzMfk2CbhjMBqdunjm5o3TB7vfADpR2nbZr6j5wGpwFO0EeraC8wFp84Y20Moz8Ghzz+rK8rnGr3udQu7elPDFDYAI8Bnn0B+XVNKDBoLPl1NWeyMkZta/2jjLRo+B9lKUp3NMEmGxj/266lONy8kUJ1F5YJss1YCOvlDcTt9SpqKwFaZzabROvgnnwCkyBoxmnhgLbGbACPFmnoqMWeRCs6WTStn1Dxqu91SlkHTqfcUaB/hDQTvxCF51OyPbGLk3apiZQe6sOhLg5mKgwS4DOZkKX04wmx6f03SknB2mapPZOHbDIn2BcA9HZnlA64f0w2gWwFPl44zVY7eawHRwEF8EjkHeCmG5cg9Hp6fQux+cLfoUpJz6KVXtGxvsAyDv/bSai5YQ8CpR0Q19Xh3ayFqS+am8pEzgJ/kqCOQ3Arp2dVp9uZGk/ewq1S06wdUIpOp0w6mljt9j0qtIufxGbNp6JwcHeA3baXAGZhtHpCEdfL7HbtcOOUU+5N9dM4wUUPqnxmRBxeIlsF7uUkG1P6MaOXnbY7wNPt9MEXTI+qfEh3WBg5DmB/AC/dCa4/X1D90T8zon8XORos5tNCykqS1771phQqw6Y0TpxOfFqfmgHxpqmhPshcvILsuh6Ib4JSdp1wHwuBcfG85PI0b8l2NKRafitRweWyX1D6mg5tfZFPyWm2152nkrZLZEPLskv4p/5iyktrmKqEahGoBqBTRmBfwb8WzXqcsYyAAAAAElFTkSuQmCC)}.vjs-chromecast-button.vjs-chromecast-casting-state:hover .vjs-icon-placeholder{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA49JREFUaAXtmTtoFFEUhrMhVtFCBEEDFgoWNqIgaCAQg9pYWGlhKWgnNkaxDHba2KZWGyFiI0J8ohZRbOwMqIWQpDGmSCfK+p1x7+y5/8zuzmQ3yQbmwL9z3vfc59zdHRioqBqBagSqEeibEajX6yPgIVgE/UYLFGS1jfgBqwWhYfiMvCvo+vS5TF2Ha7XagtU36Iq8C9/vxVu5VuMdY4z8DCwi70m0/f+xxAzstTJ9B+q+bhxSm9dvFm8b0rcd6vNLyNu3DF91YLOnaqhoAboGi8at1S+s8U7xW34JpTNQtMedRmSj7WVmYJLi5je6wJ63x14YA89sT6wnaeHaltpLyyQ8CT5q4l7JWpDmDfb0bYvDKkq7TgR8h38KPrA/orcguoSIsSV4E0yBbYmyRx+6J60DPrXaB8yhBS2hnwanfALPYzsCvoKekc9vvCZWe8ZBAxryW57HM8H/G9iNrWdLStvQetRetAMhzwzMfk2CbhjMBqdunjm5o3TB7vfADpR2nbZr6j5wGpwFO0EeraC8wFp84Y20Moz8Ghzz+rK8rnGr3udQu7elPDFDYAI8Bnn0B+XVNKDBoLPl1NWeyMkZta/2jjLRo+B9lKUp3NMEmGxj/266lONy8kUJ1F5YJss1YCOvlDcTt9SpqKwFaZzabROvgnnwCkyBoxmnhgLbGbACPFmnoqMWeRCs6WTStn1Dxqu91SlkHTqfcUaB/hDQTvxCF51OyPbGLk3apiZQe6sOhLg5mKgwS4DOZkKX04wmx6f03SknB2mapPZOHbDIn2BcA9HZnlA64f0w2gWwFPl44zVY7eawHRwEF8EjkHeCmG5cg9Hp6fQux+cLfoUpJz6KVXtGxvsAyDv/bSai5YQ8CpR0Q19Xh3ayFqS+am8pEzgJ/kqCOQ3Arp2dVp9uZGk/ewq1S06wdUIpOp0w6mljt9j0qtIufxGbNp6JwcHeA3baXAGZhtHpCEdfL7HbtcOOUU+5N9dM4wUUPqnxmRBxeIlsF7uUkG1P6MaOXnbY7wNPt9MEXTI+qfEh3WBg5DmB/AC/dCa4/X1D90T8zon8XORos5tNCykqS1771phQqw6Y0TpxOfFqfmgHxpqmhPshcvILsuh6Ib4JSdp1wHwuBcfG85PI0b8l2NKRafitRweWyX1D6mg5tfZFPyWm2152nkrZLZEPLskv4p/5iyktrmKqEahGoBqBTRmBfwb8WzXqcsYyAAAAAElFTkSuQmCC)}.vjs-chromecast-button.vjs-chromecast-button-lg:not(.vjs-hidden){display:flex;align-items:center;width:auto;padding:0 4px}.vjs-chromecast-button.vjs-chromecast-button-lg:not(.vjs-hidden) .vjs-chromecast-button-label{flex-grow:1;margin-left:4px}.vjs-chromecast-button.vjs-chromecast-button-lg:not(.vjs-hidden) .vjs-icon-placeholder{flex-grow:1}.vjs-tech-chromecast{display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}.vjs-tech-chromecast .vjs-tech-chromecast-poster:after{content:" ";display:block;height:2px;width:100px;background-color:#ccc;position:absolute;left:calc(50% - 50px)}.vjs-tech-chromecast .vjs-tech-chromecast-poster-img{max-height:180px;width:auto;border:2px solid #cccccc}.vjs-tech-chromecast .vjs-tech-chromecast-poster-img.vjs-tech-chromecast-poster-img-empty{width:160px;height:90px}.vjs-tech-chromecast .vjs-tech-chromecast-title-container{position:absolute;bottom:50%;margin-bottom:100px;color:#ccc;text-align:center}.vjs-tech-chromecast .vjs-tech-chromecast-title{font-size:22px}.vjs-tech-chromecast .vjs-tech-chromecast-title.vjs-tech-chromecast-title-empty{display:none}.vjs-tech-chromecast .vjs-tech-chromecast-subtitle{font-size:18px;padding-top:.5em}.vjs-tech-chromecast .vjs-tech-chromecast-subtitle.vjs-tech-chromecast-subtitle-empty{display:none}.video-js .vjs-control-bar .vjs-airplay-button,.video-js .vjs-control-bar .vjs-chromecast-button{width:47px}.video-js .vjs-control-bar .vjs-airplay-button .vjs-icon-placeholder,.video-js .vjs-control-bar .vjs-chromecast-button .vjs-icon-placeholder{display:inline-block}
