*{
  box-sizing: border-box;
}
html{font-family: sans-serif;}
a {margin:0; padding:0; text-decoration:none; vertical-align:baseline;} a:link {color:#1020d0;} a:visited {color:#777;} a:hover, a:active {background:transparent; color:#1020d0;}
h1, h2, h3, h4, a, p, span, blockquote, li, th, td, dt, dd, input, .yeartime, .calendarBG {font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "San Francisco", "Segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Roboto", Verdana, Arial, Helvetica, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif, MS UI Gothic;}
h1 { font-size: 2em; margin: 0.67em 0;} mark { background: #ff0; color: #000;} small { font-size: 80%;} sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;} sup { top: -0.5em;} sub { bottom: -0.25em;} img { border: 0;} svg:not(:root) { overflow: hidden;} figure { margin: 1em 40px;} hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0;} pre { overflow: auto;}
button,input,optgroup,select,textarea { color: inherit; font: inherit; margin: 0;} button { overflow: visible;} button,select { text-transform: none;} button,html input[type="button"],input[type="reset"],input[type="submit"] { -webkit-appearance: button; cursor: pointer;} button[disabled],html input[disabled] { cursor: default;} button::-moz-focus-inner,input::-moz-focus-inner { border: 0; padding: 0;} input { line-height: normal;} input[type="checkbox"],input[type="radio"] { padding: 0;} input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button { height: auto;} input[type="search"] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; box-sizing: content-box;} input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration { -webkit-appearance: none;} fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em;} legend { border: 0; padding: 0;} textarea { overflow: auto;} optgroup { font-weight: bold;} table {border-collapse: collapse;border-spacing: 0;} td,th { padding: 0;}
code,kbd,pre,samp { font-family: monospace, monospace; font-size: 1em;}
.defs {display: none;}
body{
  display: grid;
  grid-template-rows: 71px auto 1fr;
  grid-template-areas: 
    "header"
    "main"
    "footer";
}

#header{
  grid-area: header;
  background-color: #fbfef4;
  display: flex;
  justify-content: space-between;
}
.logo{margin: 2px;}
.logo svg{width: 205px; height: 60px;}
.social-button{margin: auto 5px 0 0;}
.social-button > a, #member img{
  width: 34px;
  height: 34px;
  display: inline-block;
  cursor: pointer;
}
.fl-tw{
  background-color: #00aced;
}
.fl-fb{
  background-color: #305097;
}
.fl-yt{
  background-color: #da1725;
}
.fl-user{
  background-color: #73b845;
}
.social-button svg{
  display: block;
  margin: 5px auto 5px;
  fill: #fff;
  width: 24px;
  height: 24px;
}

#main{
  grid-area: main;
  display: grid;
  grid-template-columns: 300px 1fr;
  grid-template-rows: auto auto max-content;
  grid-template-areas: 
    "Ad_BB Ad_BB"
    "leftside body"
    "rightside rightside";
}
#Google_BB {
  grid-area: Ad_BB;
  margin: auto;
}
#article{
  grid-area: body;
  border: 1px solid #ddd;
}

#article .cntimage{padding: 0 4px 0; overflow: hidden;}
.sbn {margin: 5px auto 5px;overflow: hidden;}
.title{font-size: 1.2em; background-color: #ffdd33; margin:0 0 5px 0; padding:2px 1px 2px 5px; line-height:1.1em; font-weight: bold; word-wrap: break-word;}
.about{list-style: none;margin: 15px 0 0 -20px;}
.about li{line-height: 1.3em; margin: 1px 1px 15px -5px;}
#latest{
  grid-area: leftside;
  background-color: #fbfef4;
}
#latest h3 {margin:0 0 10px 0;padding:5px;color: #2F4F2F;background-color: #fef592;font-size:1em;}
#latest ul {list-style: square; margin: 0 0 15px -14px;}
#latest li {font-size: .875em;line-height:1.2em; margin: 1px 1px 10px -5px; padding:0;}
#latest li a{word-wrap: break-word;}
#sub{
  grid-area: rightside;
  border-top: 1px solid #c2c2c2;
  background-color: #fbfef4;
}
#subtop, #sub {border-top:1px solid #c2c2c2;}
#subNav {max-width:960px;margin: 10px auto 10px;display: grid;
  grid-template-columns: 300px 300px 300px;
  column-gap: 10px;
  grid-template-areas: "calendar category search"}
#subNav dl {margin:0 0 10px 0; padding:0; background-color: transparent;}
#subNav dl dt {margin:0; padding:5px; color: #2F4F2F; background-color: #fef592; font-size:1em; font-weight: bold;}
#subNav > .list-1 {grid-area: calendar;}
#subNav > .list-2 {grid-area: category;}
#subNav > .list-3 {grid-area: search;}
#subNav > .list-1, #subNav > .list-2, #subNav > .list-3 {width:300px;}
#subNav .navi-list-2col{margin:0; border-bottom:none; background:#fbfef4; overflow:hidden;}
#subNav .navi-list-2col:after{content:""; display:block; clear:both;}
#subNav .navi-list-2col dd{margin:0; width:50%; float:left; -webkit-box-sizing:border-box; box-sizing:border-box; background:#fbfef4;}
#subNav .navi-list-2col dd:nth-child(even),#subNav .navi-list-2col dd:nth-child(odd){border-right:none;}

