body {
  font-family: Verdana, YuMincho, "ＭＳ Ｐ明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", "HG明朝E", "ＭＳ 明朝", "メイリオ", serif;
  margin: 0;
  color: #333;
  font-size: 15px;
}

p {
  /* line-height: 2; */
}

/* header */
.parent {
  display: flex;
  justify-content: space-between;
}

.parent img {
  width: 100%;
}

.parent-box2 {
  padding-right: 10px;
}

@media screen and (max-width: 550px) {
  .parent {
    flex-direction: column;
    align-items: center;
  }
}

header h1 {
  margin: 0;
}

header {
  background-color: #000;
  padding: 5px;
}

/* nav */
nav {
  background-color: #fff;
  color: #333;
}

nav ul {
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: center;
  margin: 0;
  padding: 5px;
  list-style-type: none;
}

nav li a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 5px 15px;
  color: #333;
}

nav li a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #333;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}

nav li a:hover::after {
  transform: scale(1, 1);
}

@media only screen and (min-width:550px) {
  nav ul {
    flex-flow: row;
    margin: 0;
    padding: 5px;
  }
}

/* contents */
.contents-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.contents-box {
  display: block;
  margin-bottom: 5px;
  padding: 5px;
  width: 23%;
  background-color: #fff;
}

.contents-box img {
  margin-bottom: 5px;
  width: 95%;
}

@media screen and (max-width: 550px) {
  .contents-box {
    width: 100%;
  }
}

.radio-item {
  font-size: 15px;
  box-sizing: border-box;
  text-align: center;
}

.radio-item a {
  text-decoration: none;
  color: #333;
}

.radio-item a:hover {
  color: #03F;
}

/* main */
.main {
  padding: 10px;
  margin-bottom: 10px;
  background: #fff;
  text-align: center;
}

.main-item {
  text-align: justify;
}

.main p {
  color: #333;
  border-bottom: dotted;
  border-color: #aaa;
  border-width: 1px;
}

.main a {
  text-decoration: none;
  color: #333;
}

.main a:hover {
  color: #03F;
}

.main-logo-item img {
  width: 45%;
}

.main-logo-item a:hover {
  opacity: 0.70;
}

/* side */
.side {
  margin: 0;
  padding-bottom: 5px;
  box-sizing: border-box;
  text-align: center;
}

.side p {
  color: #333;
}

.side a {
  text-decoration: none;
  color: #333;
}

.side a:hover {
  color: #03F;
}

.side-item {
  margin-bottom: 5px;
}

.side-item img {
  width: 70%;
  margin-bottom: 10px;
}

/* note */
.note p {
  border-bottom: none;
}

.note {
  background: #ff9;
  margin-bottom: 10px;
  text-align: center;
  padding: 5px;
  width: 100%;
}

.note a {
  color: #00c;
}

.note {
  border-top: 1px dotted #aaa;
  border-bottom: 1px dotted #aaa;
}

/* アクセスカウンター */
.access img {
  width: 25%;
}

/* sns */
.sns-item img {
  width: 28px;
  padding: 10px;
}

.sns-item {
  text-align: center;
}

.sns-item a:hover {
  opacity: 0.70;
}

.orchestra {
  font-size: 15px;
}

.blog {
  margin-bottom: 10px;
}

@media screen and (min-width: 550px) {
  .flexbox {
    -webkit-display: flex;
    display: flex;
  }

  .main {
    margin: 0 5px 0 0;
    -webkit-flex: 2;
    flex: 2;
  }

  .side {
    -webkit-flex: 1;
    flex: 1;
  }
}

/* catch-wrap */
.catch-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

/* catch-box */
.catch-box {
  display: block;
  margin-bottom: 5px;
  padding: 5px;
  width: 23%;
  background-color: #fff;
}

.catch-box img {
  margin-bottom: 5px;
  width: 95%;
  height: auto;
}

@media screen and (max-width: 550px) {
  .catch-box {
    width: 100%;
  }
}

/* past */
.past {
  padding: 5px;
  margin: 0;
  padding-bottom: 5px;
  box-sizing: border-box;
  text-align: center;
}

.past p {
  color: #333;
}

.past a {
  text-decoration: none;
  color: #333;
}

.past a:hover {
  color: #03F;
}

/* title */
.title {
  width: 100%;
  background-color: #3c6;
  text-align: center;
  color: #fff;
}

/* archive */
.archive {
  display: flex;
  margin-left: 15px;
}

/* archive-item */
.archive-item {
  display: block;
}

.archive-item h4 {
  margin: 0px;
}

.archive-item p {
  margin: 0px;
  padding: 5px;
  font-size: 14px;
}

.archive-item {
  width: 95%;
}

@media screen and (max-width: 550px) {
  .archive {
    flex-wrap: wrap;
    justify-content: space-around;
  }
}

/* info */
.info-item {
  margin: 0 0 5px;
  border-bottom: 1px dotted #aaa;
  padding: 10px;
  font-size: 13px;
  box-sizing: border-box;
  text-align: center;
}

.info-item a {
  text-decoration: none;
  color: #333;
}

.info-item a:hover {
  color: #03F;
}

/* footer */
.copy {
  text-align: center;
    margin-top: 20px;
	margin-bottom: 20px;
}

#page-top {
  position: fixed;
  bottom: 5px;
  right: 15px;
}

/* iPhone 縦 */
@media screen and (min-width:550px) {
  /* for iPhone Landscape (iPhone 横) */
}

@media screen and (min-width:768px) and (max-width:1024px) {
  /* for iPad */
}

@media screen and (min-width:1024px) {
  /* for PC */
}
