@charset "utf-8";
/* CSS Document */

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Geneva, Arial;
  letter-spacing: 1px;
  line-height: 1.5;
  color: #656565;
}
.clear {
  clear:both;
}
p {
  overflow:hidden;
  margin-bottom: 15px;
}
h1 {
  margin-bottom: 20px;
}

header {
  background:#fff;
}


nav {
  background-color: #505050;
  border-color: #e7e7e7;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
  color: #ccc;
/*  opacity: 0.8;*/
  -webkit-transition: background .5s ease-out;
  -moz-transition: background .5s ease-out;
  -o-transition: background .5s ease-out;
  transition: background .5s ease-out;
}
.navbar {
  min-height:inherit;
  margin-bottom:0;
}
header.navbar {
/*  border-bottom:1px solid #ddd;*/
  min-height:inherit;
}

.navbar-nav > li > a {
  padding-top:5px;
  padding-bottom:7px;
  font-size:12px;
padding-right: 11px;
	padding-left: 11px;
  display: inline-block;
}
.navbar-nav > li > a {
  /* IE 8 */
  line-height:6px\9;
}
.navbar-nav > li > a:not(:target) {
  /* IE 9 / 10 */
  line-height: 20px\9;
}

.navbar-nav > li > a.btn-success {
    padding: 2px 12px;
    margin: 3px 0;
	    color: #fff !important;
}
.navbar-nav > li > a.btn-success:hover {
	background: #449d44;
}
.second-navbar {
  padding-top:32px;
}

.second-navbar.company {
  padding-top:0;
}
.second-navbar p {
  padding-top:28px;
}
.navbar-nav.navbar-right {
  padding-top: 21px;
}
.second-navbar .btn-group.btn-group-justified {
  padding-top: 21px;
}
.second-navmenu .btn {
    border: 0px solid transparent;
    border-radius: 0px;
}
.second-navmenu .dropdown-menu {
    border: 0px solid transparent;
    border-top: 1px solid #ccc;
    border-radius: 0px;
    margin: 0px 0px 0px 0px;
}
.login-menu {
    padding-top: 21px;
}

.login-menu.mobile {
	display:none;
}
/* ad-nav_追加 */
.ad .btn.btn-default {
  padding: 6px 2px;
}
.ad .nav.navbar-nav > li > a {
  font-size: 14px;
  background-color: inherit;
  text-decoration: none;
}

.navbar-nav.navbar-right:last-child {
  margin-right:0;
}

.navbar-brand {
  height:auto;
}
.nav > li > a {
  color:#FFF;
}
.nav > li > a:hover, .nav > li > a:focus {
  text-decoration: underline;
  background-color: #fff;
  color:#2a6496;
}
.navbar-nav > .active > a {
  background-color: #fff;
  color: #2a6496;
}
.second-navbar > .nav > li > a {
  color: #009CE0;
}
.navbar-toggle {
  background-color: #232323;
}
.navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-collapse {
  max-height: none;
}
.navbar-form {
  margin-bottom:0px;
  margin-top:2px;
}
.input-sm.header-search {
  padding:2px;
  height: auto;
  border: solid 1px #6c6c6c;
    width: 120px;

  -webkit-transition: background .5s ease-out;
  -moz-transition: background .5s ease-out;
  -o-transition: background .5s ease-out;
  transition: background .5s ease-out;

}
.btn-sm, .btn-group-sm > .btn.header-search {
  padding:1px 4px;
  vertical-align: top;
}
.list {
  padding-bottom: 40px;
}
.list:last-child {
  padding-bottom:0;
}
section {
  margin-bottom:30px;
  clear:both;
  overflow:hidden;
}
section:last-child {
  margin-bottom:0;
}
#arena {
    margin-bottom: 30px;
}
.info {
  border:#ccc 1px solid;
  padding: 22px 15px 22px 15px;
  margin-bottom: 30px;
  overflow:hidden;
  background-color: #f2f2f2;
}
.info h2 {
  border-bottom:#CCC 1px solid;
  font-size:14px;
  margin:0 0 15px;
}
.info ul {
  list-style:none;
  margin:0;
  padding:0;
  font-size:13px;
}
.info li {
  margin:0 0 10px;
  padding:0;
  line-height: 1.5em;
  height: 3em;
  overflow: hidden;
}
.info li:last-child {
  margin-bottom:0;
}
.info li:hover {
  background-color: #ffffff;
}

.news{
  border:#ccc 1px solid;
  padding: 20px 15px 20px 15px;
  overflow:hidden;
}

.date {
  background:#f2f2f2;
  padding:2px 3px 2px 3px;
  font-size:10px;
  margin-right:8px;
  border-radius:2px;
}

.date_news{
  background:#99ccff;
  color:#ffffff;
  padding:2px 3px 2px 3px;
  font-size:11px;
  margin-right:8px;
  border-radius:2px;
}

