@charset "utf-8";

/*---- 初期設定 ----*/

@import url(reset.css);

* {
  box-sizing: border-box;
}
a{
	text-decoration: none;
}
body{
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	line-height: 1.8;
}
.mincho{
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,
	"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
/*---- 版用スタイル ----*/
.hide{
	display:none;
}
.left{
	text-align: left;
}
.center{
	text-align: center;
}
.right{
	text-align: right;
}
.red{
	color:#f00;
}
.bld{
	font-weight:bold;
}
.wrap{
	width:1000px;
	margin:auto;
	position: relative;
}
.fs26{ font-size:26px;line-height: 1.4;}
.fs24{ font-size:24px;line-height: 1.4;}
.fs22{ font-size:22px;line-height: 1.4;}
.fs20{ font-size:20px;line-height: 1.4;}
.fs18{ font-size:18px;line-height: 1.4;}
.fs16{ font-size:16px;}
.fs14{ font-size:14px;}
.fs12{ font-size:12px;}

.btn{
	text-align: center;
	margin-bottom:30px;
}
.btn a{
	border:solid 1px #354935;
	padding:10px 120px 10px 100px;;
	color:#354935;
	font-size:16px;
	
	background:url('../images/common/ico_blank2.png') top 12px right 100px no-repeat;
}
.flex{
	display: flex;
	justify-content: space-between;
}
.paB20{
	padding-bottom:20px;
}
/* ========================================================
	共通ヘッダー
	======================================================== */

header{
	background-color:#354935;
	padding:20px 0;
	height:100px;
}

header h1{
	width:320px;
	float:left;
}
header nav{
	padding-top:10px;
}
header li{
	display: inline-block;
	margin-right:16px;
}
header li a{
	color:#fff;
	font-size:16px;
}
header li a.blank{
	background:url('../images/common/ico_blank.png') center right no-repeat;
	padding-right:20px;
}
/* 会社案内の左にセパレータ */
header li.sep-l::before{
	content: '|';
	color:#fff;
	margin:0 16px 0 0;
}
/* 検索フォーム */
header li.search{
	margin-right:0;
	position: relative;
}
header li.search #searchform{
	padding:10px 40px 10px 20px;
	width:270px;
	font-size:14px;
}
header li.search #searchbtn {
    border: 0;
    background: none;
    position: absolute;
    right: 6px; top: 0;
    display: block;
    width: 40px;
    height: auto;
    overflow: hidden;
    white-space: nowrap;
    z-index: 1;
    padding:8px 0 0;
}
/* ========================================================
	共通ナビゲーション
	======================================================== */
#global{
	border-bottom:solid 1px #354935;
}
#global ul{
	display: flex;
	border-left:solid 1px #354935;
}
#global li{
	width:25%;
	text-align: center;
	border-right:solid 1px #354935;
}
#global li a{
	display:block;
	width:100%;
	color:#354935;
	padding:14px;
}
#global li a:hover,
#global li.active a{
	border-bottom:solid 2px #354935;
	padding-bottom:12px;
}
#global li span{
	padding:2px 0 4px 30px;
}
#global li.new span{
	background:url('../images/common/menu-new.png') top left no-repeat;
}
#global li.wadai span{
	background:url('../images/common/menu-wadai.png') top left no-repeat;
}
#global li.bunko span{
	background:url('../images/common/menu-bunko.png') top left no-repeat;
}
#global li.search span{
	background:url('../images/common/menu-search.png') top left no-repeat;
	padding-left:36px;
}


/* ========================================================
	共通フッター
	======================================================== */
footer{
	background-color:#354935;
	padding:20px 0 ;
	color:#fff;
	position: relative;
}
footer ul{
	margin-bottom:20px;
	width:100%;
}
footer li{
	display:inline-block;
	font-size:14px;
	margin-right:20px;
}
footer li a{
	color:#fff;
}
footer .site-id{
	font-size:24px;
}
footer .copy{
	font-size:12px;
	text-align: center;
}
footer .contact{
	position: absolute;
	top:10px;
	right:0;
}
footer .contact a{
	border:solid 1px #ffffff;
	padding:10px 30px;
}
footer li.sep-l::before{
	content: '|';
	color:#fff;
	margin:0 16px 0 0;
}
footer #pagetop{
	position: fixed;
	bottom:70px;
	right:40px;
	z-index:10;
}
/* ========================================================
	TOPページ
	======================================================== */

