@charset "utf-8";
/*
Theme Name: first-notes
Theme URI: http://first-notes.com/
Description: Web design
Author: first-notes
Version: 1.0
*/

* { margin:0;box-sizing:border-box }
html,body { height:100% }
img { display:block;max-width:100% }
h1,h2,h3,h4,h5,h6,th { font-weight:normal }
ul,ol { padding:0;list-style:none; }

body {
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  line-height: 1.5;
  font-size: 16px;
}
input[type=text],input[type=number],textarea,select { padding:5px;vertical-align:top }
input[type=button],input[type=reset],input[type=submit] { padding:2px 15px }
input[type=checkbox],input[type=radio] { margin:10px;transform:scale(1.5) }


a { text-decoration: none;color: #040 }


#header,
#footer {
  background: #822;
  padding: 40px;
}
#header { position: relative;padding: 5px 40px }
#header a,
#footer a { color: #eee }
#site-title { font-size: 22px }
#site-description { color: #bbb }

#breadcrumb { width: 100% }
#breadcrumb li { display: inline-block;margin:10px 5px }

#contents {
  min-height: 800px;
  margin: 0;
  background: #f1f1f1;
  display: flex;
}
#side,#main {
  min-height: 700px;
  margin: 5px;
  background: #fff;
}
#side { z-index:1000 }

#side .caption {
  display: block;
  background: #a33;
  color: #eee;
  padding: 2px 10px;
}
#side a {
  display: block;
  padding: 5px;
}
#side a:hover { background: #f1f1f1 }
#side a.current { background: #f1f1f1 }

#items a {
  position: relative;
  display: inline-block;
  margin: 1%;
  padding: 1px;
  width: 30%;
  color: #000;
  border:1px solid transparent;
}
#items a:hover { border:1px solid #005;opacity: 0.7 }
#items a img {
  width: 100%;
  height: 160px;
}
#items .title {
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(5,5,5,0.8);
  color: #fff;
  width: 100%;
  padding: 5px;
  min-height: 58px;
}



/*===================================*/

#main { padding: 20px }
#main h1 {
  margin-bottom: 20px;
  border-bottom: 1px solid #333;
}
#main h2 {
  margin: 40px 0 20px;
  padding-left: 5px;
  border-left: 5px solid #333;
}
#main ul { margin-top: 20px }
#main ul li {
  list-style-type: square;
  margin-left: 30px;
}



/*===================================*/
@media screen and (min-width: 768px){

#contents { padding: 10px 0 }
.hmenu { display: none }
#side {
  width: 30%;
  overflow: hidden;
}
#main {
  width: 70%;
  overflow: hidden;
}
#side.active { display: block !important; }

}
/*===================================*/
@media screen and (max-width: 767px){

#side {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  margin: 110px 0 0;
  background: #fff;
}
#main { width: 100% }

}
/*===================================*/
@media screen and (max-width: 480px){

#items a { width: 46% }

}
/*===================================*/

.hmenu {
  position: relative;
  position: absolute;
  top: 8px;
  right: 10px;
  background: #522;
  cursor: pointer;
  height:50px;
  width: 50px;
  border-radius: 5px;
}
.hmenu span {
  display: inline-block;
  position: absolute;
  background: #fff;
  left: 14px;
  height: 3px;
  width: 45%;
  border-radius: 2px;
  transition: all .4s;
}
.hmenu span:nth-of-type(1) { top: 15px }
.hmenu span:nth-of-type(2) { top: 23px }
.hmenu span:nth-of-type(3) { top: 31px }
.hmenu.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 30%;
}
.hmenu.active span:nth-of-type(2) { opacity: 0 }
.hmenu.active span:nth-of-type(3){
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 30%;
}