span.new {
  background:#C00;
  color:#FFF;
  padding:2px 3px 2px 3px;
  font-size:10px;
  margin-left:8px;
  border-radius:2px;
}
span.new:after {
  content: "New";
}

.ranking {
  position: relative;
  display: table;
  table-layout: fixed;
  width:100%;
}
.ranking .item {
  display:table-cell;
  vertical-align:bottom;
  float:none;
}
.ranking_1 {
  background: url(../img/ranking_icon.png) no-repeat;
  width:33px;
  height:26px;
  margin:3px auto 0;
}
.ranking_2 {
  background: url(../img/ranking_icon.png) no-repeat -37px;
  width:33px;
  height:26px;
  margin:3px auto 0;
}
.ranking_3 {
  background: url(../img/ranking_icon.png) no-repeat -73px;
  width:33px;
  height:26px;
  margin:3px auto 0;
}
.ranking_4 {
  background: url(../img/ranking_icon.png) no-repeat -109px;
  width:33px;
  height:26px;
  margin:3px auto 0;
}
.ranking_5 {
  background: url(../img/ranking_icon.png) no-repeat -146px;
  width:33px;
  height:26px;
  margin:3px auto 0;
}
.icon_MZ a {
  color: #C70000;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.icon_CZ a {
  color: #385289;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.icon_EZ a {
  color: #000;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.icon_YZ a {
  color: #7BBA39;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.icon_RZ a {
  color: #FF7F00;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.icon_EC a {
  color: #F2AD00;
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  text-decoration: none;
  letter-spacing: 0px;
  margin-left:5px;
}
.column {
  margin-top: 1em;
}
.column li, .media li {
  margin-bottom:10px;
  border-bottom:1px dotted #CCC;
  padding-bottom:10px;
}
.column li:last-child, .media li:last-child {
  margin-bottom:0;
}
.logo {
  margin-top:30px;
}
.panel-group .panel {
  border-radius: 0px;
}
.panel {
  background-color: #FFFFFF;
  border: 1px solid #CCC;
  border-radius: 0px;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.05);
  margin-bottom: 15px;
}
.panel-heading {
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}
#myCarousel {
  margin-bottom: 15px;
}
.carousel-indicators {
  bottom:0;
}
.carousel-caption {
  bottom:0;
/*  opacity: 0.8;
  background-color: #232323;
*/
  width: 100%;
  left: 0%;
  padding-top: 10px;
  padding-bottom: 25px;
  right: 0%;

  background-color: rgba(35,35,35,0.7);
  -ms-filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#B2232323,EndColorStr=#B2232323);
  filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#B2232323,EndColorStr=#B2232323);
}
/* for IE9 */
.carousel-caption:not(:target){
  filter: none;
  -ms-filter: none;
}
.newbooks {
  padding-left:15px;
  padding-right:15px;
}
.slick-slider {
  margin-bottom:0;
}
.slick-track {
  position: relative;
  display: table;
  table-layout: fixed;
  width:100%;
}
.slick-initialized .slick-slide {
  display: table-cell;
  vertical-align: bottom;
  float:none;
}
.slick-slide a {
  display:block;
  padding-left: 15px;
  padding-right: 15px;
}
.slick-prev:before, .slick-next:before {
  color:#666
}
.slick-next {
  right: 0;
}
.slick-prev {
  left: 0;
}
.search {
  background:#ececec;
  border-radius:4px;
  padding:15px;
  overflow:hidden;
  clear:both;
}
.search .form-group {
  margin-bottom:0;
}
.path {
  color: #999999;
  font-size: 12px;
  list-style: none outside none;
  margin: 0px 0px 20px;
  padding: 0px 0px 5px;
}
.path > li {
  display: inline-block;
}
.paging {
  border-bottom: 1px solid #CCCCCC;
  padding-top: 15px;
  text-align: right;
  font-size: 13px;
  margin-bottom: 15px;
}
.paging_number {
  margin: 8px 5px 0 0;
  float:left;
  font-size:12px;
}
.pagination {
  border-radius: 4px;
  display: inline-block;
  margin: 0 0 30px;
  padding-left: 0;
}
.nav.nav-tabs.condition {
  border-bottom:none;
}
.nav.nav-tabs.condition a {

  padding: 5px;
}
.nav.nav-tabs.condition .active a {
  border:none;
}
h1 {
    font-size:23px;
    padding: 0 0 5px 0;
    margin-top: 0px;
    border-bottom: 2px solid #ccc;
}
h2 {
  border-bottom:1px solid #ccc;
  font-size:18px;
  padding: 0 0 5px 0;
  font-weight: bold;
  margin-top: 0px;
}
h3 {
  font-size:16px;
  padding: 0 0 19px 0px;
  margin:0;
  line-height: 1.3em;
  font-weight:bold;
}
h4, .h4 {
    font-size:16px;
}
.textWrapper a:hover {
  text-decoration: underline;
}
.textWrapper h3 {
  font-size: 14px;
  padding: 0 0 19px 0px;
  margin:0;
  line-height: 1.5;
  font-weight:bold;
}
.textWrapper p {
  font-size: 13px;
  margin-bottom:5px;
}
.textWrapper {
  overflow:hidden;
}
.textWrapper .author {
  font-weight: bold;
}
.textWrapper .price {
  color: #FE8D3F;
  padding: 0 0 5px 4px;
  margin-bottom:0;
}
.table.table-bordered tr th {
  background:#ececec;
}
.book {
    /*  border: 1px solid #7F7F7F;*/
  margin-right:10px;
    -webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.3);
    -moz-box-shadow: 0 1px 4px rgba(0,0,0,0.3);
    box-shadow: 0 1px 4px rgba(0,0,0,0.3);
    margin-bottom:4px;
    margin-left: 4px;
    margin-top: 4px
}
.netshop {
  background:#f2f2f2;
  border-radius:4px;
  padding:15px;
}
.netshop .seshop {
  margin-bottom:5px;
}
.netshop .row.seshop .col-sm-6.col-xs-12 .btn {
  font-size:12px;
  letter-spacing: 0px;
}
.netshop h5 {
  margin-top:20px;
}

