/* いけりりBlogアーカイブ — Nucleus "default_right" スキンの配色とレイアウトを静的HTML向けに再現 */
html { -webkit-text-size-adjust: 100%; }
body {
  background: #505050;
  color: #494949;
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Trebuchet MS", Trebuchet, Arial, "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 12px;
  padding: 15px 0;
  margin: 0;
}
img { border: 0; max-width: 100%; height: auto; }
form { margin: 0; }
h1, h2, h3, h4, h5, h6 {
  font-family: "Georgia", "Lucida Grande", "Lucida Sans Unicode", "Trebuchet MS", Trebuchet, Arial, "Yu Gothic", Meiryo, sans-serif;
  font-weight: normal;
  margin: 0;
}
ul { list-style: none; padding: 0; margin: 0; }
li { background: url(images/arrow.gif) left 5px no-repeat; padding: 0 0 0 10px; margin: 0 20px; }
a:link, a:visited { color: #635D45; text-decoration: none; }
a:hover, a:active { color: black; text-decoration: underline; }
.hidden { display: none; }
.clearing { height: 0; clear: both; }

/* ---------- ヘッダ (旧 #footer 黄色バンド) ---------- */
#sitehead, #footer {
  width: 784px;
  box-sizing: border-box;
  background: #FCD21B;
  text-align: center;
  padding: 10px 0;
  border: 2px solid #E0E0E0;
  border-bottom-width: 0;
  margin: 0 auto;
}
#sitehead .logo { display: block; margin: 0 auto; }
#sitehead .logo img { display: block; margin: 0 auto; }
#sitehead nav { margin-top: 6px; font-size: 13px; font-weight: bold; }
#sitehead nav a { margin: 0 6px; display: inline-block; }
#footer { border-width: 0 2px 2px; padding: 12px 8px; }
#copyrights { color: #474747; line-height: 1.7; }

/* ---------- レイアウト ---------- */
#mainwrapper {
  width: 784px;
  box-sizing: border-box;
  background: white;
  border: 0 solid #E0E0E0;
  border-width: 0 2px;
  margin: auto;
}
#wrapper { background: white url(images/bgcontainer02.gif) repeat-y right; overflow: hidden; }
#container { float: left; width: 580px; padding: 4px 0 0; }
.content { margin: 7px 14px 26px 20px; }
#sidebarcontainer { float: right; width: 190px; padding: 6px 0 0; }

