@charset "utf-8";

aside {
	float: right;
	width: 340px;
  margin-top: 38px;
}
@media screen and (max-width: 768px) {
  aside {
    float: none;
    width: 100%;
    margin-top: 0;
    overflow: hidden;
  }
}

/* heading
--------------------------------------------------------------------*/
.side h2 {
  margin-bottom: 20px;
	background: url(../images/h2_bg_pc.gif) left bottom repeat-x;
}
@media screen and (max-width: 768px) {
  .side h2 {
    margin-bottom: 0;
    padding-left: 10px;
    background: url(../images/h2_bg_sp.gif) left bottom repeat-x;
    background-size: 1px 2px;
  }
}

/* search
--------------------------------------------------------------------*/
/** search **/
	.side .search {
    width: 100%;
	}
		.side .search .inner {
      width: 100%;
			padding: 0 0 35px;
			text-align: left;
		}
		.side .search dt {
			float: right;
			font-size: 0;
			line-height: 0;
		}
		.side .search dd {
			padding-right: 114px;
		}
			.side .search dd input {
				width: 100%;
				height: 37px;
				line-height: 32px;
				padding: 3px 10px;
				border: 1px solid #d8d8d8;
			}
	.side.fixed .search {
    top: 84px;
	}
@media screen and (max-width: 768px) {
	.side .search {
    width: 100%;
     border-top: #e5e5e5 solid 1px;
   border-bottom: #e5e5e5 solid 1px;
	}
		.side .search .inner {
			width: 100%;
			padding: 15px 10px;
			text-align: left;
      background: #fff;
		}
		.side .search dt {
			float: right;
			font-size: 0;
			line-height: 0;
		}
		.side .search dd {
			padding-right: 0;
		}
			.side .search dd input {
				width: calc(100% - 62px);
				height: 23px;
				line-height: 20px;
				padding: 2px 5px;
				border: 1px solid #d8d8d8;
			}
			.side .search dt input {
        width: auto;
        height: 23px;
			}
}

/* side_cate
--------------------------------------------------------------------*/
.side_cate {
  margin-bottom: 30px;
}
  .side_cate .cate {
    margin-bottom: 10px;
    margin-right: 20px;
  }
  .side_cate .cate:nth-of-type(3n) {
    margin-right: 0;
  }
@media screen and (max-width: 768px) {
  .side_cate {
    margin: 15px 0 0;
    border-bottom: #e5e5e5 solid 1px;
  }
    .side_cate ul {
      padding: 10px;
      background: #fff;
    }
    .side_cate .cate {
      margin-right: 12px;
      margin-bottom: 5px;
    }
    .side_cate .cate:nth-of-type(3n) {
      margin-right: 12px;
    }
}

/* magazine
--------------------------------------------------------------------*/
.magazine {
  margin-bottom: 20px;
}
  .magazine ul {
    margin-right: -20px;
  }
    .magazine ul li {
      float: left;
      width: 160px;
      margin: 0 20px 20px 0;
    }
@media screen and (max-width: 768px) {
  .magazine {
    margin: 15px 0 0;
    border-bottom: #e5e5e5 solid 1px;
  }
    .magazine ul {
      margin-right: -10px;
      padding: 15px 10px;
      background: #fff;
    }
      .magazine ul li {
        float: left;
        width: 25%;
        margin: 0;
      }
      .magazine ul li a {
        display: inline-block;
        margin-right: 10px;
      }
}

/* shop
--------------------------------------------------------------------*/
.shop {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .shop {
    margin: 15px 0 0;
  }
}

/* bnr
--------------------------------------------------------------------*/
.bnr {
  margin-bottom: 30px;
}
  .bnr li {
    margin-bottom: 10px;
  }
    .bnr li a {
      border: #e5e5e5 solid 1px;
    }
.bnr p {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .bnr {
    margin: 15px 10px 0;
  }
    .bnr li {
      margin-bottom: 10px;
      text-align: center;
    }
      .bnr li a {
        border: #e5e5e5 solid 1px;
      }
  .bnr.bnr02 ul {
		margin-right: -10px;
  }
  .bnr.bnr02 li {
    float: left;
    width: 50%;
    text-align: left;
  }
    .bnr.bnr02 li a {
      display: inline-block;
      margin-right: 10px;
    }
  /*.bnr.bnr02 li:nth-of-type(2),
  .bnr.bnr02 li:nth-of-type(3),
  .bnr.bnr02 li:nth-of-type(4),
  .bnr.bnr02 li:nth-of-type(5) {
    float: left;
    width: 50%;
  }
    .bnr.bnr02 li:nth-of-type(2) a,
    .bnr.bnr02 li:nth-of-type(4) a {
      display: inline-block;
      margin-right: 10px;
    }*/
}