#subNav .navi-list-2col dd a{position: relative; display:block; margin:0; padding:0; line-height:1em; margin-bottom:-1px; border-top:none; border-bottom:none;}
#subNav .navi-list-2col dd .iconcat{display: inline-block; width: 30px; height: 30px; margin:0 0 0 .55em; padding: 0; background-image:url(https://i.gzn.jp/images/caticons.png); background-repeat:no-repeat; background-size:30px 810px;}
.icon-catid34{background-position:0 0;} .icon-catid19{background-position:0 -30px;} .icon-catid12{background-position:0 -60px;} .icon-catid22{background-position:0 -90px;} .icon-catid17{background-position:0 -120px;} .icon-catid13{background-position:0 -150px;} .icon-catid18{background-position:0 -180px;} .icon-catid4{background-position:0 -210px;} .icon-catid5{background-position:0 -240px;} .icon-catid37{background-position:0 -270px;} .icon-catid6{background-position:0 -300px;} .icon-catid30{background-position:0 -330px;} .icon-catid29{background-position:0 -360px;} .icon-catid33{background-position:0 -390px;} .icon-catid9{background-position:0 -420px;} .icon-catid23{background-position:0 -450px;} .icon-catid20{background-position:0 -480px;} .icon-catid10{background-position:0 -510px;} .icon-catid31{background-position:0 -540px;} .icon-catid32{background-position:0 -570px;} .icon-catid15{background-position:0 -600px;} .icon-catid7{background-position:0 -630px;} .icon-catid14{background-position:0 -660px;} .icon-catid8{background-position:0 -690px;} .icon-catid16{background-position:0 -720px;} .icon-catid36{background-position:0 -750px;} .icon-catid21{background-position:0 -780px;}
#subNav .navi-list-2col dd a b{position: absolute; top: 6px; left: 40px; font-size: .875em; display: inline; margin:0; padding: 0; vertical-align:middle;}