.netshop .label {
  font-weight: normal;
}

.netshop li {
	margin-bottom:10px;
}

.netshop .btn-sm {
    padding: 5px 5px;
    font-size: 11px;
}

.netshop .row {
    margin-bottom: 10px;

}
.netshop .row:last-child{
    margin-bottom: 0;
}

.netshop .btn-parts-group {
  margin-bottom: 20px;
}
.netshop .btn-group:nth-last-of-type(n+2) {
  margin-bottom: 6px;
}


h2 .links ul {
  margin-top:0px;
  font-weight:normal;
  padding-left:0;
}
.links ul {
  list-style:none;
  margin-top:15px;
  margin-bottom:0;
}
.links li {
  padding: 0 0 0 8px;
  white-space: nowrap;
  background: url(../img/arrow_blue.gif) no-repeat 0px 7px;
  font-size:13px;
  display: inline
}
.border {
  border-bottom:1px dotted #CCC;
  margin-bottom:15px;
}
.border:last-child {
  margin-bottom:0;
}
.bookmark {
  padding: 0 0 0 0;
  margin-bottom: 27px;
}
.nav.nav-tabs li a {
  color: #428BCA;
}
.nav.nav-tabs li a:hover {
  background:#ececec;
}
#homeTab, #homeTab1 {
  margin-bottom: 30px;
}
.tabs-below > .nav-tabs {
  border-top: 1px solid #ddd;
}
.tabs-below .nav.nav-tabs > li > a {
    border: 1px solid #ddd;
    border-top-color: transparent;
    color: rgba(80,80,80,1);
    padding: 4px;
}


.tabs-below > .nav-tabs > li {
  margin-top: -1px;
  margin-bottom: 0;
}

.tabs-below > .nav-tabs > li > a {
  -webkit-border-radius: 0 0 4px 4px;
     -moz-border-radius: 0 0 4px 4px;
          border-radius: 0 0 4px 4px;
}

.tabs-below > .nav-tabs > li > a:hover,
.tabs-below > .nav-tabs > li > a:focus {
  border-top-color: #ddd;
  border-bottom-color: transparent;
}

.tabs-below > .nav-tabs > .active > a,
.tabs-below > .nav-tabs > .active > a:hover,
.tabs-below > .nav-tabs > .active > a:focus {
  border-color: transparent #ddd #ddd #ddd;
}



.badge-danger {
  background-color: #D9534F;
}
.badge-warning {
  background-color: #f0ad4e;;
}
.article h2 {
  border-bottom:none;
  font-size:18px;
  font-weight:bold;
  margin-bottom:20px;
}
.article p {
  margin-bottom:20px;
}
.booklist {
  border:#CCC 1px solid;
  padding:15px;
  margin-top:30px;
  margin-bottom:30px;
}
#social {
  overflow: hidden;
}
#social ul {
  list-style:none;
  margin-top:10px;
  overflow:hidden;
  padding-left:0;
}
#social li {
  display:inline;
  float: left;
        margin-left: 1rem;
}
#social li:last-child {
}
#social li img {
    width: 25px;
    height: 25px;}
#social li a {
    transition: opacity 0.2s;
}

#social li a:hover {
  opacity: 0.8;
}
#social  iframe {
  margin: 0 !important;
}

li.bookmark {
margin-bottom: 10px;
    margin-top: 10px;
}

li.bookmark a {
    display: block;
    color: #F29200;
    text-decoration: none;
    cursor: pointer;
}
li.bookmark .balloon {
	position: relative;
	background: #ffffff;
	border: 1px solid #F29200;
    font-size: 11px;
    line-height: 11px;
    padding: 5px 5px 4px;
    display: inline-block;
}
li.bookmark .balloon:after, li.bookmark .balloon:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
li.bookmark .balloon:after {
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #ffffff;
	border-width: 4px;
	margin-top: -4px;
}
li.bookmark .balloon:before {
	border-color: rgba(242, 146, 0, 0);
	border-right-color: #F29200;
	border-width: 5px;
	margin-top: -5px;
}