/* ---------- 記事 ---------- */
.contenttitle h1, .contenttitle h2 {
  clear: both;
  background: url(images/dot.gif) bottom repeat-x;
  font-size: 15px;
  line-height: 1.5;
  padding: 0 0 6px 0;
  margin: 0;
}
.contenttitle h1 { font-size: 17px; }
.contenttitle h2 .date { color: #777; font-size: 12px; margin-right: .3em; }
.contentitem { padding: 3px 0 0 0; margin: 0 0 16px 0; font-size: 12px; line-height: 1.9; }
.contentitem1 { display: inline; }
.contentitem2 { display: inline; background: url(images/dotv.gif) left repeat-y; padding: 0 0 0 10px; }
.contentitemcategory { background: url(images/bgcategory.gif) center left no-repeat; padding: 0 10px 0 14px; }
.contentitempostedby { background: url(images/bgpostedby.gif) center left no-repeat; padding: 0 10px 0 12px; }
.contentbody { font-size: 13px; text-align: justify; padding: 0 0 16px 0; line-height: 1.6em; overflow-wrap: anywhere; }
.contentbody table { max-width: 100%; }
.contentbody pre { overflow-x: auto; max-width: 100%; }
.contentbody iframe, .contentbody video, .contentbody embed, .contentbody object { max-width: 100%; }
.contentbody .more { border-top: 1px dotted #aaa; margin-top: 1em; padding-top: 1em; }
.leftbox, .rightbox { margin: 3px; padding: 3px; font-size: larger; width: 20%; }
.leftbox { float: left; border-right: 2px solid #ccc; }
.rightbox { float: right; border-left: 2px solid #ccc; }
.wrap1 { float: left; margin: 0 5px 3px 0; }

.tags { margin: 0 0 12px; line-height: 2; font-size: 12px; }
.tags a, .chips a {
  display: inline-block;
  background: #F4F0DC;
  border: 1px solid #E0D9B4;
  border-radius: 3px;
  padding: 0 7px;
  margin: 0 3px 3px 0;
  line-height: 1.7;
}
.tags a:hover, .chips a:hover { background: #FCD21B; text-decoration: none; }
.chips { line-height: 2; }
.chips small, .tags small { color: #888; margin-left: 2px; }

.breadcrumb { font-size: 11px; margin: 4px 0 10px; color: #777; }
.breadcrumb ol { list-style: none; margin: 0; padding: 0; }
.breadcrumb li { display: inline; background: none; padding: 0; margin: 0; }
.breadcrumb li + li:before { content: " › "; color: #aaa; }

.pager { margin: 12px 0 0; padding: 8px 0 0; border-top: 1px dotted #bbb; text-align: center; font-size: 13px; }
.pager a, .pager span { display: inline-block; margin: 0 2px 4px; padding: 1px 8px; border: 1px solid #ccc; }
.pager span.current { background: #FCD21B; border-color: #E0B800; font-weight: bold; }
.prevnext { display: flex; justify-content: space-between; gap: 12px; border-top: 1px dotted #bbb; padding-top: 10px; margin-top: 4px; font-size: 12px; }
.prevnext div { flex: 1 1 50%; }
.prevnext .next { text-align: right; }

/* 記事一覧 */
.entrylist { margin: 0; padding: 0; list-style: none; }
.entrylist li { background: none; margin: 0 0 12px; padding: 0 0 10px; border-bottom: 1px dotted #ccc; }
.entrylist .t { font-size: 14px; font-weight: bold; line-height: 1.5; }
.entrylist .d { color: #777; font-size: 11px; margin-right: .4em; font-weight: normal; }
.entrylist .x { font-size: 12px; color: #666; line-height: 1.6; margin-top: 2px; }
.entrylist .m { font-size: 11px; margin-top: 2px; }
.simplelist li { background: url(images/arrow.gif) left 5px no-repeat; margin: 0; padding: 0 0 2px 10px; line-height: 1.7; font-size: 12px; border: 0; }
.simplelist .d { color: #777; font-size: 11px; margin-right: .4em; }
h2.sec { background: #E5E5E5 url(images/sidetitlebg.gif); color: #3A3523; font-size: 13px; font-weight: bold; letter-spacing: 1px; padding: 4px 10px; margin: 18px 0 8px; }
h3.sub { font-size: 14px; font-weight: bold; border-bottom: 1px dotted #aaa; margin: 16px 0 6px; padding-bottom: 3px; }

/* ホーム */
.hero {
  background: #FCD21B url(images/header_sm.jpg) repeat-x 0 0;
  border: 2px solid #E0E0E0;
  text-align: center;
  padding: 18px 12px 16px;
  margin: 0 0 16px;
}
.hero .kicker { display: inline-block; background: #474747; color: #FCD21B; font-weight: bold; padding: 2px 12px; letter-spacing: 2px; font-size: 12px; }
.hero h1 { font-size: 28px; letter-spacing: 3px; color: #2a2a2a; margin: 8px 0 4px; line-height: 1.3; }
.hero .catch { font-size: 17px; font-weight: bold; color: #7a0000; margin: 4px 0 14px; padding-bottom: 8px; line-height: 1.5; }
.hero p { margin: 6px 0; font-size: 13px; line-height: 1.7; color: #333; }
.hero .cta a { display: inline-block; background: #474747; color: #fff !important; padding: 5px 14px; margin: 4px 3px; border-radius: 3px; font-size: 13px; }
.hero .cta a:hover { background: #000; text-decoration: none; }
.stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 14px; margin: 8px 0 4px; }
.stats div { background: rgba(255,255,255,.7); border: 1px solid #E0B800; padding: 2px 12px; font-size: 12px; }
.stats b { font-size: 18px; color: #7a0000; }
.genrecards { display: flex; flex-wrap: wrap; gap: 8px; }
.genrecards > div { flex: 1 1 45%; box-sizing: border-box; background: #EEEEEE; padding: 6px 10px; border-left: 4px solid #FCD21B; }
.genrecards b a { font-size: 13px; }
.genrecards p { margin: 2px 0 0; color: #666; font-size: 11px; line-height: 1.5; }
.yeargrid { display: flex; flex-wrap: wrap; gap: 4px; }
.yeargrid a { display: block; min-width: 76px; text-align: center; background: #EEEEEE; padding: 3px 6px; border: 1px solid #ddd; }
.yeargrid a:hover { background: #FCD21B; text-decoration: none; }
.yeargrid small { color: #888; display: block; }
.monthgrid { display: flex; flex-wrap: wrap; gap: 4px; margin: 6px 0 14px; }
.monthgrid a { background: #EEEEEE; padding: 2px 8px; border: 1px solid #ddd; }

/* ---------- サイドバー ---------- */
.sidebar { color: #21262A; margin: 0 6px 4px 0; }
.sidebardl { padding: 0 0 10px 0; margin: 0; }
.sidebardl dt {
  background: #E5E5E5 url(images/sidetitlebg.gif);
  color: #3A3523;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 2px;
  font-family: "Georgia", "Lucida Grande", Arial, "Yu Gothic", Meiryo, sans-serif;
  padding: 4px 10px;
}
.sidebardl dd { background: #EEEEEE; padding: 2px 10px; margin: 1px 0 0 0; }
.sidebardl dd:hover { background: #E7E7E7; }
.sidebardl dd a:link, .sidebardl dd a:visited { background: url(images/arrow.gif) left center no-repeat; padding: 0 0 0 10px; }
.sidebardl dd small { color: #888; }
.searchform { margin: 5px 0; }
.searchform input[type=text] { width: 120px; font-size: 12px; padding: 2px; border: 1px solid #868686; border-color: #868686 #D4D2CF #D4D2CF #868686; }
.searchform input[type=submit] { font-size: 12px; padding: 2px 4px; background: white; border: 1px solid #D4D2CF; border-color: #D4D2CF #868686 #868686 #D4D2CF; }
.searchform small { display: block; color: #777; margin-top: 3px; }

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 800px) {
  body { padding: 0; }
  #sitehead, #mainwrapper, #footer { width: 100%; }
  #sitehead, #footer { border-left: 0; border-right: 0; }
  #mainwrapper { border-width: 0; }
  #wrapper { background: white; }
  #container, #sidebarcontainer { float: none; width: auto; }
  .content { margin: 7px 12px 20px; }
  #sidebarcontainer { padding: 0 12px 12px; }
  .sidebar { margin: 0; }
  .contentbody { font-size: 15px; }
  .hero h1 { font-size: 22px; letter-spacing: 1px; }
  .hero .catch { font-size: 15px; }
  .genrecards > div { flex-basis: 100%; }
  .leftbox, .rightbox { width: auto; }
  .prevnext { flex-direction: column; }
  .prevnext .next { text-align: left; }
}