/* スライド
--------------------------- */
#slide{
	height:500px;
	background:url('../images/top/top_bk.jpg') bottom center repeat-x;
		background-size:1400px;
}
#slide h2{
	position: absolute;
	top:45px;
	right:315px;
}
#slide .books{
	padding:125px 0 0 140px;
}
#slide .books li{
	height:240px;
	display:inline-block;
	text-align: center;
}
#slide .books li img{
	/* height:230px;
	width:auto; */
	height: auto;
	width: 160px;
	border:solid 1px #888;
	filter: drop-shadow(5px 5px 3px rgba(0,0,0,0.4));
}
#slide .books li img.banner{
	height:230px;
	width: 800px;
	z-index:1000;
}
#slide .books .slick-next{
	position: absolute;
	top:200px;
	right:0;
	cursor: pointer;
}
#slide .books .slick-prev{
	position: absolute;
	top:200px;
	left:80px;
	cursor: pointer;
}
#slide .usagi{
	position: absolute;
	top:220px;
	left:-70px;
}
#slide button{
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#slide .slick-dots {
  text-align: center;
}
#slide .slick-dots li {
  display: inline-block;
  margin: 0 10px;
}
#slide .slick-dots li button {
  position: relative;
  text-indent: -9999px;
}
#slide .slick-dots li button:before {
  content: '●';
  color:#384b38;
  font-size: 20px;
  text-indent: 0px;
  position: absolute;
  top: 0;
  left: 0;
}
#slide .slick-dots li.slick-active button:before {
  color:#b5c5ba;
}
/* TOP BANNER
--------------------------- */
#top-banner ul{
	margin:30px auto;
	display:flex;
	justify-content: space-between;
}
/* 特設
--------------------------- */
#future {
	margin-bottom:30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#future a{
	color:#000;
}
#future .item-box{
	width:487px;
	border:solid 1px #354935;
	margin-bottom:20px;
}
#future .item-box .item-ttl{
	margin:20px 30px;
	border-bottom:solid 1px;
	font-weight: bold;
	padding-bottom: 10px;
	/* letter-spacing:-0.1em; */
}
#future .item-box .item-txt{
	margin:0 30px 20px;
	font-size:14px;
}
#future .release{
    padding: 2px 7px 0;
    color: #fff;
    display: inline-block;
    line-height: 1.4;
    margin-bottom: 10px;
	background-color: #da1168;
	font-weight: normal;
}
/* TOPICS
--------------------------- */
#topics h2{
	text-align: center;
	padding-bottom:20px;
}
#topics dl{
	border-bottom:solid 1px #354935;
	margin-bottom:30px;
}
#topics dd{
	padding:20px 30px;
	border-top:solid 1px #354935;
	background:url('../images/top/tp-close.png') right 20px top 20px no-repeat;
	cursor: pointer;
}
#topics dd.open{
	background:url('../images/top/tp-open.png') right 20px top 20px no-repeat;
}
#topics dd span{
	color:#aaa;
	padding-right:20px;
}
#topics dd.bgnone{
	background:none;
}
#topics dd.bgnone a{
	color:#000;
}
#topics dd.bgnone + dt{
	display: none!important;
}
#topics dt{
	padding:20px 30px;
	border-top:solid 1px #ccc;
}
#sns{
	text-align: center;
	margin-bottom:30px;
}
#sns img{
	vertical-align: baseline;
}
.aniv a{
	display: inline-block;
	margin-bottom:50px;
	color:#354935;
	font-size:18px
}
/* 告知
--------------------------- */
.notice h3{
	font-size:18px;
	text-align: center;
	margin-bottom:10px;}
.notice{
	margin:20px 0;
	border:1px solid #999;
	padding:20px 40px;
}
.notice .date{text-align:right;} 
/* ========================================================
	下層ページ
	======================================================== */