li.bookmark .balloon:hover , li.bookmark .balloon.selected {
	position: relative;
	background: #F29200;
	border: 1px solid #F29200;
    color: #fff;
}
li.bookmark .balloon:hover:after, li.bookmark .balloon:hover:before , li.bookmark .balloon.active:after, li.bookmark .balloon.selected:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

li.bookmark .balloon:hover:after , li.bookmark .balloon.selected:after  {
	border-color: rgba(242, 146, 0, 0);
	border-right-color: #F29200;
	border-width: 4px;
	margin-top: -4px;
}
li.bookmark .balloon:hover:before , li.bookmark .balloon.selected:before {
	border-color: rgba(242, 146, 0, 0);
	border-right-color: #F29200;
	border-width: 5px;
	margin-top: -5px;
}

.bookmark-icon::before {
  color: #F29200;
font-family: "Font Awesome 5 Free";
  font-weight: 400;
  content: "\f02e";
  margin-right: .2em;
  display: inline-block;
}
.bookmark-icon:hover::before {
  color: #F29200;
font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f02e";
  margin-right: .2em;
  display: inline-block;
}
.bookmark-icon.selected::before {
  color: #F29200;
font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f02e";
  margin-right: .2em;
  display: inline-block;
}

dl.dl-horizontal.list {
  font-size: 13px;
   margin-bottom: 15px;
    overflow: hidden;
  padding-bottom:0;
}
.dl-horizontal.list dt {
  width:4.3em;
  font-weight:normal;
}
.dl-horizontal.list dd {
    margin-left: 4.3em;
}

dl.dl-horizontal.detail {
  font-size: 14px;
   margin-bottom: 15px;
    overflow: hidden;
  padding-bottom:0;
}
.dl-horizontal.detail dt {
  width:5.6em;
  font-weight:normal;
}
.dl-horizontal.detail dd {
  margin-left: 4.3em;
}

.format {
	border: #CCC 1px solid;
padding:10px;
margin-top: 15px;
margin-bottom: 15px;
border-radius: 4px;
}

.format h4 {
	margin:0 0 10px 0;
    font-size: 14px;
}

.format ul {
    padding-left: 15px;
    margin-bottom: 0;
}

.format ul li {
    margin-bottom: 5px;
}
.format ul li:last-child{
    margin-bottom: 0;
}
footer {
  background-color: #F2F2F2;
  color: #999999;
  padding: 0 0 20px;
  font-size:13px;
  margin-top:30px;
}

footer .link {
  background: #505050;
  /*padding-top:20px;*/
  margin-bottom:20px;
}

footer a {
  color: #fff;
}
footer a:hover {
  color: #fff;
}
footer ul {
  list-style:none;
  margin-bottom:18px;

  padding:0;
}
footer li {
  line-height: 1.2;
margin: 0 5px 8px 0;
  padding-right: 5px;
  white-space: nowrap;
  font-size: 12px;
}
footer .copyright {
  font-size:10px;
}
footer form {
  margin-bottom:15px;
}
footer h2 {
  font-size: 14px;
    margin-top:20px;
}
.support_link {
  margin-bottom:10px;
}
.accordion-group, .accordion-button.first {
  margin-top:10px;
}
.accordion-heading {
  background-color: #e9e9e9;
  border-radius: 2px;
  cursor: pointer;
  font-size: 13px;
  display:block;
}
.accordion-heading a {
  display:block;
  color: #505459;
  padding: 10px 15px;
}
.accordion-heading a:hover {
  color: #505459;
}

.support_link .accordion-inner ul {
  padding: 10px 0;
  margin-bottom:10px;
}
.support_link .accordion-inner li {
  margin-bottom:10px;
  border-bottom:1px dotted #ccc;
  padding: 0px 5px 10px;
}
.support_link .accordion-inner li:last-child {
  margin-bottom:0;
}
.support_link .accordion-inner li a {
  display:block;
  color: #505459;
}

