Browse Source

사이트 준비

Naruka 1 year ago
commit
e0cbf873c5

+ 786 - 0
anniversaries.htm

@@ -0,0 +1,786 @@
+<!DOCTYPE html>
+<html lang="ko">
+<head>
+<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+<title>Girls' Band Factbook : BanG Dream! 프로젝트 관련 주요 생일/기념일 일람</title>
+<meta charset="utf-8" />
+<meta name="viewport" content="width=device-width, initial-scale=1.0" />
+<link rel="stylesheet" type="text/css" href="./common/css/w3.css" />
+<link rel="stylesheet" type="text/css" href="./common/css/bangdream.css" />
+<link rel="stylesheet" type="text/css" href="./common/css/pageload.css" />
+<script type="text/javascript" src="./common/js/common.js"></script>
+<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" integrity="sha256-BJeo0qm959uMBGb65z40ejJYGSgR7REI4+CW1fNKwOg=" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mark.js/8.11.1/jquery.mark.min.js" integrity="sha256-4HLtjeVgH0eIB3aZ9mLYF6E8oU5chNdjU6p6rrXpl9U=" crossorigin="anonymous"></script>
+<script type="text/javascript" src="./common/js/bangdream_anniversaries.js"></script>
+<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/pace-js@latest/pace.min.js"></script>
+<script type="text/javascript">
+$(document).ready(function(){
+ toggleFilterMode();
+ highlightToday();
+ dispDateNow();
+ displayWeekdayYearNow();
+ setInterval("dispDateNow();",200);
+ setInterval("highlightToday();",200);
+
+ var dateNow = new Date();
+ var hoursNow = dateNow.getHours();
+ var minsNow = dateNow.getMinutes();
+ var secsNow = dateNow.getSeconds();
+ 
+ if(hoursNow == 0 && minsNow == 0 && secsNow == 0){highlightToday();}
+});
+</script>
+<!-- 이 페이지는 최신버전의 모던 웹 브라우저(크롬, 엣지, 파이어폭스 등)에 최적화되어 있습니다. -->
+</head>
+<body class="page-background">
+
+<div class="w3-content">
+ <header class="w3-center w3-padding-large">
+  <h2 class="w3-xlarge" style="font-weight: bold;">BanG Dream! 프로젝트 관련 주요 생일/기념일 일람</h2>
+ </header>
+</div>
+
+<h6 id="date_now"></h6>
+
+<div id="container_filter" style="font-size: 1.2em;">
+
+ <div id="filter_series" style="padding-left: 1em;">
+  <input type="radio" name="filter_mode" id="filter_cboxes" checked="checked" onchange="toggleFilterMode();" />&nbsp;<label for="filter_cboxes">밴드 및 범주 선택:</label>
+  <br />
+  <span style="font-size: 0.875em;"><b>밴드:</b>&nbsp;</span>
+  <input type="checkbox" name="output_filter" id="display_pp" value="pp" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_pp" for="display_pp">Poppin'Party</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_ag" value="ag" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_ag" for="display_ag">Afterglow</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_pl" value="pl" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_pl" for="display_pl">Pastel*Palettes</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_rs" value="rs" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_rs" for="display_rs">Roselia</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_hh" value="hh" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_hh" for="display_hh">헬로, 해피 월드!</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_mf" value="mf" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_mf" for="display_mf">Morfonica</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_ra" value="ra" checked="checked" onchange="refreshFilter();" />&nbsp;<label class="t_ra" for="display_ra">RAISE A SUILEN</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_bd" value="bd" checked="checked" onchange="refreshFilter();" />&nbsp;<label for="display_bd">전 밴드/기타</label>
+ </div>
+ <div id="filter_types" style="padding-left: 1em;">
+  <span style="font-size: 0.875em;"><b>범주:</b>&nbsp;</span>
+  <input type="checkbox" name="output_filter" id="display_charas" value="chara" checked="checked" onchange="refreshFilter();" />&nbsp;<label for="display_charas">캐릭터(멤버) 생일</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_voices" value="voices" checked="checked" onchange="refreshFilter();" />&nbsp;<label for="display_voices">성우 생일</label>&nbsp;
+  <input type="checkbox" name="output_filter" id="display_celebrations" value="anniv" checked="checked" onchange="refreshFilter();" />&nbsp;<label for="display_celebrations">각종 기념일</label>
+ </div>
+ <div id="filter_keyword" style="padding-left: 1em;">
+  <input type="radio" name="filter_mode" id="filter_keywords" onchange="toggleFilterMode();" />&nbsp;<label for="filter_keywords">키워드로 검색:</label>&nbsp;<input type="text" name="keyword_filter" id="keywords" size="22" maxlength="64" placeholder="(예: 카스미, 아이미)" style="font-size: 14px;" onchange="keywordFilter();" />
+  <sub>(찾고자 하는 캐릭터/인물 이름, 기타 키워드 등으로 검색할 수 있습니다)</sub>
+ </div>
+</div>
+
+<div id="view_month">[<a href="javascript:void(0);" onclick="moveToMonthNow();">이번달 일정 살펴보기</a>] [<a href="javascript:void(0);" onclick="moveToToday();">오늘의 생일/기념일</a>]</div>
+
+<div id="date_list">
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_1" name="month_1">1월</a></h3>
+
+<ul class="i_date" id="d_101" style="display: list-item;">
+ <li>1월 1일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_pp" style="display: list-item;"><b>기념일:</b> Poppin'Party 단독 극장판 (팝핀'드림!) 현지 개봉일 (2022년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_102" style="display: list-item;">
+ <li>1월 2일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 아케사카 사토미 ([初] 시로카네 린코 역, 1988년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_103" style="display: list-item;">
+ <li>1월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 뱅드림! TVA 2기 현지 방영 시작일 (2019년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_107" style="display: list-item;">
+ <li>1월 7일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ag" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_tsugumi">하자와 츠구미</span> (<span class="t_ag">Afterglow</span>/Kb.)</li>
+  </ul>
+ </li>
+</ul> 
+
+<ul class="i_date" id="d_113" style="display: list-item;">
+ <li>1월 13일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ra" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_layer_rei">레이어/와카나 레이</span> (<span class="t_ra">RAISE A SUILEN</span>/Ba. &amp; Vo.)</li>
+    <li class="voices_ag" style="display: list-item;"><b>성우 생일:</b> 미사와 사치카 (아오바 모카 역, 1993년생)</li>
+    <li class="voices_ra" style="display: list-item;"><b>성우 생일:</b> Raychell (레이어/와카나 레이 역, 1985년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_121" style="display: list-item;">
+ <li>1월 21일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 뱅드림! TVA 1기 현지 방영 시작일 (2017년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_123" style="display: list-item;">
+ <li>1월 23일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 뱅드림! TVA 3기 현지 방영 시작일 (2020년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_129" style="display: list-item;">
+ <li>1월 29일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ag" style="display: list-item;"><b>성우 생일:</b> 사쿠라 아야네 (미타케 란 역, 1994년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_2" name="month_2">2월</a></h3>
+
+<ul class="i_date" id="d_203" style="display: list-item;">
+ <li>2월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ra" style="display: list-item;"><b>성우 생일:</b> 코하라 리코 (록/아사히 롯카 역, 1990년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_206" style="display: list-item;">
+ <li>2월 6일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸즈 밴드 파티(걸파) 한국어판 런칭일 (2018년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_208" style="display: list-item;">
+ <li>2월 8일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 시자키 카논 ([現] 시로카네 린코 역, 생년 불명)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_219" style="display: list-item;">
+ <li>2월 19일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_mf" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_mashiro">쿠라타 마시로</span> (<span class="t_mf">Morfonica</span>/Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_228" style="display: list-item;">
+ <li>2월 28일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_hh" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_kaoru">세타 카오루</span> (<span class="t_hh">헬로, 해피 월드!</span>/Gt.)</li>
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> <b>뱅드림! 프로젝트 발족일</b> (2015년)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_3" name="month_3">3월</a></h3>
+
+
+<ul class="i_date" id="d_315" style="display: list-item;">
+ <li>3월 15일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_hh" style="display: list-item;"><b>성우 생일:</b> 토요타 모에 (마츠바라 카논 역, 1995년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_316" style="display: list-item;">
+ <li>3월 16일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸즈 밴드 파티(걸파) 런칭일 (일본판 기준, 2017년)</li>
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 쿠도 하루카 (히카와 사요 역, 1989년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_320" style="display: list-item;">
+ <li>3월 20일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_rs" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_sayo">히카와 사요</span> (<span class="t_rs">Roselia</span>/Gt.)</li>
+    <li class="chara_pl" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_hina">히카와 히나</span> (<span class="t_pl">Pastel*Palettes</span>/Gt.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_323" style="display: list-item;">
+ <li>3월 23일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pp" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_rimi">우시고메 리미</span> (<span class="t_pp">Poppin'Party</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_324" style="display: list-item;">
+ <li>3월 24일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_pp" style="display: list-item;"><b>기념일:</b> Poppin'Party 단독 극장판 (팝핀'드림!) 국내 개봉일 (2022년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_325" style="display: list-item;">
+ <li>3월 25일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ra" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_pareo_reona">파레오/뉴바라 레오나</span> (<span class="t_ra">RAISE A SUILEN</span>/Kb. &amp; Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_331" style="display: list-item;">
+ <li>3월 31일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_mf" style="display: list-item;"><b>성우 생일:</b> 니시오 유카 (히로마치 나나미 역, 1994년생)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_4" name="month_4">4월</a></h3>
+
+<ul class="i_date" id="d_406" style="display: list-item;">
+ <li>4월 6일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pl" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_chisato">시라사기 치사토</span> (<span class="t_pl">Pastel*Palettes</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_410" style="display: list-item;">
+ <li>4월 10일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ag" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_ran">미타케 란</span> (<span class="t_ag">Afterglow</span>/Vo. &amp; Gt.)</li>
+    <li class="voices_hh" style="display: list-item;"><b>성우 생일:</b> 쿠로사와 토모요 (미셸/오쿠사와 미사키 역, 1996년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_415" style="display: list-item;">
+ <li>4월 15일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ag" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_tomoe">우다가와 토모에</span> (<span class="t_ag">Afterglow</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul> 
+
+<ul class="i_date" id="d_417" style="display: list-item;">
+ <li>4월 17일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_mf" style="display: list-item;"><b>성우 생일:</b> 스구타 히나 (키리가야 토우코 역, 1995년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_420" style="display: list-item;">
+ <li>4월 20일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_mf" style="display: list-item;"><b>성우 생일:</b> 신도 아마네 (쿠라타 마시로 역, 2004년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_423" style="display: list-item;">
+ <li>4월 23일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_rs" style="display: list-item;"><b>기념일:</b> Roselia 단독 극장판 1편 (&quot;약속&quot;) 현지 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_5" name="month_5">5월</a></h3>
+
+<ul class="i_date" id="d_511" style="display: list-item;">
+ <li>5월 11일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_hh" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_kanon">마츠바라 카논</span> (<span class="t_hh">헬로, 해피 월드!</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_512" style="display: list-item;">
+ <li>5월 12일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ra" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_masking_masuki">마스킹/사토 마스키</span> (<span class="t_ra">RAISE A SUILEN</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_519" style="display: list-item;">
+ <li>5월 19일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pp" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_saaya">야마부키 사아야</span> (<span class="t_pp">Poppin'Party</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_522" style="display: list-item;">
+ <li>5월 22일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ra" style="display: list-item;"><b>성우 생일:</b> 쿠라치 레오 (파레오/뉴바라 레오나 역, 1997년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_6" name="month_6">6월</a></h3>
+
+
+<ul class="i_date" id="d_603" style="display: list-item;">
+ <li>6월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_rs" style="display: list-item;"><b>기념일:</b> Roselia 단독 극장판 1편 (&quot;약속&quot;) 국내 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_616" style="display: list-item;">
+ <li>6월 16일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_mf" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_nanami">히로마치 나나미</span> (<span class="t_mf">Morfonica</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_618" style="display: list-item;">
+ <li>6월 18일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pl" style="display: list-item;"><b>성우 생일:</b> 나카가미 이쿠미 (야마토 마야 역, 1997년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_624" style="display: list-item;">
+ <li>6월 24일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 엔도 유리카 ([初] 이마이 리사 역, 1994년생)</li>
+    <li class="voices_mf" style="display: list-item;"><b>성우 생일:</b> mika (후타바 츠쿠시 역, 생년 불명)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_625" style="display: list-item;">
+ <li>6월 25일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_rs" style="display: list-item;"><b>기념일:</b> Roselia 단독 극장판 2편 (&quot;Song I am.&quot;) 현지 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_627" style="display: list-item;">
+ <li>6월 27일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pl" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_eve">와카미야 이브</span> (<span class="t_pl">Pastel*Palettes</span>/Kb.)</li>
+  </ul>
+ </li>
+</ul>
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_7" name="month_7">7월</a></h3>
+
+<ul class="i_date" id="d_703" style="display: list-item;">
+ <li>7월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_rs" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_ako">우다가와 아코</span> (<span class="t_rs">Roselia</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_705" style="display: list-item;">
+ <li>7월 5일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ra" style="display: list-item;"><b>성우 생일:</b> 츠무기 리사 (츄츄/타마데 치유 역, 1996년생)</li>
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸파☆피코 애니메이션 1기 방영 시작일 (2018년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_707" style="display: list-item;">
+ <li>7월 7일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸파☆피코 애니메이션 2기 방영 시작일 (2020년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_714" style="display: list-item;">
+ <li>7월 14일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pp" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_kasumi">토야마 카스미</span> (<span class="t_pp">Poppin'Party</span>/Gt. &amp; Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_716" style="display: list-item;">
+ <li>7월 16일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ag" style="display: list-item;"><b>성우 생일:</b> 히카사 요코 (우다가와 토모에 역, 1985년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_717" style="display: list-item;">
+ <li>7월 17일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ra" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_lock_rokka">록/아사히 롯카</span> (<span class="t_ra">RAISE A SUILEN</span>/Gt.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_720" style="display: list-item;">
+ <li>7월 20일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ra" style="display: list-item;"><b>성우 생일:</b> 나츠메 (마스킹/사토 마스키 역, 1986년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_728" style="display: list-item;">
+ <li>7월 28일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_mf" style="display: list-item;"><b>기념일:</b> Morfonica 단독 OVA (Morfonication) 최초 공개일 (2022년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_730" style="display: list-item;">
+ <li>7월 30일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_hh" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_hagumi">키타자와 하구미</span> (<span class="t_hh">헬로, 해피 월드!</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul>
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_8" name="month_8">8월</a></h3>
+
+<ul class="i_date" id="d_808" style="display: list-item;">
+ <li>8월 8일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_hh" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_kokoro">츠루마키 코코로</span> (<span class="t_hh">헬로, 해피 월드!</span>/Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_810" style="display: list-item;">
+ <li>8월 10일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pl" style="display: list-item;"><b>성우 생일:</b> 오자와 아리 (히카와 히나 역, 1992년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_817" style="display: list-item;">
+ <li>8월 17일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pp" style="display: list-item;"><b>성우 생일:</b> 이토 아야사 (이치가야 아리사 역, 1996년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_818" style="display: list-item;">
+ <li>8월 18일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_hh" style="display: list-item;"><b>성우 생일:</b> 요시다 유리 (키타자와 하구미 역, 1992년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_820" style="display: list-item;">
+ <li>8월 20일 <span class="i_weekday"></span>
+  <ul class="i_list">
+   <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 극장판 필름 라이브 2기 현지 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_825" style="display: list-item;">
+ <li>8월 25일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_rs" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_lisa">이마이 리사</span> (<span class="t_rs">Roselia</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_9" name="month_9">9월</a></h3>
+
+<ul class="i_date" id="d_903" style="display: list-item;">
+ <li>9월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ag" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_moca">아오바 모카</span> (<span class="t_ag">Afterglow</span>/Gt.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_909" style="display: list-item;">
+ <li>9월 9일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_rs" style="display: list-item;"><b>기념일:</b> Roselia 단독 극장판 2편 (&quot;Song I am.&quot;) 국내 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_912" style="display: list-item;">
+ <li>9월 12일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 나카시마 유키 ([現] 이마이 리사 역, 1997년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_913" style="display: list-item;">
+ <li>9월 13일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pp" style="display: list-item;"><b>성우 생일:</b> 오오하시 아야카 (야마부키 사아야 역, 1994년생)</li>
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 극장판 필름 라이브 1기 현지 개봉일 (2019년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_914" style="display: list-item;">
+ <li>9월 14일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pl" style="display: list-item;"><b>성우 생일:</b> 하타 사와코 (와카미야 이브 역, 1988년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_915" style="display: list-item;">
+ <li>9월 15일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_mf" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_tsukushi">후타바 츠쿠시</span> (<span class="t_mf">Morfonica</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_916" style="display: list-item;">
+ <li>9월 16일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸즈 밴드 파티(걸파) 닌텐도 스위치판 발매일 (현지 기준, 2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_926" style="display: list-item;">
+ <li>9월 26일 <span class="i_weekday"></span>
+  <ul class="i_list">
+   <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 극장판 필름 라이브 1기 국내 개봉일 (2019년)</li>
+  </ul>
+ </li>
+</ul>
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_10" name="month_10">10월</a></h3>
+
+<ul class="i_date" id="d_1001" style="display: list-item;">
+ <li>10월 1일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_hh" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_michelle">미셸</span>/<span class="c_chara_misaki">오쿠사와 미사키</span> (<span class="t_hh">헬로, 해피 월드!</span>/DJ)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1007" style="display: list-item;">
+ <li>10월 7일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 걸파☆피코 애니메이션 3기 방영 시작일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1010" style="display: list-item;">
+ <li>10월 10일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pp" style="display: list-item;"><b>성우 생일:</b> 오오츠카 사에 (하나조노 타에 역, 1994년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1012" style="display: list-item;">
+ <li>10월 12일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_hh" style="display: list-item;"><b>성우 생일:</b> 이토 미쿠 (츠루마키 코코로 역, 1996년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1017" style="display: list-item;">
+ <li>10월 17일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_rs" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_rinko">시로카네 린코</span> (<span class="t_rs">Roselia</span>/Kb.)</li>
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 아이바 아이나 (미나토 유키나 역, 1988년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1019" style="display: list-item;">
+ <li>10월 19일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_mf" style="display: list-item;"><b>성우 생일:</b> Ayasa (야시오 루이 역, 1991년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1023" style="display: list-item;">
+ <li>10월 23일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ag" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_himari">우에하라 히마리</span> (<span class="t_ag">Afterglow</span>/Ba.)</li>
+  </ul>
+ </li>
+</ul> 
+
+<ul class="i_date" id="d_1024" style="display: list-item;">
+ <li>10월 24일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_rs" style="display: list-item;"><b>성우 생일:</b> 사쿠라가와 메구 (우다가와 아코 역, 1988년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1025" style="display: list-item;">
+ <li>10월 25일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pp" style="display: list-item;"><b>성우 생일:</b> 니시모토 리미 (우시고메 리미 역, 1994년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1026" style="display: list-item;">
+ <li>10월 26일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_rs" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_yukina">미나토 유키나</span> (<span class="t_rs">Roselia</span>/Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1027" style="display: list-item;">
+ <li>10월 27일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pp" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_arisa">이치가야 아리사</span> (<span class="t_pp">Poppin'Party</span>/Kb.)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_11" name="month_11">11월</a></h3>
+
+<ul class="i_date" id="d_1103" style="display: list-item;">
+ <li>11월 3일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pl" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_maya">야마토 마야</span> (<span class="t_pl">Pastel*Palettes</span>/Dr.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1110" style="display: list-item;">
+ <li>11월 10일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_hh" style="display: list-item;"><b>성우 생일:</b> 타도코로 아즈사 (세타 카오루 역, 1993년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1118" style="display: list-item;">
+ <li>11월 18일 <span class="i_weekday"></span>
+  <ul class="i_list">
+   <li class="anniv_bd" style="display: list-item;"><b>기념일:</b> 극장판 필름 라이브 2기 국내 개봉일 (2021년)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1119" style="display: list-item;">
+ <li>11월 19일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_mf" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_rui">야시오 루이</span> (<span class="t_mf">Morfonica</span>/Vn.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1122" style="display: list-item;">
+ <li>11월 22일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pl" style="display: list-item;"><b>성우 생일:</b> 마에시마 아미 (마루야마 아야 역, 1997년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1126" style="display: list-item;">
+ <li>11월 26일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_ag" style="display: list-item;"><b>성우 생일:</b> 카토 에미리 (우에하라 히마리 역, 1983년생)</li>
+  </ul>
+ </li>
+</ul>
+
+
+<h3 class="w3-large monthlyheader"><a id="scroll_month_12" name="month_12">12월</a></h3>
+
+<ul class="i_date" id="d_1204" style="display: list-item;">
+ <li>12월 4일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pp" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_tae">하나조노 타에</span> (<span class="t_pp">Poppin'Party</span>/Gt.)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1207" style="display: list-item;">
+ <li>12월 7일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_ra" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_chuchu_chiyu">츄츄/타마데 치유</span> (<span class="t_ra">RAISE A SUILEN</span>/DJ)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1216" style="display: list-item;">
+ <li>12월 16일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_mf" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_touko">키리가야 토우코</span> (<span class="t_mf">Morfonica</span>/Gt.)</li>
+    <li class="voices_ag" style="display: list-item;"><b>성우 생일:</b> 카네모토 히사코 (하자와 츠구미 역, 1987년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1219" style="display: list-item;">
+ <li>12월 19일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pl" style="display: list-item;"><b>성우 생일:</b> 우에사카 스미레 (시라사기 치사토 역, 1991년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1225" style="display: list-item;">
+ <li>12월 25일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="voices_pp" style="display: list-item;"><b>성우 생일:</b> <abbr title="본명: 테라카와 아이미">아이미</abbr> (토야마 카스미 역, 1991년생)</li>
+    <li class="voices_bd" style="display: list-item;"><b>성우 생일:</b> 스자키 아야 (츠키시마 마리나 역, 1986년생)</li>
+  </ul>
+ </li>
+</ul>
+
+<ul class="i_date" id="d_1227" style="display: list-item;">
+ <li>12월 27일 <span class="i_weekday"></span>
+  <ul class="i_list">
+    <li class="chara_pl" style="display: list-item;"><b>캐릭터(멤버) 생일:</b> <span class="c_chara_aya">마루야마 아야</span> (<span class="t_pl">Pastel*Palettes</span>/Vo.)</li>
+  </ul>
+ </li>
+</ul>
+
+
+</div>
+
+<div id="page_disclaimer" style="text-align: center; padding: 1em; margin: auto;">
+ <b>면책 조항</b>: 이 페이지는 <a href="https://bushiroad.co.jp/en">부시로드</a> 및 <a href="https://www.craftegg.co.jp/">Craft Egg</a>, <a href="https://www.kakaogamescorp.com/">카카오게임즈</a> 등과 <b>직접적 연관이 없으며, 작성자는 이 페이지를 통해 그 어떠한 금전적 이득도 취하고 있지 않습니다.</b><br />
+ &quot;BanG Dream!&quot;, &quot;뱅드림!&quot; 및 관련 상표/공식 컨텐츠는 대한민국 및 일본, 그 외 국가에서 부시로드의 재산입니다.
+</div>
+
+
+</body>
+</html>

BIN
common/assets/page-bg.png


+ 437 - 0
common/css/bangdream.css

@@ -0,0 +1,437 @@
+@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&family=Noto+Sans+KR&family=IBM+Plex+Sans+KR&display=swap');
+@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard-dynamic-subset.css');
+
+/* 전반적 페이지 스타일 */
+
+body,h1,h2,h3,h4,h5,h6{
+font-family: 'IBM Plex Sans KR', "Noto Sans KR", "Noto Sans JP", "Nanum Gothic", "Malgun Gothic", sans-serif !important;
+font-size: 0.95em;
+line-height: 180% !important;
+}
+
+.page-background{
+background: linear-gradient(rgba(0,0,0,0.75),rgba(0,0,0,0.75)),url(../assets/page-bg.png) no-repeat;
+background-attachment: fixed;
+background-size: cover;
+background-position: center top;
+color: #FFFFFF;
+}
+
+pre{
+white-space: pre-wrap;
+white-space: -moz-pre-wrap;
+white-space: -pre-wrap;
+white-space: -o-pre-wrap;
+word-wrap: break-word;
+}
+
+#notice_i,#notice_p{
+text-align: center;
+font-size: 1em;
+}
+
+
+.pagelist{
+background-color: rgba(0,0,0,0.65);
+border-radius: 1em;
+width: 30vw;
+margin: 0.5em auto;
+padding: 0.5em 0.5em;
+height: auto;
+}
+
+.pageentries{font-weight: bold;}
+
+.monthlyheader{
+padding-left: 0.5em;
+background-color: #F8F8FA;
+color: rgba(0,0,0,0.95) !important;
+}
+
+
+label{font-size: 0.9em;}
+
+sub,sup{line-height: normal !important;}
+
+#scrollbutton{
+bottom: 0;
+right: 0;
+width: 3.3em;
+height: 2em;
+line-height: 2em;
+font-size: 140%;
+text-align: center;
+background-color: #E8E8FF;
+border: 2px solid #5F5F5F;
+border-radius: 0.25em 0em 0em 0em;
+position: fixed;
+opacity: 0.72;
+}
+
+span{
+color: rgba(255,255,255,1);
+text-decoration: none;
+}
+
+a:link{
+color: rgba(255,51,119,1);
+text-decoration: none;
+}
+a:active{
+color: rgba(255,51,119,0.75);
+text-decoration: none;
+}
+a:visited{
+color: rgba(255,51,119,1);
+text-decoration: none;
+}
+a:hover{
+color: rgba(255,136,187,0.75);
+text-decoration: none;
+}
+
+label{cursor: pointer;}
+
+input{
+font-family: Tahoma;
+}
+
+input[type="number"]{width: 55px;}
+
+input.inNum{
+height: 2em;
+width: 7em;
+font-size: 13px;
+}
+
+input.generalBtns{
+background-color: #FFFFFF;
+cursor: pointer;
+font-family: NanumGothic;
+border: 1px solid #0000FF;
+border-radius: 3px;
+}
+
+input.calcBtns{
+margin-top: 1em;
+margin-bottom: 1em;
+padding : 1.4em 8em;
+font-size : 1.1em;
+}
+
+abbr{cursor: help;}
+
+table,tr,td,th{
+border: 1px solid #000000;
+border-collapse: collapse;
+}
+
+ul,ol{margin-right: 1em;}
+
+#mainpage{
+display: block;
+margin-left: 1em;
+margin-right: 1em;
+margin-top: 1em;
+margin-bottom: 1em;
+}
+
+#main_01,#main_02{
+background-color: #F5F8FA;
+width: 39%;
+border-radius: 1.4em;
+margin: 0.5em auto;
+padding: 0.5em 0.5em;
+height: auto;
+}
+
+@media ( max-width: 720px ){
+ #main_01,#main_02{width: 95%;}
+}
+
+.stopped{
+z-index: 5;
+position: absolute;
+width: 100%;
+height: 100%;
+background-color: rgba(255,255,255,0.5);
+}
+
+.pageindex{
+margin: auto;
+width: 20em;
+border: 1px solid #C0B1A2;
+background-color: #FFFFFF;
+}
+
+ul.sectionlist{
+list-style-type: none;
+margin: 0;
+padding: 0;
+overflow: hidden;
+background-color: inherit;
+border: 1px solid #000000;
+}
+
+li.sectionlist{
+display: block;
+color: #000000;
+text-align: center;
+padding: 0.5em 1em;
+text-decoration: none;
+border-bottom: 1px solid #000000;
+}
+
+li.sectionlist:last-child{border-bottom: none;}
+
+.sectionheading{
+font-weight: bold;
+margin-top: 2.5em;
+margin-left: 0.5rem;
+}
+
+.seriesheading{
+font-weight: bold;
+margin-top: 1.25em;
+margin-left: 0.5rem;
+}
+
+.website_about{margin: 0.25rem 0.5rem;}
+
+.cancelled{text-decoration: line-through;}
+.cancelreason{font-style: italic;}
+
+.otherevents{
+font-weight: bold;
+list-style-type: none;
+}
+
+/* 밴드 및 멤버별 이미지 컬러 */
+#s_pp{background-color:#FF3377;}
+#s_pp a{color: #FFFFFF !important;}
+.t_pp{color: #FF3377;}
+
+.c_chara_kasumi{color: #FF5522;}
+.c_chara_saaya{color: #FFCC11;}
+.c_chara_tae{color: #0077DD;}
+.c_chara_arisa{color: #AA66DD;}
+.c_chara_rimi{color: #FF55BB;}
+
+#s_ag{background-color:#E53344;}
+#s_ag a{color: #FFFFFF !important;}
+.t_ag{color: #E53344;}
+
+.c_chara_ran{color: #EE0022;}
+.c_chara_moca{color: #00CCAA;}
+.c_chara_himari{color: #FF9999;}
+.c_chara_tomoe{color: #BB0033;}
+.c_chara_tsugumi{color: #FFEE88;}
+
+#s_pl{background-color:#33DDAA;}
+#s_pl a{color: #FFFFFF !important;}
+.t_pl{color: #33DDAA;}
+
+.c_chara_aya{color: #FF88BB;}
+.c_chara_hina{color: #55DDEE;}
+.c_chara_chisato{color: #FFEEAA;}
+.c_chara_maya{color: #99DD88;}
+.c_chara_eve{color: #DDBBFF;}
+
+#s_rs{background-color: #3344AA;}
+#s_rs a{color: #FFFFFF !important;}
+.t_rs{color: #3344AA;}
+
+.c_chara_yukina{color: #881188;}
+.c_chara_sayo{color: #00AABB;}
+.c_chara_lisa{color: #DD2200;}
+.c_chara_ako{color: #DD0088;}
+.c_chara_rinko{color: #BBBBBB;}
+
+#s_hh{background-color: #FFDD00;}
+#s_hh a{color: #000000 !important;}
+.t_hh{color: #FFDD00;}
+
+.c_chara_kokoro{color: #FFEE22;}
+.c_chara_kaoru{color: #AA33CC;}
+.c_chara_hagumi{color: #FF9922;}
+.c_chara_kanon{color: #44DDFF;}
+.c_chara_misaki{color: #006699;}
+.c_chara_michelle{color: #DD33CC;}
+
+
+#s_mf{background-color:#33AAFF;}
+#s_mf a{color: #FFFFFF !important;}
+.t_mf{color: #33AAFF;}
+
+.c_chara_mashiro{color: #6677CC;}
+.c_chara_touko{color: #EE6666;}
+.c_chara_nanami{color: #EE7744;}
+.c_chara_tsukushi{color: #EE7788;}
+.c_chara_rui{color: #669988;}
+
+
+#s_ra{background-color:#22CCCC;}
+#s_ra a{color: #FFFFFF !important;}
+.t_ra{color: #22CCCC;}
+
+.c_chara_layer_rei{color: #CC0000;}
+.c_chara_lock_rokka{color: #AAEE22;}
+.c_chara_masking_masuki{color: #EEBB44;}
+.c_chara_pareo_reona{color: #FF99BB;}
+.c_chara_chuchu_chiyu{color: #00BBFF;}
+
+
+
+
+#date_list,#container_filter,.blockcontainer{
+padding: 0.5em;
+margin: auto;
+border: 1px solid #aaaaaa;
+}
+
+#view_month,#date_now{
+text-align: center;
+padding: 0.5em;
+margin: auto;
+}
+
+.listdesc{list-style-type: none;}
+
+.indexhead{text-align: center;}
+
+.idollinks{
+margin-top: -0.5em;
+display: none;
+}
+
+.scriptlinks{cursor: pointer;}
+
+.idolnames,.cgevent_lists,.cgelection_lists{font-size: 1em;}
+
+
+
+.nonavail{
+opacity: 0.5;
+filter: Alpha(opacity=50);
+}
+
+.tblsection{
+font-size: 1.25em;
+padding: 0.25em 0;
+}
+
+.notyetavail{color: #DEDEDE;}
+
+.link_idolinfo{color: inherit !important;}
+
+
+/* 텍스트 애니메이션 효과 */
+@keyframes fadeInOut{
+ 0% {opacity: 1;}
+ 50% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+@-o-keyframes fadeInOut{
+ 0% {opacity: 1;}
+ 50% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+@-moz-keyframes fadeInOut{
+ 0% {opacity: 1;}
+ 50% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+@-webkit-keyframes fadeInOut{
+ 0% {opacity: 1;}
+ 50% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+
+#nearend_event,#nearend_event_k{
+ -webkit-animation: fadeInOut 2s infinite;
+ -moz-animation: fadeInOut 2s infinite;
+ -o-animation: fadeInOut 2s infinite;
+ animation: fadeInOut 2s infinite;
+}
+
+#cgidols_numbers_765876,#cgidols_numbers_346{
+ width: 17em;
+ margin: auto;
+ resize: none;
+}
+
+.cg_partialvoice{color: #CCCCCC;}
+
+.cgelection_idols{
+width: 100%;
+overflow: auto;
+}
+
+#birthday_today,#birthday_nearest{
+text-align: center;
+justify-content: center;
+background-color: #F5F8FA;
+background-image: url('/assets/birthday_icon_trans.png');
+background-repeat: no-repeat;
+background-size: 87px;
+background-position: right bottom;
+font-size: 1em;
+width: 22.25em;
+margin-top: 1em;
+margin-left: auto;
+margin-right: auto;
+padding-top: 0.5em;
+padding-bottom: 1.5em;
+padding-left: 0.375em;
+padding-right: 0.375em;
+border-radius: 1.4em;
+}
+
+
+#event_countdown,#event_countdown_k{
+display: table-cell;
+vertical-align: middle;
+height: 240px;
+}
+
+#countdown_time,#event_progress,#nearend_event,#underday_event,#countdown_time_k,#event_progress_k,#nearend_event_k,#underday_event_k{line-height: 144% !important;}
+
+#nearest_by_series{
+font-size: 1em;
+margin: 0 auto 0 auto;
+}
+
+#today_birth{text-align: center;}
+
+#page_disclaimer{padding-right: 1.5em;}
+
+#date_now{
+text-align: center;
+font-size: 14px;
+text-decoration: underline;
+padding-top: 1em;
+padding-bottom: 1em;
+}
+
+#current_browser{font-size: 11px;}
+
+#headtext{
+text-align: center;
+background-color: #F5F8FA;
+padding-top: 1em;
+padding-bottom: 1em;
+border-radius: 1.4em;
+}
+
+#author_info,#recent_edit{
+text-align: right;
+padding-left: 0.5em;
+padding-right: 0.5em;
+font-size: 90%;
+}
+
+#author_footer{
+text-align: center;
+padding: 1em;
+font-size: 0.875em;
+}

+ 51 - 0
common/css/pageload.css

@@ -0,0 +1,51 @@
+.pace {
+  -webkit-pointer-events: none;
+  pointer-events: none;
+
+  -webkit-user-select: none;
+  -moz-user-select: none;
+  user-select: none;
+
+  z-index: 2000;
+  position: fixed;
+  margin: auto;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  height: 5px;
+  width: 200px;
+  background: #fff;
+  border: 1px solid #29d;
+
+  overflow: hidden;
+}
+
+.pace .pace-progress {
+  -webkit-box-sizing: border-box;
+  -moz-box-sizing: border-box;
+  -ms-box-sizing: border-box;
+  -o-box-sizing: border-box;
+  box-sizing: border-box;
+
+  -webkit-transform: translate3d(0, 0, 0);
+  -moz-transform: translate3d(0, 0, 0);
+  -ms-transform: translate3d(0, 0, 0);
+  -o-transform: translate3d(0, 0, 0);
+  transform: translate3d(0, 0, 0);
+
+  max-width: 200px;
+  position: fixed;
+  z-index: 2000;
+  display: block;
+  position: absolute;
+  top: 0;
+  right: 100%;
+  height: 100%;
+  width: 100%;
+  background: #29d;
+}
+
+.pace.pace-inactive {
+  display: none;
+}

+ 232 - 0
common/css/w3.css

@@ -0,0 +1,232 @@
+/* W3.CSS 4.13 June 2019 by Jan Egil and Borge Refsnes */
+html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}
+/* Extract from normalize.css by Nicolas Gallagher and Jonathan Neal git.io/normalize */
+html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}
+article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}summary{display:list-item}
+audio,canvas,progress,video{display:inline-block}progress{vertical-align:baseline}
+audio:not([controls]){display:none;height:0}[hidden],template{display:none}
+a{background-color:transparent}a:active,a:hover{outline-width:0}
+abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
+b,strong{font-weight:bolder}dfn{font-style:italic}mark{background:#ff0;color:#000}
+small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
+sub{bottom:-0.25em}sup{top:-0.5em}figure{margin:1em 40px}img{border-style:none}
+code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}
+button,input,select,textarea,optgroup{font:inherit;margin:0}optgroup{font-weight:bold}
+button,input{overflow:visible}button,select{text-transform:none}
+button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}
+button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}
+button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
+fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}
+legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}
+[type=checkbox],[type=radio]{padding:0}
+[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
+[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
+[type=search]::-webkit-search-decoration{-webkit-appearance:none}
+::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
+/* End extract */
+html,body{font-family:Verdana,sans-serif;font-size:15px;line-height:1.5}html{overflow-x:hidden}
+h1{font-size:36px}h2{font-size:30px}h3{font-size:24px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}.w3-serif{font-family:serif}
+h1,h2,h3,h4,h5,h6{font-family:"Segoe UI",Arial,sans-serif;font-weight:400;margin:10px 0}.w3-wide{letter-spacing:4px}
+hr{border:0;border-top:1px solid #eee;margin:20px 0}
+.w3-image{max-width:100%;height:auto}img{vertical-align:middle}a{color:inherit}
+.w3-table,.w3-table-all{border-collapse:collapse;border-spacing:0;width:100%;display:table}.w3-table-all{border:1px solid #ccc}
+.w3-bordered tr,.w3-table-all tr{border-bottom:1px solid #ddd}.w3-striped tbody tr:nth-child(even){background-color:#f1f1f1}
+.w3-table-all tr:nth-child(odd){background-color:#fff}.w3-table-all tr:nth-child(even){background-color:#f1f1f1}
+.w3-hoverable tbody tr:hover,.w3-ul.w3-hoverable li:hover{background-color:#ccc}.w3-centered tr th,.w3-centered tr td{text-align:center}
+.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
+.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}
+.w3-btn,.w3-button{border:none;display:inline-block;padding:8px 16px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap}
+.w3-btn:hover{box-shadow:0 8px 16px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}
+.w3-btn,.w3-button{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}   
+.w3-disabled,.w3-btn:disabled,.w3-button:disabled{cursor:not-allowed;opacity:0.3}.w3-disabled *,:disabled *{pointer-events:none}
+.w3-btn.w3-disabled:hover,.w3-btn:disabled:hover{box-shadow:none}
+.w3-badge,.w3-tag{background-color:#000;color:#fff;display:inline-block;padding-left:8px;padding-right:8px;text-align:center}.w3-badge{border-radius:50%}
+.w3-ul{list-style-type:none;padding:0;margin:0}.w3-ul li{padding:8px 16px;border-bottom:1px solid #ddd}.w3-ul li:last-child{border-bottom:none}
+.w3-tooltip,.w3-display-container{position:relative}.w3-tooltip .w3-text{display:none}.w3-tooltip:hover .w3-text{display:inline-block}
+.w3-ripple:active{opacity:0.5}.w3-ripple{transition:opacity 0s}
+.w3-input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:100%}
+.w3-select{padding:9px 0;width:100%;border:none;border-bottom:1px solid #ccc}
+.w3-dropdown-click,.w3-dropdown-hover{position:relative;display:inline-block;cursor:pointer}
+.w3-dropdown-hover:hover .w3-dropdown-content{display:block}
+.w3-dropdown-hover:first-child,.w3-dropdown-click:hover{background-color:#ccc;color:#000}
+.w3-dropdown-hover:hover > .w3-button:first-child,.w3-dropdown-click:hover > .w3-button:first-child{background-color:#ccc;color:#000}
+.w3-dropdown-content{cursor:auto;color:#000;background-color:#fff;display:none;position:absolute;min-width:160px;margin:0;padding:0;z-index:1}
+.w3-check,.w3-radio{width:24px;height:24px;position:relative;top:6px}
+.w3-sidebar{height:100%;width:200px;background-color:#fff;position:fixed!important;z-index:1;overflow:auto}
+.w3-bar-block .w3-dropdown-hover,.w3-bar-block .w3-dropdown-click{width:100%}
+.w3-bar-block .w3-dropdown-hover .w3-dropdown-content,.w3-bar-block .w3-dropdown-click .w3-dropdown-content{min-width:100%}
+.w3-bar-block .w3-dropdown-hover .w3-button,.w3-bar-block .w3-dropdown-click .w3-button{width:100%;text-align:left;padding:8px 16px}
+.w3-main,#main{transition:margin-left .4s}
+.w3-modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)}
+.w3-modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px}
+.w3-bar{width:100%;overflow:hidden}.w3-center .w3-bar{display:inline-block;width:auto}
+.w3-bar .w3-bar-item{padding:8px 16px;float:left;width:auto;border:none;display:block;outline:0}
+.w3-bar .w3-dropdown-hover,.w3-bar .w3-dropdown-click{position:static;float:left}
+.w3-bar .w3-button{white-space:normal}
+.w3-bar-block .w3-bar-item{width:100%;display:block;padding:8px 16px;text-align:left;border:none;white-space:normal;float:none;outline:0}
+.w3-bar-block.w3-center .w3-bar-item{text-align:center}.w3-block{display:block;width:100%}
+.w3-responsive{display:block;overflow-x:auto}
+.w3-container:after,.w3-container:before,.w3-panel:after,.w3-panel:before,.w3-row:after,.w3-row:before,.w3-row-padding:after,.w3-row-padding:before,
+.w3-cell-row:before,.w3-cell-row:after,.w3-clear:after,.w3-clear:before,.w3-bar:before,.w3-bar:after{content:"";display:table;clear:both}
+.w3-col,.w3-half,.w3-third,.w3-twothird,.w3-threequarter,.w3-quarter{float:left;width:100%}
+.w3-col.s1{width:8.33333%}.w3-col.s2{width:16.66666%}.w3-col.s3{width:24.99999%}.w3-col.s4{width:33.33333%}
+.w3-col.s5{width:41.66666%}.w3-col.s6{width:49.99999%}.w3-col.s7{width:58.33333%}.w3-col.s8{width:66.66666%}
+.w3-col.s9{width:74.99999%}.w3-col.s10{width:83.33333%}.w3-col.s11{width:91.66666%}.w3-col.s12{width:99.99999%}
+@media (min-width:601px){.w3-col.m1{width:8.33333%}.w3-col.m2{width:16.66666%}.w3-col.m3,.w3-quarter{width:24.99999%}.w3-col.m4,.w3-third{width:33.33333%}
+.w3-col.m5{width:41.66666%}.w3-col.m6,.w3-half{width:49.99999%}.w3-col.m7{width:58.33333%}.w3-col.m8,.w3-twothird{width:66.66666%}
+.w3-col.m9,.w3-threequarter{width:74.99999%}.w3-col.m10{width:83.33333%}.w3-col.m11{width:91.66666%}.w3-col.m12{width:99.99999%}}
+@media (min-width:993px){.w3-col.l1{width:8.33333%}.w3-col.l2{width:16.66666%}.w3-col.l3{width:24.99999%}.w3-col.l4{width:33.33333%}
+.w3-col.l5{width:41.66666%}.w3-col.l6{width:49.99999%}.w3-col.l7{width:58.33333%}.w3-col.l8{width:66.66666%}
+.w3-col.l9{width:74.99999%}.w3-col.l10{width:83.33333%}.w3-col.l11{width:91.66666%}.w3-col.l12{width:99.99999%}}
+.w3-rest{overflow:hidden}.w3-stretch{margin-left:-16px;margin-right:-16px}
+.w3-content,.w3-auto{margin-left:auto;margin-right:auto}.w3-content{max-width:980px}.w3-auto{max-width:1140px}
+.w3-cell-row{display:table;width:100%}.w3-cell{display:table-cell}
+.w3-cell-top{vertical-align:top}.w3-cell-middle{vertical-align:middle}.w3-cell-bottom{vertical-align:bottom}
+.w3-hide{display:none!important}.w3-show-block,.w3-show{display:block!important}.w3-show-inline-block{display:inline-block!important}
+@media (max-width:1205px){.w3-auto{max-width:95%}}
+@media (max-width:600px){.w3-modal-content{margin:0 10px;width:auto!important}.w3-modal{padding-top:30px}
+.w3-dropdown-hover.w3-mobile .w3-dropdown-content,.w3-dropdown-click.w3-mobile .w3-dropdown-content{position:relative}	
+.w3-hide-small{display:none!important}.w3-mobile{display:block;width:100%!important}.w3-bar-item.w3-mobile,.w3-dropdown-hover.w3-mobile,.w3-dropdown-click.w3-mobile{text-align:center}
+.w3-dropdown-hover.w3-mobile,.w3-dropdown-hover.w3-mobile .w3-btn,.w3-dropdown-hover.w3-mobile .w3-button,.w3-dropdown-click.w3-mobile,.w3-dropdown-click.w3-mobile .w3-btn,.w3-dropdown-click.w3-mobile .w3-button{width:100%}}
+@media (max-width:768px){.w3-modal-content{width:500px}.w3-modal{padding-top:50px}}
+@media (min-width:993px){.w3-modal-content{width:900px}.w3-hide-large{display:none!important}.w3-sidebar.w3-collapse{display:block!important}}
+@media (max-width:992px) and (min-width:601px){.w3-hide-medium{display:none!important}}
+@media (max-width:992px){.w3-sidebar.w3-collapse{display:none}.w3-main{margin-left:0!important;margin-right:0!important}.w3-auto{max-width:100%}}
+.w3-top,.w3-bottom{position:fixed;width:100%;z-index:1}.w3-top{top:0}.w3-bottom{bottom:0}
+.w3-overlay{position:fixed;display:none;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:2}
+.w3-display-topleft{position:absolute;left:0;top:0}.w3-display-topright{position:absolute;right:0;top:0}
+.w3-display-bottomleft{position:absolute;left:0;bottom:0}.w3-display-bottomright{position:absolute;right:0;bottom:0}
+.w3-display-middle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}
+.w3-display-left{position:absolute;top:50%;left:0%;transform:translate(0%,-50%);-ms-transform:translate(-0%,-50%)}
+.w3-display-right{position:absolute;top:50%;right:0%;transform:translate(0%,-50%);-ms-transform:translate(0%,-50%)}
+.w3-display-topmiddle{position:absolute;left:50%;top:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
+.w3-display-bottommiddle{position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
+.w3-display-container:hover .w3-display-hover{display:block}.w3-display-container:hover span.w3-display-hover{display:inline-block}.w3-display-hover{display:none}
+.w3-display-position{position:absolute}
+.w3-circle{border-radius:50%}
+.w3-round-small{border-radius:2px}.w3-round,.w3-round-medium{border-radius:4px}.w3-round-large{border-radius:8px}.w3-round-xlarge{border-radius:16px}.w3-round-xxlarge{border-radius:32px}
+.w3-row-padding,.w3-row-padding>.w3-half,.w3-row-padding>.w3-third,.w3-row-padding>.w3-twothird,.w3-row-padding>.w3-threequarter,.w3-row-padding>.w3-quarter,.w3-row-padding>.w3-col{padding:0 8px}
+.w3-container,.w3-panel{padding:0.01em 16px}.w3-panel{margin-top:16px;margin-bottom:16px}
+.w3-code,.w3-codespan{font-family:Consolas,"courier new";font-size:16px}
+.w3-code{width:auto;background-color:#fff;padding:8px 12px;border-left:4px solid #4CAF50;word-wrap:break-word}
+.w3-codespan{color:crimson;background-color:#f1f1f1;padding-left:4px;padding-right:4px;font-size:110%}
+.w3-card,.w3-card-2{box-shadow:0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)}
+.w3-card-4,.w3-hover-shadow:hover{box-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19)}
+.w3-spin{animation:w3-spin 2s infinite linear}@keyframes w3-spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}
+.w3-animate-fading{animation:fading 10s infinite}@keyframes fading{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
+.w3-animate-opacity{animation:opac 0.8s}@keyframes opac{from{opacity:0} to{opacity:1}}
+.w3-animate-top{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
+.w3-animate-left{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}
+.w3-animate-right{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
+.w3-animate-bottom{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
+.w3-animate-zoom {animation:animatezoom 0.6s}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
+.w3-animate-input{transition:width 0.4s ease-in-out}.w3-animate-input:focus{width:100%!important}
+.w3-opacity,.w3-hover-opacity:hover{opacity:0.60}.w3-opacity-off,.w3-hover-opacity-off:hover{opacity:1}
+.w3-opacity-max{opacity:0.25}.w3-opacity-min{opacity:0.75}
+.w3-greyscale-max,.w3-grayscale-max,.w3-hover-greyscale:hover,.w3-hover-grayscale:hover{filter:grayscale(100%)}
+.w3-greyscale,.w3-grayscale{filter:grayscale(75%)}.w3-greyscale-min,.w3-grayscale-min{filter:grayscale(50%)}
+.w3-sepia{filter:sepia(75%)}.w3-sepia-max,.w3-hover-sepia:hover{filter:sepia(100%)}.w3-sepia-min{filter:sepia(50%)}
+.w3-tiny{font-size:10px!important}.w3-small{font-size:12px!important}.w3-medium{font-size:15px!important}.w3-large{font-size:18px!important}
+.w3-xlarge{font-size:24px!important}.w3-xxlarge{font-size:36px!important}.w3-xxxlarge{font-size:48px!important}.w3-jumbo{font-size:64px!important}
+.w3-left-align{text-align:left!important}.w3-right-align{text-align:right!important}.w3-justify{text-align:justify!important}.w3-center{text-align:center!important}
+.w3-border-0{border:0!important}.w3-border{border:1px solid #ccc!important}
+.w3-border-top{border-top:1px solid #ccc!important}.w3-border-bottom{border-bottom:1px solid #ccc!important}
+.w3-border-left{border-left:1px solid #ccc!important}.w3-border-right{border-right:1px solid #ccc!important}
+.w3-topbar{border-top:6px solid #ccc!important}.w3-bottombar{border-bottom:6px solid #ccc!important}
+.w3-leftbar{border-left:6px solid #ccc!important}.w3-rightbar{border-right:6px solid #ccc!important}
+.w3-section,.w3-code{margin-top:16px!important;margin-bottom:16px!important}
+.w3-margin{margin:16px!important}.w3-margin-top{margin-top:16px!important}.w3-margin-bottom{margin-bottom:16px!important}
+.w3-margin-left{margin-left:16px!important}.w3-margin-right{margin-right:16px!important}
+.w3-padding-small{padding:4px 8px!important}.w3-padding{padding:8px 16px!important}.w3-padding-large{padding:12px 24px!important}
+.w3-padding-16{padding-top:16px!important;padding-bottom:16px!important}.w3-padding-24{padding-top:24px!important;padding-bottom:24px!important}
+.w3-padding-32{padding-top:32px!important;padding-bottom:32px!important}.w3-padding-48{padding-top:48px!important;padding-bottom:48px!important}
+.w3-padding-64{padding-top:64px!important;padding-bottom:64px!important}
+.w3-left{float:left!important}.w3-right{float:right!important}
+.w3-button:hover{color:#000!important;background-color:#ccc!important}
+.w3-transparent,.w3-hover-none:hover{background-color:transparent!important}
+.w3-hover-none:hover{box-shadow:none!important}
+/* Colors */
+.w3-amber,.w3-hover-amber:hover{color:#000!important;background-color:#ffc107!important}
+.w3-aqua,.w3-hover-aqua:hover{color:#000!important;background-color:#00ffff!important}
+.w3-blue,.w3-hover-blue:hover{color:#fff!important;background-color:#2196F3!important}
+.w3-light-blue,.w3-hover-light-blue:hover{color:#000!important;background-color:#87CEEB!important}
+.w3-brown,.w3-hover-brown:hover{color:#fff!important;background-color:#795548!important}
+.w3-cyan,.w3-hover-cyan:hover{color:#000!important;background-color:#00bcd4!important}
+.w3-blue-grey,.w3-hover-blue-grey:hover,.w3-blue-gray,.w3-hover-blue-gray:hover{color:#fff!important;background-color:#607d8b!important}
+.w3-green,.w3-hover-green:hover{color:#fff!important;background-color:#4CAF50!important}
+.w3-light-green,.w3-hover-light-green:hover{color:#000!important;background-color:#8bc34a!important}
+.w3-indigo,.w3-hover-indigo:hover{color:#fff!important;background-color:#3f51b5!important}
+.w3-khaki,.w3-hover-khaki:hover{color:#000!important;background-color:#f0e68c!important}
+.w3-lime,.w3-hover-lime:hover{color:#000!important;background-color:#cddc39!important}
+.w3-orange,.w3-hover-orange:hover{color:#000!important;background-color:#ff9800!important}
+.w3-deep-orange,.w3-hover-deep-orange:hover{color:#fff!important;background-color:#ff5722!important}
+.w3-pink,.w3-hover-pink:hover{color:#fff!important;background-color:#e91e63!important}
+.w3-purple,.w3-hover-purple:hover{color:#fff!important;background-color:#9c27b0!important}
+.w3-deep-purple,.w3-hover-deep-purple:hover{color:#fff!important;background-color:#673ab7!important}
+.w3-red,.w3-hover-red:hover{color:#fff!important;background-color:#f44336!important}
+.w3-sand,.w3-hover-sand:hover{color:#000!important;background-color:#fdf5e6!important}
+.w3-teal,.w3-hover-teal:hover{color:#fff!important;background-color:#009688!important}
+.w3-yellow,.w3-hover-yellow:hover{color:#000!important;background-color:#ffeb3b!important}
+.w3-white,.w3-hover-white:hover{color:#000!important;background-color:#fff!important}
+.w3-black,.w3-hover-black:hover{color:#fff!important;background-color:#000!important}
+.w3-grey,.w3-hover-grey:hover,.w3-gray,.w3-hover-gray:hover{color:#000!important;background-color:#9e9e9e!important}
+.w3-light-grey,.w3-hover-light-grey:hover,.w3-light-gray,.w3-hover-light-gray:hover{color:#000!important;background-color:#f1f1f1!important}
+.w3-dark-grey,.w3-hover-dark-grey:hover,.w3-dark-gray,.w3-hover-dark-gray:hover{color:#fff!important;background-color:#616161!important}
+.w3-pale-red,.w3-hover-pale-red:hover{color:#000!important;background-color:#ffdddd!important}
+.w3-pale-green,.w3-hover-pale-green:hover{color:#000!important;background-color:#ddffdd!important}
+.w3-pale-yellow,.w3-hover-pale-yellow:hover{color:#000!important;background-color:#ffffcc!important}
+.w3-pale-blue,.w3-hover-pale-blue:hover{color:#000!important;background-color:#ddffff!important}
+.w3-text-amber,.w3-hover-text-amber:hover{color:#ffc107!important}
+.w3-text-aqua,.w3-hover-text-aqua:hover{color:#00ffff!important}
+.w3-text-blue,.w3-hover-text-blue:hover{color:#2196F3!important}
+.w3-text-light-blue,.w3-hover-text-light-blue:hover{color:#87CEEB!important}
+.w3-text-brown,.w3-hover-text-brown:hover{color:#795548!important}
+.w3-text-cyan,.w3-hover-text-cyan:hover{color:#00bcd4!important}
+.w3-text-blue-grey,.w3-hover-text-blue-grey:hover,.w3-text-blue-gray,.w3-hover-text-blue-gray:hover{color:#607d8b!important}
+.w3-text-green,.w3-hover-text-green:hover{color:#4CAF50!important}
+.w3-text-light-green,.w3-hover-text-light-green:hover{color:#8bc34a!important}
+.w3-text-indigo,.w3-hover-text-indigo:hover{color:#3f51b5!important}
+.w3-text-khaki,.w3-hover-text-khaki:hover{color:#b4aa50!important}
+.w3-text-lime,.w3-hover-text-lime:hover{color:#cddc39!important}
+.w3-text-orange,.w3-hover-text-orange:hover{color:#ff9800!important}
+.w3-text-deep-orange,.w3-hover-text-deep-orange:hover{color:#ff5722!important}
+.w3-text-pink,.w3-hover-text-pink:hover{color:#e91e63!important}
+.w3-text-purple,.w3-hover-text-purple:hover{color:#9c27b0!important}
+.w3-text-deep-purple,.w3-hover-text-deep-purple:hover{color:#673ab7!important}
+.w3-text-red,.w3-hover-text-red:hover{color:#f44336!important}
+.w3-text-sand,.w3-hover-text-sand:hover{color:#fdf5e6!important}
+.w3-text-teal,.w3-hover-text-teal:hover{color:#009688!important}
+.w3-text-yellow,.w3-hover-text-yellow:hover{color:#d2be0e!important}
+.w3-text-white,.w3-hover-text-white:hover{color:#fff!important}
+.w3-text-black,.w3-hover-text-black:hover{color:#000!important}
+.w3-text-grey,.w3-hover-text-grey:hover,.w3-text-gray,.w3-hover-text-gray:hover{color:#757575!important}
+.w3-text-light-grey,.w3-hover-text-light-grey:hover,.w3-text-light-gray,.w3-hover-text-light-gray:hover{color:#f1f1f1!important}
+.w3-text-dark-grey,.w3-hover-text-dark-grey:hover,.w3-text-dark-gray,.w3-hover-text-dark-gray:hover{color:#3a3a3a!important}
+.w3-border-amber,.w3-hover-border-amber:hover{border-color:#ffc107!important}
+.w3-border-aqua,.w3-hover-border-aqua:hover{border-color:#00ffff!important}
+.w3-border-blue,.w3-hover-border-blue:hover{border-color:#2196F3!important}
+.w3-border-light-blue,.w3-hover-border-light-blue:hover{border-color:#87CEEB!important}
+.w3-border-brown,.w3-hover-border-brown:hover{border-color:#795548!important}
+.w3-border-cyan,.w3-hover-border-cyan:hover{border-color:#00bcd4!important}
+.w3-border-blue-grey,.w3-hover-border-blue-grey:hover,.w3-border-blue-gray,.w3-hover-border-blue-gray:hover{border-color:#607d8b!important}
+.w3-border-green,.w3-hover-border-green:hover{border-color:#4CAF50!important}
+.w3-border-light-green,.w3-hover-border-light-green:hover{border-color:#8bc34a!important}
+.w3-border-indigo,.w3-hover-border-indigo:hover{border-color:#3f51b5!important}
+.w3-border-khaki,.w3-hover-border-khaki:hover{border-color:#f0e68c!important}
+.w3-border-lime,.w3-hover-border-lime:hover{border-color:#cddc39!important}
+.w3-border-orange,.w3-hover-border-orange:hover{border-color:#ff9800!important}
+.w3-border-deep-orange,.w3-hover-border-deep-orange:hover{border-color:#ff5722!important}
+.w3-border-pink,.w3-hover-border-pink:hover{border-color:#e91e63!important}
+.w3-border-purple,.w3-hover-border-purple:hover{border-color:#9c27b0!important}
+.w3-border-deep-purple,.w3-hover-border-deep-purple:hover{border-color:#673ab7!important}
+.w3-border-red,.w3-hover-border-red:hover{border-color:#f44336!important}
+.w3-border-sand,.w3-hover-border-sand:hover{border-color:#fdf5e6!important}
+.w3-border-teal,.w3-hover-border-teal:hover{border-color:#009688!important}
+.w3-border-yellow,.w3-hover-border-yellow:hover{border-color:#ffeb3b!important}
+.w3-border-white,.w3-hover-border-white:hover{border-color:#fff!important}
+.w3-border-black,.w3-hover-border-black:hover{border-color:#000!important}
+.w3-border-grey,.w3-hover-border-grey:hover,.w3-border-gray,.w3-hover-border-gray:hover{border-color:#9e9e9e!important}
+.w3-border-light-grey,.w3-hover-border-light-grey:hover,.w3-border-light-gray,.w3-hover-border-light-gray:hover{border-color:#f1f1f1!important}
+.w3-border-dark-grey,.w3-hover-border-dark-grey:hover,.w3-border-dark-gray,.w3-hover-border-dark-gray:hover{border-color:#616161!important}
+.w3-border-pale-red,.w3-hover-border-pale-red:hover{border-color:#ffe7e7!important}.w3-border-pale-green,.w3-hover-border-pale-green:hover{border-color:#e7ffe7!important}
+.w3-border-pale-yellow,.w3-hover-border-pale-yellow:hover{border-color:#ffffcc!important}.w3-border-pale-blue,.w3-hover-border-pale-blue:hover{border-color:#e7ffff!important}

+ 203 - 0
common/js/bangdream_anniversaries.js

@@ -0,0 +1,203 @@
+
+var weekdayNames = new Array("일","월","화","수","목","금","토");
+
+function refreshFilter(){
+ var categoryFilter = [];
+ var categoryFilterList = document.getElementById("filter_types").querySelectorAll("input[name='output_filter']");
+ var numCategories = categoryFilterList.length;
+ for(x=0;x<numCategories;x++){
+  var _checkboxes_c = categoryFilterList[x];
+  var categoryCode = _checkboxes_c.value;
+  categoryFilter[categoryCode] = !!(_checkboxes_c.checked);
+ }
+
+ var seriesFilter = [];
+ var seriesFilterList = document.getElementById("filter_series").querySelectorAll("input[name='output_filter']");
+ var numSeries = seriesFilterList.length;
+ for(y=0;y<numSeries;y++){
+  var _checkboxes_s = seriesFilterList[y];
+  var seriesCode = _checkboxes_s.value;
+  seriesFilter[seriesCode] = !!(_checkboxes_s.checked);
+ }
+
+ var $dateList = $(document.getElementsByClassName("i_date"));
+ $dateList.each(function(){
+  $itemList = $(this).find(document.getElementsByClassName("i_list"));
+  $li = $itemList.children("li");
+  $li.each(function(){
+   var seriesList = this.classList;
+   var inSeries = false;
+
+   for(s=0;s<seriesList.length;s++){
+    var idText = this.classList[s].split("_");
+    if(seriesFilter[idText[1]]){
+     inSeries = true;
+     break;
+    }
+   }
+
+   if(categoryFilter[idText[0]] && inSeries){this.style.display = "list-item";}
+   else{this.style.display = "none";}
+
+   $(this).closest($dateList).css("display","list-item");
+   if($itemList.find(":visible").length == 0){$(this).closest($dateList).css("display","none");}
+  });
+ });
+}
+
+function keywordFilter(){
+
+ var $keyFilter = $(document.getElementById("keywords"));
+ var options_h = {};
+
+ $keyFilter.on("keyup",function(){
+  var $kv = $keyFilter.val();
+  var $listAll = $(document.getElementsByClassName("i_date"));
+  $listAll.css("display","none");
+  var $res = $listAll.filter(":contains('"+$kv+"')");
+  $res.each(function(){
+   var sLists = document.getElementsByClassName("i_list");
+   var $resLists = $(this).find(sLists);
+   $(this).css("display","list-item");
+   var $sList = $resLists.children("li");
+   $sList.css("display","none");
+   var $sRes = $resLists.children("li:contains('"+$kv+"')");
+   $sRes.css("display","list-item");
+   var $nRes = $resLists.children("li:visible");
+   $nRes.unmark({
+    done: function(){$nRes.mark($kv,options_h);}
+   });
+   if($nRes.length == 0){$(this).css("display","none");}
+  });
+ });
+}
+
+function toggleFilterMode(){
+
+ var cboxes = document.getElementById("filter_cboxes");
+ var kwords = document.getElementById("filter_keywords");
+ var $_boxes = $("input[name='output_filter']");
+ var $_boxes_c = $("input[name='output_filter']:checked");
+ if(cboxes.checked){
+  $_boxes.prop("disabled",false);
+  document.getElementById("keywords").value = "";
+  document.getElementById("keywords").disabled = true;
+
+  $_boxes.trigger("change");
+  $(document.getElementById("keywords")).trigger("change");
+ }else if(kwords.checked){
+  $_boxes.prop("checked",true);
+  $_boxes.prop("disabled",true);
+  document.getElementById("keywords").value = "";
+  document.getElementById("keywords").disabled = false;
+
+  if($_boxes_c.length !== $_boxes.length){$_boxes.trigger("change");}
+ }
+ var blankOpts = {};
+ $(document.getElementsByClassName("i_date")).unmark(blankOpts);
+}
+
+function highlightToday(){
+ var now = new Date();
+ var mon = now.getMonth()+1;
+ var day = now.getDate();
+ var checksum = (mon * 100)+day;
+
+ var iToday = document.getElementById("d_"+checksum);
+ if(iToday != null){iToday.classList.add("date_today");}
+
+ for(d=1;d<checksum;d++){
+  var prevDays = document.getElementById("d_"+d);
+  if(prevDays != null && prevDays.classList.contains("date_today")){prevDays.classList.remove("date_today");}
+ }
+}
+
+function dispDateNow(){
+ var dateNow = new Date();
+ var yearNow = dateNow.getFullYear();
+ var monthNow = dateNow.getMonth()+1;
+ var dayNow = dateNow.getDate();
+ var weekdayNow = dateNow.getDay();
+ var dispHourNow = dateNow.getHours();
+ var dispMinsNow = dateNow.getMinutes();
+ var dispSecsNow = dateNow.getSeconds();
+
+ var timezoneNow0 = dateNow.getTimezoneOffset();
+ var timezoneHours = ((timezoneNow0 <= 0) ? "+" : "-")+Math.floor(-timezoneNow0 / 60);
+ var timezoneMins = Math.abs(timezoneNow0) % 60;
+ timezoneMins = (timezoneMins < 10) ? "0"+timezoneMins : timezoneMins;
+ 
+ var dispDateTime = "현재 날짜/시간: "+yearNow+"년 "+monthNow+"월 "+dayNow+"일 ("+weekdayNames[weekdayNow]+"요일) "+dispHourNow+"시 "+dispMinsNow+"분 "+dispSecsNow+"초 (UTC"+timezoneHours+":"+timezoneMins+")";
+ 
+ document.getElementById("date_now").innerHTML = dispDateTime;
+}
+
+
+function moveToMonthNow(){
+ var dateTimeNow = new Date();
+ var monthNow = dateTimeNow.getMonth()+1;
+ 
+ var destSect = document.getElementById("scroll_month_"+monthNow);
+ if(typeof destSect.scrollIntoView !== "undefined"){destSect.scrollIntoView(true);}
+ else{document.location.hash = "month_"+monthNow;}
+}
+
+function hideTodayPopup(){
+ document.getElementById("layer_today").style.display = "none";
+ document.getElementById("anniversaries_today").style.display = "none";
+}
+
+function moveToToday(){
+ var dateNow = new Date();
+ var yearNow = dateNow.getFullYear();
+ var monthNow = dateNow.getMonth()+1;
+ var dayNow = dateNow.getDate();
+ var checksum = (monthNow * 100)+dayNow;
+
+ var destSect = document.getElementById("d_"+checksum);
+ var listText = "<p><b>오늘의 생일/기념일 목록</b></p>";
+ if(destSect != null){
+  var $todayList = $(destSect).find(document.getElementsByClassName("i_list"));
+  var $charaList = $todayList.find("[class^='chara']");
+  var $otherList = $todayList.find("[class^='voices'],[class^='anniv']");
+  
+  if($charaList.length > 0){$charaList.each(function(){listText += "- "+$(this).text()+"<br />";});}
+  if($otherList.length > 0){$otherList.each(function(){listText += "- "+$(this).text()+"<br />";});}
+
+  if($charaList.length == 0 && $otherList.length == 0){listText += "(해당하는 생일이나 기념일이 없습니다)<br />";}
+
+  listText += "<br />";
+
+  var hidePopup = document.createElement("input");
+  hidePopup.type = "button";
+  hidePopup.value = "닫기";
+  hidePopup.addEventListener("click",function(){hideTodayPopup();});
+
+  document.getElementById("layer_today").style.display = "inline-block";
+  document.getElementById("anniversaries_today").innerHTML = listText;
+  document.getElementById("anniversaries_today").appendChild(hidePopup);
+  document.getElementById("anniversaries_today").style.display = "inline-block";
+
+  return;
+ }
+ alert("해당하는 항목이 없습니다.");
+ return;
+}
+
+function displayWeekdayYearNow(){
+ var y = (new Date()).getFullYear();
+
+ for(c=1;c<=1231;c++){
+  if(document.getElementById("d_"+c) != null){
+   var m = Math.floor(c / 100);
+   var d = c % 100;
+   var w = (new Date(y,m-1,d)).getDay();
+   $(document.getElementById("d_"+c)).find(".i_weekday").append(`(${weekdayNames[w]}요일)`);
+  }else{continue;}
+ }
+}
+
+var cMessage = "오늘도 반짝반짝 두근두근!!";
+
+if((navigator.appName == "Netscape" && navigator.userAgent.search("Trident") != -1) || (navigator.userAgent.indexOf("msie") != -1)){console.log(cMessage);}
+else{console.log("%c "+cMessage,"color:#0000FF;font-weight:bold;");}

+ 4 - 0
common/js/common.js

@@ -0,0 +1,4 @@
+function padzero(n,l){return (Array(l).join("0")+n).slice(-l);}
+
+function toPageTop(){window.scrollTo(0,0);}
+function toPageBottom(){window.scrollTo(0,document.body.scrollHeight);}

BIN
favicon.ico


+ 59 - 0
index.htm

@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="ko">
+<head>
+<title>Girls' Band Factbook : 메인 페이지</title>
+<meta charset="utf-8" />
+<meta name="viewport" content="width=device-width, initial-scale=1.0" />
+<link rel="stylesheet" type="text/css" href="./common/css/w3.css" />
+<link rel="stylesheet" type="text/css" href="./common/css/bangdream.css" />
+<link rel="stylesheet" type="text/css" href="./common/css/pageload.css" />
+<script type="text/javascript" src="./common/js/common.js"></script>
+<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" integrity="sha256-BJeo0qm959uMBGb65z40ejJYGSgR7REI4+CW1fNKwOg=" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mark.js/8.11.1/jquery.mark.min.js" integrity="sha256-4HLtjeVgH0eIB3aZ9mLYF6E8oU5chNdjU6p6rrXpl9U=" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/pace-js@latest/pace.min.js"></script>
+</head>
+<body class="page-background">
+ <h1 class="w3-xxlarge" style="text-align: center; font-weight: bold;">Girls' Band Factbook에 오신 것을 환영합니다.</h1>
+ <div style="blockcontainer">
+  <div style="text-align: center; padding-top: 3em; padding-bottom: 3em;">
+   이 사이트는 <a href="https://bang-dream.com/">BanG Dream!(뱅드림!) 프로젝트</a>에 관련된 다양한 객관적인 사항들을 수집, 정리하는 곳입니다.<br />
+   해당 컨텐츠의 전반적인 사항들은 물론, 이를 기반으로 하는 게임인 [뱅드림! 걸즈 밴드 파티!]와 관련된 정보들도 일부 다룰 예정입니다.
+  </div>
+
+  <h3 class="w3-large" style="text-align: center; font-weight: bold;">페이지 목록</h3>
+  <div class="pagelist">
+   <ul class="pageentries">
+    <li><a href="./anniversaries.htm">생일 및 기념일 목록</a></li>
+    <li><a href="#">라이브 공연 목록</a> (준비 중)</li>
+   </ul>
+  </div>  
+ </div>
+
+ <h3 class="w3-large" style="text-align: center; font-weight: bold;">관련 웹사이트</h3>
+  <div class="pagelist">
+   <ul class="pageentries">
+    <li><a href="https://bang-dream.com">뱅드림! 프로젝트 공식 웹사이트</a></li>
+    <li>[뱅드림! 걸즈 밴드 파티!] 관련
+     <ul>
+      <li><a href="https://bang-dream.bushimo.jp/">일본판 공식 웹사이트</a>
+       <ul><li><a href="https://twitter.com/bang_dream_gbp">공식 트위터 (日)</a></li></ul>
+      </li>
+      <li><a href="https://bangdream.kakaogames.com/web/main.html">한국어판 공식 웹사이트</a>
+       <ul><li><a href="https://twitter.com/bangdreamparty_">공식 트위터 (韓)</a></li></ul>
+      </li>
+      <li><a href="https://bang-dream-gbp-en.bushiroad.com/">글로벌판 공식 웹사이트</a>
+       <ul><li><a href="https://twitter.com/bangdreamgbp_en">공식 트위터 (英)</a></li></ul>
+      </li>
+     </ul>
+    </li>
+    <li><a href="https://bandori.fandom.com/wiki/BanG_Dream!_Wikia">뱅드림 위키아 (영문)</a></li>
+   </ul>
+  </div>  
+ </div>
+
+ <div id="page_disclaimer" style="text-align: center; padding: 1em; margin: auto;">
+  <b>면책 조항</b>: 이 페이지는 <a href="https://bushiroad.co.jp/en">부시로드</a> 및 <a href="https://www.craftegg.co.jp/">Craft Egg</a>, <a href="https://www.kakaogamescorp.com/">카카오게임즈</a> 등과 <b>직접적 연관이 없으며, 작성자는 이 페이지를 통해 그 어떠한 금전적 이득도 취하고 있지 않습니다.</b><br />
+  &quot;BanG Dream!&quot;, &quot;뱅드림!&quot; 및 관련 상표/공식 컨텐츠는 대한민국 및 일본, 그 외 국가에서 부시로드의 재산입니다.
+ </div>
+</body>
+</html>