.page main h1{
	font-size:24px;
	padding:20px 20px 20px 40px;
	color:#354935;
	border-bottom:solid 1px #354935;
}
.page main h2{
	font-size:16px;
	color:#354935;
}
/* カテゴリ別タイトル画像 */
.book_new main h1{
	background:url('../images/common/menu-new.png') 0 26px no-repeat;
}
.book_wadai main h1{
	background:url('../images/common/menu-wadai.png') 0 29px no-repeat;
}
.book_bunko main h1{
	background:url('../images/common/menu-bunko.png') 0 26px no-repeat;
}
.book_detail main h1{
	background:url('../images/common/menu-bunko.png') 0 26px no-repeat;
}
.book_search main h1{
	background:url('../images/common/menu-search.png') 0 26px no-repeat;
}
.cmpny main h1{
	background:url('../images/common/ico-cmpny.png') 0 26px no-repeat;
}
.policy main h1{
	background:url('../images/common/ico-policy.png') 0 26px no-repeat;
}
.cmnt main h1{
	background:url('../images/common/ico-cmnt.png') 0 26px no-repeat;
}
/* ページ共通マージン */
main .inner{
	padding:40px 0;
	overflow: hidden;
}
/* 2カラム共通
--------------------------- */
.page main #left-column{
	width:250px;
	float:left;
}
.page main #right-column{
	width:670px;
	margin-left:330px;
	position: relative;
}
.page main #bottom-column{
	margin:30px 0;
	border-top:solid 2px #354935;
	padding:20px 0;
}
/* 本を探す
--------------------------- */
.book_search main form table{
	width:100%;
	margin-bottom:30px;
}
.book_search main form td{
	padding:30px;
	border-bottom:solid 1px #ccc;
}
.book_search main input[type="text"]{
	width:80%;
	padding:10px;
}
.book_search main input[type="submit"]{
	border-style: none;
	background-color: #354935;
	color:#fff;
	padding:20px;
	text-align: center;
	width:40%;
	font-size:16px;
	cursor: pointer;
}
.book_search main .inner > h2{
	color:#354935;
	font-size:20px;
	padding-bottom:20px;
	border-bottom:solid 1px #ccc;
	margin:30px 0;
}
.book_search main li{
	padding:10px 0;
	font-size:16px;
}
.book_search main a{
	color:#354935;
}
.book_search #left-column p{
	margin-bottom:20px;
}
.book_search #left-column input[type="text"],
.book_search #left-column input[type="submit"]{
	width:100%;
	padding:10px;
}

/* 検索結果
--------------------------- */
#left-column .year li a,
#left-column .year li span{
	display:block;
	text-align: center;
	background-color:#e7ede7;
	color:#354935;
	border-bottom:solid 1px #354935;
	padding:8px;
	cursor: pointer;
}
#left-column .year li.active a{
	background-color:#354935;
	color:#fff;
}
#left-column .year li li a{
	background-color:#fff;
	color:#354935;
}
#right-column .pager{
	display: flex;
	justify-content: center;
	margin-bottom:20px;
}
#right-column .pager li a{
	background-color:#dcdcdc;
	padding:4px 10px;
	margin:0 10px 0 0;
	color:#354935;
}
#right-column .pager li.active a{
	background-color:#354935;
	color:#fff;
}
#right-column .pager li span{
	padding:4px 10px;
	margin:0 10px 0 0;
}
#right-column .books{
	border-top:solid 1px #354935;
	padding:20px 0;
}
#right-column .intro{
	border-bottom:solid 1px #354935;
	padding:20px 0;
}
#right-column .intro a{
	color:#000;
}
#right-column .intro .image{
	width:190px;
	overflow: hidden;
}
#right-column .intro .image img{
	border:solid 1px #888;	
}
#right-column .intro .srl{
	font-size:14px;
}
#right-column .intro .ttl{
	font-size:20px;
	font-weight:bold;
	letter-spacing:-0.02em;
}
#right-column .intro .sub{
	font-size:16px;
	letter-spacing:-0.02em;
}
#right-column .intro .auth{
	color:#354935;
	margin:10px 0;
}
#right-column .intro .text{
	font-size:12px;
}