/* ranking
--------------------------------------------------------------------*/
.ranking {
  margin-bottom: 25px;
}
  .ranking .wpp-list li {
    position: relative;
    margin-bottom: 15px;
    font-size: 0;
    z-index: 1;
  }
    .ranking .wpp-list li a {
      display: inline-block;
      width: 210px;
      vertical-align: top;
      color: #006ebb;
      font-size: 14px;
    }
    .ranking .wpp-list li a:first-child {
      width: 120px;
      margin-right: 10px;
    }
      .ranking .wpp-list li a:first-child img {
        border: #e5e5e5 solid 1px;
        position: relative;
        z-index: -1;
      }
    .ranking .wpp-list li:nth-of-type(1) a:first-child {
      background: url(../images/ranking_1.png) left top no-repeat;
      background-size: 30px 30px;
    }
    .ranking .wpp-list li:nth-of-type(2) a:first-child {
      background: url(../images/ranking_2.png) left top no-repeat;
      background-size: 30px 30px;
    }
    .ranking .wpp-list li:nth-of-type(3) a:first-child {
      background: url(../images/ranking_3.png) left top no-repeat;
      background-size: 30px 30px;
    }
    .ranking .wpp-list li:nth-of-type(4) a:first-child {
      background: url(../images/ranking_4.png) left top no-repeat;
      background-size: 30px 30px;
    }
    .ranking .wpp-list li:nth-of-type(5) a:first-child {
      background: url(../images/ranking_5.png) left top no-repeat;
      background-size: 30px 30px;
    }

@media screen and (max-width: 768px) {
  .ranking {
    margin: 15px 0 0;
  }
    .ranking .wpp-list li {
      position: relative;
      margin-bottom: 0;
      padding: 10px;
      font-size: 0;
      z-index: 1;
      border-bottom: #e5e5e5 solid 1px;
    }
      .ranking .wpp-list li a {
        display: inline-block;
        width: -webkit-calc(100% - 100px) ;
        width: calc(100% - 100px) ;
        vertical-align: top;
        color: #006ebb;
        font-size: 12px;
      }
      .ranking .wpp-list li a:first-child {
        width: 90px;
        margin-right: 10px;
      }
        .ranking .wpp-list li a:first-child img {
          border: #e5e5e5 solid 1px;
          position: relative;
          z-index: -1;
        }
      .ranking .wpp-list li:nth-of-type(1) a:first-child {
        background: url(../images/ranking_1.png) left top no-repeat;
        background-size: 23px 23px;
      }
      .ranking .wpp-list li:nth-of-type(2) a:first-child {
        background: url(../images/ranking_2.png) left top no-repeat;
        background-size: 23px 23px;
      }
      .ranking .wpp-list li:nth-of-type(3) a:first-child {
        background: url(../images/ranking_3.png) left top no-repeat;
        background-size: 23px 23px;
      }
      .ranking .wpp-list li:nth-of-type(4) a:first-child {
        background: url(../images/ranking_4.png) left top no-repeat;
        background-size: 23px 23px;
      }
      .ranking .wpp-list li:nth-of-type(5) a:first-child {
        background: url(../images/ranking_5.png) left top no-repeat;
        background-size: 23px 23px;
      }
}

/* blomaga
--------------------------------------------------------------------*/
.blomaga {
  margin-bottom: 30px;
}
  .blomaga li {
    margin-bottom: 10px;
  }
    .blomaga li a {
      border: #e5e5e5 solid 1px;
    }
@media screen and (max-width: 768px) {
  .blomaga {
    margin: 15px 0 0;
    border-bottom: #e5e5e5 solid 1px;
  }
    .blomaga ul {
      margin-right: -10px;
      padding: 15px 10px;
      background: #fff;
    }
    .blomaga li {
      float: left;
      width: 50%;
      margin-bottom: 10px;
    }
    .blomaga li a {
      display: inline-block;
      margin-right: 10px;
      border: #e5e5e5 solid 1px;
    }
}