#page-top {
  bottom: 20px;
  font-size: 20px;
  position: fixed;
  right: 20px;
}
#page-top a {
  background: none repeat scroll 0 0 #666666;
  border-radius: 5px;
  color: #FFFFFF;
  display: block;
  padding: 10px 0;
  text-align: center;
  text-decoration: none;
  width: 50px;
}
#page-top a:hover {
  background: none repeat scroll 0 0 #999999;
  text-decoration: none;
}
.well {
  box-shadow:none;
  font-size:16px;
}
.callbacks_container {
    float:none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    margin-bottom: 0px;
}
.btn-amazon {
    background:  url(/assets/img/amazon.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}
.btn-shoeisha {
    background: url(/assets/img/btn-shoeisha.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}
.btn-rakuten {
    background:  url(/assets/img/rakuten.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}

.btn-yodobashi {
    background:  url(/assets/img/yodobashi.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}

.btn-honto {
    background:  url(/assets/img/honto.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}

.btn-7net {
    background:  url(/assets/img/7net.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}

.btn-sanseido {
    background:  url(/assets/img/sanseido_logo.png) no-repeat;
    width:16px;
    height: 16px;
    display: inline-block;
    position: relative;
    top: 2px;
}

.btn-category {
  background-color: #d9edf7;
  border-color: #bce8f1;
    color: #31708f;
}

.btn-category:hover {
    background-color: #9CD0EA;
    
}

.btn-primary.active {
    background: #337ab7;
    box-shadow:none;
}

.navbar-brand img[width="70"]{
max-width: 70px\9;
}

/* 追加 */
img {
  max-width:100%;
}

article {
    word-wrap: break-word;
}

/*bookトップページキャンペーン用*/

.thumbnail.campaign {
	border-radius:0;
	padding:0;
	border:none;
}
.thumbnail.campaign p{
	margin-bottom:0;
	font-size:12px;
}
.thumbnail.campaign .caption {
	padding:2px;/*
	min-height:4em;*/
}
.thumbnail.campaign figure {
	background: #505050;
}
.thumbnail.campaign figure img {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.thumbnail.campaign figure:hover img {
	opacity: .5;
}

.bo-sns {
}

#errata td{
	word-wrap: break-word;

}
/*ログインモーダル*/
.modal-header {
    overflow: hidden;
	padding:10px 15px;
}
.modal-header h4.modal-title {
    background: rgba(0, 0, 0, 0) url("/assets/img/logo/logo-seid.png") no-repeat scroll left center;
	background-size:120px auto;
    float: left;
    margin-bottom: 0;
    padding-bottom: 5px;
    padding-left: 138px;
    padding-top: 0;
}
.modal-header .logo {
    float: right;
    margin-right: 5px;
}

.modal-header .closebox {
    color: #000000;
    float: right;
    font-size: 20px;
    font-weight: bold;
    line-height: 20px;
    opacity: 0.2;
    text-shadow: 0 1px 0 #ffffff;
}

.form-group {
    margin-bottom: 10px;
}

/*gridのgutter調整*/
.row-0 {
  margin-left: 0px;
  margin-right: 0px; }
  .row-0 > div {
    padding-right: 0px;
    padding-left: 0px; }
.row-5 {
  margin-left: -2.5px;
  margin-right: -2.5px; }
  .row-5 > div {
    padding-right: 2.5px;
    padding-left: 2.5px; }


.row-10 {
  margin-left: -5px;
  margin-right: -5px; }
  .row-10 > div {
    padding-right: 5px;
    padding-left: 5px; }

.row-20 {
  margin-left: -10px;
  margin-right: -10px; }
  .row-20 > div {
    padding-right: 10px;
    padding-left: 10px; }

.row-30 {
  margin-left: -15px;
  margin-right: -15px; }
  .row-30 > div {
    padding-right: 15px;
    padding-left: 15px; }

.row-40 {
  margin-left: -20px;
  margin-right: -20px; }
  .row-40 > div {
    padding-right: 20px;
    padding-left: 20px; }

/*iframe 埋め込み用	*/
.iframe-wrap {
  position: relative;
  width: 100%;
  padding-top: 120%;
  margin-left: auto;
  margin-right: auto;
}
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}


.frame {
	background: #fff;
	overflow: scroll;
	height: 20em;
	padding: 15px;
}

 @media (min-width: 1200px) {
.fivecolumns .col-md-2, .fivecolumns .col-sm-2, .fivecolumns .col-lg-2 {
  width: 20%;
 *width: 20%;
}
.support_link {
  display:none;
}
.container {
  width:982px;
}
header .navbar-header.mobile {
  display:none;
}
/*.thumbnail.campaign .caption {
	min-height:4em;
}*/
}
@media (min-width: 1024px) {
	.fivecolumns .col-md-2, .fivecolumns .col-sm-2, .fivecolumns .col-lg-2 {
  width: 20%;
 *width: 20%;
}
.support_link {
  display:none;
}
header .navbar-header.mobile {
  display: none;
}
/*
.thumbnail.campaign .caption {
	min-height:6em;
}
*/
}
 @media screen and (max-width: 979px) {
/* 979px以下用（タブレット用）の記述 */

  .fivecolumns .col-md-2, .fivecolumns .col-sm-2, .fivecolumns .col-lg-2 {
  width: 20%;
 *width: 20%;
}

.navbar {
  min-height:inherit;
}
.navbar-nav {
  margin: 0 -15px;
}
.navbar-nav > li > a {
  padding: 6px 5px;
}

.second-navbar {
  padding-top:46px;
}
.grid {
  padding-bottom: 40px;
  overflow:hidden;
}
.grid:last-child {
  padding-bottom:0;
}
.pull-left.book {
  margin-right:10px;
}
.book {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:10px;
}
.eventbanner {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:10px;
}
.companybanner {
  display:none;
}
.booklist {
  margin-bottom: 15px;
}
.search .form-control {
  margin-bottom: 5px;
}
.navbar-brand {
  padding-top:10px;
  padding-bottom:8px;
}

.login-menu {
    padding-top: 0;
}
header .navbar-header.mobile {
  display:none;
}
.support_link {
  display:none;
}
.info li {
  height:auto;
}
.navbar-form {
	width: 150px;
    padding: 0;
}/*
.thumbnail.campaign .caption {
	min-height:6em;
}
*/

}
@media screen and (max-width: 767px) {
/* 767px以下用（タブレット／スマートフォン用）の記述 */

body {
  padding-top: 0px;
}
header.navbar {
  border-bottom: 1px solid #ccc;
  min-height: inherit;
  margin-bottom:15px;
}
.navbar-fixed-top {
  top:auto;
}
.navbar-fixed-top, .navbar-fixed-bottom {
   position: inherit;
  }
.nav.nav-tabs.qa {
  margin: -6px;
}
.nav > li > a {
  padding-left: 8px;
  padding-right: 8px;
}

.navbar-nav > li > a {
  display: block;
}

header .navbar-header.mobile {
  display: inherit;
}
.second-navbar {
  display:none;
}

.second-navbar.company {
  display:inherit;
  width:50%;
  float:left;
}
.second-navbar.company .col-sm-10 {
  display:none;
}
.second-navbar.company .second-navmenu {
  display:  block;
}
.second-navbar .btn-group.btn-group-justified {
   padding: 7px 0;
}

.fivecolumns .col-md-2, .fivecolumns .col-sm-2, .fivecolumns .col-lg-2 {
  width: 20%;
 *width: 20%;
}
.container.second-navbar .navbar-header {
  display: inherit;
}
.navbar {
  border: none;
  min-height: inherit;
}
header .navbar-header.mobile.company {
  display: inherit;
  width:50%;
  float:left;
}
.support_link {
  display: inherit;
}
/*
table-responsive を使用するため ここは display:block;にしない

.table.table-bordered tr th {
  display:block;
  border:none;}
  .table.table-bordered tr td {
  display:block;
  border:none;}
 */
.dl-horizontal.list dt , .dl-horizontal.detail dt {
    float: left;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .navbar-nav .open .dropdown-menu {
    background: #FFF;
    font-size:12px;
  }

 .media-object {

    display: block;
    margin-left: auto;
    margin-right: auto;
  margin-bottom:5px;
}

.netshop .row.seshop .col-sm-6 {
   padding-left: 15px;
    padding-right: 15px;
}

.netshop .row.seshop .col-sm-6  {
  margin-top: 5px;
}
.netshop .row.seshop .col-sm-6:first-child {
  margin-top:0;
}


.navbar-form {
	width:auto;
    padding: 10px 15px;
}
.login-menu.mobile {
    padding-top: 0;
	padding-bottom:6px;
	display:inherit;
}
.footer-show-popover {
    background-color: #333;
    color: #fff !important;
}
.footer-hide-popover {
    background-color: initial !important;
    color: #337ab7 !important;
    text-decoration: none !important;
}

li.bookmark .balloon:hover{
	position: relative;
	background: #fff;
	border: 1px solid #F29200;
    color: #F29200;
}
    li.bookmark .balloon:hover:after {
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #ffffff;
	border-width: 4px;
	margin-top: -4px;
}
li.bookmark .balloon:hover:before {
	border-color: rgba(242, 146, 0, 0);
	border-right-color: #F29200;
	border-width: 5px;
	margin-top: -5px;
}
.bookmark-icon:hover::before {
  color: #F29200;
font-family: "Font Awesome 5 Free";
font-weight: 900;
  content: "\f097";
  margin-right: .2em;
  display: inline-block;
}
li.bookmark .balloon.selected {
    position: relative;
    background: #F29200;
    border: 1px solid #F29200;
    color: #fff;
}
.bookmark-icon.selected::before {
    color: #F29200;
font-family: "Font Awesome 5 Free";
font-weight: 900;
    content: "\f02e";
    margin-right: .2em;
    display: inline-block;
}
li.bookmark .balloon.selected:after {
    border-color: rgba(242, 146, 0, 0);
    border-right-color: #F29200;
    border-width: 4px;
    margin-top: -4px;
}

li.bookmark .balloon.selected:before {
    border-color: rgba(242, 146, 0, 0);
    border-right-color: #F29200;
    border-width: 5px;
    margin-top: -5px;
}
    .btn-category { 
        margin-bottom: 1rem;
        
        }
}

@media screen and (max-width: 568px) {
	.hidden-sp {
		display: none !important;
	}
}

@media screen and (max-width: 479px) {
/* 479px以下用（スマートフォン用）の記述 */
  body {
  padding-top: 0px;
}
header.navbar {
  border-bottom: 1px solid #ccc;
  min-height: inherit;
}
.navbar-fixed-top {
  top:auto;
}

.ranking {
  display:  inherit;
  table-layout: inherit;
  width: auto;
}
.ranking .item {
  display: inherit;
  margin-bottom:30px;
}
.fivecolumns .col-md-2, .fivecolumns .col-sm-2, .fivecolumns .col-lg-2 {
  width: auto;
 *width: auto;
}

/*bookトップページキャンペーン用*/
.campaign .fivecolumns .col-xs-6 {
	width:50%;}
.campaign .row.fivecolumns.list .col-xs-6{
	margin-bottom:10px;
}

.campaign .row.fivecolumns.list .col-xs-6:nth-child(even){
	padding-left:5px

}
.campaign .row.fivecolumns.list .col-xs-6:nth-child(odd){
	padding-right:5px;

}

.support_link {
  display: inherit;
}
.dl-horizontal.list dt , .dl-horizontal.detail dt{
    width: auto;
    overflow: inherit;
    clear:  none;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.dl-horizontal.list dt , .dl-horizontal.detail dt , .dl-horizontal.list dd , , .dl-horizontal.detail dd{
    width:auto;
    margin-top:5px;
}

.dl-horizontal.list dd , .dl-horizontal.detail dd {
    margin-left:0;
}
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
    border:none;
    background:#ececec;
    text-decoration:none;
}
.nav-tabs > li > a {
    border-radius: 4px;
      border: none;
}
.nav-tabs > li > a:hover {
  border-color: #ececec #ececec #ececec;
}

	.visible-xs .newbooks {
		padding-left: 30px;
    padding-right: 30px;
	}
.visible-xs .slick-slide img{
	max-height:none;
}
	
	.visible-xs .slick-prev:before, .visible-xs .slick-next:before {
		    font-size: 30px;
	}
	.visible-xs .slick-prev, .visible-xs .slick-next {
		width: 30px;
	}
	
	.visible-xs .slick-slide a {
    padding-left: 10px;
    padding-right: 10px;
}
#errata .table-responsive .errta-table{
  width:auto;
}
/* 検索BOX */
.search-box {
  margin-top: 10px;
  display: none;
}
.sp-search-box {
  display: block !important;
  margin: 0 14px;
}

}

/* toppage slide_nav override */
a.callbacks_nav {
    transition: opacity 1.0s ease;
    opacity: 0;
}
a.callbacks_nav:hover {
    transition: opacity 1.0s ease;
    opacity: 0.5;
}
/* bootstrap button override */
.btn-default, .dropdown-menu > li > a {
    color: #656565;
}

.ms-tabs-template {
  font-family:inherit;
}
.ms-tabs .ms-thumb {
  padding: 20px 40px 20px 20px;
}
.ms-tabs-template .ms-thumb-frame h3 {
    font-weight: bold;
    font-size: 14px;
    padding-bottom: 10px;
}
.media {
  margin-bottom:2.5em;
}

.media > .pull-left {
  margin-right:20px;
}

/* tablet screen */
@media screen and (min-width: 767px) and (max-width: 984px) {
    .col-sm-7 { width: 50%; }
    .col-sm-5 { width: 50%; }
}

/* for print */
@media print {
 a[href]:after {
    content: "";
  }
}


.footer-menu{
 position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #fff;
	z-index:999999;
	text-align:center;
	font-size:12px;
	border-top: 1px solid #eee;
}
.footer-menu .container {
	padding-left: 0;

padding-right: 0;

}

.footer-menu a {
	display:block;
	padding:5px 0;
}

.footer-menu a:hover {
	background-color:#333;
	color:#fff;
}

.footer-popover {
  position:fixed;
}

/* iphone safari */
.i-footer-popover {
  position: sticky;
  position: -webkit-sticky;
  bottom: 58px;
  top: auto;
  width: 169px;
}

.row.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.row.no-gutters > [class^="col-"],
.row.no-gutters > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
}
.splus-image-gallery-item img {
  margin: 0 auto;
}
#splus-ga-main-image {
  max-height: 100%;
  max-width: 100%;
}
.splus-ga-main-image-block figure.zoom {
  background-repeat: no-repeat;
}
.splus-ga-main-image-block figure .zoomable {
  cursor: zoom-in;
}
.splus-ga-main-image-block figure.zoomedin {
  background-position: 50% 50%;
  position: relative;
  width: 100%;
  overflow: hidden;
  cursor: zoom-out;
}
.splus-ga-main-image-block figure.zoomedin img {
  /* transition: opacity .5s; */
  cursor: zoom-out;
  display: block;
  width: 100%;
}
.splus-ga-thumbnail-inner {
  width: 75px;
  height: 75px;
  margin-right: 10px;
  margin-bottom: 10px;
  float: left;
}
.splus-ga-thumbnail {
  width: 100%;
  height: 100%;
  border: 2px solid #ddd;
}
.splus-ga-thumbnail.selected {
  border: 2px solid #e47911!important;
}
.splus-book-image-list {
  margin-top: 10px;
}
.splus-book-image-list img {
  max-width: 60px;
  max-height: 40px;
}

.splus-book-image-list .lazyload, .splus-book-image-list .lazyloading {
	opacity: 0;
	min-height: 32px;
}

.splus-list-block {
  background-color: #d9f4f7;
  padding: 14px;
  margin: 1rem 0;
  border: 1px #ccc solid;
}
.splus-card {
  display: flex;
  justify-content: space-between;
}
.splus-card .splus-card-item {
  width: 30%;
}
.splus-card .splus-card-item-4 {
  width: 24%;
}
.splus-card-headline {
  padding: 8px 0 0 0;
}
.splus-card-item-body p {
  margin-top: 1rem;
}
@media (max-width:480px) {
  .splus-card {
      flex-wrap: wrap;
  }
  .splus-card .splus-card-item {
    width: 100%;
  }
}

.sp-image-gallery {
  margin-bottom: 40px;
}
.sp-gallery img {
  max-height: 180px;
}
.lazyloaded {
  opacity: 1;
  transition: opacity 200ms;
}
/* splus content */
/** errata */
#errata .pick-print{
  display:none;
}
#errata h4{
  font-weight:bold;
    margin: 0 0 20px 0;
}
#errata .errata-table-wrapper{
  display:none;
}
#errata .errata-table-wrapper h4{
  font-weight:bold;
      margin-top: 10px;
    margin-bottom: 10px;
}
#errata .errata-not-found{
  display:none;
}
#errata .errata-apology{
}
#errata .errata_table_wide{
  clear:both;
}
#errata .current_type span,
#errata .current_print_num span
{
  font-weight:bold;

}
#errata p.current_type{
    margin-bottom: 10px;
}
/** errata終 */