/* 書籍詳細
--------------------------- */
#book-head,#book-body{
	overflow: hidden;
}
/* 書影 */
#book-head #bookimg{
	width:250px;
	float:left;
	text-align: center;
	height:192px;
	margin-bottom:30px;
}
#book-head #bookimg img{
	height:192px;
	border:solid 1px #888;
}
/* タイトル、著者、75文字 */
#book-head .book-data{
	width:670px;
	margin-left:330px;
	height:192px;
	margin-bottom:30px;
}
#book-head .book-data a{
	color:#000;
}
#book-head .book-data .sral{
	font-size:14px;
}
#book-head .book-data .ttl{
	font-size:26px;
	font-weight:bold;
	letter-spacing:-0.02em;
}
#book-head .book-data .sub{
	font-size:16px;
	letter-spacing:-0.03em;
}
#book-head .book-data .auth{
	color:#354935;
	margin:10px 0;
}
#book-head .book-data .sum{
	font-size:15px;
}
/* データ */
#book-body #bookdetail{
	width:250px;
	float:left;
}
#book-body #bookdetail table{
	font-size:13px;
	border-top:solid 1px #354935;
	margin-bottom:30px;
}
#book-body #bookdetail tr td{
	padding:3px 0;
	border-bottom:solid 1px #354935;
}
#book-body #bookdetail .itm{
	font-weight:bold;
}

/* 著者情報 */
#book-body #bookauthor{
	width:670px;
	margin-left:330px;
	border-top:solid 1px #354935;
	padding-top:20px;
}
#book-body #bookauthor .itm{
	color:#354935;
	background:url('../images/book_search/ico-auther.png') top left no-repeat;
	padding-left:20px;
}
#book-body #bookauthor .itm2{
	font-size:14px;
	margin-bottom:20px;
}
#book-body a.mail{
	display: block;
	text-align: center;
	border:solid 1px #354935;
	padding:6px;
	color:#354935;
}
#book-body a.mail span{
	background:url('../images/book_search/letter.png') 0 2px no-repeat;
	padding-left:26px;
}
/* 備考 */
#bottom-column .afi-ttl{
	background:url('../images/book_search/ico-cart.png') 0 2px no-repeat;
	padding-left:26px;
	color:#354935;
	font-weight:bold;
	margin-bottom:3px;
}
#bottom-column .afi-link{
	margin-bottom: 20px;
}
#bottom-column .afi-link li{
	display: inline-block;
	margin-right:4px;
	font-size:13px;
}
#bottom-column .afi-link li a{
	display: block;
	text-align:center;
	color:#354935;
	border:solid 1px #354935;
	padding:2px 46px 2px 20px;
	background:url('../images/common/ico_blank2.png') top 6px right 24px no-repeat;
}

