﻿/*=============================================
 * body
 *=============================================*/
body {
  background: url(../img/bg.jpg) repeat;
  color: #000;
  font-family: 'Noto Serif JP', serif;
  font-size: 14px;
  line-height: 28px;
  letter-spacing: 0;
}
.fnt-mincho {
  font-family: 'Noto Serif JP', serif;
  /*	    font-family: 'Noto Sans JP', sans-serif;*/
  font-weight: 400;
}
.fnt-gothic {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: bold;
}
.fnt-hebbo {
  font-family: 'Heebo', sans-serif;
}
.fnt-notosan
{
    font-family: 'Noto Serif JP', serif;
    font-weight: 700;
}
/*=============================================
 * #header
 *=============================================*/
#header {
  background: url("../img/key.png") no-repeat center  ;
  -webkit-background-size: cover;
  background-size: 70%;
  height: 740px;
  max-height: inherit;
  min-height: auto; /*
	box-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	-moz-box-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .3);
*/
}
#header h1 {
  color: #fff;
  font-size: .85em;
  line-height: 1.6em;
  letter-spacing: .1em;
  text-align: center;
  text-shadow: 1px 1px 1px #010101;
}
body.col-x2 #header .col1 {
  background-color: rgba(0, 0, 0, .25); /* background-image: url(); */
}
body.col-x2 #header .col2 {
  background-color: rgba(0, 0, 0, .3); /* background-image: url(); */
}
#header .logo {
    background: url("../img/bd_bg.jpg") repeat center;
       padding: 0;
    position: absolute;
    width: 280px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    top: 44%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
  padding: 20px 0;


}
#header .logo img {
  max-width: 100%;
  height: auto;
}
/*=============================================
 * #navbar
 *=============================================*/
#navbar {
  background: #000;
  padding: 5px 0;
  z-index: 9 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.4);
}
#navbar nav {
  position: relative;
}
body.col-x2 #navbar menu:before {
  background: #27170C;
}
body.col-x2 #navbar menuitem {
  color: #FFF;
}
#navbar nav {
  color: #fff;
}
body.col-x2 #navbar ul {
  box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
}
#navbar li {
  display: block;
  text-align: left;
  padding: 14px 0;
  position: relative;
}
#navbar a {
  display: inline-block;
 color: #000;
  padding: 0px 0px;
  font-weight: normal;
  position: relative;
  z-index: 1;
  line-height: 1;
  text-align: left;
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.1em; /*	text-shadow:0px 2px 6px #f3e2c6, 0px 2px 3px #f3e2c6, -2px -4px 11px #f3e2c6;*/
}
#navbar a:hover {
  text-decoration: none;

}
#navbar a:hover {
 opacity: 0.7;
}
#navbar a:before {
 color: #fff;
  content: '';
  position: absolute;
  bottom: 10px;
  text-align: center;
  left: 50%;
  right: 50%;
  border-bottom: 2px solid #fff;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  display: none;
}
#navbar a:hover:before {
  left: 5px;
  right: 5px;
}
#navbar a span {
     font-weight: 700;
  position: relative;
  padding: 10px 0;
  line-height: 1;
  font-size: 15px;
  text-align: center;

  display: inline-block;
  padding: 0 5px;
  line-height: 20px;
  margin: 0 auto 10px;
 
}

#navbar a span:before {
	content: '';
	position: absolute;
	bottom: -14px;
	left: 0;
	width: 0;
	height: 3px;
	background-color:#fff;
	webkit-transition: width 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	transition: width 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
#navbar li:hover a span:before {
	width: 100%;
}

#navbar .sub {
  background: #fff;
  right: -60px;
  left: -60px;
  display: block;
}
#navbar .sub li {}
@media screen and (max-width: 768px) {
  #navbar a:hover:before {
    display: none;
  }
}
/*=============================================
 * #container
 *=============================================*/
#container {
  padding-top: 7rem;
}
#container .title {
  color: #795548;
}
/*=============================================
 * #sidebar
 *=============================================*/
#sidebar section {
  background: #FEFEFE;
  box-shadow: 0 0 3px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .3);
}
#sidebar h2 {
  color: #fff;
  background: url(../img/hd_bg.jpg) repeat center;
}
#sidebar h2:before {
  border-top-color: #fff;
}
#sidebar li a {
  color: #000;
}
#sidebar li a:hover {
  color: #000;
}
#sidebar li a:before {
  background: #000;
  top: 14px;
}
#sidebar li a:hover:before {
  background: #000;
}
#sidebar .calendar th {
  color: #A77834;
}
#sidebar .calendar td {
  background: #FEFEFE;
  border-color: #AFAFAF;
}
#sidebar .calendar tr:nth-of-type(odd) td {
  background: #EFEFEF;
}
#sidebar .calendar .header {
  color: #92580D;
  background: #F2EBE3;
  border-color: #AFAFAF;
}
#sidebar .calendar a {
  color: #402615;
}
#sidebar .calendar .having_posts {
  color: #A63435;
  background: #F6E1E1 !important;
}
/*=============================================
 * #main
 *=============================================*/