h2.cl-head {
  border-bottom: 2px solid #ccc;
  padding: 0 0 5px 0;
}
.cl-block-button {
  width: 80%;
}
.cl-block {
  margin-top: 30px;
}
.cl-back {
  background-color: #f6f6f6;
  padding: 20px;
}
@media screen and (max-width:480px) {
  .cl-block-button {
    display: block;
    width: 100%;
  }
  .cl-button-module {
    margin-top: 10px;
  }
}

/* ダウンロードファイルが複数ある時のリスト */
ul.download-file-list-active li:nth-child(n+4) {
  display: list-item;
}
ul.download-file-list-inactive li:nth-child(n+4) {
  display: none;
}

/* copyrightのQA */

.question_txt {
    position: relative;
    padding: 10px 12px;
    box-sizing: border-box;
    color: #464646;
    border-left: solid 50px #666666;
    background: #F6f6f6;
}
.question_txt:before {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -35px;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "Q";
    font-family: sans-serif;
    color: #FFF;
    font-size: 1.8rem;
    line-height: 1;
    font-style: italic;
	font-weight: bold;
}
.question_txt p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}
.answer_txt {
    position: relative;
    padding: 10px 12px;
    box-sizing: border-box;
    color: #666666;
    border-left: solid 50px #fff;
    background: #fff;
}
.answer_txt:before {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -35px;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "A";
    font-family: sans-serif;
    color: #FFF;
    font-size: 1.8rem;
    line-height: 1;
    font-style: italic;
    color: #666666;
	font-weight: bold;
}
.answer_txt p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}
.qablock {
    position: relative;
    margin-bottom: 20px;
    border: 1px solid #EFEFEF;
}
	.maru {
		background: url("/assets/img/maru.png") no-repeat center;
		background-size:contain;
	}
	.batu {
		background: url("/assets/img/batu.png") no-repeat center;
		background-size:contain ;
	}
	.sankaku {
		background: url("/assets/img/sankaku.png") no-repeat center;
		background-size: contain;
	}


/*レビュー*/
.review {
	
border: #CCC 1px solid;
    padding: 15px;
    margin-top: 50px;
    margin-bottom: 30px;
	overflow: hidden;
	
}
.review .list {
	padding:0;
	border-bottom: 1px solid #dddddd;
	margin-bottom: 15px;
}
.review .date {
	font-size: 10px;
	background: none;
	padding: 0;
	margin: 0;
}
.review h3{
	padding: 0;
}

.review .logo {
	margin-bottom: 15px;
	margin-top: 0;
}

@media screen and (max-width: 767px) { 
	.review {
    margin-top: 40px;
	
}
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid #e8e5dd;
    border-radius: 0;
	margin-bottom: 1rem;
	    border-top: 2px solid #208bac;
}
.card-title {
    margin-bottom: 0.5rem;
	font-weight: 700;
	font-size: 16px;
}

.card-body {
    flex: 1 1 auto;
    padding: 1rem 1rem;
}
.card-footer {
    background: #fff;
    padding: 1rem 1rem 0 1rem;
	line-height: 4rem;
	border-top: 1px solid #e8e5dd;
}
.card .icon {
    margin-right: 0.3rem;
}