/* 話題の本
--------------------------- */
.book{
	border-bottom:solid 1px #888;
	padding-bottom:20px;
	margin-bottom:20px;
	overflow: hidden;
	position: relative;
}
.book figure{
	float:left;
}
.book figure a{
	position: absolute;
	top:0; left:0; right:0; bottom:0;
}
.book figure img{
	width:133px;
	border:solid 1px #888;
}
.book .bookdetail{
	margin-left:220px;
}
.book .bookdetail h2{
	font-size:30px;
	color:#481719;
	margin-bottom:20px;
	line-height: 1.2;
}
.book .bookdetail .srl{

}
.book .bookdetail .ttl{
	color:#333;
	font-size:22px;
	font-weight:bold;
}
.book .bookdetail .sub{
	font-size:16px;
	letter-spacing: -0.08em;
}
.book .bookdetail .auth{
	font-size:14px;
}
.book_wadai #left-column h2 a{
	color:#354935;
}
.book_wadai #left-column ul{
	border-top:solid 1px #354935;
	font-size:14px;
	margin-bottom:30px;
}
.book_wadai #left-column li{
	border-bottom:solid 1px #354935;
}
.book_wadai #left-column li a{
	display:block;
	color:#000;
	padding:16px 0;
}
.book_wadai #left-column .btn{
	color:#354935;
	display: block;
	text-align: center;
	padding:10px;
	border:solid 1px #354935;
	font-size:12px;
	background:url('../images/common/ico_blank2.png') top 32px right 24px no-repeat;
}
.book_wadai #right-column h2{
	font-size:30px;
	color:#481719;
	margin-bottom:20px;
	padding-top:30px;
	line-height: 1.4;
}
.book_wadai #right-column .book{
	position: relative;
}
.book_wadai #right-column .bookdetail{
	position: absolute;
	bottom:30px;
	left:-30px;
}
.book_wadai #right-column #booktxt h3{
	margin:20px 0;
}
.book_wadai #right-column #booktxt p{
	margin-bottom:20px;
}
.book_wadai #right-column #bookauthor{
	position: relative;
	top:0;
	margin:30px 0;
	border-top:solid 1px #666;
	padding-top:30px;
}
.book_wadai #right-column #bookauthor h3{
	margin-bottom:20px;
}
.book_wadai #right-column #bookauthor > div{
	margin-bottom:20px;
}
.book_wadai #right-column #foot-link ul{
	display: flex;
	justify-content: space-around;
}
.book_wadai #right-column #foot-link ul li{
	width:310px;
}
.book_wadai #right-column #foot-link ul li a{
	color:#354935;
	display: block;
	text-align: center;
	padding:10px;
	border:solid 1px #354935;
}
.book_wadai #right-column #foot-link ul li a[target="_blank"]{
	background:url('../images/common/ico_blank2.png') top 16px right 26px no-repeat;
}
.book_wadai #right-column #bottom-column{
	border-top:none;
	background-color: #d9ebda;
	padding:30px;
}
/* 会社案内
--------------------------- */
.cmpny main h2{
	font-size:20px;
}
.cmpny main dl{
	margin-bottom:30px;
	font-size:16px;
}
.cmpny main dl dt{
	width:60px;
	float:left;
	padding:10px 0;
}
.cmpny main dl dd{
	border-bottom:dotted 1px #000;
	padding:10px 0 10px 150px;
}
.cmpny main .wide dt{
	width:200px;
}
.cmpny main .wide dd{
	padding:10px 0 10px 220px;
}
.cmpny main #map{
	width:100%;
	height:370px;
	margin-bottom:30px;
}
/* メール */
.cmpny main .wide.mail{
	margin:30px 0;
	font-size:18px;
}
.cmpny main .wide.mail dt{
	width:240px;
	padding:20px 0;
}
.cmpny main .wide.mail dd{
	padding:20px 0 20px 240px;
}
.cmpny main .wide.mail input[type="text"]{
	font-size:18px;
	width:60%;
}
.cmpny main .wide.mail select{
	font-size:18px;
}
.cmpny main .wide.mail input.age{
	width:60px;
}
.cmpny main .wide.mail textarea{
	font-size:18px;
	width:60%;
	height:200px;
}
.cmpny main .submit{
	margin:30px auto 50px;
	text-align: center;
}
.cmpny main .submit input{
	border-style: none;
	background-color: #354935;
	color:#fff;
	padding:16px;
	text-align: center;
	width:30%;
	font-size:16px;
	cursor: pointer;
	margin:20px;
}
/* プライバシーポリシー
--------------------------- */
.policy main p{
	margin-bottom:10px;
}
.policy main ol{
	margin:30px;
}
.policy main ol li{
	list-style-type:decimal;
	margin-left:20px;
	margin-bottom:10px;
}
/* 求人
--------------------------- */
.cmpny.recruit main dl dt{
	width:150px;
	float:left;
	padding:10px 0;
}
/* 404
--------------------------- */
.unknown #slide h3{
	padding-top:80px;
	color:#354935;
}
.unknown #slide p{
	margin-top:40px;
	line-height: 2.5;
}
.unknown #slide p a{
		color:#354935;
}
.unknown .greenarea {
	background:#354935;
	height: 100px;
}

/* 補足
--------------------------- */
/* .supply #slide{height:600px;} */
.supply_bg{background-color: #e8e4e1;padding:100px 0; }
.supply_bg .cont{text-align:center;width:1000px;margin:0 auto;background: #fff;padding:80px 50px;}
.supply_bg .cont h3{margin-bottom:50px;}
.supply_bg .cont p{margin-top:0;line-height:2.5;}
.dl_btn{background-color: #cbdccb; padding: 20px 60px; margin: 40px; display: inline-block;}
.dl_btn a{color:#384b38;}
.dl_btn:hover{cursor:pointer;background-color: #b4ceb4;}
.ico_pdf{
	background:url('../images/common/ico_pdf.png') center right no-repeat;
	padding-right:30px;
}