#calendar {width:300px; height:auto; margin:10px auto 10px; padding:0; background:#fff;}
.calendarBG {width:298px;margin:0;padding:0;background:#fff;}
.calendarBG .calendarHeader th {font-size: .875em;margin:0;padding:0;text-align:center;vertical-align:middle;border: none;}
.calendarBG td {font-size: .875em;margin:0;padding:0;text-align:center;border: none;}
.calendarBG .calendarHeader, .calendarBG .calendarMonthLinks {font-weight:bold;background:#ffdd00;color:#000;width:42px;height:36px;}
.calendarMonthLinks a,.calendarMonthLinks a:link, .calendarMonthLinks a:visited, .calendarMonthLinks a:hover {text-decoration:none;background:#ffdd00;color:#000;}
.calendarDayHeading {font-weight:bold;background:#ffdd00;color:#000;}
.calendarBlank {font-weight:bold;background:#fff;color:#ccc;}
.calendarCell, .calendarToday {width:40px; height:40px; margin:auto;font-weight:bold;background:#fff;color:#ccc;}
.calendarToday a,.calendarToday a:link {display:inline-block;padding:2px;text-decoration:none;background:#1020d0;color:#fff;}
.calendarToday a:visited {display:inline-block;padding:2px;text-decoration:none;background:#1020d0;color:#fff;}
.calendarToday a:hover {display:inline-block;padding:2px;text-decoration:none;background:#1020d0;color:#fff;}
.calendarCell a,.calendarCell a:link {text-decoration:none;background:#fff;color:#1020d0;}
.calendarCell a:visited {text-decoration:none;background:#fff;color:#777;}
.calendarCell a:hover {display:inline-block;padding:2px;text-decoration:none;background:#fff;color:#1020d0;}
.monthmenu{display:inline-block;margin:auto 0 auto;padding:0;}
.selmonth {width:298px; height:auto; margin:10px auto 0; padding:0; color:#333;}

#searchform {margin:0; padding:0;}
#searchform form {width:298px; margin:10px auto 10px; padding:0; overflow: hidden; position: relative;}
#searchform input.input[type="text"] {border-radius: 0; border-style: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; background:transparent; width: 254px; height: 40px; border: 1px solid #e1e1e1; background:#fff; margin:0; padding:0;}
#searchform input.reset[type="reset"], #searchform input.submit[type="submit"], #searchform button.submit[type="submit"] {border-radius: 0; border-style: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; background:transparent;}
#searchform .reset{position: absolute; top: 0; left: 226px; width: 30px; height: 40px; margin:0; padding:0; font-weight:bold;font-size:22px; vertical-align:middle; color:#757575;}
#searchform .submit{position: absolute; top: 0; left: 254px; width: 42px; height: 42px; margin:0; padding:0;}
#searchform button.submit[type="submit"]{background:#3b78e7; border: 1px solid #3367d6;}
#searchform .submit .icon{display: inline-block; width: 1em; height: 1em; margin: 0; padding: 0; fill:#fff;}

footer{
  grid-area: footer;
  background-color: #fd0;
}
footer .navi-list-2col {max-width:600px; margin:0 auto 0; border-bottom:none; background:transparent; overflow:hidden;}
footer .navi-list-2col:after{content:"";display:block;clear:both;}
footer .navi-list-2col dd {margin:10px 5px 0; width:190px; float:left; -webkit-box-sizing:border-box; box-sizing:border-box; background:#ffffff;}
footer .navi-list-2col dd:nth-child(even),footer .navi-list-2col dd:nth-child(odd){border-right:none;}
footer .navi-list-2col dd a, footer .navi-list-2col dd form{position: relative; display:block; margin:0; padding:0; line-height:44px; margin-bottom:-1px; border-top:1px solid #ffffff; border-bottom:1px solid #ffffff;}
footer .navi-list-2col dd a.tarekomi{border-top:1px solid #ffffff;}
footer .navi-list-2col dd .icon{width: 1px; height: 1.5em; margin:1em 0 0 .55em; padding: 0;}
footer .navi-list-2col dd form .icon{width: 1px; height: 1.5em; margin:1em 0 0 .55em; padding: 0;}
footer .navi-list-2col dd a b{position: absolute; top: 1px; left: 10px; display: inline-block; padding:0; font-size: .875em;}
footer .navi-list-2col dd form input[type="submit"]{border-radius: 0; border-style: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; background:transparent; position: absolute; top: 13px; left: 10px; display: inline-block; padding:0; font-size: .875em; font-weight:bold; color:#1020d0;}

@media (max-width:1000px){
  body{
    grid-template-rows: 58px auto 1fr;
  }
  .logo svg{width: 160px; height: 47px;}
  #main{
    grid-template-columns: auto;
    grid-template-rows: auto auto auto;
    grid-template-areas: 
      "body"
      "leftside"
      "rightside"
  }
  #Google_BB {display: none;}
  #article {max-width: 600px; margin:auto;}
  #subNav {max-width:960px;margin: 10px auto 10px;display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto auto auto;
    grid-template-areas: "calendar" "category" "search"}
  #subNav > .list-1, #subNav > .list-2, #subNav > .list-3 {width:100%;}
  #calendar{margin:10px auto;}
  #searchform{margin: 10px auto;}
}
@media (max-width:768px){
  footer {width: 100%; height: auto; margin: 0; padding: 0;display: block; background: #ffdd00;}
  footer .navi-list-2col{max-width:767px; margin:0; border-bottom:1px solid #acc7e8; background:#f9f9ff; overflow:hidden;}
  footer .navi-list-2col:after{content:"";display:block;clear:both;}
  footer .navi-list-2col dd{margin:0; width:50%; float:left; -webkit-box-sizing:border-box; box-sizing:border-box; background:#fff;}
  footer .navi-list-2col dd:nth-child(even){border-right:1px solid #d2dadd;}
  footer .navi-list-2col dd a:link, footer .navi-list-2col dd  a:visited, footer .navi-list-2col dd  a:hover,  footer .navi-list-2col dd a:active {background:transparent; color:#1020d0;}
  footer .navi-list-2col dd a, footer .navi-list-2col dd form{position: relative; display:block; margin:0; padding:0; line-height:44px; margin-bottom:-1px; border-top:1px solid #d2dadd; border-bottom:1px solid #d2dadd;}
  footer .navi-list-2col dd a.tarekomi{border-top:1px solid #d2dadd;}
  footer .navi-list-2col dd .icon{width: 1px; height: 1.5em; margin:1em 0 0 .55em; padding: 0;}
  footer .navi-list-2col dd form .icon{width: 1px; height: 1.5em; margin:1em 0 0 .55em; padding: 0;}
  footer .navi-list-2col dd a b{position: absolute; top: 1px; left: 10px; display: inline-block; padding:0; font-size: .875em;}
  footer .navi-list-2col dd form input[type="submit"]{border-radius: 0; border-style: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; background:transparent; position: absolute; top: 15px; left: 10px; display: inline-block; padding:0; font-size: .875em; font-weight:bold; color:#1020d0;}
  #UFad {width: 100%; height: auto; margin: 0; padding: 20px 0 40px;display: block; background: #ffdd00; text-align:center;}
  /*.ufadbox {width:300px; height:270px; background:transparent; margin: 0 auto 0; padding: 10px 0 10px; display: block;}*/
  .ufadbox {width:auto; height:auto; background:transparent; margin: 0 auto 0; padding: 10px 0 10px; display: block;}
}