#main article {
  background: #FEFEFE;
}
#main h2 {
  color: #fff;
  background: url(../img/hd_bg.jpg) repeat center;
}
#container.tpl-post #main figcaption {
  display: none;
}
#main time {
  color: #7E7E7E;
}
#main .more a {
  color: #FFF;
  border: none;
  background-color: #000;
  transition: all .3s ease;
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
}
#main .more a:hover {
  opacity: 0.7;
}
#main .more a:before, #main .more a:after {
  background: #000;
}
#main .more a:hover:before, #main .more a:hover:after {
  background: #000;
}
#main .pagination {
  color: #909090;
}
#main .pagination li {
  background: #F6F6F6;
  box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
}
#main .pagination li:hover {
  color: #FEFEFE;
  background: #402615;
  box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
}
#main .pagination .active, #main .pagination .active:hover {
  color: #FEFEFE;
  background: #402615;
  box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 -1px #402615, 0 1px 1px rgba(0, 0, 0, .3);
}
#main .pagination .first, #main .pagination .last {
  color: #000;
  font-weight: 600;
}
#main .pagination .more-point-right:hover {
  color: inherit;
  background: #F6F6F6;
  box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
  -webkit-box-shadow: 0 -1px #FEFEFE, 0 1px 1px rgba(0, 0, 0, .3);
}
/*=============================================
 * #footer
 *=============================================*/
#footer {
  padding: 0;
}
/*=============================================
 * copyright
 *=============================================*/
address {
 
background: url(../img/bg_ft.jpg) repeat;
  text-align: center;
  font-size: 12px;
  line-height: 58px;
  letter-spacing: 0.4em;
  font-family: "Times New Roman", "serif";
  color: #fff;
}
/*=============================================
 * #calendar
 *=============================================*/
#calendar {
  display: none;
}
/*=============================================
 * RESPONSIVE
 *=============================================*/
@media screen and (max-width: 1024px) {
  #header {}
  #navbar nav {
    width: 100%;
    
  }
}
@media screen and (max-width: 960px) {
  #navbar li {
    min-width: initial;
  }
  #navbar .sub {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #header {
    width: 100%;
    height: 90vw;
background-size: cover;
  }
  #header .logo {
    max-width: none;
  }
  #header h1 {
    position: static;
  }
  body.col-x2 #header section {
    min-height: 150px;
  }
  #header .logo img {
    height: auto;
  }
  #navbar {
    background: none;
    margin: 0;
  }
  #navbar.active .toggle {
    right: 265px;
  }
  body.col-x2 #navbar menuitem {
    background: #757575;
  }
  #navbar nav {
    background: #FEFEFE;
    width: 265px;
    right: -265px;
  }
  body.col-x2 #navbar nav {
    width: 230px;
  }
  #navbar li {
    display: block;
    border-top: 1px solid #DFDFDF;
    border-bottom: 1px solid #DFDFDF;
  }
  #navbar a {
    color: #000;
    background: none;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    text-shadow: none;
    font-size: 14px;
    text-align: left;
    padding-left: 20px;
  }
  #navbar a:hover {
    background: #EFEFEF;
  }
  #navbar .sub {
    background: none;
  }
  #navbar .sub a:after {
    background: #606060;
  }
}
@media screen and (max-width: 767px) {
  #header .logo {
       width: 220px;
    top: 55%;
    padding: 10px 18px;
  }
}
@media screen and (max-width: 640px) {
  #header {
    display: block;
  }
  #header h1 {
    display: block;
    padding: 1em 16% 1em 5%;
  }
}
@media screen and (max-width: 768px) {
  #navbar nav {
    position: absolute;
    padding: 0;
    margin-top: 0;
  }
}
@media screen and (max-width: 769px) {
  #container {
    padding-top: 1rem;
  }
}
@media screen and (min-width:769px) {
  #navbar {
    background:rgba(255, 255, 255, 0.85);
    position: absolute;
    left: 0;
    right: 0;
  }
  /*
#navbar:before
{
	content: '';
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 0;
    right: 0;
    border-top: 1px solid #522626;
    border-bottom: 1px solid #522626;}
	*/
  #navbar ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
  }
  #navbar ul li {
    padding: 5px 12px;
  }
  #navbar nav a {
    font-size: 15px;
    font-weight: 500;
    padding-top: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 60px;
  }
}
@media screen and (min-width:769px) and (max-width:1250px) {
  #navbar nav a {
    padding-left: 7px;
    padding-right: 7px;
  }
}
@media screen and (min-width:769px) and (max-width:1100px) {
  #navbar nav a {
    padding-left: 7px;
    padding-right: 7px;
    letter-spacing: 0;
  }
}
@media screen and (min-width:769px) and (max-width:900px) {
  #navbar nav a {
    padding-left: 0px;
    padding-right: 0px;
    font-size: 12px;
  }
}