/* tweet
--------------------------------------------------------------------*/
.tweet iframe {
  border: #e5e5e5 solid 1px !important;
}
@media screen and (max-width: 768px) {
  .tweet {
    margin: 0 10px;
 }
}

/* blog
--------------------------------------------------------------------*/
.blog_list {
  margin-bottom: 25px;
}
  .blog_list ul li {
    position: relative;
    margin-bottom: 15px;
    font-size: 0;
    z-index: 1;
  }
    .blog_list ul li a {
      display: inline-block;
      width: 210px;
      vertical-align: top;
      color: #006ebb;
      font-size: 14px;
    }
    .blog_list ul li a:first-child {
      width: 120px;
      margin-right: 10px;
    }
      .blog_list ul li a:first-child img {
        border: #e5e5e5 solid 1px;
        position: relative;
        z-index: -1;
      }

@media screen and (max-width: 768px) {
  .blog_list {
    margin: 15px 0 0;
  }
    .blog_list ul li {
      position: relative;
      margin-bottom: 0;
      padding: 10px;
      font-size: 0;
      z-index: 1;
      border-bottom: #e5e5e5 solid 1px;
    }
      .blog_list ul li a {
        display: inline-block;
        width: -webkit-calc(100% - 100px) ;
        width: calc(100% - 100px) ;
        vertical-align: top;
        color: #006ebb;
        font-size: 12px;
      }
      .blog_list ul li a:first-child {
        width: 90px;
        margin-right: 10px;
      }
        .blog_list ul li a:first-child img {
          border: #e5e5e5 solid 1px;
          position: relative;
          z-index: -1;
        }
}

/*	calender
---------------------------------------------------------- */
.calendar {
  margin-bottom: 25px;
}
  .calendar #wp-calendar {
    width: 100%;
    font-size: 15px;
    text-align: center;
    border-spacing: 0;
  }
    .calendar #wp-calendar caption {
      font-size: 16px;
    }
    .calendar #wp-calendar th {
      padding: 4px 0;
    }
    .calendar #wp-calendar td {
      padding: 4px 0;
    }
    .calendar #wp-calendar td#today {
    }
    .calendar #wp-calendar .sun {
      background: #e5e5e5;
    }
      .calendar #wp-calendar td a {
        color: #fff;
        background: #d5b200;
      }
    .calendar #wp-calendar #prev {
      padding-left: 5px;
      text-align: left;
    }
    .calendar #wp-calendar #next {
      padding-right: 5px;
      text-align: right;
    }
      .calendar #wp-calendar #prev a,
      .calendar #wp-calendar #next a {
        color: #333;
        background: none;
      }

@media (max-width: 640px) {
  .calendar {
    margin: 15px 0 0;
  }
  .calendar #wp-calendar {
    width: 90%;
    margin: 15px auto 0;
    font-size: 12px;
  }
    .calendar #wp-calendar caption {
      font-size: 14px;
    }
    .calendar #wp-calendar td {
      padding: 2px 0;
    }
}


/*	related_books
---------------------------------------------------------- */
.related_books {
  margin-bottom: 30px;
  padding: 10px 12px;
  background: #fff;
  border: #e7e7e7 solid 1px;
}
.related_books h2 {
  margin-bottom: 15px;
  line-height: 0;
  text-align: center;
  background: none;
}
.related_books > dl {
  padding: 0 25%;
  padding: 0 -webkit-calc(25% + 12px);
  padding: 0 calc(25% + 12px);
}
.related_books div {
  display: table;
}
.related_books div dl {
  display: table-cell;
  padding: 0 12px;
}
.related_books div dt {
  margin-bottom: 10px;
}
.related_books div dt img {
  border: #e7e7e7 solid 1px;
}
.related_books div dd {
  text-align: center;
  font-size: 12px;
}
.related_books a {
  color: #006ebb;
}
@media (max-width: 640px) {
  .related_books h2 img {
    width: auto;
    height: 16px;
  }
}

/* gpt 
--------------------------------------------------------------------*/
.side div[id^="div-gpt-ad"] iframe {
  display: block;
  margin: 0px auto 10px auto;
}
