body{
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3",HiraginoSansCustom,"Hiragino Sans",Meiryo,"メイリオ",Osaka,sans-serif,system-ui;
	}
	iframe{display: block;}
	.sprite-ebook {
		background-image: url(https://s.yimg.jp/images/bookstore/ebook/web/content/img/pc/sprite.png);
		background-position: 0px 0px;
		background-repeat:no-repeat;
		width: 136px;
		height: 37px;
	}
	.sprite-yahoo {
		background-image: url(https://s.yimg.jp/images/bookstore/ebook/web/content/img/pc/sprite.png);
		background-position: 0px -40px;
		background-repeat:no-repeat;
		/*background-size:108px auto;*/
		width: 92px;
		height: 26px;
	}
	
	
	.sprite-ebook-20th {
	  background-image: url(https://s.yimg.jp/images/bookstore/ebook/web/content/img/pc/20th/sprite.png);
	  background-position: 0px 0px;
	  width: 186px;
	  height: 37px;
	}
	
	
	.header {
		-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
		box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
		background-color: #fff;
		width: 100%;
		position: relative;
		padding-bottom:0;
	}
	.header__inner {
		position: relative;
		width:100%;
		padding-left:0;
	}
	.header__sitelogo {
		padding: 15px 0 11px 15px;
	}
	.header__sitelogo .sprite-ebook,.header__sitelogo .sprite-ebook-20th {
		display: block;
		overflow: hidden;
		text-align: left;
		text-indent: 100%;
		white-space: nowrap;
		margin-top: -3px;
	}
	.header__shortcut {
		position: absolute;
		top: 13px;
		right: 15px;
	}
	.header__shortcut-item {
		float: left;
		margin-top: 5px;
		margin-right: 18px;
		position: relative;
	}
	.header__shortcut-item i {
		color: #676566;
		font-size: 24px;
		line-height: 1;
	}
	.header__shortcut-item .bag-badge {
		background-color: #f8485e;
		border-radius: 50%;
		display: block;
		height: 6px;
		position: absolute;
		top: 0;
		right: 0;
		width: 6px;
	}
	.header__shortcut-item .font-mypage {
		display: inline-block;
		overflow: hidden;
		position: relative;
		text-align: left;
		text-indent: 100%;
		white-space: nowrap;
		width: 1.2em;
	}
	.header__shortcut-item .font-mypage:before {
		position: absolute;
		top: 0;
		left: -1.1em;
	}
	.header__shortcut-item .font-shelf {
		display: inline-block;
		overflow: hidden;
		position: relative;
		text-align: left;
		text-indent: 100%;
		white-space: nowrap;
		width: 1.2em;
	}
	.header__shortcut-item .font-shelf:before {
		position: absolute;
		top: 0;
		left: -1.1em;
	}
	.header__shortcut-item .font-bag {
		display: inline-block;
		overflow: hidden;
		position: relative;
		text-align: left;
		text-indent: 100%;
		white-space: nowrap;
		width: 1.2em;
	}
	.header__shortcut-item .font-bag:before {
		position: absolute;
		top: 0;
		left: -1.1em;
	}
	.header__shortcut-item .sprite-yahoo {
		margin-top: 0;
		display: block;
		overflow: hidden;
		text-align: left;
		text-indent: 100%;
		white-space: nowrap;
	}
	.header__shortcut-item:last-child {
		margin-right: 0;
	}
	.header__search {
		margin-left: -17.89%;
		position: absolute;
		top: 14px;
		left: 50%;
		width: 45%;
	}
	.header__search .input-box {
		float: left;
		width: 340px;
	}
	.header__search .input-box input {
		caret-color: #f8485e;
		outline: 0;
		padding-left: 2.5em;
	}
	 .header__search .input-box input::-webkit-input-placeholder {
	 color: #ccc;
	 text-align: center;
	}
	 .header__search .input-box input::-moz-placeholder {
	 color: #ccc;
	 text-align: center;
	}
	 .header__search .input-box input:-ms-input-placeholder {
	 color: #ccc;
	 text-align: center;
	}
	.header__search .input-box .font-search {
		font-size: 18px;
		margin-top: -0.7em;
		position: absolute;
		top: 55%;
		left: 12px;
	}
	.header__search .input-box .search-suggest {
		margin: 0 10px;
		position: absolute;
		width: 320px;
		/*.input-boxのwidth340px - 左右マージン20px*/
		z-index: 5;
	}
	.header__search .input-box__text {
		background-color: #f6f6f6;
		border: 0px;
		border-radius: 20px;
		position: relative;
	}
	.header__search .btn-search {
		float: left;
		font-size: 15px;
		line-height: 1;
		margin-left: 4px;
		padding: 8px 23px;
	}
	
	.footer {
	  background-color: #fafafa;
	  color: #555;
	  font-size: 11px;
	  width: 100%;
	  overflow: hidden;
	  margin-top:0;
	  padding: 0 0 20px;
	  text-align: center;
	}
	
	.footer address {
	  font-size: 12px;
	}
	
	.footer h3 {
	  color: #333;
	  font-size: 15px;
	  font-weight: bold;
	  margin: 15px auto 16px;
	}
	
	.footer__about {
	  color: #f8485e;
	  font-size: 12px;
	}
	
	.footer__txt {
	  font-size: 11px;
	  line-height: 1.5;
	  margin-bottom: 28px;
	}
	
	.footer__link {
	  font-size: 10px;
	  margin: 20px -10px 20px 0;
	}
	
	.footer__link:after {
	  clear: both;
	  content: "";
	  display: block;
	}
	
	.footer__link li {
	  display: inline-block;
	  margin: 8px 10px 0 0;
	}
	
	.footer__link li a {
	  color: #555;
	  text-decoration: none;
	}
	
	.footer__abj {
	  margin-bottom: 20px;
	}
	
	.footer__abj img {
	  display: inline-block;
	  margin-right: 10px;
	  vertical-align: bottom;
	}
	
	.footer__abj .footer__txt {
	  display: inline-block;
	  text-align: left;
	  width: calc(100% - 350px);
	}
	
	li.fb{margin-left:10px;}
	
	.ft-sns{
		display: grid;
		grid-template-columns: repeat(auto-fit,38px);
		grid-column-gap: 20px;
	
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	
		margin-bottom: 30px;
		padding-top: 30px;
	}
	.ft-sns__item img{
		max-width: 100%;
		vertical-align: bottom;
	}
	
	.breadcrumb{padding:10px 23px ;background:#fff;font-weight:300;}
	.breadcrumb,.breadcrumb  a {color:#999;font-size:12px;}
	.breadlist a {text-decoration:none;}
	.breadlist a:hover{opacity:.7}
	.breadlist a:after {content: ">";margin-left: .8em; margin-right: 1em;}
	.breadcrumb span {font-size:12px;color:#999;}
	
    /*------------------
    sns2
    --------------------*/
    .sns2 {
        background: #eee;
        padding: 6px 0;
        position: relative;
    }

    .sns2 .snsul {
        display: flex;
        justify-content: space-between;
        margin: 0 auto;
        width: 170px !important;
    }

    .sns2 .snsul li.tw a{
        font-size: 0;
    }

 /*------------------
    sns3
    --------------------*/
    .sns3 {
        background: #eee;
        padding: 6px 0;
        position: relative;
    }

    .sns3 .snsul {
        display: flex;
        justify-content: space-between;
        margin: 0 auto;
        width: 170px !important;
    }

    .sns3 .snsul li.tw a{
        font-size: 0;
    }
   .sns3 .snsul li.tw {padding-top:1px;}

/*------------------ 
JSOFFモジュール
--------------------*/
 .noscript-contents-wrapper {
   min-width: 950px;
   max-width: 100%;
   margin: 10px 20px;
 }
 .noscript-contents {
   padding: 15px;
   font-size: 13px;
   color: #333;
   text-align: center;
   background: #fff2f2;
   border-radius: 12px;
 }
 .noscript-contents__message {
   margin-bottom: 5px;
   font-weight: bold;
 }
 .noscript-contents__alert {
   color: #f00;
 }
 .noscript-contents .underline {
   color: inherit;
   text-decoration: underline;
 }