@charset "UTF-8";
/**
 * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
 * http://cssreset.com
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* -------------------------------------------------------------
基本設定
--------------------------------------------------------------*/
body {
  -webkit-text-size-adjust: 100%;
  font-family: helvetica, arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
  color: #000;
  background-color: #fff;
  font-size: 14px;
  font-size: 100%;
  line-height: 1.8;
}

a {
  color: #0096e0;
}

main {
  display: block;
}

/* -------------------------------------------------------------
PC
--------------------------------------------------------------*/
@media all and (min-width: 769px) {

  @viewport {
    width: 1200px !important;
  }
	
body{
	min-width: 1200px;
}
  /*　ヘッダー　*/
  .header {
    width: 100%;
  }
  .header__contents--1 {
    width: 100%;
    position: relative;
  }
  .header__contents--1:after {
    position: absolute;
    content: "";
	 left: 0;
    width: 100%;
    height: 4px;
    /*-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0 1px 3px;
    box-shadow: rgba(0, 0, 0, 0.3) 0 1px 3px;*/
    background-color: #0096e0;
    background: -webkit-gradient(linear, left top, right top, from(#0096e0), to(#124488));
    background: -webkit-linear-gradient(left, #0096e0 0%, #124488 100%);
    background: -o-linear-gradient(left, #0096e0 0%, #124488 100%);
    background: linear-gradient(left, #0096e0 0%, #124488 100%);
  }
  .header__contents--2 {
    width: 100%;
    border-bottom: solid 1px #ccc;
    position: relative;
  }
  .header__contents--3 {
    width: 100%;
    border-bottom: solid 1px #969696;
    position: relative;
  }
  .header__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .header__contents--1 .header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	 font-size: 12px;
  }
  .header__contents--2 .header__inner {
    padding: 8px 0 4px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
  }
  .header__search--2 .header__inner {
    position: relative;
  }
  .header__contents--3 .header__inner {
    padding: 4px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__logo {
    width: 116px;
    height: 36px;
    margin-right: 30px;
  }
  .header__logo a {
    width: 116px;
    height: 36px;
    display: block;
    background: url(/img/common/img_logo.png) 0 0 no-repeat;
    background-size: contain;
    text-indent: -9999px;
  }
  .header__catch {
    color: #333;
    font-size: 18px;
    font-size: 128.57143%;
    line-height: 1.2;
    /*font-family: "Yu Mincho Medium", "游明朝 Medium", YuMincho, "游明朝体";*/
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    margin-right: 58px;
  }
  .header__navi ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__navi--1 {
    padding: 25px 0 5px 0;
  }
  .header__navi--1 li {
/*	padding-right: 15px;*/
    padding-right: 12px;
/*	padding-left: 20px;*/
    padding-left: 12px;
    position: relative;
  }
  .header__navi--1 li:before {
    font-size: 12px;
    font-size: 85.71429%;
    position: absolute;
    content: "／";
    top: calc(50% - 10px);
    left: -5px;
  }
  .header__navi--1 li:first-child {
    padding-left: 0;
  }
  .header__navi--1 li:first-child:before {
    content: none;
  }
  .header__navi--1 li:last-child {
    padding-right: 0;
  }
  .header__navi--1 li a {
    color: #666;
    font-size: 16px;
    font-size: 114.28571%;
    text-decoration: none;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__navi--1 li a:hover {
    color: #0096e0;
  }
  .header__navi--1 li a.is-active {
    position: relative;
  }
  .header__navi--1 li a.is-active:before {
    position: absolute;
    content: "募集中";
    color: #fff;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: center;
    background-color: #ff9100;
    width: 52px;
    height: 20px;
    top: -25px;
    left: 0;
  }
  .header__navi--1 li a.is-active:after {
    position: absolute;
    content: "";
    border: solid 5px;
    border-color: transparent #ff9100 transparent transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: -11px;
    left: -5px;
  }

  /* 2018-06-27 ksp */
  .header__navi--1 li a.is-outlink {
    margin-right:20px;
  }
  .header__navi--1 li a.is-outlink:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_window.png) 0 0 no-repeat;
    width: 14px;
    height: 10px;
    top: calc(50% - 5px);
    right: 16px;
  }

  .header__navi--2 {
    width: calc(100% - 438px);
    max-width: 760px;
    margin-right: 30px;
	 text-align: center;
  }
  .header__navi--2 li {
    width: calc((100% - 5px) / 4);
    border-right: solid 1px #ccc;
  }
  .header__navi--2 li:first-child {
    border-left: solid 1px #ccc;
  }
  .header__navi--2 li a {
 	 display: block;
	 width: 60%;
	 margin: auto;
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__navi--2 li a:hover {
    color: #0096e0;
  }
  .header__navi--3 {
    margin-right: 20px;
  }
  .header__navi--3 li:first-child {
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
	 line-height: 23px;
    width: 115px;
	 max-height: 23px;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    background-color: #fbfbfb;
    margin-right: 30px;
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    border-left: solid 1px #ccc;
    position: relative;
  }
  .header__navi--3 li:first-child:after {
    content: "";
    position: absolute;
    width: 23px;
    height: 23px;
    background-color: #fbfbfb;
    border: solid 1px;
    border-color: #ccc #ccc transparent transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 4px;
    right: -13px;
    z-index: -1;
  }
  .header__navi--3 li:nth-child(2) {
    width: 112px;
  }
  .header__navi--3 li:nth-child(2) a {
    color: #555;
    font-size: 14px;
    font-size: 100%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    background-color: #fbfbfb;
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
    border: solid 1px #ccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__navi--3 li:nth-child(2) a:hover {
    color: #0096e0;
    border: solid 1px #0096e0;
  }
  .header__navi--4 {
    width: calc(100% - 438px);
    max-width: 760px;
    margin-right: 30px;
  }
  .header__navi--4 li {
    width: calc((100% - 4px) / 3);
    border-right: solid 1px #ccc;
  }
  .header__navi--4 li:first-child {
    border-left: solid 1px #ccc;
  }
  .header__navi--4 li a {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    padding: 0;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__navi--4 li a:before {
    font-size: 20px;
    content: "●";
    margin-right: 5px;
  }
  .header__navi--4 li a:hover {
    color: #0096e0;
  }
  .header__navi--4 li.navi__item--sho a:before {
    color: #ffb300;
  }
  .header__navi--4 li.navi__item--chu a:before {
    color: #0277bd;
  }
  .header__navi--4 li.navi__item--kou a:before {
    color: #6a1b9a;
  }
  .header .subnavi {
    width: 100%;
    padding-top: 8px;
    z-index: 50;
    position: absolute;
    top: 40px;
    left: 0;
  }
  .header .subnavi--1 {
    display: none;
  }
  .header .subnavi--2 {
    display: none;
  }
  .header .subnavi__wrap {
    width: 100%;
    background-color: #fff;
    padding: 30px 0 40px;
    border-top: solid 1px #969696;
    border-bottom: solid 1px #ccc;
  }
  .header .subnavi__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .header .subnavi__contents--1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .header .subnavi__title {
    font-size: 20px;
    font-size: 142.85714%;
    font-weight: bold;
    padding-left: 20px;
    position: relative;
  }
  .header .subnavi__title:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .header .subnavi__title--sho:before {
    background-color: #ffb300;
  }
  .header .subnavi__title--chu:before {
    background-color: #0277bd;
  }
  .header .subnavi__title--kou:before {
    background-color: #6a1b9a;
  }
  .header .subnavi__title--info a {
    color: #666;
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    text-decoration: none;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header .subnavi__title--info a:hover {
    color: #0096e0;
  }
  .header .subnavi__title--info:before {
    background-color: #666;
  }
  .header .subnavi__title--ict:before {
    background-color: #0096e0;
  }
  .header .subnavi .contents__school {
    margin-right: 44px;
    margin-bottom: 25px;
  }
  .header .subnavi .contents__school:last-child {
    margin-right: 0;
  }
  .header .subnavi .contents__subject--2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .header .subnavi .contents__subject .subject__list--1 {
    padding-left: 10px;
    margin-left: 10px;
    border-left: dotted 1px #ccc;
  }
  .header .subnavi .contents__subject .subject__list--2 {
    width: 270px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .header .subnavi .contents__subject .subject__list--2 li:nth-child(even) {
    margin-left: 10px;
  }
  .header .subnavi .contents__subject li {
    margin-bottom: 10px;
  }
  .header .subnavi .contents__subject li:last-child {
    margin-bottom: 0;
  }
  .header .subnavi .contents__subject li a {
    color: #000;
    font-size: 18px;
    font-size: 128.57143%;
    text-align: center;
    text-decoration: none;
    width: 130px;
    display: block;
    padding: 5px 0;
    border: solid 1px #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header .subnavi .contents__subject li a:hover {
    color: #fff;
    background-color: #0096e0;
  }
  .header .subnavi .contents__ict .ict__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .header .subnavi .contents__ict li {
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .header .subnavi .contents__ict li:last-child {
    margin-bottom: 0;
  }
  .header .subnavi .contents__ict li a {
    color: #000;
    font-size: 18px;
    font-size: 128.57143%;
    text-align: center;
    text-decoration: none;
    width: 270px;
    display: block;
    padding: 20px 0;
    border: solid 1px #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header .subnavi .contents__ict li a:hover {
    color: #fff;
    background-color: #0096e0;
  }
  .header__fontsize {
    width: 120px;
    height: 34px;
  }
  .header__fontsize .fontsize {
    border-radius: 17px;
    -webkit-border-radius: 17px;
    -moz-border-radius: 17px;
    height: 34px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f4f4f4));
    background: -webkit-linear-gradient(top, #fff 0%, #f4f4f4 100%);
    background: -o-linear-gradient(top, #fff 0%, #f4f4f4 100%);
    background: linear-gradient(top, #fff 0%, #f4f4f4 100%);
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__fontsize .fontsize__btn {
    font-weight: bold;
    line-height: 34px;
    width: 50%;
    height: 34px;
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f4f4f4));
    background: -webkit-linear-gradient(top, #fff 0%, #f4f4f4 100%);
    background: -o-linear-gradient(top, #fff 0%, #f4f4f4 100%);
    background: linear-gradient(top, #fff 0%, #f4f4f4 100%);
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    display: block;
    cursor: pointer;
  }
  .header__fontsize .fontsize__btn--normal {
    font-size: 14px;
    font-size: 100%;
    border-radius: 17px 4px 4px 17px;
    -webkit-border-radius: 17px 4px 4px 17px;
    -moz-border-radius: 17px 4px 4px 17px;
  }
  .header__fontsize .fontsize__btn--normal.is-active {
    color: #fff;
    background: #616161;
  }
  .header__fontsize .fontsize__btn--large {
    font-size: 19px;
    font-size: 135.71429%;
    border-radius: 4px 17px 17px 4px;
    -webkit-border-radius: 4px 17px 17px 4px;
    -moz-border-radius: 4px 17px 17px 4px;
  }
  .header__fontsize .fontsize__btn--large.is-active {
    color: #fff;
    background: #616161;
  }
  .header__search--2 {
    display: none;
    width: 100%;
    background-color: #0096e0;
    position: absolute;
    top: 0;
    left: 0;
  }
  .header__search--2.is-active {
    display: block;
  }
  .header__search .search__btn {
    width: 120px;
    height: 34px;
  }
  .header__search .search__btn a {
    color: #fff;
    font-size: 14px;
    font-size: 100%;
    font-weight: bold;
    text-decoration: none;
    background-color: #0096e0;
    display: block;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    border-radius: 17px;
    -webkit-border-radius: 17px;
    -moz-border-radius: 17px;
    height: 34px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__search .search__btn a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_search.png) 0 0 no-repeat;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    left: 15px;
  }
  .header__search .search__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .header__search .search__form {
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__search .search__select {
    width: 157px;
    height: 40px;
    margin-right: 1px;
    overflow: hidden;
    position: relative;
  }
  .header__search .search__select:after {
    position: absolute;
    content: "";
    width: 8px;
    height: 5px;
    background: url(/img/common/icn_arrow_3.png) 0 0 no-repeat;
    top: calc(50% - 1px);
    right: 10px;
  }
  .header__search .search__select select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    margin: 0;
    padding: 0;
    padding-left: 20px;
    background: none transparent;
    background-color: #e5e7ed;
    vertical-align: middle;
    font-size: 14px;
    font-size: 100%;
    color: inherit;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    border-radius: 5px 0 0 5px;
    -webkit-border-radius: 5px 0 0 5px;
    -moz-border-radius: 5px 0 0 5px;
    cursor: pointer;
  }
  .header__search .search__input {
    margin-right: 1px;
  }
  .header__search .search__input input {
    font-size: 14px;
    font-size: 100%;
    margin: 0;
    padding: 0;
    background: none;
    background-color: #fff;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 530px;
    padding: 11px 20px 12px;
  }
  .header__search .search__submit {
    width: 60px;
    height: 42px;
    position: relative;
    cursor: pointer;
  }
/*  .header__search .search__submit:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_search.png) 0 0 no-repeat;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    left: calc(50% - 10px);
  }*/
  .header__search .search__submit:after{
  	content: none;
  }
  .header__search .search__submit input {
    margin: 0;
    padding: 0;
    background: none;
	 background: url(/img/common/icn_search.png) center no-repeat;
    background-color: #00527a;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 60px;
    height: 42px;
    padding: 11px 20px 12px;
    border-radius: 0 5px 5px 0;
    -webkit-border-radius: 0 5px 5px 0;
    -moz-border-radius: 0 5px 5px 0;
    text-indent: -9999px;
  }
  .header__search .search__submit input:hover {
    background-color: #2DB3F8;
  }
  .header__search .search__close {
    width: 34px;
    height: 34px;
    position: absolute;
    top: calc(50% - 17px);
    right: 0;
  }
  .header__search .search__close .close__btn {
    width: 34px;
    height: 34px;
  }
  .header__search .search__close .close__btn a {
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    background: url(/img/common/btn_search_close.png) 0 0 no-repeat;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .header__search .search__close .close__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .sp_header {
    display: none;
  }
  .sp_header__contents {
    display: none;
  }
  /*　パンくずリスト　*/
  .breadcrumb {
    background-color: #616161;
  }
  .breadcrumb__inner {
    max-width: 1200px;
    padding: 3px 0;
    margin: 0 auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 margin: 0;
  }
  .breadcrumb ul li {
    color: #fff;
    margin-left: 25px;
    margin-right: 20px;
    position: relative;
  }
  .breadcrumb ul li:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_w.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    left: -25px;
  }
  .breadcrumb ul li:first-child {
    margin-left: 0;
  }
  .breadcrumb ul li:first-child:before {
    content: none;
  }
  .breadcrumb ul li a {
    color: #fff;
    /*font-size: 13px;*/
    text-decoration: none;
  }
  .breadcrumb ul li a:hover {
    text-decoration: underline;
  }
  /*　KV　*/
  .kv {
    width: 100%;
    /*background: url(/img/common/bg_kv.png) center bottom no-repeat;
    padding-bottom: 20px;*/
  }
  .kv__slider {
    padding: 0 0 10px;
  }
  .kv__thumbnails {
    padding-top: 10px;
  }
  .kv__thumbnails .sp-thumbnail-container {
/*	border: solid 1px #aaa;*/
    border: solid 2px #ffffff;
  }
  .kv__thumbnails .sp-thumbnail-container.sp-selected-thumbnail {
    border: solid 2px #0096e0;
  }
  .kv .sp-button {
    display: none;
  }
  .kv .sp-arrow {
	display: none;
  }
  .books__kv{
    width: 100%;
    padding-bottom: 20px;
   overflow: hidden;
  }
  .books__kv .topics__title{
  border-bottom: 0;
  }
  .books__kv .sp-thumbnail-container{
  width: 130px !important;
  height: 45px !important;
  }
  .books__kv .sp-bottom-thumbnails .sp-previous-thumbnail-arrow{
   left: 0;
  }
  .books__kv .kv__thumbnails{
  	height: 45px !important;
  }
  .books__kv .sp-bottom-thumbnails .sp-next-thumbnail-arrow{
   left: auto;
	right: 0;
  }
  .sp-thumbnails-container{
  overflow: visible;
  }
  .books__kv .sp-thumbnails-container{
  position: relative;
  width: 894px !important;
  padding-left: 50px;
  overflow: hidden;
  transform: translate3d(-50px, 0px, 0px);
  }
  .books__kv .sp-thumbnails-container:before{
  	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 50px;
	background-color: #fff;
	z-index: 100;
  }
  .books__kv .sp-thumbnails-container:after{
  	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 50px;
	background-color: #fff;
	z-index: 100;
  }
  .sp-previous-thumbnail-arrow , .sp-next-thumbnail-arrow{
  display: block !important;
  width: 35px;
  height: 35px;
  border: 1px solid #aaaaaa;
  background-color: #ffffff;
  z-index: 40;
  }
  .sp-bottom-thumbnails .sp-previous-thumbnail-arrow{
  left: -120px;
  }
  .sp-bottom-thumbnails .sp-next-thumbnail-arrow{
  left: -70px;
  }
  .sp-previous-thumbnail-arrow:before , .sp-previous-thumbnail-arrow:after , .sp-next-thumbnail-arrow:before , .sp-next-thumbnail-arrow:after {
  width: 5%;
  height: 25%;
  background-color: #aaaaaa;
  }
  .sp-previous-thumbnail-arrow:before , .sp-previous-thumbnail-arrow:after {
  left: 47.5%;
  }
  .sp-next-thumbnail-arrow:before , .sp-next-thumbnail-arrow:after {
  right: 47.5%;
  }
  .sp-previous-thumbnail-arrow:before , .sp-next-thumbnail-arrow:before {
  top: 25%;
  }
  /*　トップメッセージ　*/
  .home__massage{
   margin: 0 auto;
   text-align: center;
  	padding-bottom: 30px;
	background: url(/img/common/bg_kv.png) center bottom no-repeat;
  }

  /*　メインコンテンツ枠　*/
  .main_contents {
    /*overflow: hidden;*/
  }
  .main_contents__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .main_contents__inner--col2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .main_contents__inner .main_col {
    width: 844px;
    margin-right: 20px;
  }
  .main_contents__inner .side_col {
    width: 300px;
	 }
  /*　コンテンツ枠　*/
  .contents__special {
    max-width: 1120px;
    margin: 0 auto 30px;
  }
  .school .contents__special {
  	 margin: 0;
  }
  .contents__topics {
    max-width: 1176px;
    margin: 0 auto 10px;
  }
  .contents__topics2{
	 width: calc(100% - 356px);
    max-width: 844px;
    margin-right: 56px;
  }
  .contents__home_bottom{
  	overflow: hidden;
  }
  .contents__home_bottom__inner {
    max-width: 1120px;
	 min-height: 796px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .contents_books__inner{
    width: 1200px;
	 max-width: 100%;
    margin: 30px auto 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	 flex-wrap: wrap;
  }
  .contents__info {
    width: 860px;
    background-color: #f8f8f8;
    padding-top: 30px;
    padding-right: 40px;
    padding-bottom: 30px;
    position: relative;
  }
  .contents__info:before {
    position: absolute;
    content: "";
    width: 1000px;
    height: 100%;
    background-color: #f8f8f8;
    top: 0;
    left: -1000px;
  }
  .contents__company_banner {
    height: 716px;
    /*background: url(/img/home/bg_info.png) left center no-repeat #f1f2f5;*/
	 background-color: #f1f2f5;
    padding-top: 55px;
    padding-left: 40px;
    margin-top: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
  }
  .contents__company_banner:after {
    position: absolute;
    content: "";
    width: 1000px;
    height: 716px;
    background-color: #f1f2f5;
    top: 0;
    right: -1000px;
  }
  .contents__navi{
  	width: 300px;
  }
  .contents__navi_category{
  	width: 100%;
	box-sizing: border-box;
	background-color: #fafafa;
	padding: 0 20px 20px;
	border: 1px solid #eee;
	margin-bottom: 40px;
  }
  .navi_list_btn-fix{
  margin-bottom: 0 !important;
  }
  .contents__navi_category .navi_list{
   margin-top: -10px;
   background-color: #fff;
  }
  .contents__navi_category .navi_list a{
   text-decoration: none;
	color: #000;
  }
  .contents__navi_category .navi_list div{
   position: relative;
   height: 36px;
	line-height: 36px;
	padding-left: 30px;
   font-size: 16px;
   font-size: 114.28571%;
	font-weight: bold;
	border-bottom: 1px solid #eee;
	white-space: nowrap;
  }
  .contents__navi_category .navi_list a:first-child div{
	border-top: 1px solid #eee;
  }
  .contents__navi_category .navi_list div:before{
   content: "";
	display: inline-block;
	position: absolute;
	left: 12px;
	top: calc(50% - 6px);
	width: 0;
	height: 0;
	border: 6px solid #fff;
	border-left: 6px solid #000;
  }
  .contents__navi_category .navi_list div:hover{
   color: #0096e0;
  }
  .contents__navi_category .navi_list div:hover:before{
   border-left-color: #0096e0;
  }
  .contents__navi_category .navi_list div.navi-active{
  	color: #0096e0;
  }
  .contents__navi_category .navi_list div.navi-active:before{
  border-left-color: #0096e0;
  }
  .navi_list_btn{
   background-color: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
	 align-items: center;
	 padding:20px;
	border: 1px solid #eee;
	border-top: 0;
  }
  .navi_list_btn a{
  	text-decoration: none;
	color: #000;
  }
  .navi_list_btn .navi_list_btn-p{
   width: 50%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
  }
  .navi_list_btn .navi_list_btn-e{
   width: 50%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
	border-bottom: 1px solid #cccccc;
  }
  .navi_list_btn .navi_list_btn-all{
   width: 100%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
  }
  .navi_list_btn .navi_list_btn-p:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-e:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-all:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-p:hover:before{
	border-left: 6px solid #0096e0;
  }
  .navi_list_btn .navi_list_btn-e:hover:before{
	border-left: 6px solid #0096e0;
  }
  .navi_list_btn .navi_list_btn-all:hover:before{
	border-left: 6px solid #0096e0;
  }
  .contents__navi_ranking{
  	width: 100%;
	position: relative;
	box-sizing: border-box;
	background-color: #fafafa;
	margin-top: 45px;
	padding: 0 0 20px;
  }
  .topics__info {
  	width: 100%;
	height: 2em;
	padding: 15px 0 5px 0;
	margin: 10px 0 0 0;
	border-top: 1px solid #cccccc;
	line-height: 2em;
  }
  .topics__info:after {
  	content: "";
	clear: both;
	display: block;
  }
  .topics__info .topics__info_date{
  	float: left;
  	width: 30%;
	color: #666666;
  }
  .topics__info .topics__info_cat{
  	float: right;
   padding: 0 3px;
	color: #666666;
	text-align: center;
	border: 1px solid #cccccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .navi__header{
  position: relative;
  top: -20px;
  }
  .contents__navi_category .navi__header{
  position: relative;
  top: -20px;
  left: -20px;
  }
  .navi_ranking{
  	display: block;
  	width: 260px;
	margin: 0 auto 20px;
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid #eeeeee;
	text-decoration: none;
	color: #000000;
  }
  .navi_ranking:hover{
	border: 1px solid #0096e0;
  }
  .ranking_number{
   background-color: #1565c0;
   width: 46px;
   height: 39px;
   text-align: center;
   line-height: 39px;
    font-size: 16px;
    font-size: 114.28571%;
   color: #ffffff;
  }
  .ranking_img{
  width: 100%;
  text-align: center;
  }
  .ranking_info{
  box-sizing: border-box;
  width: 100%;
  padding: 1em;
  }
  .ranking_info .ranking_title{
    font-size: 16px;
    font-size: 114.28571%;
	 margin-bottom: 20px;
  }
  .ranking_info .ranking_auther{
    font-size: 15px;
    font-size: 107.14286%;
	 margin-bottom: 10px;
  }
  .contents__books{
    width: 100%;
    padding-bottom: 20px;
  }
  /*　アイコン　*/
  .icn__cat {
    color: #fff;
    text-align: center;
    min-width: 117px;
    padding: 7px 10px;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
  }
  .icn__cat:after {
    position: absolute;
    content: "";
    border: solid 14px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    bottom: -13.5px;
    left: -14px;
  }
   .books__genba_wrap .icn__cat:after {
      display: none;
  }
  .icn__cat--00 {
    background-color: #ffb905;
  }
  .icn__cat--00:after {
    border-color: transparent #ffb905 transparent transparent;
  }
  .icn__cat--01 {
    background-color: #e2472a;
  }
  .icn__cat--01:after {
    border-color: transparent #e2472a transparent transparent;
  }
  .icn__cat--02 {
    background-color: #ce7112;
  }
  .icn__cat--02:after {
    border-color: transparent #ce7112 transparent transparent;
  }
  .icn__cat--03 {
    background-color: #a0c234;
  }
  .icn__cat--03:after {
    border-color: transparent #a0c234 transparent transparent;
  }
  .icn__cat--04 {
    background-color: #59b75b;
  }
  .icn__cat--04:after {
    border-color: transparent #59b75b transparent transparent;
  }
  .icn__cat--05 {
    background-color: #3eb3a4;
  }
  .icn__cat--05:after {
    border-color: transparent #3eb3a4 transparent transparent;
  }
  .icn__cat--06 {
    background-color: #00b9ef;
  }
  .icn__cat--06:after {
    border-color: transparent #00b9ef transparent transparent;
  }
  .icn__cat--07 {
    background-color: #009dda;
  }
  .icn__cat--07:after {
    border-color: transparent #009dda transparent transparent;
  }
  .icn__cat--08 {
    background-color: #999;
  }
  .icn__cat--08:after {
    border-color: transparent #999 transparent transparent;
  }
  .icn__books-01{
  	background-color: #1565c0;
  }
  .icn__books-01:after {
    border-color: transparent #1565c0 transparent transparent;
  }
  /*　特集コンテンツ　*/
  .special__container {
    max-width: 1120px;
    margin: 0 auto 50px;
  }
  .special__header {
    position: relative;
  }
  .special__cat {
    position: absolute;
    bottom: -23px;
  }
  .special__date {
    color: #777;
    font-size: 15px;
    font-size: 107.14286%;
    text-align: right;
  }
  .special__body {
    position: relative;
  }
  .special__img {
    width: 756px;
    height: 430px;
    z-index: 0;
  }
  .special__element {
    width: 425px;
    background: url(/img/home/bg_special.png) 0 0 repeat;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: calc(50% - (296px / 2));
    right: 0;
  }
  .special__element_inner {
    border: solid 1px #aaa;
    padding: 36px 20px;
  }
  .special__sub_title {
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .special__sub_title dd {
    color: #888;
  }
  .special__title {
    font-size: 26px;
    font-size: 185.71429%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    border-bottom: solid 2px #000;
    margin-bottom: 20px;
  }
  .special__txt {
    margin-bottom: 10px;
  }
  .special__btn {
    width: 51px;
    height: 6px;
    float: right;
  }
  .special__btn a {
    text-indent: -9999px;
    background: url(/img/common/icn_arrow_4.png) 0 0 no-repeat;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .special__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  /*　トピックス　*/
  .topics {
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 30px;
  }
  .topics.is-hidden {
    display: none;
  }
  .topics__container {
    max-width: 1176px;
    margin: 0 auto 70px;
  }
  .topics a {
    text-decoration: none;
    display: block;
  }
  .topics--1 {
    width: 273px;
    margin-right: 5px;
    margin-left: 5px;
  }
  .topics--2 {
    width: 556px;
    margin-right: 5px;
    margin-left: 5px;
  }
  .topics__tab {
    margin-bottom: 30px;
  }
  .topics__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .topics__item {
    margin-left: 50px;
  }
  .topics__item a {
    color: #777;
    font-weight: bold;
    text-decoration: none;
    padding-bottom: 5px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .topics__item a:hover {
    color: #000;
  }
  .topics__item a.is-active {
    color: #000;
    border-bottom: solid 2px #0096e0;
  }
  .topics__item:first-child {
    margin-left: 0;
  }
  .topics__wrap {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .topics__header {
    position: relative;
  }
  .topics__cat {
    position: absolute;
    bottom: -20px;
  }
  .topics__date {
    color: #777;
    font-size: 15px;
    font-size: 107.14286%;
    text-align: right;
  }
  .topics__new {
    color: #ff9100;
    display: inline-block;
    margin-right: 15px;
    position: relative;
  }
  .topics__new:after {
    color: #777;
    content: "|";
    right: -10px;
    position: absolute;
  }
  .catalog__new {
    color: #ff9100;
    display: inline-block;
    margin-right: 15px;
    position: relative;
  }
  .catalog__new:after {
    color: #777;
    content: "|";
    right: -10px;
    position: absolute;
  }
  .topics__body {
  background-color: #fff;
    padding: 10px;
    border: solid 1px #ddd;
  }
  .topics2__body {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border: solid 1px #ddd;
  }
  .books__topics2{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
  }
  .topics__img {
    height: 187px;
    overflow: hidden;
    position: relative;
	 background-color: #f2f2f2;
  }
  .topics__img .video{
  		width: 100%;
		height: 100%;
  }
  .topics__img .video iframe{
  		width: 100%;
		height: calc(100% - 14px);
  }
  .school .topics--2 .topics__img {
    height: 230px;
    overflow: hidden;
    position: relative;
	 background-color: #f2f2f2;
  }
  .topics2__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 150px;
	 height: 264px;
	 margin-left: 40px;
    overflow: hidden;
  }
  .topics__img:after {
    position: absolute;
    content: "";
    height: 14px;
    background-color: #fff;
    left: 0;
    bottom: 0;
  }
  .topics--1 .topics__img {
    max-width: 251px;
  }
  .topics--1 .topics__img:after {
    width: calc(100% - 14px);
  }
  .topics--2 .topics__img {
    max-width: 534px;
  }
   .school .topics--2 .topics__img{
    max-width: 510px;
	}
  .topics--2 .topics__img:after {
    width: calc(100% - 14px);
  }
  .topics--special .topics__img {
    /*height: 113px;*/
	 height: auto;
	 max-height: 187px;
    max-width: unset;
  }
  .topics--special > a{
  	height: calc(100% - 25px);
  }
  .topics--special .topics__body{
  	height: 100%;
  }
  .topics__img img {
    max-width: 100%;
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  }
  .topics__img img:hover {
/*	  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
      transform: scale(1.2);*/
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
  }
  .topics__title {
    color: #000;
    font-size: 17px;
    font-size: 121.42857%;
    line-height: 1.5;
    height: 61px;
    padding: 0 5px 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
  }
  .contents__header--2 .topics__title{
  margin-bottom: 0;
  border-bottom: none;
  }
  .topics2__title{
    font-size: 17px;
    font-size: 121.42857%;
    line-height: 1.5;
    margin-bottom: 15px;
  }
  .topics__title dl dt {
    font-size: 15px;
    font-size: 107.14286%;
  }
  .topics__title:before {
    position: absolute;
    content: "";
    border: solid 10px;
    border-color: #fff transparent transparent transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: -10px;
    right: 4px;
  }
  .topics__title:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_2.png) 0 0 no-repeat;
    width: 8px;
    height: 16px;
    top: calc(50% - 8px);
    right: 5px;
  }
  .topics__txt {
    color: #444;
    padding: 0 5px;
  }
  .topics2__txt{
  padding: 17px 45px 17px 17px;
  width: calc(100% - 150px);
  box-sizing: border-box;
  }
  .topics2__author{
    font-size: 15px;
    font-size: 107.14286%;
    margin-bottom: 10px;
  }
  .topics__link {
    text-align: right;
  }
  .books__topics2_banner{
  width: 320px;
  height: 266px;
  margin: 25px 0 25px 39px;
  }
  .books__topics2_banner img{
  border: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .books__list .contents--2{
    margin-bottom: 40px;
	 padding: 40px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;

  }
  .books__list .contents--2 .contents__img{
	 width: 240px;
	 height: 300px;
	 margin-right: 40px;
	 box-sizing: border-box;
	 padding: 15px 0;
	 border: 1px solid #aaaaaa;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
  }
  .books__list .books__ranking .contents__img:hover{
 	border-color: #0096e0;
  }
  .books__list .contents--2 .contents__body{
    width: 482px;
  }
  .books__list .contents--2 .contents__body .contents__title{
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
	margin: 0 0 0.8em;
  }
  .books__list .contents--2 .contents__body .contents__type-list{
	 font-weight: bold;
	margin: 0 0 0.8em;
  }
  .books__list .contents--2 .contents__body .contents__text{
	padding: 0 0 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #aaaaaa;
  }
  .books__list .contents--2 .contents__btn-shop{
	 width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 padding-top: 40px;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop{
 	 width: 50%;
	 min-width: 280px;
	 height: 60px;
	 box-sizing: border-box;
	 margin: 0 40px 0 0;
	 border: 1px solid #aaaaaa;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
	 text-decoration: none;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:nth-child(2n){
  margin-right: 0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:hover{
    border-color: #0096e0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop p{
    margin-left: 116px;
	 color: #000;
    font-size: 16px;
    font-size: 114.28571%;
	 font-weight: bold;
	 line-height: 60px;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:hover p{
    color: #0096e0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop-p:before{
    content: "";
    background: url(/img/books/img_p-book.png) center no-repeat;
	 background-color: #0096e0;
	 width: 100px;
    height: 58px;
    position: absolute;
    right: auto;
    border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop-e:before{
    content: "";
    background: url(/img/books/img_e-book.png) center no-repeat;
	 background-color: #0096e0;
	 width: 100px;
    height: 58px;
    position: absolute;
    right: auto;
    border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
  }

  /*　トップボトムコンテンツ　*/
  .home_bottom__inner {
    max-width: 1120px;
    height: 795px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	 }
  /*　お知らせ　*/
  .info {
    max-width: 820px;
    position: relative;
  }
  .info--top .info {
    max-width: 820px;
  }
  .info--col2 {
    width: 100%;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .info--top .info__container {
    width: 860px;
    background-color: #f8f8f8;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative;
  }
  .info--top .info__container:before {
    position: absolute;
    content: "";
    width: 1000px;
    height: 796px;
    background-color: #f8f8f8;
    top: 0;
    left: -1000px;
  }
  .info--col2 .info__container {
    margin-right: 20px;
    max-width: 560px;
  }
  .info--col2 .info__container:last-child {
    margin-right: 0;
  }
  .info__title {
    color: #333;
    font-size: 20px;
    font-size: 142.85714%;
    /*font-family: "Yu Mincho Medium", "游明朝 Medium", YuMincho, "游明朝体";*/
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    margin-bottom: 8px;
  }
  .info__tab {
    margin-bottom: 40px;
  }
  .info__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .info__item {
    margin-left: 20px;
  }
  .info__item a {
    color: #777;
    font-weight: bold;
    text-decoration: none;
    padding-bottom: 5px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .info__item a:hover {
    color: #000;
  }
  .info__item a.is-active {
    color: #000;
    border-bottom: solid 3px #0096e0;
  }
  .info__item:first-child {
    margin-left: 0;
  }
  .info__wrap {
    background-color: #fff;
    padding: 0 8px;
    border-right: solid 1px #ddd;
    border-left: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .info__wrap--top {
    height: auto;
	 overflow: hidden;
  }
  .info__list_wrap{
  	 height: auto;
	 overflow: inherit;
	 margin: 20px 0;
	 padding: 10px;
	 border: solid 1px #ddd;
  }
  .info__wrap ul {
    border-top: dotted 1px #b2b2b2;
  }
  .info__cat {
    background-color: #fff;
    padding: 5px;
    border-bottom: dotted 1px #b2b2b2;
  }
  .info__list_wrap ul{
	 border-top: none;
  }
  .info__list_wrap ul li:last-of-type{
	 border-bottom: none;
  }
  .info__cat:nth-child(even) {
    background-color: #fcfcfc;
  }
  .info__cat.is-hidden {
    display: none;
  }
  .info__header {
    margin-bottom: 5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .info__date {
    color: #888;
    margin-right: 10px;
  }
  .info__icn {
    color: #fff;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: center;
    background-color: #124488;
    min-width: 50px;
    display: inline-block;
    padding: 0 10px;
    margin-right: 10px;
  }
  .info__icn--important {
    background-color: #ab010b;
  }
  .info__icn--new {
    background-color: #0096e0;
  }
  .info__body {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
  }
  .info__body.info__detail {
    font-size: 14px;
    font-size: 100%;
  }
  .info__body a {
    font-size: 14px;
    font-size: 100%;
    color: #124488;
    text-decoration: none;
  }
  .info__body a:hover {
    color: #0096e0;
  }

  .info__body h3 {
	  font-size:18px;
	  font-size:150%;
      font-weight: bold;
      margin:28px 0;
  }
  .info__detail__backbtn {
     display: flex;
	 justify-content:center;
  }
  .info__detail__backbtn a {
	width:100px;
	height:32px;
	background-color: #616161;
	border-radius: 25px;
	display: flex;
	justify-content: center;
	padding-top:8px;
	margin:20px 0 0;
	color:#ffffff;
	font-size:100%;
	text-decoration: none;
  }
  .info__detail__backbtn ahover {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-opacity: 0.7;
	opacity: 0.7;
  }

  .info__btn {
    width: 120px;
    position: absolute;
    top: 0;
    right: 0;
  }
  .info__btn a {
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
    line-height: 1;
    text-decoration: none;
    background-color: #fff;
    width: 100%;
    padding: 8px;
    border: solid 1px #ccc;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .info__btn a:hover {
    color: #0096e0;
  }
  .info__btn a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_1_blue.png) 0 0 no-repeat;
    width: 5px;
    height: 10px;
    top: calc(50% - 5px);
    left: 10px;
  }
  /*　関連サイト　*/
  .company_banner {
    max-width: 260px;
  }
  .company_banner__container {
    height: 716px;
    background: url(/img/home/bg_info.png) left center no-repeat #f1f2f5;
    padding-top: 55px;
    padding-left: 40px;
    margin-top: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
  }
  .company_banner__container:after {
    position: absolute;
    content: "";
    width: 1000px;
    height: 716px;
    background-color: #f1f2f5;
    top: 0;
    right: -1000px;
  }
  .company_banner__title {
    color: #333;
    font-size: 20px;
    font-size: 142.85714%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    margin-bottom: 20px;
  }
  .company_banner__item {
    width: 220px;
    height: 80px;
    margin-bottom: 10px;
  }
  .company_banner__item a {
    text-indent: -9999px;
    display: block;
    width: 100%;
    height: 100%;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .company_banner__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .company_banner__item--01 a {
    background: url(/img/common/bnr_01.png) 0 0 no-repeat;
  }
  .company_banner__item--02 a {
    background: url(/img/common/bnr_02.png) 0 0 no-repeat;
  }
  .company_banner__item--03 a {
    background: url(/img/common/bnr_03.png) 0 0 no-repeat;
  }
  .company_banner__item--04 a {
    background: url(/img/common/bnr_04.png) 0 0 no-repeat;
  }
  .company_banner__item--05 a {
    background: url(/img/common/bnr_05.png) 0 0 no-repeat;
  }
  /*　フッター　*/
  .footer__inner {
    max-width: 1200px;
    margin: 0 auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .footer__contents--1 .footer__inner {
    padding: 60px 0 45px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .footer__contents--2 .footer__inner {
    padding: 10px 0 50px;
  }
  .footer__link_list {
    width: 600px;
  }
  .footer__link_list .link_list__title {
    color: #333;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .footer__link_list .link_list__wrap {
    -webkit-column-count: 2;
    column-count: 2;
  }
  .footer__link_list .link_list__wrap ul {
    padding-bottom: 10px;
	 padding-left: 1em;
    margin-bottom: 10px;
    border-bottom: dotted 1px #999;
  }
  .footer__link_list .link_list__wrap ul:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
  }
  .footer__link_list .link_list__wrap a {
    color: #333;
    text-decoration: none;
    padding-left: 10px;
    position: relative;
  }
  .footer__link_list .link_list__wrap a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_1_black.png) 0 0 no-repeat;
    width: 4px;
    height: 10px;
    top: calc(50% - 5px);
    left: 0;
  }
  .footer__link_list .link_list__wrap a[target="_blank"]:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_window.png) 0 0 no-repeat;
    width: 14px;
    height: 10px;
    top: calc(50% - 5px);
    right: -20px;
  }
  .footer__link_list .link_list__title a:before{
    content: none;
	}
  .footer__link_list .link_list__wrap a:hover {
    color: #0096e0;
  }
  .footer__banner {
    margin-right: 80px;
  }
  .footer__banner .banner__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .footer__banner .banner__item {
    width: 105px;
    height: 102px;
  }
  .footer__banner .banner__item a {
    text-indent: -9999px;
    display: block;
    width: 100%;
    height: 100%;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .footer__banner .banner__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .footer__banner .banner__item--01 {
    margin-right: 10px;
  }
  .footer__banner .banner__item--01 a {
    background: url(/img/common/icn_privacy.png) 0 0 no-repeat;
  }
  .footer__banner .banner__item--02 a {
    background: url(/img/common/icn_verisign.png) 0 0 no-repeat;
  }
  .footer .pagetop__btn {
    width: 21px;
    height: 90px;
    position: absolute;
    top: 68px;
    right: 0;
  }
  .footer .pagetop__btn a {
    text-indent: -9999px;
    background: url(/img/common/btn_pagetop.png) 0 0 no-repeat;
    display: block;
    width: 100%;
    height: 100%;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .footer .pagetop__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .footer .copyright {
    color: #888;
    text-align: right;
    display: block;
  }  /*　ページタイトル　*/
  .page_title {
    width: 100%;
  }
  .page_title--1 {
    background: url(/img/common/bg_kv.png) center bottom no-repeat;
    padding-bottom: 20px;
  }
  .page_title--2 {
    margin-bottom: 10px;
  }
  .page_title--1 .page_title__inner {
    max-width: 1200px;
    height: 120px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .page_title--1 .page_title__inner--school {
    background: url(/img/elementaryschool/img_kv.png) right center no-repeat;
	 background-size: contain;
  }
  .page_title--2 .page_title__inner {
    max-width: 1200px;
    margin: 0 auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .page_title--1 .page_title__title {
    font-size: 38px;
    font-size: 271.42857%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
  }
  .page_title--2 .page_title__title {
    font-size: 21px;
    font-size: 150%;
    font-weight: bold;
  }
  .page_title__title--sho {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--sho:before {
    position: absolute;
    content: "";
    background-color: #ffb300;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  .page_title__title--chu {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--chu:before {
    position: absolute;
    content: "";
    background-color: #0277bd;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  .page_title__title--kou {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--kou:before {
    position: absolute;
    content: "";
    background-color: #6a1b9a;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  /*　ボタン　*/
  .btns {
    margin-bottom: 15px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .btns__item {
    width: 300px;
    margin-left: 30px;
  }
  .btns__item:first-child {
    margin-left: 0;
  }
  .btns__item--1 a {
    background-color: #1b5189;
  }
  .btns__item--2 a {
    background-color: #0096e0;
  }
  .btns__item a {
    color: #fff;
    font-size: 20px;
    font-size: 142.85714%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    width: 100%;
	 line-height: 20px;
    padding: 10px;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .btns__item--sub{
    font-size: 14px;
	 line-height: 14px;
  }
  .btns__item--outlink{
  	 position: relative;
  }
  .btns__item--outlink:after{
    content: "";
	 display: block;
	 position: absolute;
	 width: 14px;
	 height: 10px;
	 background: url(/img/common/icn_window2.png) center no-repeat;
	 right: -20px;
	 top: calc(50% - 5px);
  }
  .btns__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  /*　小学校トップ　*/
  .school {
    margin-bottom: 40px;
  }
  .page__header {
    margin-bottom: 30px;
  }
  .school__header {
    margin-bottom: 15px;
  }
  .school__title {
    font-size: 24px;
    font-size: 171.42857%;
    font-weight: bold;
    background: url(/img/common/icn_ttl_01.png) left center no-repeat #f8f8f8;
    padding: 5px;
    padding-left: 35px;
  }
  .school .contents {
    border: solid 1px #aaa;
  }
  .contents__list{
  	width: 100%;
	margin-bottom: 25px;
	border: solid 1px #eee;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .contents__list_img{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: center;
	 align-items: center;
	 margin: 20px;
  }
  .contents__list_icns{
  	position: absolute;
	top: 0;
	right: 0;
  }

  .school .contents__header {
    padding: 25px 39px 39px;
  }
  .school .contents__header--1 {
    background-color: #3eb3a4;
    position: relative;
  }
  .school .contents__header--1 .contents__title {
    color: #fff;
  }
  .school .contents__header--2 {
    background-color: #f6f6f6;
    padding-bottom: 15px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .school .contents__header--2 .topics--1 {
    width: 250px;
    margin: 0 0 10px;
  }
  .school .contents__header--2 .topics__body {
    border: none;
  }
  .school .contents__header--2 .topics__img {
    max-width: 230px;
    height: 151px;
  }
  .school .contents__header--2 .topics__img:after {
    width: 94%;
  }
  .school .contents__header--2 .book {
    background-color: #fff;
    width: 546px;
    padding: 19px;
    margin: 4px;
    border: solid 1px #aaa;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .school .contents__header--2 .book a {
    color: #000;
    text-decoration: none;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school .contents__header--2 .book__img {
    width: 198px;
    height: 280px;
    margin-right: 20px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    overflow: hidden;
    position: relative;
  }
  .school .contents__header--2 .book__img img {
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  }
  .school .contents__header--2 .book__img img:hover {
/*	  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
      transform: scale(1.2);*/
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
  }
  .school .contents__header--2 .book__body {
    width: calc((100% - 20px) - 198px);
  }
  .school .contents__header--2 .book__title {
    font-size: 21px;
    font-size: 150%;
    line-height: 1.4;
    font-weight: bold;
    margin-bottom: 0.5em;
  }
  .school .contents__header--2 .book__author {
    margin-bottom: 1em;
  }
  .school .contents__header--2 .book__detail {
    *zoom: 1;
  }
  .school .contents__header--2 .book__detail:before {
    content: " ";
    display: table;
  }
  .school .contents__header--2 .book__detail:after {
    content: " ";
    display: table;
    clear: both;
  }
  .school .contents__header--2 .book__detail dt {
    float: left;
  }
  .school .contents__header--2 .book__detail dt:after {
    content: "：";
  }
  .school .contents__title {
    font-size: 20px;
    font-size: 142.85714%;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .school .contents__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	 border: none;
	 margin: 0;
  }
  .school .contents__list li {
    width: 180px;
    height: 73px;
    margin: 3px;
    float: left;
  }
  .school .contents__list li a {
    color: #000;
    font-size: 20px;
    font-size: 142.85714%;
    text-decoration: none;
    background-color: #fff;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school .contents__list li a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .school .contents__link {
    font-size: 18px;
    font-size: 128.57143%;
    position: absolute;
    top: 25px;
    right: 39px;
  }
  .school .contents__link:before {
    content: url(/img/common/icn_arrow_1_white.png);
    margin-right: 5px;
  }
  .school .contents__link a {
    color: #fff;
    text-decoration: none;
  }
  .school .contents__link a:hover {
    text-decoration: underline;
  }
  .school .contents__body {
    padding: 30px 39px;
    position: relative;
  }
  .school .contents__special {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .school .contents__special .topics--1 {
    margin: 0;
    margin-right: 5px;
    float: left;
  }
  .school .contents__special .topics--1:last-child {
    margin-right: 0;
  }
  .school .contents__special .topics--2 {
    margin: 0;
    max-width: 532px;
    float: left;
  }
  .school .contents__btn {
    width: 120px;
    position: absolute;
    top: 35px;
    right: 39px;
  }
  .school .contents__btn a {
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
    line-height: 1;
    text-decoration: none;
    background-color: #fff;
    width: 100%;
    padding: 8px;
    border: solid 1px #ccc;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .school .contents__btn a:hover {
    color: #0096e0;
    border: solid 1px #0096e0;
  }
  .school .contents__btn a:before {
    position: absolute;
    content: "";
    width: 5px;
    height: 10px;
    top: calc(50% - 5px);
    left: 10px;
  }
  .school .contents__btn--02 a:before {
    background: url(/img/common/icn_arrow_1_orange.png) 0 0 no-repeat;
  }
  .school .contents__btn--03 a:before {
    background: url(/img/common/icn_arrow_1_bright_green.png) 0 0 no-repeat;
  }
  .school .contents__btn--05 a:before {
    background: url(/img/common/icn_arrow_1_green.png) 0 0 no-repeat;
  }
  .school .contents__btn--07 a:before {
    background: url(/img/common/icn_arrow_1_bright_blue.png) 0 0 no-repeat;
  }
  /*　教科書詳細ヘッダーナビ　*/
  .school_header {
    margin-bottom: 10px;
	 background-color: #fff;
  }
  .page_header__contents--1 {
    border-bottom: solid 1px #ddd;
  }
  .school_header__contents--1 {
    border-bottom: solid 1px #ddd;
  }
  .page_header__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .school_header__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;

	/* 2018.5.7 固定 */
	width: 1200px;
  }
  .page_header__contents--1 .page_header__inner {
    height: 80px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .school_header__contents--1 .school_header__inner {
    height: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .page_header__contents--2 .page_header__inner {
    padding: 15px 0;
  }
  .school_header__contents--2 .school_header__inner {
    padding: 10px 0;
  }
  .page_header__title {
    font-size: 21px;
    font-size: 150%;
    font-weight: bold;
  }
  .school_header__title {
    font-size: 21px;
    font-size: 150%;
    font-weight: bold;
  }
  .school_header__btns ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .school_header__btn {
    width: 142px;
    height: 40px;
    margin-left: 20px;
  }
  .school_header__btn a {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    text-decoration: none;
    width: 100%;
    height: 100%;
	 box-sizing: border-box;
    display: block;
    border: solid 1px #ddd;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_header__btn a:before {
    font-size: 20px;
    content: "●";
    margin-right: 5px;
  }
  .school_header__btn--sho a:before {
    color: #ffb300;
  }
  .school_header__btn--sho a:hover {
    color: #ffb300;
    border: solid 1px #ffb300;
  }
  .school_header__btn--chu a:before {
    color: #0277bd;
  }
  .school_header__btn--chu a:hover {
    color: #0277bd;
    border: solid 1px #0277bd;
  }
  .school_header__btn--kou a:before {
    color: #6a1b9a;
  }
  .school_header__btn--kou a:hover {
    color: #6a1b9a;
    border: solid 1px #6a1b9a;
  }
  .school_header__navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school_header__navi--sho .is-active:after {
    background-color: #ffb300;
  }
  .school_header__navi--chu .is-active:after {
    background-color: #0277bd;
  }
  .school_header__navi--kou .is-active:after {
    background-color: #6a1b9a;
  }
  .school_header__navi--sho li {
    width: calc((100% - 14px) / 12);
    height: 30px;
    border-right: solid 1px #ccc;
  }
  .school_header__navi--chu li {
    width: calc((100% - 13px) / 11);
    height: 30px;
    border-right: solid 1px #ccc;
  }
  .school_header__navi--kou li {
    width: calc((100% - 11px) / 8);
    height: 30px;
    border-right: solid 1px #ccc;
  }
  .school_header__navi li:first-child {
    border-left: solid 1px #ccc;
  }
  .school_header__navi li a {
    color: #666;
    font-size: 15px;
    font-size: 107.14286%;
    font-weight: bold;
    line-height: 1.2;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_header__navi li a:hover {
    color: #000;
  }
  .school_header__navi li.is-active {
    position: relative;
  }
  .school_header__navi li.is-active:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 3px;
    left: 0;
    bottom: -10px;
  }
  .school_header__navi li.is-active a {
    color: #000;
  }
  /*　小学校詳細　*/
  .school_detail {
    margin-bottom: 40px;
  }
  .school_detail__header {
    margin-bottom: 15px;
  }
  .school_detail__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    background: url(/img/common/icn_ttl_01.png) left center no-repeat #f8f8f8;
    padding: 5px;
    padding-left: 35px;
  }
  .school_detail__body {
  	 width: 100%;
    margin-bottom: 20px;
  }
  .school_detail__body--2 {
  	 box-sizing: border-box;
    background-color: #fcfcfc;
    padding: 20px;
    border: solid 1px #eee;
  }
  .school__search_list .school_detail__body--2 {
  	background-color: #ffffff;
	padding: 0;
	border: none;
  }
  .school_detail__body a {
    color: #000;
    text-decoration: none;
  }
  .school_detail__body a:hover .contents--1 .contents__header {
    border: solid 1px #0096e0;
	 border-bottom: none;
  }
  .school_detail__body a:hover .contents--1 .contents__body {
    border: solid 1px #0096e0;
	 border-top: none;
  }
  .school_detail__body a:hover .contents--2 {
    border: solid 1px #0096e0;
  }
  .school_detail__body a:hover .contents--3 {
    border: solid 1px #0096e0;
  }
  .school_detail__body .contents--1 .contents__header {
    padding: 40px;
    border: solid 1px #eee;
    border-bottom: none;
    position: relative;
  }
  .school_detail__body .contents--1 .contents__header:before {
    position: absolute;
    content: "";
    width: calc(100% - 80px);
    height: 1px;
    background-color: #ccc;
    left: 40px;
    bottom: 0;
  }
  .school_detail__body .contents--1 .contents__header:after {
    position: absolute;
    content: "";
    width: calc((100% - 80px) / 2);
    height: 3px;
    background-color: #ffb300;
    left: 40px;
    bottom: -1px;
  }
  body.juniorhighschool .school_detail__body .contents--1 .contents__header:after{
    background-color: #0277bd;
  }
  .separate_linefix{
  	padding-top: 1em;
	padding-bottom: calc(1em + 3px);
  }
  .school_detail__body .contents--separate .separate_linefix:before {
    position: absolute;
    content: "";
    width: calc(100% - 80px);
    height: 1px;
    background-color: #ccc;
    left: 40px;
  }
  .school_detail__body .contents--separate .separate_linefix:after {
    position: absolute;
    content: "";
    width: calc((100% - 80px) / 2);
    height: 3px;
    background-color: #ffb300;
    left: 40px;
  }
  body.highschool .school_detail__body .contents--1 .contents__header:after {
    background-color: #6a1b9a;
  }
  body.highschool .school_detail__body .contents--separate .separate_linefix:after {
    background-color: #6a1b9a;
  }
  /* 2018.6.19 */
  body.juniorhighschool .school_detail__body .contents--1 .contents__header:after {
    background-color: #0277bd;
  }
  body.juniorhighschool .school_detail__body .contents--separate .separate_linefix:after {
    background-color: #0277bd;
  }

  .school_detail__body .contents--separate .contents__header:before {
    content: none;
  }
  .school_detail__body .contents--separate .contents__header:after {
    content: none;
  }

  .school_detail__body .contents--1 .contents__body {
    background-color: #fcfcfc;
    padding: 40px;
    border: solid 1px #eee;
    border-top: none;
  }
  .school_detail__body .contents--1 .contents__bottom {
    width: 100%;
    color: #666;
    padding: 10px 20px;
    border: solid 1px #eee;
    border-top: none;
  }
  .school_detail__body .contents--1 .contents__title {
    font-size: 21px;
    font-size: 150%;
  }
  .school_detail__body .contents--2 {
    padding: 40px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .books__detail__contents_list .school_detail__body .contents--2 {
  	 padding-top: 0;
	 border-top: none;
  }
  .school__search_list .school_detail__body .contents--2 {
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
  }
  .school_detail__body .contents--2 .contents__img {
    margin-right: 25px;
  }
  .school_detail__body .contents--2 .contents__img img{
	 border: 1px solid #cccccc;
  }
  .school_detail__body .contents--2 .contents__movie{
    margin-right: 25px;
  }
  .school_detail__body .contents--2 .contents__title {
    font-size: 18px;
    font-size: 128.57143%;
  }
  .school_detail__body .contents--2 .contents__body {
  	 position: relative;
    max-width: 480px;
	 width: 100%;
  }
  .school__search_list .school_detail__body .contents--2 .contents__body {
  	max-width: 840px;
  }
  .school_detail__body .contents--2 .contents__type {
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
  }
  .school_detail__body .contents--3 {
  	 height: 100%;
	 box-sizing: border-box;
    padding: 20px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .school_detail__body .contents--3 .contents__img {
  	 width: 50%;
    margin-right: 25px;
  }
  .school_detail__body .contents--3 .contents__img img{
  	 max-width: 100%;
	 border: 1px solid #cccccc;
  }
  .school_detail__body .contents--3 .contents__title {
    font-size: 16px;
    font-size: 114.285714%;
  }
  .school_detail__body .contents--3 .contents__body {
    max-width: 300px;
	 width: 100%;
  }
  .school_detail__body .contents--3 .contents__type {
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
  }

  .school_detail__body .contents--2 .contents__type-list{
  	 color: #666;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--3 .contents__type-list{
  	 color: #666;
  }
  .school_detail__body .contents--2 .contents__type:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    left: 0;
    bottom: 0;
  }
  .school_detail__body .contents--2 .contents__type:after {
    position: absolute;
    content: "";
    width: 50%;
    height: 3px;
    background-color: #ffb300;
    left: 0;
    bottom: -1px;
  }
  body.juniorhighschool .school_detail__body .contents--2 .contents__type:after{
    background-color: #0277bd;
  }
  .school_detail__body--chu .contents--2 .contents__type:after {
    background-color: #0277bd;
  }
  .school_detail__body--kou .contents--2 .contents__type:after {
    background-color: #6a1b9a;
  }
  .school_detail__body .contents--separate{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
	 flex-direction : row-reverse;
  }
  .school_detail__body .contents--separate .contents__header{
    width: calc(100% - 400px);
	 box-sizing: border-box;
    border: solid 1px #eee;
    border-left: none;
  }
  .school_detail__body .contents--separate .contents__body{
    width: 400px;
	 box-sizing: border-box;
    border: solid 1px #eee;
    border-right: none;
  }
  .school_detail__body .contents--separate .contents__title{
    margin-bottom: 18px;
  }
  .school_detail__body .contents__icns--1 {
    position: absolute;
    top: 40px;
    right: 40px;
  }
  .school_detail__body .contents--2 .contents__icns--1 {
  	top: 10px;
	right: 0;
  }
  .school_detail__body .contents__icns--1 .contents__icn {
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .price_table__icn--new{
    color: #fff;
    font-weight: bold;
    width: 25px;
    height: 50px;
    background-color: #e53935;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .price_table__icn--renew{
    color: #fff;
    font-weight: bold;
    width: 25px;
    height: 50px;
    background-color: #00bfa5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .list__icn_wrap:after{
  	 content: "";
	 display: block;
	 clear: both;
  }
  .list__icn_new{
  	 float: left;
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
    margin-right: 10px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	 background-color: #e53935;
	 border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .list__icn_renew{
  	 float: left;
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
	 margin-right: 10px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	 background-color: #00bfa5;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .school_detail__body .contents__icns--2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--2 .contents__icns--2 {
  	margin-bottom: 0;
  }
  .school_detail__body .contents__icns--2 .contents__icn {
    font-size: 12px;
    font-size: 85.71429%;
    min-width: 62px;
    height: 30px;
	 box-sizing: border-box;
    margin-right: 10px;
	 padding: 0 3px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .school_detail__body .contents__icns--2 .contents__icn:last-child {
    margin-right: 0;
  }
  .school_detail__body .contents__icn--new {
    background-color: #e53935;
  }
  .school_detail__body .contents__icn--renew {
    background-color: #00bfa5;
  }
  .school_detail__body .contents__icn--sho {
    color: #ffb300;
    border: solid 1px #ffb300;
  }
  .school_detail__body .contents__icn--chu {
    color: #0277bd;
    border: solid 1px #0277bd;
  }
  .school_detail__body .contents__icn--kou {
    color: #6a1b9a;
    border: solid 1px #6a1b9a;
  }
  .school_detail__body .contents__icn--subject {
    color: #444;
    border: solid 1px #aaa;
  }
  .school_detail__body .contents__icn--use {
    color: #fff;
	 font-weight: bold;
    border: solid 1px #1e88e5;
    background-color: #1e88e5;
  }
  .school_detail__body .contents__icn--conformance {
    color: #fff;
    background-color: #094;
    border: solid 1px #094;
  }
  .school_detail__body .contents__years {
    color: #666;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .school_detail__body .contents__icns + .contents__years{
    margin-right: 65px;
  }
  .school_detail__body .contents__icns + .contents__years + .contents__title{
    margin-right: 65px;
  }
  .school_detail__body .contents__title {
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 5px;
  }
  .school_detail__body .contents__type {
    color: #666;
    margin-bottom: 10px;
  }
  .school_detail__body .contents__text {
    font-size: 13px;
    font-size: 92.85714%;
  }
  .school_detail__body .contents__notice {
    color: #666;
  }
  .school_detail__body .contents__books {
    width: unset;
  	 box-sizing: border-box;
    background-color: #fff;
    padding: 40px 48px;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .school_detail__body .contents__mainbook {
    width: 227px;
    margin-right: 20px;
  }
  .school_detail__body .contents__mainbook img {
    width: 100%;
    height: auto;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
  }
  .school_detail__body .contents__book_tns {
    max-width: 413px;
    padding-top: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school_detail__body .contents__book_tn {
    width: 97px;
    height: 137px;
    margin-left: 5px;
    margin-bottom: 5px;
  }
  .school_detail__body .contents__book_tn img {
    width: 100%;
    height: auto;
  }
  .school_detail__body .contents__icn_wrap{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	 justify-content: flex-start;
	 margin-top: 1em;

  }
  .school_detail__body .contents__icn_wrap img:nth-of-type(2n){
	margin-bottom: 1em;
  }
  .school_detail__body .contents__icn_wrap img:nth-of-type(2n+1){
  	margin-right: 1em;
	margin-bottom: 1em;
  }
  .school_list__wrap{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
  }
  .school_list__wrap .school_list__box{
  	margin-bottom: 20px;
   width: 100%;
	box-sizing: border-box;
  }
  .school_list__wrap .school_list__box:last-child{
  	margin-bottom: 0;
  }
  .school_list__wrap .school_list__box2{
   width: calc(50% - 10px);
	box-sizing: border-box;
  }
  .school_list__wrap .school_list__box2:nth-child(2n){
  	margin-bottom: 20px;
  }
  .school_list__wrap .school_list__box2:nth-child(2n-1){
  margin-right: 20px;
  margin-bottom: 20px
  }
  .school_list__wrap .school_list__box2:nth-child(2n-1):nth-last-child(2){
  	margin-bottom: 0;
  }
  .school_list__wrap .school_list__box2:last-child{
  	margin-bottom: 0;
  }
  .school_detail__btns--1 {
    margin-bottom: 40px;
  }
  .school_detail__btns--1 .btn__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .school_detail__btns--1 .btn__item {
 	 width: 374px;
	 height: 134px;
    margin-right: 20px;
  }
  .school_detail__btns--1 .btn__item:last-child {
    margin-right: 0;
  }
  .school_detail__btns--1 .btn__item a {
    border: solid 1px #ccc;
    display: block;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--1 .btn__item a:hover {
    border: solid 1px #0096e0;
  }

  .school_detail__btns--1 .btn__item--large {
 	 width: 768px;
	 height: 134px;
    margin-right: 0;
	 text-align: center;
  }
  .school_detail__btns--1 .btn__item--large a {
    display: block;
	 height: 124px;
	 line-height: 124px;
    border: solid 1px #ccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--1 .btn__item--large a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__btns--1 .btn__item--large a div{
    display: inline-block;
	 margin: auto;
	 line-height: normal;
	 vertical-align: middle;
	 text-align: left;
  }
  .school_detail__btns--1 .btn__item--large a div h5{
  	font-size: 21px;
	font-size: 150%;
	font-weight: bold;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large a div p{
	font-weight: 500;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large2 {
 	 width: 768px;
	 height: 134px;
    margin-right: 0;
	 text-align: center;
  }
  .school_detail__btns--1 .btn__item--large2 a {
    display: block;
	 height: 60px;
	 line-height: 60px;
    border: solid 1px #ccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--1 .btn__item--large2 a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__btns--1 .btn__item--large2 a div{
    display: inline-block;
	 margin: auto;
	 line-height: normal;
	 vertical-align: middle;
	 text-align: left;
  }
  .school_detail__btns--1 .btn__item--large2 a div h5{
  	font-size: 21px;
	font-size: 150%;
	font-weight: bold;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large2 a div p{
	font-weight: 500;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--2 {
    background-color: #fcfcfc;
    padding: 40px;
    border: solid 1px #eee;
    margin-bottom: 50px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .school_detail__btns--2 .btn__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school_detail__btns--2 .btn__item {
    margin-top: 40px;
    margin-right: 30px;
  }
  .school_detail__btns--2 .btn__item:nth-child(3n) {
    margin-right: 0;
  }
  .school_detail__btns--2 .btn__item:nth-child(-n + 3) {
    margin-top: 0;
  }
  .school_detail__btns--2 .btn__item a {
    border: solid 1px #ccc;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--2 .btn__item a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__freecontents .freecontents__title {
    font-weight: bold;
  }
  .school_detail__subtitle {
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .school_difficulty {
	position: relative;
  }
  .school_difficulty table{
	width: 100%;
  	border: 1px solid #dddddd;
	margin: 2em 0;
  }
  .school_difficulty table th{
   width: calc(100% / 4);
	height: 30px;
	line-height: 30px;
	font-weight: bold;
  	border: 1px solid #dddddd;
	background-color: #f6f6f6;
  }
  .school_difficulty table td{
	height: 40px;
  	border: 1px solid #dddddd;
  }
  .school_difficulty .difficulty_bar{
	display: inline-block;
  	height: 10px;
	background-color: #333333;
	position: absolute;
	top: 47px;
  }
  .school_info__table h4{
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
  }
  .school_info__table h5{
   font-size: 16px;
   font-size: 114.28571%;
	font-weight: bold;
  }
  .school_info__table table{
   width: 100%;
  	border: 1px solid #000000;
  }
  .school_info__table th{
   padding: 0.5em;
   text-align: center;
	white-space: nowrap;
  	border: 1px solid #000000;
  }
  .school_info__table td{
   padding: 0.5em;
   text-align: center;
  	border: 1px solid #000000;
  }
  .school_info__table td:nth-of-type(2){
   text-align: left;
  }
  .school_info__table td a{
  	color: #0096e0;
	text-decoration: underline;
  }
  .school_detail__body--sho .difficulty_bar{
   background-color: #ffb300;
  }
  .school_detail__body--chu .difficulty_bar{
   background-color: #0277bd;
  }
  .school_detail__body--kou .difficulty_bar{
  	background-color: #6a1b9a;
  }
  /*　サイドコンテンツ　*/
  .side_contents > div {
    margin-bottom: 10px;
  }
  .side_contents .side_school {
    border: solid 1px #ddd;
  }
  .side_contents .side_school__header {
    padding: 22px;
    border-bottom: solid 1px #ddd;
    position: relative;
  }
  .side_contents .side_school__header:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_school__header--sho:before {
    background-color: #ffb300;
  }
  .side_contents .side_school__header--chu:before {
    background-color: #0277bd;
  }
  .side_contents .side_school__header--kou:before {
    background-color: #6a1b9a;
  }
  .side_contents .side_school__title {
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    position: relative;
  }
  .side_contents .side_school__body {
    padding-bottom: 22px;
  }
  .side_contents .side_school__subtitle {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    padding: 22px;
    padding-bottom: 0;
    margin-bottom: 10px;
  }
  .side_contents .side_school__cat {
    font-weight: bold;
    padding: 0 22px;
    margin-bottom: 10px;
  }
  .side_contents .side_school__cat:before {
    font-size: 20px;
    content: "●";
    margin-right: 5px;
  }
  .side_contents .side_school__cat--sho:before {
    color: #ffb300;
  }
  .side_contents .side_school__cat--chu:before {
    color: #0277bd;
  }
  .side_contents .side_school__cat--kou:before {
    color: #6a1b9a;
  }
  .side_contents .side_school__list {
    padding-top: 0;
  }
  .side_contents .side_school__list dt {
    font-weight: bold;
    padding: 0 22px 0 39px;
    position: relative;
  }
  .side_contents .side_school__list dt:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g_down.png) 0 0 no-repeat;
    width: 9px;
    height: 5px;
    top: calc(50% - 3px);
    left: 24px;
  }
  .side_contents .side_school__list dd a {
    color: #000;
    text-decoration: none;
    width: 100%;
    display: block;
    padding: 8px 22px 8px 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
  }
  .side_contents .side_school__list dd a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    left: 64px;
  }
  .side_contents .side_school__list dd a:hover {
    background-color: #f8f8f8;
  }
  .side_contents .side_btn {
    border: solid 1px #ddd;
  }
  .side_contents .side_btn a {
    color: #666;
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    text-decoration: none;
    padding: 22px;
    display: block;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .side_contents .side_btn a:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    right: 22px;
  }
  .side_contents .side_btn a:hover {
    color: #0096e0;
  }
  .side_contents .side_btn a.no_link:hover {
    color: #666666;
  }
  .side_contents .side_btn--sho a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--sho a:before {
    position: absolute;
    content: "";
    background-color: #ffb300;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_btn--chu a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--chu a:before {
    position: absolute;
    content: "";
    background-color: #0277bd;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_btn--kou a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--kou a:before {
    position: absolute;
    content: "";
    background-color: #6a1b9a;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_btn--other a {
    color: #666666;
    position: relative;
  }
  .side_contents .side_btn--other a:before {
    position: absolute;
    content: "";
    background-color: #666666;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  /*　bxslider　*/
  .bxslider{
  	 margin: 0;
	 padding: 0;
  }
  .bxslider .topics--1{
  	 margin: 0;
  }
  .scroll-fixed{
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100;
    transform: translate3d(0,0,0);
  }
  .scroll-fixed + .main_contents{
  	margin-top: 121px;
  }
.books_slider_link{
	position: absolute;
	top: -36px;
	right: 0;
}
.books_slider_link a{
   color: #666;
   font-size: 13px;
   font-size: 92.85714%;
   line-height: 1;
   text-decoration: none;
   background-color: #fff;
   width: 100%;
   padding: 8px 8px 8px 22px;
   border: solid 1px #ccc;
   display: block;
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-justify-content: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   -webkit-align-items: center;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   position: relative;
   border-radius: 4px;
   -webkit-border-radius: 4px;
   -moz-border-radius: 4px;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}
.books_slider_link a:before{
   position: absolute;
   content: "";
   background: url(/img/common/icn_arrow_1_blue.png) 0 0 no-repeat;
   width: 5px;
   height: 10px;
   top: calc(50% - 5px);
   left: 10px;
}
.books_slider_link .books_slider_link__side{
	text-decoration: none;
}
.books__info_outlink{
	margin: 3em 0;
}
.books__info_outlink>div:first-of-type{
	padding-bottom: 2em;
	margin-bottom: 2em;
	border-bottom: 1px solid #aaaaaa;
}
.books__info_col2{
	width: 50%;
	min-width: 300px;
}
.books__info_col2 h3{
	color: #555555;
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
	line-height: 36px;
}
.books__info_col2 ul li{
	position: relative;
	padding-left: 20px;
}
.books__info_col2 ul li:before{
	content: "";
	position: absolute;
	top: 13px;
	left: 0;
	width: 8px;
	height: 8px;
	border: 1px solid rgba(0,0,0,0);
	border-top-color: #888888;
	border-right-color: #888888;
	position: absolute;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}
.books__info_col2 ul li a{
	position: relative;
	color: #666666;
	line-height: 36px;
	text-decoration: none;
	white-space: nowrap;
}
.books__info_col2 ul li a:after{
	content: "";
	width: 14px;
	height: 10px;
	position: absolute;
	right: -20px;
	top: 3px;
	background: url(/img/common/icn_window.png) center no-repeat;
	background-size: contain;
}
.side_contents .side_btn--other .side_btn__books_link{
	 font-weight: bold;
    padding: 0 22px 0 39px;
    position: relative;
	 color: #000000;
    font-size: 16px;
    font-size: 114.28571%;
	 margin-bottom: 1em;
}
.side_contents .side_btn--other .side_btn__books_link:before{
	 position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g_down.png) 0 0 no-repeat;
    width: 9px;
    height: 5px;
    top: calc(50% - 3px);
    left: 24px;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
.books__list .books__ranking{
	position: relative;
}
.books__list .books__ranking:after{
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
}
.books__list .books__ranking--1:after{
	content: url(/img/books/icon_ranking_01.png);
}
.books__list .books__ranking--2:after{
	content: url(/img/books/icon_ranking_02.png);
}
.books__list .books__ranking--3:after{
	content: url(/img/books/icon_ranking_03.png);
}
.books__list .books__ranking--4:after{
	content: url(/img/books/icon_ranking_04.png);
}
.books__list .books__ranking--5:after{
	content: url(/img/books/icon_ranking_05.png);
}
.books__list .books__ranking--6:after{
	content: url(/img/books/icon_ranking_06.png);
}
.books__list .books__ranking--7:after{
	content: url(/img/books/icon_ranking_07.png);
}
.books__list .books__ranking--8:after{
	content: url(/img/books/icon_ranking_08.png);
}
.books__list .books__ranking--9:after{
	content: url(/img/books/icon_ranking_09.png);
}
.books__list .books__ranking--10:after{
	content: url(/img/books/icon_ranking_10.png);
}
.books__list .books__ranking--11:after{
	content: url(/img/books/icon_ranking_11.png);
}
.books__list .books__ranking--12:after{
	content: url(/img/books/icon_ranking_12.png);
}
.books__list .books__ranking--13:after{
	content: url(/img/books/icon_ranking_13.png);
}
.books__list .books__ranking--14:after{
	content: url(/img/books/icon_ranking_14.png);
}
.books__list .books__ranking--15:after{
	content: url(/img/books/icon_ranking_15.png);
}
.books__list .books__ranking--16:after{
	content: url(/img/books/icon_ranking_16.png);
}
.books__list .books__ranking--17:after{
	content: url(/img/books/icon_ranking_17.png);
}
.books__list .books__ranking--18:after{
	content: url(/img/books/icon_ranking_18.png);
}
.books__list .books__ranking--19:after{
	content: url(/img/books/icon_ranking_19.png);
}
.books__list .books__ranking--20:after{
	content: url(/img/books/icon_ranking_20.png);
}
.books__tweet{
	padding: 15px;
	background-color: #fafafa;
}
   .books__tweet iframe{
      width: 300px !important;
      max-width: 100% !important;
   }
.contents__teisei_wrap {
    padding: 10px 40px;
    background-color: #fff;
    border: solid 1px #eee;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
  }
.contents__teisei{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: flex-start;
	 width: 100%;
}
.contents__teisei div:nth-of-type(2){
	 max-width: 800px;
}
.contents__teisei_season{
	 width: 200px;
	 margin-top: 15px;
	 font-size: 16px;
    font-weight: bold;
    color: #666666;
}
.contents__teisei_btn{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
	 flex-wrap: wrap;
	 margin: 0.5em 0;
}
.contents__teisei_btn a{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: space-between;
    align-items: center;
	 width: 190px;
	 height: 60px;
	 box-sizing: border-box;
	 margin: 5px 10px 5px 0;
	 padding: 0 15px 0 20px;
	 border: 1px solid #aaaaaa;
    font-size: 18px;
    font-size: 128.57143%;
	 font-weight: bold;
}
.contents__teisei_btn a:last-of-type{
	 margin-right: 0;
}
.contents__teisei_btn a:hover{
	 border-color: #0096e0;
}
.contents__teisei_btn a:before{
	 content: "";
	 position: absolute;
	 width: 12px;
	 height: 3px;
	 top: calc(50% - 2px);
	 left: 0;
	 background-color: #aaaaaa;
}
.contents__teisei--shou .contents__teisei_btn a:before{
	 background-color: #ffb300;
}
.contents__teisei--chuu .contents__teisei_btn a:before{
	 background-color: #0277bd;
}
.contents__teisei--kou .contents__teisei_btn a:before{
	 background-color: #6a1b9a;
}
.contents__teisei_btn a.contents__teisei_btn--pdf:after{
	 content: "";
	 position: absolute;
	 width: 34px;
	 height: 34px;
	 top: calc(50% - 17px);
	 right: 15px;
	 background: url(/img/common/icon_pdf.png) center no-repeat;
	 box-sizing: border-box;
	 padding: 3px;
	 border: 1px solid #aaaaaa;
}
.contents__teisei_btn a.contents__teisei_btn--zip:after{
	 content: "";
	 position: absolute;
	 width: 34px;
	 height: 34px;
	 top: calc(50% - 17px);
	 right: 15px;
	 background: url(/img/common/icon_zip.png) center no-repeat;
	 box-sizing: border-box;
	 padding: 3px;
	 border: 1px solid #aaaaaa;
}
.books__search_info{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: space-between;
}
.books__search_info h3{
	 padding: 10px 0;
	 font-size: 18px;
	 font-weight: bold;
}
.books__search_info .books__search_btn{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: space-between;
}
.books__search_info .books__search_btn button{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 font-size: 16px;
	 font-weight: bold;
	 margin-left: 15px;
	 padding-left: 60px;
	 width: 140px;
	 height: 40px;
	 color: #ffffff;
	 background-color: #666666;
	 border: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;

	/* 2018.06.29 Chrome時のselectを削除 */
	outline: none;
}
.books__search_info .books__search_btn button:hover{
	 background-color: #0096e0;
}
.books__search_info .books__search_btn button.books__search_btn--active{
	 background-color: #0096e0;
}
.books__search_info .books__search_btn button:before{
	 content: "";
	 position: absolute;
	 width: 40px;
	 height: 32px;
	 left: 8px;
	 top: calc(50% - 16px);
}
.books__search_info .books__search_btn .books__search_btn--p:before{
	 background: url(/img/books/img_p-book.png) center no-repeat;
	 background-size: contain;
}
.books__search_info .books__search_btn .books__search_btn--e:before{
	 background: url(/img/books/img_e-book.png) center no-repeat;
	 background-size: contain;
}
.books__search_pager{
	 max-width: 850px;
	 margin: 15px auto;
}
.books__search_pager p{
	 font-size: 16px;
	 margin-bottom: 10px;
}
.books__search_pager div{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: space-between;
}
.books__search_pager div a{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
	 width: 40px;
	 height: 40px;
	 color: #000000;
	 text-decoration: none;
	 box-sizing: border-box;
	 border: 1px solid #aaaaaa;
	 font-size: 16px;
}
.books__search_pager div a.books__search_pager--active{
	color: #ffffff;
	background-color: #0096e0;
}
.books__search_pager div a:last-of-type{
	 margin-right: 0;
}
.books__search_pager div a.books__search_pager--prev1:after{
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: url(/img/books/prev1.png) center no-repeat;
}
.books__search_pager div a.books__search_pager--prev2:after{
	content: "";
	width: 40px;
	height: 40px;
	background: url(/img/books/prev2.png) center no-repeat;

}
.books__search_pager div a.books__search_pager--next1:after{
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: url(/img/books/next1.png) center no-repeat;

}
.books__search_pager div a.books__search_pager--next2:after{
	content: "";
	width: 40px;
	height: 40px;
	background: url(/img/books/next2.png) center no-repeat;
}
.books__search_pager div span{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
	 width: 40px;
	 height: 40px;
	 box-sizing: border-box;
	 font-size: 16px;
}
.books__search_pager div span:after{
	content: "";
	width: 40px;
	height: 40px;
	background: url(/img/books/skip.png) center no-repeat;
}
.search__module{
	width: 100%;
	box-sizing: border-box;
	padding: 30px 60px;
	border: 1px solid #aaaaaa;
	margin-bottom: 25px;
}
.search__word{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 margin-bottom: 20px;
}
.search__word h3{
	width: 200px;
	font-size: 16px;
	font-weight: bold;
}
.search__word input{
	width: calc(100% - 200px);
	height: 30px;
	padding-left: 0.5em;
	font-size: 20px;
	border: 1px solid #aaaaaa;
}
.search__category{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 margin-bottom: 20px;
}
.search__category h3{
	width: 200px;
	color: #888888;
	font-size: 16px;
	font-weight: bold;
}
.search__category .search__category_radio{
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
	align-items: center;
	margin-right: 3em;
}
.search__category .search__category_radio input{
	display: none;
}
.search__category .search__category_radio label{
	position: relative;
	margin-left: 1.5em;
	font-size: 16px;
}
.search__category .search__category_radio input + label:before{
	content: "";
	position: absolute;
	display: block;
	top: calc(50% - 8px);
	left: -1.5em;
	width: 16px;
	height: 16px;
	box-sizing: border-box;
	border: 1px solid #888888;
   -webkit-border-radius: 2px;
   -moz-border-radius: 2px;
   border-radius: 2px;
}
.search__category .search__category_radio input:checked + label:after{
	content: "";
	position: absolute;
	display: block;
	top: calc(50% - 10px);
	left: -1.5em;
	width: 20px;
	height: 10px;
	border-bottom: 3px solid #0791d8;
	border-left: 3px solid #0791d8;
	box-sizing: border-box;
   -webkit-border-radius: 2px;
   -moz-border-radius: 2px;
   border-radius: 2px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.search__submit{
	position: relative;
	width: 100%;
	text-align: center;
}
.search__submit:after{
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	left: calc(50% - 3em);
	width: 20px;
	height: 20px;
	background: url(/img/common/icn_search.png) center no-repeat;
	background-size: contain;

}
.search__submit_btn{
	display: inline-block;
	position: relative;
	width: 250px;
	height: 50px;
	line-height: 50px;
	box-sizing: border-box;
	padding-left: 1em;
	font-size: 22px;
	font-weight: bold;
	color: #ffffff;
	background-color: #0791d8;
	border: none;
   -webkit-border-radius: 25px;
   -moz-border-radius: 25px;
   border-radius: 25px;
}
.search__submit_btn:hover{
	background-color: #2DB3F8;
}
.search__result{
	width: 100%;
	margin: 20px 0;
	font-size: 18px;
	font-weight: bold;
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
	align-items: center;
	justify-content: space-between;
}
.search__result p{
	display: inline-block;
}
.books__movie_wrap{
	justify-content: flex-start;
}
.books__movie{
	max-width: 100%;
	margin-right: 20px;
	margin-bottom: 20px;
}
.books__movie .topics__body{
	height: 100%;
	box-sizing: border-box;
	position: relative;
}
.books__movie .topics__title{
	padding-bottom: 0;
	border-bottom: none;
	height: auto;
	min-height: 60px;
	margin-bottom: 59px;
	padding-right: 1em;
}
.books__movie .topics__img{
	height: 146px;
	background-color: #cccccc;
}
.books__movie iframe{
	width: 251px;
	height: 132px;
}
.books__movie .topics__info{
	position: absolute;
	width: calc(100% - 20px);
	height: 49px;
	box-sizing: border-box;
	bottom: 10px;
}
.books__movie .topics__info .topics__info_cat{
	width: 50%;
}
.books__movie .topics__info_date{
	width: auto;
}
.books__movie .catalog__new{
	color: #ff9100;
   display: inline-block;
   padding-right: 6px;
   margin-right: 6px;
   position: relative;
	border-right: 1px solid #aaaaaa;
   height: 1em;
   line-height: 1em;
}
.books__movie .catalog__new:after{
	content: none;
 }
.books__download_banner{
	margin: 15px;
}
.books__download_banner a:hover{
	opacity: 0.7;
}
.books__download_banner img{
	border: 1px solid #aaaaaa;
}
.school__osusume .contents--2{
	display: block;
}
.school__osusume .contents--3{
	display: block;
}
.school__osusume .contents--2 .contents__img{
	text-align: center;
	margin: 10px 0;
}
.school__osusume .contents--3 .contents__img{
	width: auto;
	text-align: center;
	margin: 10px 0;
}
.school__osusume .contents--2  .contents__body{
	max-width: 100%;
}
.school__osusume .contents--3  .contents__body{
	max-width: 100%;
}
.navi_books_sp{
   display: none;
}
}

/* -------------------------------------------------------------
スマホ
--------------------------------------------------------------*/
@media all and (max-width: 768px) {

  img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  /*　ヘッダー　*/
  .header {
    display: none;
  }
  .sp_header {
    width: 100%;
    padding-bottom: 4px;
    position: relative;
  }
  .sp_header:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 4px;
    background-color: #0096e0;
    background: -webkit-gradient(linear, left top, right top, from(#0096e0), to(#124488));
    background: -webkit-linear-gradient(left, #0096e0 0%, #124488 100%);
    background: -o-linear-gradient(left, #0096e0 0%, #124488 100%);
    background: linear-gradient(left, #0096e0 0%, #124488 100%);
  }
  .sp_header__inner {
    padding: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .sp_header__logo {
    width: 116px;
    height: 36px;
  }
  .sp_header__logo a {
    width: 100%;
    height: 100%;
    display: block;
    background: url(/img/common/img_logo.png) 0 0 no-repeat;
    background-size: contain;
    text-indent: -9999px;
  }
  .sp_header__btns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .sp_header__search {
    width: 36px;
    height: 36px;
    margin-right: 15px;
  }
  .sp_header__search a {
    background-color: #0096e0;
    display: block;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px inset;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    height: 36px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .sp_header__search a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_search.png) 0 0 no-repeat;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    left: calc(50% - 10px);
  }
  .sp_header__search a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .sp_header__search a span {
    display: none;
  }
  .sp_header__navi {
    width: 36px;
    height: 36px;
  }
  .sp_header__navi a {
    width: 100%;
    height: 100%;
    display: block;
    border: solid 1px #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
  }
  .sp_header__navi a:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 11px;
    background: url(/img/common/btn_nav.png) 0 0 no-repeat;
    background-size: cover;
    top: calc(50% - 5px);
    left: calc(50% - 5px);
  }
  .sp_header__navi a.is-active:before {
    width: 8px;
    height: 8px;
    background: url(/img/common/btn_navi_close.png) 0 0 no-repeat;
    background-size: cover;
    top: calc(50% - 4px);
    left: calc(50% - 4px);
  }
  .sp_header__navi a span {
    display: none;
  }
  .sp_header__contents .sp_search {
    display: none;
    background-color: #0096e0;
  }
  .sp_header__contents .sp_search.is-active {
    display: block;
  }
  .sp_header__contents .sp_search__inner {
    padding: 20px 20px 50px;
    position: relative;
  }
  .sp_header__contents .sp_search__form {
    margin: 0 auto;
  }
  .sp_header__contents .sp_search__select {
    width: 100%;
    height: 40px;
    margin-bottom: 1px;
    overflow: hidden;
    position: relative;
  }
  .sp_header__contents .sp_search__select:after {
    position: absolute;
    content: "";
    width: 8px;
    height: 5px;
    background: url(/img/common/icn_arrow_3.png) 0 0 no-repeat;
    top: calc(50% - 1px);
    right: 10px;
  }
  .sp_header__contents .sp_search__select select {
    width: calc(100% - 20px);
    height: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    margin: 0;
    padding: 0;
    padding-left: 20px;
    background: none transparent;
    background-color: #e5e7ed;
    vertical-align: middle;
    font-size: 14px;
    font-size: 100%;
    color: inherit;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    cursor: pointer;
  }
  .sp_header__contents .sp_search__input {
    width: 100%;
    margin-bottom: 1px;
  }
  .sp_header__contents .sp_search__input input {
    font-size: 14px;
    font-size: 100%;
    margin: 0;
    padding: 0;
    background: none;
    background-color: #fff;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: calc(100% - 40px);
    padding: 11px 20px 12px;
  }
  .sp_header__contents .sp_search__submit {
    width: 100%;
    height: 42px;
    position: relative;
    cursor: pointer;
  }
  /*.sp_header__contents .sp_search__submit:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_search.png) 0 0 no-repeat;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    left: calc(50% - 10px);
  }*/
  .sp_header__contents .sp_search__submit input {
    margin: 0;
    padding: 0;
    background: none;
	 background: url(/img/common/icn_search.png) center no-repeat;
    background-color: #00527a;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 42px;
    padding: 11px 20px 12px;
    border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px;
    text-indent: -9999px;
  }
  .sp_header__contents .sp_search__submit input:hover {
    background-color: #2DB3F8;
  }
  .sp_header__contents .sp_search__close {
    width: 34px;
    height: 34px;
    position: absolute;
    right: 10px;
    bottom: 10px;
  }
  .sp_header__contents .sp_search__close .close__btn {
    width: 34px;
    height: 34px;
  }
  .sp_header__contents .sp_search__close .close__btn a {
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    background: url(/img/common/btn_search_close.png) 0 0 no-repeat;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .sp_header__contents .sp_search__close .close__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .sp_header__contents .sp_navi {
    display: none;
  }
  .sp_header__contents .sp_navi__list--1 {
    border-bottom: solid 1px #666;
  }
  .sp_header__contents .sp_navi__list--1 > li {
    border-bottom: solid 1px #ddd;
  }
  .sp_header__contents .sp_navi__list--1 > li:last-child {
    border-bottom: none;
  }
  .sp_header__contents .sp_navi__list--1 > li > a {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
    text-decoration: none;
    padding: 20px;
    display: block;
    position: relative;
  }
  .sp_header__contents .sp_navi__list--1 > li > a:after {
    position: absolute;
    content: "";
    background: url(/img/common/btn_sp_navi_next.png) 0 0 no-repeat;
    background-size: cover;
    width: 8px;
    height: 15px;
    top: calc(50% - 8px);
    right: 20px;
  }
  .sp_header__contents .sp_navi__list--2 {
    border-bottom: solid 1px #666;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .sp_header__contents .sp_navi__list--2 > li {
    width: calc((100% - 1px) / 2);
    border-right: solid 1px #ddd;
    border-bottom: solid 1px #ddd;
  }
  .sp_header__contents .sp_navi__list--2 > li:nth-child(even) {
    border-right: none;
  }
  .sp_header__contents .sp_navi__list--2 > li:nth-child(5) {
    border-bottom: none;
  }
  .sp_header__contents .sp_navi__list--2 > li:last-child {
    border-bottom: none;
  }
  .sp_header__contents .sp_navi__list--2 > li > a {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
    text-decoration: none;
    padding: 20px;
    display: block;
  }

  .sp_header__contents .sp_navi__list--2 > li > a.is-active {
    position: relative;
  }
  .sp_header__contents .sp_navi__list--2 > li > a.is-active:after {
    position: absolute;
    content: "募集中";
    color: #fff;
    font-size: 10px;
    font-size: 71.42857%;
    line-height: 1;
    background-color: #ff9100;
    width: 52px;
    height: 20px;
    top: calc(50% - 10px);
    right: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize li {
    text-align: center;
    width: calc((100% - 1px) / 2);
    padding: 20px;
    border-right: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
    /* 2018-06-27 ksp */
  .sp_header__contents .sp_navi__list--2 > li a.is-outlink {
    position: relative;
  }
  .sp_header__contents .sp_navi__list--2 > li a.is-outlink:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_window.png) 0 0 no-repeat;
    width: 14px;
    height: 10px;
    top: calc(50% - 5px);
    right: 5px;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize li:nth-child(even) {
    border-right: none;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize__btn--normal {
    font-size: 12px;
    font-size: 85.71429%;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize__btn--normal.is-active {
    background-color: #eee;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize__btn--large {
    font-size: 15px;
    font-size: 107.14286%;
    font-weight: bold;
  }
  .sp_header__contents .sp_navi__list--2 > li .fontsize__btn--large.is-active {
    background-color: #eee;
  }
  .sp_header__contents .sp_navi__item a {
    padding-left: 40px !important;
    position: relative;
  }
  .sp_header__contents .sp_navi__item a:before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    top: calc(50% - 6px);
    left: 20px;
  }
  .sp_header__contents .sp_navi__item--sho a:before {
    background-color: #ffb300;
  }
  .sp_header__contents .sp_navi__item--chu a:before {
    background-color: #0277bd;
  }
  .sp_header__contents .sp_navi__item--kou a:before {
    background-color: #6a1b9a;
  }
  .sp_header__contents .sp_navi__acd dt {
    font-size: 16px;
    font-size: 114.28571%;
    padding: 20px;
    position: relative;
  }
  .sp_header__contents .sp_navi__acd dt:after {
    position: absolute;
    content: "";
    background: url(/img/common/btn_sp_navi_open.png) 0 0 no-repeat;
    background-size: cover;
    width: 15px;
    height: 8px;
    top: calc(50% - 5px);
    right: 18px;
  }
  .sp_header__contents .sp_navi__acd dt.is-active:after {
    background: url(/img/common/btn_sp_navi_close.png) 0 0 no-repeat;
    background-size: cover;
    width: 15px;
    height: 8px;
    top: calc(50% - 5px);
    right: 18px;
  }
  .sp_header__contents .sp_navi__acd dd {
    display: none;
    border-top: solid 1px #ddd;
  }
  .sp_header__contents .sp_navi .subnavi__contents {
    background-color: #fcfcfc;
    padding: 20px;
  }
  .sp_header__contents .sp_navi .subnavi__contents--1 {
    border-bottom: solid 1px #ccc;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__school {
    margin-bottom: 25px;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__school:last-child {
    margin-bottom: 0;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject .subject__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject .subject__list--1 {
    padding-top: 10px;
    border-top: dotted 1px #ccc;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject li {
    width: calc((100% - 20px) / 3);
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject li:nth-child(3n) {
    margin-right: 0;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject li a {
    color: #000;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: center;
    text-decoration: none;
    width: 100%;
    background-color: #fff;
    display: block;
    padding: 5px 0;
    border: solid 1px #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject li a:after {
    content: none;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__subject li a:hover {
    color: #fff;
    background-color: #0096e0;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__ict .ict__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__ict li {
    width: calc((100% - 20px) / 3);
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__ict li:nth-child(3n) {
    margin-right: 0;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__ict li a {
    color: #000;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: center;
    text-decoration: none;
    width: 100%;
    background-color: #fff;
    display: block;
    padding: 5px 0;
    border: solid 1px #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .sp_header__contents .sp_navi .subnavi__contents .contents__ict li a:hover {
    color: #fff;
    background-color: #0096e0;
  }
  .sp_header__contents .sp_navi .subnavi__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    line-height: 1.2;
    padding-left: 20px;
    margin-bottom: 5px;
    position: relative;
  }
  .sp_header__contents .sp_navi .subnavi__title:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .sp_header__contents .sp_navi .subnavi__title--sho:before {
    background-color: #ffb300;
  }
  .sp_header__contents .sp_navi .subnavi__title--chu:before {
    background-color: #0277bd;
  }
  .sp_header__contents .sp_navi .subnavi__title--kou:before {
    background-color: #6a1b9a;
  }
  .sp_header__contents .sp_navi .subnavi__title--info a {
    color: #666;
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    text-decoration: none;
  }
  .sp_header__contents .sp_navi .subnavi__title--info a:hover {
    color: #0096e0;
  }
  .sp_header__contents .sp_navi .subnavi__title--info:before {
    background-color: #666;
  }
  .sp_header__contents .sp_navi .subnavi__title--ict:before {
    background-color: #0096e0;
  }
  /*　パンくずリスト　*/
  .breadcrumb {
    background-color: #616161;
  }
  .breadcrumb__inner {
    max-width: 1200px;
    padding: 10px;
    margin: 0 auto;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	 margin: 0;
  }
  .breadcrumb ul li {
    color: #fff;
    margin-left: 15px;
    margin-right: 10px;
    position: relative;
  }
  .breadcrumb ul li:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_w.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    left: -15px;
  }
  .breadcrumb ul li:first-child {
    margin-left: 0;
  }
  .breadcrumb ul li:first-child:before {
    content: none;
  }
  .breadcrumb ul li a {
    color: #fff;
    font-size: 13px;
    text-decoration: none;
  }
  .breadcrumb ul li a:hover {
    text-decoration: underline;
  }
  /*　KV　*/
  .kv {
    /*padding: 20px 0;
    background: url(/img/common/bg_kv.png) center bottom no-repeat;
    background-size: 100% auto;*/
  }
  .kv__thumbnails {
    display: none;
  }
  .kv .sp-button {
    width: 10px;
    height: 10px;
    border: solid 1px #888;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
  }
  .kv .sp-selected-button {
    background-color: #0096e0;
  }
  /*　ページタイトル　*/
  .page_title--1 {
    position: relative;
  }
  .page_title--1:after {
    position: absolute;
    content: "";
    background: url(/img/common/bg_kv.png) center bottom no-repeat;
    background-size: cover;
    width: 100%;
    height: 10px;
    left: 0;
    bottom: -10px;
  }
  .page_title--1 .page_title__inner {
    max-width: 1200px;
    height: 55px;
    padding: 10px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .page_title--1 .page_title__inner--school {
    background: url(/img/elementaryschool/img_kv.png) right top no-repeat;
    background-size: contain;
  }
  .page_title__title {
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
  }
  .page_title--1 .page_title__title {
    font-size: 20px;
    font-size: 142.85714%;
  }
  .page_title--2 .page_title__title {
    font-size: 20px;
    font-size: 142.85714%;
  }
  .page_title__title--sho {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--sho:before {
    position: absolute;
    content: "";
    background-color: #ffb300;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  .page_title__title--chu {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--chu:before {
    position: absolute;
    content: "";
    background-color: #0277bd;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  .page_title__title--kou {
    margin-left: 40px;
    position: relative;
  }
  .page_title__title--kou:before {
    position: absolute;
    content: "";
    background-color: #6a1b9a;
    width: 25px;
    height: 3px;
    top: calc(50% - 2px);
    left: -40px;
  }
  /*　トップメッセージ　*/
  .home__massage{
   max-width: 1200px;
   margin: 0 auto;
   text-align: center;
  	padding: 0 0 10px;
	background: url(/img/common/bg_kv.png) center bottom no-repeat;
	background-size: 100% auto;
  }
  /*　メインコンテンツ枠　*/
  .main_contents__inner {
    padding: 20px;
  }
  /*　コンテンツ枠　*/
  .contents__special {
    margin-bottom: 30px;
  }
  .school .contents__special {
    margin-bottom: 0;
  }
  .contents__topics {
    max-width: 1176px;
    margin: 0 auto 30px;
  }
  .contents__info {
    background-color: #f8f8f8;
    padding: 20px;
  }
  .contents__company_banner {
    background-color: #f1f2f5;
    padding: 20px;
  }
  .contents__navi{
  	width: 100%;
	margin-top: 40px;
  }
  .contents__navi_category{
  	width: 100%;
	box-sizing: border-box;
	background-color: #fafafa;
	padding: 0 20px 40px;
	border: 1px solid #eee;
	margin-bottom: 40px;
  }
  .navi_list_btn-fix{
  margin-bottom: 0 !important;
  }
  .contents__navi_category .navi_list{
   background-color: #fff;
  }
  .contents__navi_category .navi_list a{
   text-decoration: none;
	color: #000;
  }
  .contents__navi_category .navi_list div{
   height: 50px;
	line-height: 50px;
	padding-left: 30px;
   font-size: 16px;
   font-size: 114.28571%;
	font-weight: bold;
	border-bottom: 1px solid #eee;
  }
  .contents__navi_category .navi_list a:first-child div{
	border-top: 1px solid #eee;
  }
  .contents__navi_category .navi_list div:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #fff;
	border-left: 6px solid #000;
	margin-top: 18px;
	margin-left: -17px;
  }
  .contents__navi_category .navi_list div:hover{
   color: #0096e0;
  }
  .contents__navi_category .navi_list div:hover:before{
   border-left-color: #0096e0;
  }
  .contents__navi_category .navi_list div.navi-active{
  	color: #0096e0;
  }
  .contents__navi_category .navi_list div.navi-active:before{
  border-left-color: #0096e0;
  }
  .navi_list_btn{
   background-color: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
	 align-items: center;
	 padding:20px;
	border: 1px solid #eee;
	border-top: 0;
  }
  .navi_list_btn a{
  	text-decoration: none;
	color: #000;
  }
  .navi_list_btn .navi_list_btn-p{
   width: 50%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
  }
  .navi_list_btn .navi_list_btn-e{
   width: 50%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
	border-bottom: 1px solid #cccccc;
  }
  .navi_list_btn .navi_list_btn-all{
   width: 100%;
	height: 60px;
	box-sizing: border-box;
   background-color: #f2f2f2;
	line-height: 60px;
	padding-left: 24px;
    font-size: 16px;
    font-size: 114.28571%;
  }
  .navi_list_btn .navi_list_btn-p:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-e:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-all:before{
   content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border: 6px solid #f2f2f2;
	border-left: 6px solid #000;
	margin-top: 23px;
	margin-left: -14px;
  }
  .navi_list_btn .navi_list_btn-p:hover:before{
	border-left: 6px solid #0096e0;
  }
  .navi_list_btn .navi_list_btn-e:hover:before{
	border-left: 6px solid #0096e0;
  }
  .navi_list_btn .navi_list_btn-all:hover:before{
	border-left: 6px solid #0096e0;
  }
  .contents__navi_ranking{
   position: relative;
   width: 100%;
   box-sizing: border-box;
   background-color: #fafafa;
   padding: 0 0 20px;
   margin-top: 40px;
  }
  .topics__info {
  	width: 100%;
	min-height: 2em;
	padding: 15px 0 5px 0;
	margin: 10px 0 0 0;
	border-top: 1px solid #cccccc;
	line-height: 2em;
  }
  .topics__info:after {
  	content: "";
	clear: both;
	display: block;
  }
  .topics__info .topics__info_date{
  	float: left;
  	width: 40%;
	color: #666666;
  }
  .topics__info .topics__info_cat{
  	float: right;
  	width: 40%;
	color: #666666;
	text-align: center;
	border: 1px solid #cccccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .navi__header{
  position: relative;
  top: -20px;
  }
  .navi_ranking{
   display: block;
  	width: calc(100% - 40px);
	margin: 0 auto 20px;
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid #eeeeee;
	text-decoration: none;
	color: #000000;
  }
  .navi_ranking:hover{
	border: 1px solid #0096e0;
  }
  .ranking_number{
   background-color: #1565c0;
   width: 46px;
   height: 39px;
   text-align: center;
   line-height: 39px;
   font-size: 16px;
   color: #ffffff;
  }
  .ranking_img{
  width: 100%;
  text-align: center;
  }
  .ranking_img img{
  width: auto;
  }
  .ranking_info{
  box-sizing: border-box;
  width: 100%;
  padding: 1em;
  }
  .ranking_info .ranking_title{
    font-size: 16px;
    font-size: 114.28571%;
	 margin-bottom: 20px;
  }
  .ranking_info .ranking_auther{
    font-size: 15px;
    font-size: 107.14286%;
	 margin-bottom: 10px;
  }
  /*　アイコン　*/
  .icn__cat {
    color: #fff;
    text-align: center;
    min-width: 117px;
    padding: 7px 10px;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
  }
  .icn__cat:after {
    position: absolute;
    content: "";
    border: solid 14px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    bottom: -14px;
    left: -14px;
  }
   .books__genba_wrap .icn__cat:after {
      display: none;
  }
  .icn__cat--00 {
    background-color: #ffb905;
  }
  .icn__cat--00:after {
    border-color: transparent #ffb905 transparent transparent;
  }
  .icn__cat--01 {
    background-color: #e2472a;
  }
  .icn__cat--01:after {
    border-color: transparent #e2472a transparent transparent;
  }
  .icn__cat--02 {
    background-color: #ce7112;
  }
  .icn__cat--02:after {
    border-color: transparent #ce7112 transparent transparent;
  }
  .icn__cat--03 {
    background-color: #a0c234;
  }
  .icn__cat--03:after {
    border-color: transparent #a0c234 transparent transparent;
  }
  .icn__cat--04 {
    background-color: #59b75b;
  }
  .icn__cat--04:after {
    border-color: transparent #59b75b transparent transparent;
  }
  .icn__cat--05 {
    background-color: #3eb3a4;
  }
  .icn__cat--05:after {
    border-color: transparent #3eb3a4 transparent transparent;
  }
  .icn__cat--06 {
    background-color: #00b9ef;
  }
  .icn__cat--06:after {
    border-color: transparent #00b9ef transparent transparent;
  }
  .icn__cat--07 {
    background-color: #009dda;
  }
  .icn__cat--07:after {
    border-color: transparent #009dda transparent transparent;
  }
  .icn__cat--08 {
    background-color: #999;
  }
  .icn__cat--08:after {
    border-color: transparent #999 transparent transparent;
  }
  .icn__books-01{
  	background-color: #1565c0;
  }
  .icn__books-01:after {
    border-color: transparent #1565c0 transparent transparent;
  }
  /*　特集コンテンツ　*/
  .special {
    width: 100%;
  }
  .special__container {
    margin-bottom: 30px;
  }
  .special__header {
    position: relative;
  }
  .special__cat {
    position: absolute;
    bottom: -23px;
  }
  .special__date {
    color: #777;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: right;
  }
  .special__img {
    width: 100%;
    height: auto;
  }
  .special__element {
    width: 100%;
    background: url(/img/home/bg_special.png) 0 0 repeat;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .special__element_inner {
    border: solid 1px #aaa;
    padding: 10px 10px 20px;
  }
  .special__sub_title {
    font-size: 10px;
    font-size: 71.42857%;
    font-weight: bold;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .special__sub_title dd {
    color: #888;
  }
  .special__title {
    font-size: 14px;
    font-size: 100%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    padding-bottom: 5px;
    border-bottom: solid 2px #000;
    margin-bottom: 10px;
  }
  .special__txt {
    margin-bottom: 10px;
  }
  .special__txt p {
    font-size: 12px;
    font-size: 85.71429%;
  }
  .special__btn {
    width: 51px;
    height: 6px;
    float: right;
  }
  .special__btn a {
    text-indent: -9999px;
    background: url(/img/common/icn_arrow_4.png) 0 0 no-repeat;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .special__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  /*　トピックス　*/
  .topics {
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
  }
  .topics.is-hidden {
    display: none;
  }
  .topics__container {
    max-width: 1176px;
    margin: 0 auto 30px;
  }
  .topics a {
    text-decoration: none;
    display: block;
  }
  .topics--1 {
    max-width: 335px;
  }
  .topics--2 {
    max-width: 335px;
  }
  .topics__tab {
    display: none;
  }
  .topics__item a {
    color: #777;
    font-weight: bold;
    text-decoration: none;
    padding-bottom: 5px;
  }
  .topics__item a.is-active {
    color: #000;
    border-bottom: solid 2px #0096e0;
  }
  .topics__item:first-child {
    margin-left: 0;
  }
  .topics__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .topics__header {
    position: relative;
  }
  .topics__cat {
    position: absolute;
    bottom: -20px;
  }
  .topics__date {
    color: #777;
    font-size: 12px;
    font-size: 85.71429%;
    text-align: right;
  }
  .topics__new {
    color: #ff9100;
    display: inline-block;
    margin-right: 15px;
    position: relative;
  }
  .topics__new:after {
    color: #777;
    content: "|";
    right: -10px;
    position: absolute;
  }
  .catalog__new {
    color: #ff9100;
    display: inline-block;
    margin-right: 15px;
    position: relative;
  }
  .catalog__new:after {
    color: #777;
    content: "|";
    right: -10px;
    position: absolute;
  }
  .topics__body {
    padding: 10px;
    border: solid 1px #ddd;
  }
  .topics2__body {
    border: solid 1px #ddd;
  }
  .topics__img {
    overflow: hidden;
    position: relative;
  }
  .topics2__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 150px;
	 height: 264px;
	 margin: auto;
    overflow: hidden;
  }
  .topics__img:after {
    position: absolute;
    content: "";
    height: 14px;
    background-color: #fff;
    left: 0;
    bottom: 0;
  }
  .topics--1 .topics__img {
    max-width: 314px;
    height: 234px;
  }
  .school .topics--1 .topics__img {
    height: unset;
  }
  .topics--1 .topics__img:after {
    width: calc(100% - 14px);
  }
  .topics--2 .topics__img {
    max-width: 314px;
    height: 143px;
  }
  .school .topics--2 .topics__img {
    height: unset;
  }
  .topics--2 .topics__img:after {
    width: calc(100% - 14px);
  }
  .topics__img img {
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  }
  .topics__img img:hover {
/*	  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
      transform: scale(1.2);*/
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
  }
  .topics__title {
    color: #000;
    font-size: 19px;
    font-size: 135.71429%;
    line-height: 1.5;
    height: 61px;
    padding: 0 5px 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
  }
   .books__genba_wrap .topics__title{
      height: auto;
   }
  .contents__header--2 .topics__title {
    margin-bottom: 0;
    border-bottom: none;
  }
  .topics__title dl dt {
    font-size: 15px;
    font-size: 107.14286%;
  }
  .topics2__title{
    font-size: 17px;
    font-size: 121.42857%;
    line-height: 1.5;
    margin-bottom: 15px;
  }
  .topics2__txt{
  padding: 17px 45px 17px 17px;
  }
  .topics2__author{
    font-size: 15px;
    font-size: 107.14286%;
    margin-bottom: 10px;
  }
  .school .topics__title dl dt,.school .topics__title dl dd,.school .topics__title h3 {
    font-size: 16px;
  }
  .topics__title:before {
    position: absolute;
    content: "";
    border: solid 10px;
    border-color: #fff transparent transparent transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: -10px;
    right: 4px;
  }
  .topics__title:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_2.png) 0 0 no-repeat;
    width: 8px;
    height: 16px;
    top: calc(50% - 8px);
    right: 5px;
  }
  .topics__txt {
    color: #444;
    padding: 0 5px;
  }
  .topics__link {
    text-align: right;
  }
   .books__topics2{
      margin-top: 45px;
   }
  .books__topics2_banner{
  width: 320px;
  height: 266px;
  margin: 25px auto 25px;
  }
  .books__topics2_banner img{
  border: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .books__list .contents--2{
    margin-bottom: 25px;
	 padding: 15px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 flex-wrap: wrap;
  }
  .books__list .contents--2 .contents__img{
	 width: 100%;
	 margin-bottom: 14px;
	 box-sizing: border-box;
	 padding: 15px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
  }
  .books__list .books__ranking .contents__img:hover{
 	border-color: #0096e0;
  }
  .books__list .contents--2 .contents__img img{
	 width: 240px;
	 max-width: 100%;
  }
  .books__list .contents--2 .contents__body .contents__title{
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
	margin: 0 0 0.8em;
  }
  .books__list .contents--2 .contents__body .contents__type-list{
	 font-weight: bold;
	margin: 0 0 0.8em;
  }
  .books__list .contents--2 .contents__body .contents__text{
	padding: 0 0 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #aaaaaa;
  }
  .books__list .contents--2 .contents__btn-shop{
	 width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 padding-top: 20px;
	 flex-wrap: wrap;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop{
    display: table;
 	 width: 100%;
	 height: 60px;
	 box-sizing: border-box;
	 margin: 10px 0;
	 border: 1px solid #aaaaaa;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	 text-decoration: none;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:last-child{
    margin-bottom: 0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:hover{
    border-color: #0096e0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop p{
    display: table-cell;
	 vertical-align: middle;
    padding-left: 70px;
	 color: #000;
    font-size: 16px;
    font-size: 114.28571%;
	 font-weight: bold;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop:hover p{
    color: #0096e0;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop-p:before{
    content: "";
    background: url(/img/books/img_p-book.png) center no-repeat;
	 background-size: 50%;
	 background-color: #0096e0;
	 width: 60px;
    height: 58px;
    position: absolute;
    right: auto;
    border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
  }
  .books__list .contents--2 .contents__btn-shop .books__btn_shop-e:before{
    content: "";
    background: url(/img/books/img_e-book.png) center no-repeat;
	 background-size: 50%;
	 background-color: #0096e0;
	 width: 60px;
    height: 58px;
    position: absolute;
    right: auto;
    border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
  }
  /*　お知らせ　*/
  .info--top .info {
    max-width: 820px;
    margin-right: auto;
    margin-left: auto;
  }
  .info--col2 {
    width: 100%;
    margin-bottom: 20px;
    *zoom: 1;
  }
  .info--col2:before {
    content: " ";
    display: table;
  }
  .info--col2:after {
    content: " ";
    display: table;
    clear: both;
  }
  .info--top .info__container {
    background-color: #f8f8f8;
    padding: 20px;
  }
  .info--col2 .info__container {
    padding-top: 10px;
    margin-bottom: 20px;
  }
  .info__title {
    color: #333;
    font-size: 20px;
    font-size: 142.85714%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    margin-bottom: 20px;
  }
  .info__tab {
    display: none;
  }
  .info__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .info__item {
    margin-left: 20px;
  }
  .info__item a {
    color: #777;
    font-weight: bold;
    text-decoration: none;
    padding-bottom: 5px;
  }
  .info__item a.is-active {
    color: #000;
    border-bottom: solid 3px #0096e0;
  }
  .info__item:first-child {
    margin-left: 0;
  }
  .info__wrap {
    background-color: #fff;
    padding: 0 8px;
    margin-bottom: 20px;
    border-right: solid 1px #ddd;
    border-left: solid 1px #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .info__list_wrap{
  	 height: auto;
	 overflow: inherit;
	 margin: 20px 0;
	 padding: 10px;
	 border: solid 1px #ddd;
  }
  .info__wrap ul {
    border-top: dotted 1px #b2b2b2;
  }
  .info__cat {
    background-color: #fff;
    padding: 20px;
    border-bottom: dotted 1px #b2b2b2;
  }
  .info__list_wrap ul{
	 border-top: none;
  }
  .info__list_wrap ul li:last-of-type{
	 border-bottom: none;
  }
  .info__cat:nth-child(even) {
    background-color: #fcfcfc;
  }
  .info__cat.is-hidden {
    display: none;
  }
  .info__header {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .info__date {
    color: #888;
    margin-right: 10px;
  }
  .info__icn {
    color: #fff;
    font-size: 12px;
    font-size: 71.42857%;
    text-align: center;
    background-color: #124488;
    min-width: 50px;
    display: inline-block;
    padding: 0 5px;
    margin-right: 5px;
  }
  .info__icn:last-child {
    margin-right: 0;
  }
  .info__icn--important {
    background-color: #ab010b;
  }
  .info__icn--new {
    background-color: #0096e0;
  }
  .info__body {
    color: #000;
    font-size: 16px;
    font-size: 114.28571%;
  }
  .info__body.info__detail {
    font-size: 12px;
    font-size: 85.71428%;
  }
  .info__body a {
    color: #124488;
    text-decoration: none;
  }
  .info__body a:hover {
    color: #0096e0;
  }

  .info__body h3 {
	  font-size:18px;
	  font-size:150%;
      font-weight: bold;
      margin:28px 0;
  }
  .info__detail__backbtn {
     display: flex;
	 justify-content:center;
  }
  .info__detail__backbtn a {
	width:100px;
	height:32px;
	background-color: #616161;
	border-radius: 25px;
	display: flex;
	justify-content: center;
	padding-top:8px;
	margin:20px 0 0;
	color:#ffffff;
	font-size:100%;
	text-decoration: none;
  }
  .info__detail__backbtn ahover {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-opacity: 0.7;
	opacity: 0.7;
  }

  .info__btn {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
  .info__btn a {
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
    line-height: 1;
    text-decoration: none;
    background-color: #fff;
    width: 100%;
    padding: 8px;
    border: solid 1px #ccc;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .info__btn a:hover {
    color: #0096e0;
  }
  .info__btn a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_1_blue.png) 0 0 no-repeat;
    width: 5px;
    height: 10px;
    top: calc(50% - 5px);
    left: 10px;
  }
  /*　関連サイト　*/
  .company_banner__container {
    background-color: #f1f2f5;
    padding: 20px;
  }
  .company_banner__title {
    color: #333;
    font-size: 20px;
    font-size: 142.85714%;
    font-family: "Yu Mincho Demibold","游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
    margin-bottom: 20px;
  }
  .company_banner__list {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .company_banner__item {
    width: calc((100% - 10px) / 2);
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .company_banner__item:nth-child(even) {
    margin-right: 0;
  }
  .company_banner__item a {
    text-indent: -9999px;
    width: 100%;
    height: 0;
    padding-top: 36.3636363%;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .company_banner__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .company_banner__item--01 a {
    background: url(/img/common/bnr_01.png) 0 0 no-repeat;
    background-size: cover;
  }
  .company_banner__item--02 a {
    background: url(/img/common/bnr_02.png) 0 0 no-repeat;
    background-size: cover;
  }
  .company_banner__item--03 a {
    background: url(/img/common/bnr_03.png) 0 0 no-repeat;
    background-size: cover;
  }
  .company_banner__item--04 a {
    background: url(/img/common/bnr_04.png) 0 0 no-repeat;
    background-size: cover;
  }
  .company_banner__item--05 a {
    background: url(/img/common/bnr_05.png) 0 0 no-repeat;
    background-size: cover;
  }
  /*　フッター　*/
  .footer__contents--2 .footer__inner {
    padding: 10px;
  }
  .footer__link_list {
    padding: 20px;
    border-top: solid 2px #000;
    border-bottom: solid 2px #000;
  }
  .footer__link_list .link_list__title {
    color: #333;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .footer__link_list .link_list__wrap ul {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: dotted 1px #999;
  }
  .footer__link_list .link_list__wrap ul:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
  }
  .footer__link_list .link_list__wrap a {
    color: #333;
    text-decoration: none;
    padding-left: 10px;
    position: relative;
  }
  .footer__link_list .link_list__wrap a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_1_black.png) 0 0 no-repeat;
    width: 4px;
    height: 10px;
    top: calc(50% - 5px);
    left: 0;
  }
  .footer__link_list .link_list__wrap a[target="_blank"]:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_window.png) 0 0 no-repeat;
    width: 14px;
    height: 10px;
    top: calc(50% - 5px);
    right: -20px;
  }
  .footer__link_list .link_list__title a:before{
    content: none;
	}
  .footer__link_list .link_list__wrap a:hover {
    color: #0096e0;
  }
  .footer__link_list .link_list__block{
    margin-bottom: 20px;
  }
  .footer__banner {
    padding: 20px;
  }
  .footer__banner .banner__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .footer__banner .banner__item {
    width: 105px;
    height: 102px;
  }
  .footer__banner .banner__item a {
    text-indent: -9999px;
    display: block;
    width: 100%;
    height: 100%;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .footer__banner .banner__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .footer__banner .banner__item--01 {
    margin-right: 10px;
  }
  .footer__banner .banner__item--01 a {
    background: url(/img/common/icn_privacy.png) 0 0 no-repeat;
  }
  .footer__banner .banner__item--02 a {
    background: url(/img/common/icn_verisign.png) 0 0 no-repeat;
  }
  .footer .pagetop__btn {
    width: 100%;
  }
  .footer .pagetop__btn a {
    color: #fff;
    text-align: center;
    text-decoration: none;
    display: block;
    width: 100%;
	 margin: 10px 0 ;
    padding: 5px;
    background-color: #0096e0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
    position: relative;
  }
  .footer .pagetop__btn a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_5_up.png) 0 0 no-repeat;
    width: 11px;
    height: 15px;
    top: 9px;
    left: calc(50% - 55px);
  }
  .footer .pagetop__btn a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .footer .copyright {
    color: #888;
    font-size: 10px;
    font-size: 71.42857%;
    text-align: center;
    display: block;
  }
  /*　ボタン　*/
  .btns {
    margin-bottom: 20px;
  }
  .btns__item {
    margin-bottom: 10px;
  }
  .btns__item:first-child {
    margin-left: 0;
  }
  .btns__item--1 a {
    background-color: #1b5189;
  }
  .btns__item--2 a {
    background-color: #0096e0;
  }
  .btns__item a {
    color: #fff;
    font-size: 18px;
    font-size: 128.57143%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    width: 100%;
    padding: 10px;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .btns__item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .btns__item--sub{
    font-size: 14px;
	 line-height: 14px;
  }
  .btns__item--outlink{
  	 position: relative;
  }
  .btns__item--outlink:after{
    content: "";
	 display: block;
	 position: absolute;
	 width: 14px;
	 height: 10px;
	 background: url(/img/common/icn_window2.png) center no-repeat;
	 right: -20px;
	 top: calc(50% - 5px);
  }
  /*　小学校トップ　*/
  .school {
    margin-bottom: 40px;
  }
  .page__header {
    margin-bottom: 30px;
  }
  .school__header {
    margin-bottom: 30px;
  }
  .school__title {
    font-size: 20px;
    font-size: 142.85714%;
    font-weight: bold;
    background: url(/img/common/icn_ttl_01.png) left center no-repeat #f8f8f8;
    padding: 5px;
    padding-left: 35px;
  }
  .school .contents {
    border: solid 1px #aaa;
  }
  .school .contents__header {
    padding: 20px;
  }
  .school .contents__header--1 {
    background-color: #3eb3a4;
    margin-bottom: 10px;
  }
  .school .contents__header--1 .contents__title {
    color: #fff;
  }
  .school .contents__header--2 {
    background-color: #f6f6f6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .school .contents__header--2 .topics--1 {
    background-color: #fff;
    margin: 0 5px 10px;
  }
  .school .contents__header--2 .topics__body {
    border: none;
  }
  .school .contents__header--2 .book {
    background-color: #fff;
    width: 100%;
    padding: 19px;
    margin-bottom: 20px;
    border: solid 1px #aaa;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .school .contents__header--2 .book:last-child {
    margin-bottom: 0;
  }
  .school .contents__header--2 .book a {
    color: #000;
    text-decoration: none;
    display: block;
  }
  .school .contents__header--2 .book__img {
    width: 198px;
    min-height: 280px;
    margin: 0 auto 20px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    overflow: hidden;
    position: relative;
  }
  .school .contents__header--2 .book__img img {
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  }
  .school .contents__header--2 .book__img img:hover {
/*    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);*/
	-webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
  }
  .school .contents__header--2 .book__title {
    font-size: 16px;
    font-size: 114.28571%;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    margin-bottom: 0.5em;
  }
  .school .contents__header--2 .book__author {
    margin-bottom: 1em;
  }
  .school .contents__header--2 .book__detail {
    *zoom: 1;
  }
  .school .contents__header--2 .book__detail:before {
    content: " ";
    display: table;
  }
  .school .contents__header--2 .book__detail:after {
    content: " ";
    display: table;
    clear: both;
  }
  .school .contents__header--2 .book__detail dt {
    float: left;
  }
  .school .contents__header--2 .book__detail dt:after {
    content: "：";
  }
  .school .contents__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .school .contents__list {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	 border: none;
  }
  .school .contents__list li {
    width: 110px;
    height: 30px;
    margin: 3px;
    float: left;
  }
  .school .contents__list li a {
    color: #000;
    font-size: 14px;
    font-size: 100%;
    text-decoration: none;
    background-color: #fff;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school .contents__list li a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -webkit-opacity: 0.7;
    opacity: 0.7;
  }
  .school .contents__link {
    font-size: 12px;
    font-size: 85.71429%;
  }
  .school .contents__link:before {
    content: url(/img/common/icn_arrow_1_white.png);
    margin-right: 5px;
  }
  .school .contents__link a {
    color: #fff;
    text-decoration: none;
  }
  .school .contents__link a:hover {
    text-decoration: underline;
  }
  .school .contents__body {
    padding: 20px;
  }
  .school .contents__special {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .school .contents__special .topics--1 {
    margin: 0 3px 20px;
    float: left;
  }
  .school .contents__special .topics--1 .topics__img {
    height: 160px;
  }
  .school .contents__special .topics--1 .topics__img:after {
    width: 95%;
  }
  .school .contents__special .topics--2 {
    margin: 0 0 10px;
  }
  .school .contents__special .topics--2 .topics__title {
    height: auto;
  }
  .school .contents__btn {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
  .school .contents__btn a {
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
    line-height: 1;
    text-decoration: none;
    background-color: #fff;
    width: 100%;
    padding: 8px;
    border: solid 1px #ccc;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .school .contents__btn a:hover {
    color: #0096e0;
  }
  .school .contents__btn a:before {
    position: absolute;
    content: "";
    width: 5px;
    height: 10px;
    top: calc(50% - 5px);
    left: 10px;
  }
  .school .contents__btn--02 a:before {
    background: url(/img/common/icn_arrow_1_orange.png) 0 0 no-repeat;
  }
  .school .contents__btn--03 a:before {
    background: url(/img/common/icn_arrow_1_bright_green.png) 0 0 no-repeat;
  }
  .school .contents__btn--05 a:before {
    background: url(/img/common/icn_arrow_1_green.png) 0 0 no-repeat;
  }
  .school .contents__btn--07 a:before {
    background: url(/img/common/icn_arrow_1_bright_blue.png) 0 0 no-repeat;
  }
  /*　教科書詳細ヘッダーナビ　*/
  .school_header {
    background: url(/img/common/bg_kv.png) center bottom no-repeat;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .page_header__contents--1 {
    border-bottom: solid 1px #ddd;
  }
  .school_header__contents--1 {
    border-bottom: solid 1px #ddd;
  }
  .page_header__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
  }
  .school_header__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
  }
  .page_header__contents--1 .page_header__inner {
    padding: 10px;
  }
  .school_header__contents--1 .school_header__inner {
    padding: 10px;
  }
  .page_header__contents--2 .page_header__inner {
    padding: 10px;
  }
  .school_header__contents--2 .school_header__inner {
    padding: 10px;
  }
  .page_header__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
  }
  .school_header__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
  }
  .school_header__btns ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .school_header__btn {
    width: 142px;
    height: 30px;
    margin-left: 10px;
  }
  .school_header__btn:first-child {
    margin-left: 0;
  }
  .school_header__btn a {
    color: #000;
    font-weight: bold;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: block;
    border: solid 1px #ddd;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_header__btn a:before {
    font-size: 20px;
    content: "●";
    margin-right: 5px;
  }
  .school_header__btn--sho a:before {
    color: #ffb300;
  }
  .school_header__btn--sho a:hover {
    color: #ffb300;
    border: solid 1px #ffb300;
  }
  .school_header__btn--chu a:before {
    color: #0277bd;
  }
  .school_header__btn--chu a:hover {
    color: #0277bd;
    border: solid 1px #0277bd;
  }
  .school_header__btn--kou a:before {
    color: #6a1b9a;
  }
  .school_header__btn--kou a:hover {
    color: #6a1b9a;
    border: solid 1px #6a1b9a;
  }
  .school_header__navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school_header__navi--sho .is-active:after {
    background-color: #ffb300;
  }
  .school_header__navi--chu .is-active:after {
    background-color: #0277bd !important;
  }
  .school_header__navi--kou .is-active:after {
    background-color: #6a1b9a;
  }
  .school_header__navi li {
    width: calc((100% - 3px) / 4);
    border-top: solid 1px #ccc;
    border-right: solid 1px #ccc;
  }
  .school_header__navi li:nth-child(-n + 4) {
    border-top: none;
  }
  .school_header__navi li:nth-child(4n) {
    border-right: none;
  }
  /*181121 fix jh header*/
  .school_header__navi.school_header__navi--chu li:nth-child(8){
   position: relative;
  }
  /*181121 fix jh header*/
  .school_header__navi.school_header__navi--chu li:nth-child(8):after{
   content: "";
	position: absolute;
	bottom: -1px;
	width: 100%;
	height: 1px;
	background-color: #ccc;
	}
  .school_header__navi li a {
    color: #666;
    font-size: 12px;
    font-size: 85.71429%;
    font-weight: bold;
    line-height: 1.2;
    text-decoration: none;
    padding: 5px;
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_header__navi li a:hover {
    color: #000;
  }
  .school_header__navi li.is-active {
    position: relative;
  }
  .school_header__navi li.is-active:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px !important;
    left: 0;
    bottom: 0 !important;
  }
  .school_header__navi li.is-active a {
    color: #000;
  }
  /*　小学校詳細　*/
  .school_detail {
    margin-bottom: 40px;
  }
  .school_detail__header {
    margin-bottom: 30px;
  }
  .school_detail__title {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    background: url(/img/common/icn_ttl_01.png) left center no-repeat #f8f8f8;
    padding: 5px;
    padding-left: 35px;
  }
  .school_detail__body {
    margin-bottom: 20px;
  }
  .school_detail__body--2 {
    background-color: #fcfcfc;
    padding: 20px;
    border: solid 1px #eee;
  }
  .school_detail__body a {
    color: #000;
    text-decoration: none;
  }
  .school_detail__body a:hover .contents--1 .contents__header {
    border: solid 1px #0096e0;
	 border-bottom: none;
  }
  .school_detail__body a:hover .contents--1 .contents__body {
    border: solid 1px #0096e0;
	 border-top: none;
  }
  .school_detail__body a:hover .contents--2 {
    border: solid 1px #0096e0;
  }
  .school_detail__body a:hover .contents--3 {
    border: solid 1px #0096e0;
  }
  .school_detail__body .contents--1 .contents__header {
    padding: 20px;
    border: solid 1px #eee;
    border-bottom: none;
    position: relative;
  }
  .school_detail__body .contents--1 .contents__header:before {
    position: absolute;
    content: "";
    width: calc(100% - 40px);
    height: 1px;
    background-color: #ccc;
    left: 20px;
    bottom: 0;
  }
  .school_detail__body .contents--1 .contents__header:after {
    position: absolute;
    content: "";
    width: calc((100% - 40px) / 2);
    height: 3px;
    background-color: #ffb300;
    left: 20px;
    bottom: -1px;
  }
  .school_detail__body--chu .contents--1 .contents__header:after {
    background-color: #0277bd;
  }
  .school_detail__body--kou .contents--1 .contents__header:after {
    background-color: #6a1b9a;
  }
  .school_detail__body .contents--1 .contents__body {
    background-color: #fcfcfc;
    padding: 20px;
    border: solid 1px #eee;
    border-top: none;
  }
  .school_detail__body .contents--1 .contents__bottom {
    color: #666;
    padding: 20px;
    border: solid 1px #eee;
    border-top: none;
  }
  .school_detail__body .contents--1 .contents__title {
    font-size: 21px;
    font-size: 150%;
  }
  .school_detail__body .contents--1 .contens__numbers {
    word-break: break-all;
    word-wrap: break-word;
  }
  .school_detail__body .contents--2 {
    padding: 20px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .books__detail__contents_list .school_detail__body .contents--2 {
  	 padding-top: 0;
	 border-top: none;
  }
  .school_detail__body .contents--2 .contents__img {
    max-width: 290px;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--2 .contents__movie iframe{
    max-width: 100%;
  }
  .school_detail__body .contents--2 .contents__title {
    font-size: 18px;
    font-size: 128.57143%;
  }
  .school_detail__body .contents--2 .contents__type {
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
  }
  .school_detail__body .contents--2 .contents__type-list{
  	 color: #666;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--2 .contents__type:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    left: 0;
    bottom: 0;
  }
  .school_detail__body .contents--2 .contents__type:after {
    position: absolute;
    content: "";
    width: 50%;
    height: 3px;
    background-color: #ffb300;
    left: 0;
    bottom: -1px;
  }
  body.juniorhighschool .school_detail__body .contents--2 .contents__type:after {
    background-color: #0277bd;
  }
  .school_detail__body--kou .contents--2 .contents__type:after {
    background-color: #6a1b9a;
  }
  .school_detail__body .contents--3 {
    padding: 20px;
    background-color: #fff;
    border: solid 1px #eee;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .school_detail__body .contents--3 .contents__img {
    max-width: 290px;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--3 .contents__title {
    font-size: 18px;
    font-size: 128.57143%;
  }
  .school_detail__body .contents--3 .contents__type {
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
  }
  .school_detail__body .contents--3 .contents__type-list{
  	 color: #666;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .school_detail__body .contents--3 .contents__type:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    left: 0;
    bottom: 0;
  }
  .school_detail__body .contents--3 .contents__type:after {
    position: absolute;
    content: "";
    width: 50%;
    height: 3px;
    background-color: #ffb300;
    left: 0;
    bottom: -1px;
  }
  .school_detail__body .contents__icns--1:after{
  	content: "";
	display: block;
	clear: both;
  }
  .school_detail__body .contents__icns--1 .contents__icn {
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
	 float: left;
	 margin-right: 10px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .price_table__icn--new{
    color: #fff;
    font-weight: bold;
    width: 20px;
    height: 50px;
    background-color: #e53935;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .price_table__icn--renew{
    color: #fff;
    font-weight: bold;
    width: 20px;
    height: 50px;
    background-color: #00bfa5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .school_detail__body .contents__icns--2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .school_detail__body .contents__icns--2 .contents__icn {
    font-size: 12px;
    font-size: 85.71429%;
    min-width: 62px;
    height: 30px;
	 box-sizing: border-box;
    margin-right: 10px;
	 padding: 0 3px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .list__icn_wrap:after{
  	 content: "";
	 display: block;
	 clear: both;
  }
  .list__icn_new{
    float: left;
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
	 margin-right: 10px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	 background-color: #e53935;
	 border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .list__icn_renew{
    float: left;
    color: #fff;
    font-weight: bold;
    width: 60px;
    height: 30px;
	 margin-right: 10px;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	 background-color: #00bfa5;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
  }
  .school_detail__body .contents__icns--2 .contents__icn:last-child {
    margin-right: 0;
  }
  .school_detail__body .contents__icn--new {
    background-color: #e53935;
  }
  .school_detail__body .contents__icn--renew {
    background-color: #00bfa5;
  }
  .school_detail__body .contents__icn--sho {
    color: #ffb300;
    border: solid 1px #ffb300;
  }
  .school_detail__body .contents__icn--chu {
    color: #0277bd;
    border: solid 1px #0277bd;
  }
  .school_detail__body .contents__icn--kou {
    color: #6a1b9a;
    border: solid 1px #6a1b9a;
  }
  .school_detail__body .contents__icn--subject {
    color: #444;
    border: solid 1px #aaa;
  }
  .school_detail__body .contents__icn--use {
    color: #fff;
	 font-weight: bold;
    border: solid 1px #1e88e5;
    background-color: #1e88e5;
  }
  .school_detail__body .contents__icn--conformance {
    color: #fff;
    background-color: #094;
    border: solid 1px #094;
  }
  .school_detail__body .contents__years {
    color: #666;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .school_detail__body .contents__title {
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 5px;
  }
  .school_detail__body .contents__type {
    color: #666;
    margin-bottom: 10px;
  }
  .school_detail__body .contents__text {
    font-size: 13px;
    font-size: 92.85714%;
  }
  .school_detail__body .contents__notice {
    color: #666;
  }
  .school_detail__body .contents__books {
    background-color: #fff;
    padding: 20px;
    border: solid 1px #eee;
    *zoom: 1;
  }
  .school_detail__body .contents__books:before {
    content: " ";
    display: table;
  }
  .school_detail__body .contents__books:after {
    content: " ";
    display: table;
    clear: both;
  }
  .school_detail__body .contents__mainbook {
    max-width: 290px;
  }
  .school_detail__body .contents__mainbook img {
    width: 100%;
    height: auto;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
  }
  .school_detail__body .contents__book_tns {
    padding-top: 20px;
  }
  .school_detail__body .contents__book_tn {
    width: calc((100% - 15px) / 3);
    margin-left: 5px;
    margin-bottom: 5px;
    float: left;
  }
  .school_detail__body .contents__book_tn img {
    width: 100%;
    height: auto;
  }
  .school_detail__body .contents__icn_wrap{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	 justify-content: flex-start;
	 margin-top: 1em;
  }
  .school_detail__body .contents__icn_wrap img{
  	width: auto;
  	margin-right: 1em;
	margin-bottom: 1em;
  }
  .school_list__wrap .contents--2{
  	margin-bottom: 20px;
	box-sizing: border-box;
  }
  .school_list__wrap .contents--3{
  	margin-bottom: 20px;
	box-sizing: border-box;
  }
  .school_detail__btns--1 {
    margin-bottom: 20px;
  }
  .school_detail__btns--1 .btn__item {
  max-width: 374px;
    margin: 0 auto 10px;
  }
  .school_detail__btns--1 .btn__item:last-child {
    margin-bottom: 0;
  }
  .school_detail__btns--1 .btn__item a {
    border: solid 1px #ccc;
    display: block;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--1 .btn__item a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__btns--1 .btn__item--large {
  max-width: 374px;
    margin: 0 auto 10px;
  }
  .school_detail__btns--1 .btn__item--large:last-child {
    margin-bottom: 0;
  }
  .school_detail__btns--1 .btn__item--large a {
    height: 100px;
	 line-height: 100px;
    border: solid 1px #ccc;
    display: block;
	 text-align: center;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .school_detail__btns--1 .btn__item--large a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__btns--1 .btn__item--large a div{
    display: inline-block;
	 line-height: normal;
	 vertical-align: middle;
	 margin: auto;
	 padding: 10px;
	 text-align: left;
  }
  .school_detail__btns--1 .btn__item--large a div h5{
  	font-size: 20px;
   font-size: 142.85714%;
	font-weight: bold;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large a div p{
	font-weight: 500;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large2 {
  max-width: 374px;
    margin: 0 auto 10px;
  }
  .school_detail__btns--1 .btn__item--large2:last-child {
    margin-bottom: 0;
  }
  .school_detail__btns--1 .btn__item--large2 a {
    height: 60px;
	 line-height: 60px;
    border: solid 1px #ccc;
    display: block;
	 text-align: center;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .school_detail__btns--1 .btn__item--large2 a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__btns--1 .btn__item--large2 a div{
    display: inline-block;
	 line-height: normal;
	 vertical-align: middle;
	 margin: auto;
	 padding: 10px;
	 text-align: left;
  }
  .school_detail__btns--1 .btn__item--large2 a div h5{
  	font-size: 20px;
   font-size: 142.85714%;
	font-weight: bold;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--1 .btn__item--large2 a div p{
	font-weight: 500;
	text-decoration: none;
	color: #000000;
  }
  .school_detail__btns--2 {
    background-color: #fcfcfc;
    padding: 10px;
    border: solid 1px #eee;
    margin-bottom: 20px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
  }
  .school_detail__btns--2 .btn__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .school_detail__btns--2 .btn__item {
    width: calc((100% - 20px) / 3);
    margin-top: 10px;
    margin-right: 10px;
  }
  .school_detail__btns--2 .btn__item:nth-child(3n) {
    margin-right: 0;
  }
  .school_detail__btns--2 .btn__item:nth-child(-n + 3) {
    margin-top: 0;
  }
  .school_detail__btns--2 .btn__item a {
    border: solid 1px #ccc;
    display: block;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .school_detail__btns--2 .btn__item a:hover {
    border: solid 1px #0096e0;
  }
  .school_detail__freecontents .freecontents__title {
    font-weight: bold;
  }
  .school_detail__freecontents .freecontents__text {
    font-size: 12px;
    font-size: 85.71429%;
  }
  .school_detail__subtitle {
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .school_difficulty {
	position: relative;
  }
  .school_difficulty table{
	width: 100%;
  	border: 1px solid #dddddd;
	margin: 2em 0;
  }
  .school_difficulty table th{
   width: calc(100% / 4);
	height: 30px;
	line-height: 30px;
	font-weight: bold;
  	border: 1px solid #dddddd;
	background-color: #f6f6f6;
  }
  .school_difficulty table td{
	height: 40px;
  	border: 1px solid #dddddd;
  }
  .school_difficulty .difficulty_bar{
	display: inline-block;
  	height: 10px;
	background-color: #333333;
	position: absolute;
	top: calc(100% - 16px) !important;
  }
  .school_detail__body--sho .difficulty_bar{
   background-color: #ffb300;
  }
  .school_detail__body--chu .difficulty_bar{
   background-color: #0277bd;
  }
  .school_detail__body--kou .difficulty_bar{
  	background-color: #6a1b9a;
  }
  .school_info__table h4{
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
  }
  .school_info__table h5{
    font-size: 16px;
    font-size: 114.28571%;
	font-weight: bold;
  }
  .school_info__table table{
   width: 100%;
  	border: 1px solid #000000;
  }
  .school_info__table th{
   padding: 0.2em;
   text-align: center;
  	border: 1px solid #000000;
  }
  .school_info__table td{
   padding: 0.2em;
   text-align: center;
  	border: 1px solid #000000;
  }
  .school_info__table td:nth-of-type(2){
   text-align: left;
  }
  .school_info__table td a{
  	color: #0096e0;
	text-decoration: underline;
  }
  /*　サイドコンテンツ　*/
  .side_contents > div {
    margin-bottom: 10px;
  }
  .side_contents .side_school {
    border: solid 1px #ddd;
  }
  .side_contents .side_school__header {
    padding: 22px;
    border-bottom: solid 1px #ddd;
    position: relative;
  }
  .side_contents .side_school__header:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_school__header--sho:before {
    background-color: #ffb300;
  }
  .side_contents .side_school__header--chu:before {
    background-color: #0277bd;
  }
  .side_contents .side_school__header--kou:before {
    background-color: #6a1b9a;
  }
  .side_contents .side_school__title {
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    position: relative;
  }
  .side_contents .side_school__body {
    padding-bottom: 22px;
  }
  .side_contents .side_school__subtitle {
    font-size: 16px;
    font-size: 114.28571%;
    font-weight: bold;
    padding: 22px;
    padding-bottom: 0;
    margin-bottom: 10px;
  }
  .side_contents .side_school__cat {
    font-weight: bold;
    padding: 0 22px;
    margin-bottom: 10px;
  }
  .side_contents .side_school__cat:before {
    font-size: 20px;
    content: "●";
    margin-right: 5px;
  }
  .side_contents .side_school__cat--sho:before {
    color: #ffb300;
  }
  .side_contents .side_school__cat--chu:before {
    color: #0277bd;
  }
  .side_contents .side_school__cat--kou:before {
    color: #6a1b9a;
  }
  .side_contents .side_school__list {
    padding-top: 0;
  }
  .side_contents .side_school__list dt {
    font-weight: bold;
    padding: 0 22px 0 39px;
    position: relative;
  }
  .side_contents .side_school__list dt:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g_down.png) 0 0 no-repeat;
    width: 9px;
    height: 5px;
    top: calc(50% - 3px);
    left: 24px;
  }
  .side_contents .side_school__list dd a {
    color: #000;
    text-decoration: none;
    width: 100%;
    display: block;
    padding: 8px 22px 8px 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
  }
  .side_contents .side_school__list dd a:before {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    left: 64px;
  }
  .side_contents .side_school__list dd a:hover {
    background-color: #f8f8f8;
  }
  .side_contents .side_btn {
    border: solid 1px #ddd;
  }
  .side_contents .side_btn a {
    color: #666;
    font-size: 17px;
    font-size: 121.42857%;
    font-weight: bold;
    text-decoration: none;
    padding: 22px;
    display: block;
    position: relative;
/*    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;*/
  }
  .side_contents .side_btn a:after {
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g.png) 0 0 no-repeat;
    width: 5px;
    height: 9px;
    top: calc(50% - 5px);
    right: 22px;
  }
  .side_contents .side_btn a:hover {
    color: #0096e0;
  }
  .side_contents .side_btn--sho a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--sho a:before {
    position: absolute;
    content: "";
    background-color: #ffb300;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_btn--chu a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--chu a:before {
    position: absolute;
    content: "";
    background-color: #0277bd;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .side_contents .side_btn--kou a {
    color: #000;
    position: relative;
  }
  .side_contents .side_btn--kou a:before {
    position: absolute;
    content: "";
    background-color: #6a1b9a;
    width: 10px;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
  }
  .sp__hide{
  	 display: none;
  }
.books_slider_link{
    position: absolute;
    top: -36px;
    right: 0;
}
.books_slider_link a{
    color: #666;
    font-size: 13px;
    font-size: 92.85714%;
    line-height: 1;
    text-decoration: none;
    background-color: #fff;
    width: 100%;
    padding: 8px 8px 8px 22px;
    border: solid 1px #ccc;
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.books_slider_link a:before{
    position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_1_blue.png) 0 0 no-repeat;
    width: 5px;
    height: 10px;
    top: calc(50% - 5px);
    left: 10px;
}
.books_slider_link .books_slider_link__side{
	text-decoration: none;
}
.books__info_outlink{
	margin: 3em 0;
}
.books__info_outlink>div:first-of-type{
	padding-bottom: 2em;
	margin-bottom: 2em;
	border-bottom: 1px solid #aaaaaa;
}
.books__info_col2{
	width: 50%;
	min-width: 300px;
}
.books__info_col2 h3{
	color: #555555;
   font-size: 18px;
   font-size: 128.57143%;
	font-weight: bold;
	line-height: 36px;
}
.books__info_col2 ul li{
	position: relative;
	padding-left: 20px;
}
.books__info_col2 ul li:before{
	content: "";
	position: absolute;
	top: 13px;
	left: 0;
	width: 8px;
	height: 8px;
	border: 1px solid rgba(0,0,0,0);
	border-top-color: #888888;
	border-right-color: #888888;
	position: absolute;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}
.books__info_col2 ul li a{
	position: relative;
	color: #666666;
	line-height: 36px;
	text-decoration: none;
	white-space: nowrap;
}
.books__info_col2 ul li a:after{
	content: "";
	width: 14px;
	height: 10px;
	position: absolute;
	right: -20px;
	top: 3px;
	background: url(/img/common/icn_window.png) center no-repeat;
	background-size: contain;
}
.side_contents .side_btn--other .side_btn__books_link{
	 font-weight: bold;
    padding: 0 22px 0 39px;
    position: relative;
	 color: #000000;
    font-size: 16px;
    font-size: 114.28571%;
	 margin-bottom: 1em;
}
.side_contents .side_btn--other .side_btn__books_link:before{
	 position: absolute;
    content: "";
    background: url(/img/common/icn_arrow_6_g_down.png) 0 0 no-repeat;
    width: 9px;
    height: 5px;
    top: calc(50% - 3px);
    left: 24px;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
.books__list .books__ranking{
	position: relative;
}
.books__list .books__ranking:after{
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
}
.books__list .books__ranking--1:after{
	content: url(/img/books/icon_ranking_01.png);
}
.books__list .books__ranking--2:after{
	content: url(/img/books/icon_ranking_02.png);
}
.books__list .books__ranking--3:after{
	content: url(/img/books/icon_ranking_03.png);
}
.books__list .books__ranking--4:after{
	content: url(/img/books/icon_ranking_04.png);
}
.books__list .books__ranking--5:after{
	content: url(/img/books/icon_ranking_05.png);
}
.books__list .books__ranking--6:after{
	content: url(/img/books/icon_ranking_06.png);
}
.books__list .books__ranking--7:after{
	content: url(/img/books/icon_ranking_07.png);
}
.books__list .books__ranking--8:after{
	content: url(/img/books/icon_ranking_08.png);
}
.books__list .books__ranking--9:after{
	content: url(/img/books/icon_ranking_09.png);
}
.books__list .books__ranking--10:after{
	content: url(/img/books/icon_ranking_10.png);
}
.books__list .books__ranking--11:after{
	content: url(/img/books/icon_ranking_11.png);
}
.books__list .books__ranking--12:after{
	content: url(/img/books/icon_ranking_12.png);
}
.books__list .books__ranking--13:after{
	content: url(/img/books/icon_ranking_13.png);
}
.books__list .books__ranking--14:after{
	content: url(/img/books/icon_ranking_14.png);
}
.books__list .books__ranking--15:after{
	content: url(/img/books/icon_ranking_15.png);
}
.books__list .books__ranking--16:after{
	content: url(/img/books/icon_ranking_16.png);
}
.books__list .books__ranking--17:after{
	content: url(/img/books/icon_ranking_17.png);
}
.books__list .books__ranking--18:after{
	content: url(/img/books/icon_ranking_18.png);
}
.books__list .books__ranking--19:after{
	content: url(/img/books/icon_ranking_19.png);
}
.books__list .books__ranking--20:after{
	content: url(/img/books/icon_ranking_20.png);
}
.books__tweet{
	padding: 15px;
	background-color: #fafafa;
}
.books__tweet iframe{
	width: 780px !important;
      max-width: 100% !important;
}
#books_genre--pc{
   display: none;
}
#books_genre2--pc{
   display: none;
}
.contents__teisei_wrap {
    padding: 40px;
    background-color: #fff;
    border: solid 1px #eee;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
  }
.contents__teisei{
	 width: 100%;
}
.contents__teisei div:nth-of-type(2){
	 max-width: 800px;
}
.contents__teisei_season{
	 width: 200px;
	 margin-top: 15px;
	 font-size: 16px;
    font-weight: bold;
    color: #666666;
}
.contents__teisei_btn{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
	 flex-wrap: wrap;
}
.contents__teisei_btn a{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: space-between;
    align-items: center;
	 width: 190px;
	 height: 60px;
	 box-sizing: border-box;
	 margin: 15px 10px 15px 0;
	 padding: 0 15px 0 20px;
	 border: 1px solid #aaaaaa;
    font-size: 18px;
    font-size: 128.57143%;
	 font-weight: bold;
}
.contents__teisei_btn a:last-of-type{
	 margin-right: 0;
}
.contents__teisei_btn a:hover{
	 border-color: #0096e0;
}
.contents__teisei_btn a:before{
	 content: "";
	 position: absolute;
	 width: 12px;
	 height: 3px;
	 top: calc(50% - 2px);
	 left: 0;
	 background-color: #aaaaaa;
}
.contents__teisei--shou .contents__teisei_btn a:before{
	 background-color: #ffb300;
}
.contents__teisei--chuu .contents__teisei_btn a:before{
	 background-color: #0277bd;
}
.contents__teisei--kou .contents__teisei_btn a:before{
	 background-color: #6a1b9a;
}
.contents__teisei_btn a.contents__teisei_btn--pdf:after{
	 content: "";
	 position: absolute;
	 width: 34px;
	 height: 34px;
	 top: calc(50% - 17px);
	 right: 15px;
	 background: url(/img/common/icon_pdf.png) center no-repeat;
	 box-sizing: border-box;
	 padding: 3px;
	 border: 1px solid #aaaaaa;
}
.contents__teisei_btn a.contents__teisei_btn--zip:after{
	 content: "";
	 position: absolute;
	 width: 34px;
	 height: 34px;
	 top: calc(50% - 17px);
	 right: 15px;
	 background: url(/img/common/icon_zip.png) center no-repeat;
	 box-sizing: border-box;
	 padding: 3px;
	 border: 1px solid #aaaaaa;
}
.books__search_info{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: space-between;
	 flex-wrap: wrap;
}
.books__search_info h3{
	 padding: 10px 0;
	 font-size: 18px;
	 font-weight: bold;
	 min-width: 50%;
}
.books__search_info .books__search_btn{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: space-between;
	 flex-wrap: wrap;
	 width: 140px;
}
.books__search_info .books__search_btn button{
	 position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 font-size: 16px;
	 font-weight: bold;
	 margin-bottom: 10px;
	 padding-left: 60px;
	 width: 140px;
	 height: 40px;
	 color: #ffffff;
	 background-color: #666666;
	 border: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;

	/* 2018.06.29 Chrome時のselectを削除 */
	outline: none;
}

.books__search_info .books__search_btn button:hover{
	 background-color: #0096e0;
}
.books__search_info .books__search_btn button.books__search_btn--active{
	 background-color: #0096e0;
}
.books__search_info .books__search_btn button:before{
	 content: "";
	 position: absolute;
	 width: 40px;
	 height: 32px;
	 left: 8px;
	 top: calc(50% - 16px);
}
.books__search_info .books__search_btn .books__search_btn--p:before{
	 background: url(/img/books/img_p-book.png) center no-repeat;
	 background-size: contain;
}
.books__search_info .books__search_btn .books__search_btn--e:before{
	 background: url(/img/books/img_e-book.png) center no-repeat;
	 background-size: contain;
}
.books__search_pager{
	 margin: 15px 0;
}
.books__search_pager p{
	 font-size: 16px;
	 margin-bottom: 10px;
}
.books__search_pager div{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 justify-content: space-between;
}
.books__search_pager div a{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
	 width: 30px;
	 height: 30px;
	 color: #000000;
	 text-decoration: none;
	 box-sizing: border-box;
	 border: 1px solid #aaaaaa;
	 font-size: 16px;
}
.books__search_pager div a.books__search_pager--active{
	color: #ffffff;
	background-color: #0096e0;
}
.books__search_pager div a:last-of-type{
	 margin-right: 0;
}
.books__search_pager div a.books__search_pager--prev1:after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(/img/books/prev1.png) center no-repeat;
}
.books__search_pager div a.books__search_pager--prev2:after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(/img/books/prev2.png) center no-repeat;

}
.books__search_pager div a.books__search_pager--next1:after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(/img/books/next1.png) center no-repeat;

}
.books__search_pager div a.books__search_pager--next2:after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(/img/books/next2.png) center no-repeat;
}
.books__search_pager div span{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	 align-items: center;
	 justify-content: center;
	 width: 30px;
	 height: 30px;
	 box-sizing: border-box;
	 font-size: 16px;
}
.books__search_pager div span:after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(/img/books/skip.png) center no-repeat;
}
.search__module{
	width: 100%;
	box-sizing: border-box;
	padding: 10px 20px;
	border: 1px solid #aaaaaa;
	margin-bottom: 25px;
}
.search__word{
	 margin-bottom: 20px;
}
.search__word h3{
	width: 200px;
	font-size: 16px;
	font-weight: bold;
}
.search__word input{
	width: 100%;
	height: 30px;
	box-sizing: border-box;
	padding-left: 0.5em;
	font-size: 20px;
	border: 1px solid #aaaaaa;
}
.search__category{
	 margin-bottom: 20px;
}
.search__category h3{
	width: 200px;
	color: #888888;
	font-size: 16px;
	font-weight: bold;
}
.search__category .search__category_radio{
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
	align-items: center;
	margin-right: 3em;
}
.search__category .search__category_radio input{
	display: none;
}
.search__category .search__category_radio label{
	position: relative;
	margin-left: 1.5em;
	font-size: 16px;
}
.search__category .search__category_radio input + label:before{
	content: "";
	position: absolute;
	display: block;
	top: calc(50% - 8px);
	left: -1.5em;
	width: 16px;
	height: 16px;
	box-sizing: border-box;
	border: 1px solid #888888;
   -webkit-border-radius: 2px;
   -moz-border-radius: 2px;
   border-radius: 2px;
}
/*.search__category .search__category_radio input:checked + label:before{
	border: none;
	background-color: #0791d8;
}*/
.search__category .search__category_radio input:checked + label:after{
	content: "";
	position: absolute;
	display: block;
	top: calc(50% - 10px);
	left: -1.5em;
	width: 20px;
	height: 10px;
	border-bottom: 3px solid #0791d8;
	border-left: 3px solid #0791d8;
	box-sizing: border-box;
   -webkit-border-radius: 2px;
   -moz-border-radius: 2px;
   border-radius: 2px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.search__submit{
	position: relative;
	width: 100%;
	text-align: center;
}
.search__submit:after{
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	left: calc(50% - 3em);
	width: 20px;
	height: 20px;
	background: url(/img/common/icn_search.png) center no-repeat;
	background-size: contain;

}
.search__submit_btn{
	display: inline-block;
	position: relative;
	width: 250px;
	max-width: 100%;
	height: 50px;
	line-height: 50px;
	box-sizing: border-box;
	padding-left: 1em;
	font-size: 22px;
	font-weight: bold;
	color: #ffffff;
	background-color: #0791d8;
	border: none;
   -webkit-border-radius: 25px;
   -moz-border-radius: 25px;
   border-radius: 25px;
}
.search__submit_btn:hover{
	background-color: #2DB3F8;
}
.search__result{
	width: 100%;
	margin: 20px 0;
	font-size: 16px;
	font-weight: bold;
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
	align-items: center;
	justify-content: space-between;
}
.search__result p{
	display: inline-block;
}
.books__movie{
	width: 100%;
}
.books__movie .topics__title{
	padding-bottom: 0;
	border-bottom: none;
	height: auto;
	min-height: 60px;
	padding-right: 1em;
}
.books__movie .topics__img{
	height: 182px;
	background-color: #cccccc;
}
.books__movie iframe{
	width: 313px;
	height: 168px;
	max-width: 100%;
	max-height: 100%;
}
.books__movie .catalog__new{
	color: #ff9100;
   display: inline-block;
   padding-right: 6px;
   margin-right: 6px;
   position: relative;
	border-right: 1px solid #aaaaaa;
   height: 1em;
   line-height: 1em;
}
.books__movie .catalog__new:after{
	content: none;
 }
.books__download_banner{
	margin: 10px;
}
.books__download_banner a:hover{
	opacity: 0.7;
}
.books__download_banner img{
	border: 1px solid #aaaaaa;
}
   
   .navi_books_sp{
      display: block;
   }
   .navi_books_sp h4{
      display: block;
      line-height: 30px;
      margin-top: -1px;
      text-align: center;
      font-weight: bold;
      color: #666;
      background-color: #eee;
      border-top: 1px solid #aaa;
      border-bottom: 1px solid #aaa;
   }
   .navi_books_sp__genre{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      padding: 10px;
      padding-bottom: 0;
   }
   .navi_books_sp__genre a{
      display: block;
      width: calc((100% - 30px) / 3);
      line-height: 30px;
      font-weight: bold;
      text-align: center;
      text-decoration: none;
      font-size: 14px;
      margin-bottom: 10px;
      color: #666;
      border: 1px solid #aaa;
      border-radius: 5px;
   }
   .navi_books_sp__cat{
      display: flex;
      justify-content: space-between;
      color: #666;
      border-top: 1px solid #aaa;
      border-bottom: 1px solid #aaa;
   }
   .navi_books_sp__cat a{
      position: relative;
      display: block;
      width: calc(100% / 3);
      line-height: 40px;
      font-size: 14px;
      font-weight: bold;
      text-align: center;
      text-decoration: none;
      background-color: #eee;
      color: #666;
      border-right: 1px solid #aaa;
   }
   .navi_books_sp__cat a:before{
      content: "";
      display: block;
      position: absolute;
      top: calc(50% - 5px);
      left: 15px;
      width: 0;
      height: 0;
      border: 5px solid transparent;
      border-left: 5px solid #000;
      
   }
   .navi_books_sp__cat a:last-of-type{
      border-right: none;
   }
}

@media all and (min-width:769px) and (max-width:1100px) {
  .header__catch{
	 display: none;
  }
}

/* -------------------------------------------------------------
印刷設定
--------------------------------------------------------------*/
@media print {
	body {
		min-width: 1200px;
	}
  .school_list__wrap .school_list__box2{
   width: calc(50% - 12px);
	box-sizing: border-box;
  }
}
