カレンダーの祝日データを、2017年〜2020年分追加しました。ついでに、少し改修。
calendar303.php
デザイン変更。日曜始まり。曜日文字を大文字英字にしています。下部ボタンを修飾。
今回の改修箇所
- 日曜始まり/月曜始まりの指定(calendar303.phpの20行目)
PHPプログラムソース上での定数指定で、日曜始まりと月曜始まりの切り替え可能に。 - 上部曜日の表示文字指定(同15〜18行目、18行目で指定)
曜日の文字を「日.月.火…」、「SUN.MON.TUE…」、「sun.mon.tue…」から選択可能に。 - 半休日の指定(同19行)
沢田内科医院のように、土曜日だけでなく水曜日と金曜日も、午後休診の意味で、背景色を「緑色」としたいような場合に備えて、配列で曜日の背景色を設定可能に。 - 祝祭日の情報を2017年〜2020年分追加(同139〜212行)
- デザイン変更
CSS3変更で、見た目を変えたものを作ってみました。
PHPプログラムソースはこちら
<?php session_cache_limiter('private_no_expire'); session_start(); //ページの最初に呼び出す ?> <!DOCTYPE html> <html lang="ja"> <head> <title>カレンダー</title> <meta charset="UTF-8"> <link rel="stylesheet" href="./calendar303.css"></p> <p><?php $h_start_year = 2010; $h_end_year = 2020; $day_week_jp = array("日", "月", "火", "水","木","金","土","日"); $day_week_en = array("SUN", "MON", "TUE", "WED","THU","FRI","SAT","SUN"); $day_week_ens = array("sun", "mon", "tue", "wed","thu","fri","sat","sun"); $day_week = $day_week_en; // 曜日の表示形式を指定(上記のいずれかを指定) $day_week_class = array("yobi y_red", "yobi y_blue", "yobi y_blue", "yobi y_blue","yobi y_blue","yobi y_blue","yobi y_green","yobi y_red"); // 背景色を指定(日,月,火・・・土,日) $day_week_start = 0; // 0:日曜始まり、1:月曜始まり $holidays = array( "20100101" => "元日", "20100111" => "成人の日", "20100211" => "建国記念の日", "20100321" => "春分の日", "20100322" => "振替休日", "20100429" => "昭和の日", "20100503" => "憲法記念日", "20100504" => "みどりの日", "20100505" => "こどもの日", "20100719" => "海の日", "20100920" => "敬老の日", "20100923" => "秋分の日", "20101011" => "体育の日", "20101103" => "文化の日", "20101123" => "勤労感謝の日", "20101223" => "天皇誕生日", "20101224" => "振替休日", "20110101" => "元日", "20110110" => "成人の日", "20110211" => "建国記念の日", "20110321" => "春分の日", "20110429" => "昭和の日", "20110503" => "憲法記念日", "20110504" => "みどりの日", "20110505" => "こどもの日", "20110718" => "海の日", "20110919" => "敬老の日", "20110923" => "秋分の日", "20111010" => "体育の日", "20111103" => "文化の日", "20111123" => "勤労感謝の日", "20111223" => "天皇誕生日", "20120101" => "元日", "20120102" => "振替休日", "20120109" => "成人の日", "20120211" => "建国記念の日", "20120320" => "春分の日", "20120429" => "昭和の日", "20120430" => "振替休日", "20120503" => "憲法記念日", "20120504" => "みどりの日", "20120505" => "こどもの日", "20120716" => "海の日", "20120917" => "敬老の日", "20120922" => "秋分の日", "20121008" => "体育の日", "20121103" => "文化の日", "20121123" => "勤労感謝の日", "20121223" => "天皇誕生日", "20121224" => "振替休日", "20130101" => "元日", "20130114" => "成人の日", "20130211" => "建国記念の日", "20130320" => "春分の日", "20130429" => "昭和の日", "20130503" => "憲法記念日", "20130504" => "みどりの日", "20130505" => "こどもの日", "20130506" => "振替休日", "20130715" => "海の日", "20130916" => "敬老の日", "20130923" => "秋分の日", "20131014" => "体育の日", "20131103" => "文化の日", "20131104" => "振替休日", "20131123" => "勤労感謝の日", "20131223" => "天皇誕生日", "20140101" => "元日", "20140113" => "成人の日", "20140211" => "建国記念の日", "20140321" => "春分の日", "20140429" => "昭和の日", "20140503" => "憲法記念日", "20140504" => "みどりの日", "20140505" => "こどもの日", "20140506" => "振替休日", "20140721" => "海の日", "20140915" => "敬老の日", "20140923" => "秋分の日", "20141013" => "体育の日", "20141103" => "文化の日", "20141123" => "勤労感謝の日", "20141124" => "振替休日", "20141223" => "天皇誕生日", "20150101" => "元日", "20150112" => "成人の日", "20150211" => "建国記念の日", "20150321" => "春分の日", "20150429" => "昭和の日", "20150503" => "憲法記念日", "20150504" => "みどりの日", "20150505" => "こどもの日", "20150506" => "振替休日", "20150720" => "海の日", "20150921" => "敬老の日", "20150922" => "国民の休日", "20150923" => "秋分の日", "20151012" => "体育の日", "20151103" => "文化の日", "20151123" => "勤労感謝の日", "20151223" => "天皇誕生日", "20160101" => "元日", "20160111" => "成人の日", "20160211" => "建国記念の日", "20160320" => "春分の日", "20160321" => "振替休日", "20160429" => "昭和の日", "20160503" => "憲法記念日", "20160504" => "みどりの日", "20160505" => "こどもの日", "20160718" => "海の日", "20160811" => "山の日", "20160919" => "敬老の日", "20160922" => "秋分の日", "20161010" => "体育の日", "20161103" => "文化の日", "20161123" => "勤労感謝の日", "20161223" => "天皇誕生日", "20170101" => "元日", "20170102" => "振替休日", "20170109" => "成人の日", "20170211" => "建国記念の日", "20170320" => "春分の日", "20170429" => "昭和の日", "20170503" => "憲法記念日", "20170504" => "みどりの日", "20170505" => "こどもの日", "20170717" => "海の日", "20170811" => "山の日", "20170918" => "敬老の日", "20170923" => "秋分の日", "20171009" => "体育の日", "20171103" => "文化の日", "20171123" => "勤労感謝の日", "20171223" => "天皇誕生日", "20180101" => "元日", "20180108" => "成人の日", "20180211" => "建国記念の日", "20180212" => "振替休日", "20180321" => "春分の日", "20180429" => "昭和の日", "20180430" => "振替休日", "20180503" => "憲法記念日", "20180504" => "みどりの日", "20180505" => "こどもの日", "20180716" => "海の日", "20180811" => "山の日", "20180917" => "敬老の日", "20180923" => "秋分の日", "20180924" => "振替休日", "20181008" => "体育の日", "20181103" => "文化の日", "20181123" => "勤労感謝の日", "20181223" => "天皇誕生日", "20181224" => "振替休日", "20190101" => "元日", "20190114" => "成人の日", "20190211" => "建国記念の日", "20190321" => "春分の日", "20190429" => "昭和の日", "20190503" => "憲法記念日", "20190504" => "みどりの日", "20190505" => "こどもの日", "20190506" => "振替休日", "20190715" => "海の日", "20190811" => "山の日", "20190812" => "振替休日", "20190916" => "敬老の日", "20190923" => "秋分の日", "20191014" => "体育の日", "20191103" => "文化の日", "20191104" => "振替休日", "20191123" => "勤労感謝の日", "20191223" => "天皇誕生日", "20200101" => "元日", "20200113" => "成人の日", "20200211" => "建国記念の日", "20200320" => "春分の日", "20200429" => "昭和の日", "20200503" => "憲法記念日", "20200504" => "みどりの日", "20200505" => "こどもの日", "20200506" => "振替休日", "20200720" => "海の日", "20200811" => "山の日", "20200921" => "敬老の日", "20200922" => "秋分の日", "20201012" => "体育の日", "20201103" => "文化の日", "20201123" => "勤労感謝の日", "20201223" => "天皇誕生日" );</p> <p>function calendar(){ global $holidays; global $h_start_year; global $h_end_year; global $day_week; global $day_week_class; global $day_week_start;</p> <p>$nowday = date('Ynj'); //今日の日付</p> <p>if(isset($_SESSION['nen'])){ $nen = $_SESSION['nen']; }else{ $_SESSION['nen'] = date('Y'); $nen = date('Y'); }</p> <p>if(isset($_SESSION['tuki'])){ $tuki = $_SESSION['tuki']; }else{ $_SESSION['tuki'] = date('n'); $tuki = date('n'); }</p> <p>//今月の初めの曜日// $start_youbi = date("N", mktime(0, 0, 0,$tuki,1,$nen)); ///↑↑date('n')は1が月曜日 7が日曜日(PHP 5.1から)↑↑/// $tuki_owari = date('t'); // その月の終りの日数</p> <p>/////////プルダウンリストから年を選んだ時の処理//////////// if(isset($_POST['year'])){ $_SESSION['nen'] = $_POST['year']; $start_youbi = date("N", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); $tuki_owari = date("t",mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); }</p> <p>/////////プルダウンリストから月を選んだ時の処理//////////// if(isset($_POST['month'])){ $_SESSION['tuki'] = $_POST['month']; $start_youbi = date("N", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); $tuki_owari = date("t",mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); }</p> <p>/////////ココから←先月の処理///////////// if(@$_POST['sengetu']){ if($_SESSION['tuki']==1){ $_SESSION['nen']=$_SESSION['nen']-1; $_SESSION['tuki'] = 12; //1月だったら、年を1減らして12月にする }else{ //以下は 1月以外の処理 $_SESSION['tuki']=$_SESSION['tuki']-1; } if($_SESSION['nen']<=($h_start_year - 1)){ //祭日データの無い月は表示しない $_SESSION['nen']=$_SESSION['nen']+1; $_SESSION['tuki']=1; } $start_youbi = date("N", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); $tuki_owari = date("t", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); }</p> <p>/////////ココから来月→の処理//////////// if(@$_POST['raigetu']){ if($_SESSION['tuki']==12){ $_SESSION['nen']=$_SESSION['nen']+1; $_SESSION['tuki'] = 1; //12月だったら1月にして年を1増やす }else{ //以下は12月以外の処理 $_SESSION['tuki']=$_SESSION['tuki']+1; } if($_SESSION['nen']>=($h_end_year + 1)){ //祭日データの無い月は表示しない $_SESSION['nen']=$_SESSION['nen']-1; $_SESSION['tuki']=12; } $start_youbi = date("N", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); $tuki_owari = date("t", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); }</p> <p>/////////ココから今月→の処理//////////// if(@$_POST['kongetu']){ $_SESSION['nen'] = date('Y'); $_SESSION['tuki'] = date('n'); $start_youbi = date("N", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); $tuki_owari = date("t", mktime(0, 0, 0,$_SESSION['tuki'],1, $_SESSION['nen'])); }</p> <p>//////////////フォーム部分///////////////////////</p> <p>echo<<<EOT <div class="calendar_box"> <div style="text-align:center;"> <div style="margin-left:auto; margin-right:auto;"></p> <p><form action="" method="post"></p> <p><input type="hidden" name="nen" value="{$_SESSION['nen']}"> <input type="hidden" name="tuki" value="{$_SESSION['tuki']}"></p> <p><select class="year" name="year" onChange="submit()"> EOT; echo "\n"; for ($i = $h_start_year; $i <= $h_end_year; $i++) { echo " <option value='".$i."'"; if ($i == $_SESSION['nen']) echo " selected"; $di = mb_convert_kana($i, 'A', 'utf8'); echo ">".$di."年</option>\n"; }</p> <p>echo<<<EOT </select> <select class="month" name="month" onChange="submit()"> EOT; echo "\n"; for ($i = 1; $i <= 12; $i++) { echo " <option value='".$i."'"; if ($i == $_SESSION['tuki']) echo " selected"; $di = mb_convert_kana($i, 'A', 'utf8'); echo ">".$di."月</option>\n"; }</p> <p>echo<<<EOT </select></p> <p><table class="calendar" align="center"> <tr> EOT;</p> <p>//////////曜日の表示////////// echo "\n"; for($i=$day_week_start ; $i < $day_week_start + 7 ; $i++){ echo ' <th class="'.$day_week_class[$i].'">'.$day_week[$i].'</th>'; echo "\n"; }</p> <p>echo<<<EOT </tr> <tr> EOT;</p> <p>$y = $_SESSION['nen']; $m = $_SESSION['tuki']; $zengetsu =0; $kongetsu =0; $yokugetsu =0; $cnt = 1; $orikaesi =0; /////////先月の表示処理//////////// if(($day_week_start == 0)&&($start_youbi == 7)){$start_youbi = 0;}; // echo "start_youbi:".$start_youbi." day_week_start:".$day_week_start; // Debug 表示用 if($start_youbi != $day_week_start){ //開始の曜日が同じでない場合は空セル発射! $zy = $y; $zm = $m - 1; if($zm == 0){ $zm = 12; $zy = $zy - 1; } $zd = date("j",mktime(0,0,0,$m,0,$y)) - $start_youbi + $day_week_start + 1 ; for($i=$day_week_start + 1 ; $i<=$start_youbi ; $i++){ if(($orikaesi == ($day_week_start * 6))or(isset($holidays[date("Ymd", mktime(0, 0, 0, $zm, $zd, $zy))]))){ $td = "bkgd_red_other";//日曜日または祝日の色 $td_txt = "txt_red"; }elseif($day_week_class[$orikaesi + $day_week_start] == "yobi y_green"){ $td = "bkgd_green_other";//土曜日の色 $td_txt = "txt_green"; }else{ $td = "bkgd_blue_other";//平日の色 $td_txt = "txt_blue"; } $zengetsu_ymd = date("Ymd",mktime(0,0,0,$zm,$zd,$zy)); echo "\n"; echo ' <td><div class="bkgd_gray '.$td.'">'; if(isset($holidays[$zengetsu_ymd])){ echo '<div class="holiday_txt_red">'.$holidays[$zengetsu_ymd].'</div>'; } echo '<div class="txt_other date_font">'.$zd.'</div>'; echo '</div></td>'; $zd++; $zengetsu++; $orikaesi++; } } /////////今月の表示処理//////////// while($cnt<=$tuki_owari){ if($orikaesi ==7){ echo "\n </tr>\n <tr>"; //折り返し $orikaesi =0;//折り返しカウンタリセット } if(($orikaesi == ($day_week_start * 6))or(isset($holidays[date("Ymd", mktime(0, 0, 0, $m, $cnt, $y))]))){ $td = "bkgd_red";//日曜日または祝日の色 $td_txt = "txt_red"; }elseif($day_week_class[$orikaesi + $day_week_start] == "yobi y_green"){ $td = "bkgd_green";//土曜日の色 $td_txt = "txt_green"; }else{ $td = "bkgd_blue";//平日の色 $td_txt = "txt_blue"; } if($nowday==$_SESSION['nen'].$_SESSION['tuki'].$cnt){ $today_c = "bkgd_today"; //本日を示すの色 }else{ $today_c = ""; //本日以外の色 } echo "\n"; echo ' <td><div class="date_block '.$td.'">'; if(isset($holidays[date("Ymd", mktime(0, 0, 0, $m, $cnt, $y))])){ echo '<div class="holiday_txt_red">'.$holidays[date("Ymd",mktime(0,0,0,$m,$cnt,$y))].'</div>'; } echo '<div class="'.$td_txt.' '.$today_c.' date_font">'.$cnt.'</div>'; echo '</div></td>'; $kongetsu++; $cnt++; $orikaesi++; } /////////来月の表示処理//////////// $zk_days = $zengetsu + $kongetsu; $e = 42 - $zk_days; $yy = $y; $ym = $m + 1; if($ym == 13){ $ym = 1; $yy = $yy + 1; } $i = 0; $yd = date("j",mktime(0,0,0,$m,$cnt,$y)) + $i; while($i<$e){ if($orikaesi ==7){ echo "\n </tr>\n <tr>"; //折り返し $orikaesi =0;//折り返しカウンタリセット } if(($orikaesi == ($day_week_start * 6))or(isset($holidays[date("Ymd", mktime(0, 0, 0, $ym, $yd, $yy))]))){ $td = "bkgd_red_other";//日曜日または祝日の色 $td_txt = "txt_red"; }elseif($day_week_class[$orikaesi + $day_week_start] == "yobi y_green"){ $td = "bkgd_green_other";//土曜日の色 $td_txt = "txt_green"; }else{ $td = "bkgd_blue_other";//平日の色 $td_txt = "txt_blue"; } echo "\n"; echo ' <td><div class="bkgd_gray '.$td.'">'; if(isset($holidays[date("Ymd",mktime(0,0,0,$ym,$yd,$yy))])){ echo '<div class="holiday_txt_red">'.$holidays[date("Ymd",mktime(0,0,0,$ym,$yd,$yy))].'</div>'; } echo '<div class="txt_other date_font">'.$yd.'</div>'; echo '</div></td>'; $yd++; $yokugetsu++; $orikaesi++; $i++; } echo<<<EOT</p> <p></tr> <tr> <td colspan="2" style="height:36px;"> <input type="submit" class="sengetu" name="sengetu" value="<<"> </td> <td colspan="3" style="height:36px;"> <input type="submit" class="kongetu" name="kongetu" value="今月"> </td> <td colspan="2" style="height:36px;"> <input type="submit" class="raigetu" name="raigetu" value=">>"> </td> </tr> </table></p> <p></form></p> <p></div> </div> </div></p> <p>EOT; }</p> <p>?> </head> <body> <?php calendar(); ?> </body> </html>
CSSはこちら
@charset "utf-8";</p> <p>body { margin: 0px; padding: 0px; font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', sans-serif; line-height: 100%; }</p> <p>.entry-title { font-weight: 400; font-size: 22px; }</p> <p>.calendar_box { height:100%; }</p> <p>.top_ctrl { margin-left:auto; margin-right:auto; text-align:left; }</p> <p>.calendar{ border: 0px #000000 solid; }</p> <p>.calendar th{ border: 0px #000000 solid; }</p> <p>.calendar td{ width: 60px; height: 52px; padding: 0px; }</p> <p>.date_font { font: 600 26px/1 Times New Roman; }</p> <p>.yobi { height: 18px; padding-top: 4px; border: 1px solid #ccc; font: 600 18px/1 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', sans-serif; }</p> <p>.y_red { color: firebrick; }</p> <p>.y_blue { color: navy; }</p> <p>.y_green { color: darkgreen; }</p> <p>.date_block { position: relative; text-align:center; height:100%; }</p> <p>.bkgd_green { background: #a0dec0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; box-shadow:1px 1px 3px; vertical-align: bottom; }</p> <p>.bkgd_green_other { background: #80bea0; vertical-align: bottom; }</p> <p>.txt_green { position: absolute; top: 24px; left: 0px; width: 100%; height: 28px; color: darkgreen; line-height: 28px; overflow: hidden; }</p> <p>.bkgd_red { background: #ffe0ed; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; box-shadow:1px 1px 3px; vertical-align: bottom; }</p> <p>.bkgd_red_other { background: pink; vertical-align: bottom; }</p> <p>.txt_red { position: absolute; top: 24px; left: 0px; width: 100%; height: 28px; color: crimson; line-height: 28px; overflow: hidden; }</p> <p>.bkgd_blue { background: #def; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; box-shadow:1px 1px 3px; vertical-align: bottom; }</p> <p>.bkgd_blue_other { background: #cde; vertical-align: bottom; }</p> <p>.txt_blue { position: absolute; top: 24px; left: 0px; width: 100%; height: 28px; color: navy; line-height: 28px; overflow: hidden; }</p> <p>.bkgd_gray { position: relative; height:100%; color: gray; text-align:center; }</p> <p>.txt_other { position: absolute; top: 24px; left: 0px; width: 100%; height: 28px; }</p> <p>.bkgd_today { height: 28px; width: 100%; background: gold; border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; }</p> <p>.txt_today { height: 28px; color: #000; line-height: 28px; overflow: hidden; }</p> <p>.holiday_txt_red { height: 2em; color: crimson; padding-top: 2px; margin: 0px; text-align:center; font: 400 12px/1 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', sans-serif; overflow: hidden; }</p> <p>.year { padding-left: 10px; padding: 2px 10px; font: 400 18px/1 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', sans-serif; }</p> <p>.month { padding-left: 10px; padding: 2px 10px; font: 400 18px/1 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', sans-serif; }</p> <p>.sengetu { float: left; padding: 2px 30px; font-size: 1.2em; font-weight: bold; background-color: #248; color: #fff; border-style: none; box-shadow: 2px 2px 3px 1px #666; -moz-box-shadow: 2px 2px 3px 1px #666; -webkit-box-shadow: 2px 2px 3px 1px #666; text-shadow: 1px 1px 2px #000; background: -moz-linear-gradient(top,#B1D2E0 0%,#B1D2E0 3%,#0099CC 3%,#069); background: -webkit-gradient(linear, left top, left bottom, from(#B1D2E0), color-stop(0.03,#B1D2E0), color-stop(0.03,#0099CC), to(#069)); border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; } .sengetu:hover { opacity: 0.8; }</p> <p>.kongetu { padding: 2px 30px; font-size: 1.2em; font-weight: bold; background-color: #248; color: #fff; border-style: none; box-shadow: 2px 2px 3px 1px #666; -moz-box-shadow: 2px 2px 3px 1px #666; -webkit-box-shadow: 2px 2px 3px 1px #666; text-shadow: 1px 1px 2px #000; background: -moz-linear-gradient(top,#B1D2E0 0%,#B1D2E0 3%,#0099CC 3%,#069); background: -webkit-gradient(linear, left top, left bottom, from(#B1D2E0), color-stop(0.03,#B1D2E0), color-stop(0.03,#0099CC), to(#069)); border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; } .kongetu:hover { opacity: 0.8; }</p> <p>.raigetu { float: right; padding: 2px 30px; font-size: 1.2em; font-weight: bold; background-color: #248; color: #fff; border-style: none; box-shadow: 2px 2px 3px 1px #666; -moz-box-shadow: 2px 2px 3px 1px #666; -webkit-box-shadow: 2px 2px 3px 1px #666; text-shadow: 1px 1px 2px #000; background: -moz-linear-gradient(top,#B1D2E0 0%,#B1D2E0 3%,#0099CC 3%,#069); background: -webkit-gradient(linear, left top, left bottom, from(#B1D2E0), color-stop(0.03,#B1D2E0), color-stop(0.03,#0099CC), to(#069)); border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; } .raigetu:hover { opacity: 0.8; }
calendar302.php
デザイン変更。「月曜」始まり。曜日文字を半角英字に変更。
calendar301.php
シンプルなイメージのデザインに。「日曜」始まりにしています。
calendar3.php
これまで、沢田内科医院HPで使用していたものと同等。