@charset "utf-8";
/* CSS Document */

/* 初期化[全体]
-------------------------------------------------------------------- */
/*基本*/
html, body, p, div, article, section, aside, tr, td, th, form, input, textarea, select, h1, h2, h3, h4, h5, h6, h7, hr{
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6, h7 {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5em;
}
table, tr, td, th{
	word-break: break-all;
}

/*テーブル*/
table{
	margin: 0;
}

/*インライン*/
img, span, strong{
	border: none;
	margin: 0;
}
img{
	vertical-align: text-bottom;
	height: auto;
}
em {
	font-style: normal;
	font-weight:normal;
}

/*リスト*/
ul, ol, dl, dd, dt, li{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

/* PC SP 切替
-------------------------------------------------------------------- */
.pc { display: inline-block;}
.pcCont { display: block;}
.sp,.spCont { display: none;}

@media only screen and (max-width: 768px) {
	body {
		min-width: 320px;
	}
	img{
		width: auto;
		max-width: 100%;
	}
	.pc,.pcCont { display: none;}
	.sp { display: inline-block;}
	.spCont { display: block;}
}

/* 基本[共通]
-------------------------------------------------------------------- */
html {
	font-size: 62.5%;
}
@font-face {
  font-family: "YuGothic M";
  src: local(Yu Gothic Medium);
}
body{
	color: #000000;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "YuGothic M", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Helvetica,Arial,Verdana,"sans-serif";
	font-size: 1.4em;
	line-height: 1.5em;
}
a{
	color: #008599;
	text-decoration: underline;
}
a:hover{
	opacity: 0.7;
	text-decoration: none;
}
a img{
	border: none;
}
a img:hover{
	opacity: 0.7;
}

/* 明朝体指定 */
.block .title,
.storyBox .textBox .readText,
.reviewBox .content .ttl,
.reviewBox .content dt,
.trialBox .content .text dt.ttl {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* 影 */
.bookBox .detail .image img,
.book02Box .content .detail .image img,
.reviewBox .content dt span img {
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}



/* コンテンツ[レイアウト]
-------------------------------------------------------------------- */
/* 共通 */
.wrapper {
	margin: auto;
	box-sizing: border-box;
}
.inner,
.content {
	width: 800px;
	margin: auto;
	box-sizing: border-box;
}
.contentArea {
	margin: auto;
	box-sizing: border-box;
}

/* コンテンツ共通 */
.block {
	margin-top: 60px;
}
.block .title {
	width: 800px;
	text-align: center;
	margin-bottom: 40px;
	margin-left: auto;
	margin-right: auto;
    background: url("../images/title_bg.png") no-repeat center center;
    min-height: 112px;
    padding-top: 56px;
    box-sizing: border-box;
}
.block .title span {
    font-size: 3.0rem;
    font-weight: bold;
    background: #fff000;
    padding: 0 3px;
    display: inline-block;
    line-height: 1.2em;
}
.block .text p {
	margin-bottom: 10px;
}
.block .text p:last-of-type {
	margin-bottom: 0px;
}

/* ヘッダー */
.headerArea {
}
.headerArea .headGoHome {
	text-align: left;
	padding-top: 10px;
}
.headerArea .image {
	padding: 0;
    max-width: 1074px;
    min-width: 800px;
    margin: auto;
}
.headerArea .image img {
    width: 100%;
}


/* フッター */
.footerArea {
	text-align: center;
	padding: 40px 0 0 0;
	color: #ffffff;
}
.footerArea .goTop {
	padding: 20px;
}
.footerArea .footerBox {
	padding: 20px;
	border-top: 1px solid #bfbfbf;
	border-bottom: 1px solid #bfbfbf;
}
.footerArea .goIndex a {
	background: url(../images/go_index_arrow.png) no-repeat left center;
	background-size: auto 14px;
	color: #000000;
	padding-left: 15px;
	font-size: 1.6rem;
	text-decoration: none;
}
.footerArea .goIndex img {
	height: 15px;
	width: auto;
}
.footerArea .copy {
	background-color: #000000;
	padding: 10px;
	color: #ffffff;
}

/* SNS */
.snsArea {
	display: block;
	text-align: center;
	margin: auto;
	padding: 20px 0;
}
.snsArea ul {
	display: inline-block;
	vertical-align: middle;
}
.snsArea li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 2px;
}

/* 書籍 */
.bookBox {
}
.bookBox .content {
	padding: 30px;
	display: block;
}
.bookBox .detail {
	width: 100%;
}
.bookBox .detail .image {
}
.bookBox .detail .image img {
	width: 100%;
	height: auto;
}
.bookBox .detail .text {
	white-space: nowrap;
}
.bookBox .detail .text dl {
    margin-top: 10px;
}
.bookBox .detail .text dl dt {
	margin-bottom: 10px;
}
.bookBox .detail .text dl dt em {
	font-size: 1.8rem;
	display: block;
	font-weight: bold;
}
.bookBox .detail .text dl dt span {
	font-size: 1.4rem;
	font-weight: bold;
}
.bookBox .detail .text dl dd {
	margin-bottom: 10px;
}
.bookBox .detail ul {
	display: block;
}
.bookBox .detail ul li {
	display: block;
	margin-top: 10px;
	font-size: 0;
	width: 100%;
}
.bookBox .detail ul li a {
	display: block;
	width: 100%;
	font-size: 1.4rem;
	padding: 10px;
	text-align: center;
	color: #000000;
    font-weight: bold;
	text-decoration: none;
	box-sizing: border-box;
	background: #fff000;
}

.book02Box {
	text-align: center;
    border-top: 1px solid #bfbfbf;
    padding-top: 80px;
}
.book02Box .content {
	display: table;
	width: 800px;
}
.book02Box .content .detail {
	display: table-cell;
	vertical-align: top;
	width: 200px;
}
.book02Box .content .detail .image {
	width: 200px;
}
.book02Box .content .detail .image img {
	max-width: 100%;
	height: auto;
}
.book02Box .content .text {
	margin: 10px 0 0 0;
	padding-left: 30px;
	display: table-cell;
	vertical-align: top;
}
.book02Box .content .text dl {
	text-align: left;
}
.book02Box .content .text dl dt {
	margin-bottom: 10px;
}
.book02Box .content .text dl dt em {
	font-size: 2.0rem;
	font-weight: bold;
	display: block;
}
.book02Box .content .text dl dt span {
	font-size: 1.4rem;
	font-weight: bold;
	display: block;
}
.book02Box .content ul {
	display: block;
	font-size: 0;
	margin-top: 40px;
}
.book02Box .content ul li {
	display: inline-block;
}
.book02Box .content ul li a {
	display: block;
	background: #fff000;
	padding: 10px;
	text-align: center;
	margin-right: 10px;
	color: #000000;
    font-weight: bold;
	text-decoration: none;
	width: 250px;
	box-sizing: border-box;
	font-size: 1.6rem;
}
.book02Box .content .text {
	text-align: left;
}
.book02Box .content .text .txt {
	margin-top: 10px;
}

/* ナビ */
.navArea {
	text-align: center;
	width: 100%;
	margin: auto;
	background: #392f2d;
	padding: 20px 0;
}
.navArea ul {
	font-size: 0;
	text-align: center;
	width: 800px;
	margin: auto;
	display: table;
	table-layout: fixed;
    border-left: 1px solid #ffffff;
}
.navArea ul li {
	font-size: 1.6rem;
    font-weight: bold;
	text-align: center;
	display: table-cell;
    vertical-align: middle;
	box-sizing: border-box;
    border-right: 1px solid #ffffff;
}
.navArea ul li a,
.navArea ul li p {
	box-sizing: border-box;
	text-decoration: none;
	width: 100%;
	line-height: 1.2em;
	color: #ffffff;
	display: table;
}
.navArea ul li p {
    opacity: 0.2;
}
.navArea ul li span {
	display: table-cell;
	vertical-align: middle;
}
.navArea ul li span.comingsoon {
	font-size: 1.1rem;
}
.navArea ul li a:hover {
	opacity: 0.6;
}

/* 内容紹介 */
.storyBox .content:after {
    content:" ";
    display:block;
    clear:both;
}
.storyBox .textBox {
    float: right;
    width: 560px;
	font-size: 1.6rem;
	line-height: 1.6em;
}
.storyBox .bookBox {
    float: left;
    width: 200px;
}
.storyBox .textBox .readText {
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.5em;
}
.storyBox .textBox dl dt {
	margin-top: 20px;
    font-weight: bold;
    font-size: 1.8rem;
    background: #fff000;
    padding: 3px;
    display: inline-block;
    line-height: 1.2em;
}
.storyBox .textBox dl dd {
	margin-top: 20px;
}
.storyBox .textBox dl dd span {
    color: #7c7472;
    display: block;
    
}

/* 応援コメント */
.commentBox .inner {
    background: #dcdcd7;
    padding-top: 20px;
}
.commentBox .title {
    margin-bottom: 20px;
}
.commentBox .title span {
    background: none;
}
.commentBox dl {
    border-top: 1px solid #ffffff;
	padding: 20px;
}
.commentBox dl dt {
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.commentBox dl dd {
	font-weight: bold;
}

/* 著者プロフィール */
.profileBox .img {
	width: 500px;
    margin: auto;
    margin-bottom: 40px;
}
.profileBox .img img {
    width: 100%;
	height: auto;
}
.profileBox dl dt {
	margin-bottom: 20px;
	font-size: 1.4rem;
	font-weight: bold;
    background: #fff000;
    padding: 3px;
    display: inline-block;
    line-height: 1.2em;
}
.profileBox dl dt span {
	font-size: 1.8rem;
}

/* 書評 */
.reviewBox .content .ttl {
    text-align: center;
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 40px;
}
.reviewBox .content dt {
    text-align: center;
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid #bfbfbf;
}
.reviewBox .content dt span {
    display: inline-block;
    vertical-align: middle;
    margin-right: 20px;
}
.reviewBox .content dt em {
    display: inline-block;
    font-size: 2.4rem;
    font-weight: bold;
    vertical-align: middle;
    text-align: left;
    line-height: 1.5em;
}
.reviewBox .content dt span img {
    width: 100px;
    height: auto;
}
/* 試し読み */
.trialBox .content .text {
	text-align: left;
}
.trialBox .content dl + dl {
    margin-top: 20px;
}
.trialBox .content .text dt.ttl {
    text-align: center;
    font-size: 3.0rem;
    font-weight: bold;
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid #bfbfbf;
}
.trialBox .content .text dt {
	font-weight: bold;
	margin-bottom: 40px;
	font-size: 2.0rem;
}
.trialBox .content .text dt.center {
    text-align: center;
}
.trialBox .content .text + .text {
	margin-top: 40px;
}
.trialBox .content .text dd + dd {
	margin-top: 20px;
}
.trialBox .content .text dd p {
	line-height: 2em;
}
.trialBox .content .text dd p.bold {
	font-weight: bold;
}
.trialBox .content .text dd p.ind0 {
	text-indent: 0em;
}
.trialBox .content .text dd p.pL2 {
	padding-left: 2em;
}
.trialBox .content .text dd p.center {
	text-align: center;
	text-indent: 0em;
}
.trialBox .content .text dd .image {
	text-align: center;
	text-indent: 0em;
}

.trialBox .content .bottombtn {
    margin-top: 40px;
    text-align: center;
}
.trialBox .content .bottombtn a {
    background: url(../images/go_index_arrow.png) no-repeat left center;
        background-size: auto;
    background-size: auto 14px;
    color: #000000;
    padding-left: 15px;
    font-size: 2.0rem;
    text-decoration: none;
    font-weight: bold;
}


/* リンクボタン */
.interviewBox .content .btn,
.trialBox .content .btn {
	text-align: center;
	margin-top: 20px;
}
.interviewBox .content .btn a,
.trialBox .content .btn a {
	display: inline-block;
	width: 300px;
	padding: 20px 0;
	text-align: center;
	border-radius: 6px;
	color: #ffffff;
	text-decoration: none;
	font-size: 1.6rem;
    border: 2px solid #ffffff;
    box-sizing: border-box;
}
.trialBox .content .btn a {
    background: #392f2d;
}
/* リンクボタン */
.reviewBox .content .switchBtn,
.commentBox .content .switchBtn {
	text-align: center;
	margin-top: 40px;
}
.reviewBox .content .switchBtn p,
.commentBox .content .switchBtn p {
	display: inline-block;
	width: 300px;
	padding: 20px 0;
	text-align: center;
	border-radius: 6px;
	color: #ffffff;
	text-decoration: none;
	font-size: 1.6rem;
    border: 2px solid #ffffff;
    box-sizing: border-box;
    cursor: pointer;
}
.reviewBox .content .switchBtn p:hover,
.commentBox .content .switchBtn p:hover {
	opacity: 0.7;
}


/* スマホレイアウト
----------------------------- */
@media only screen and (max-width: 768px) {
/* -------------------------------------------------------------------------- */
/* 共通 */
.wrapper {
	width: 100%;
	padding: 0;
}
.inner,.contentArea {
	width: 100%;
	padding: 0 0 1px 0;
}

.content {
	width: 100%;
	padding: 0 10px;
    box-sizing: border-box;
}

/* コンテンツ共通 */
.block {
	margin-top: 40px;
}
.block .title {
	width: 100%;
	margin-bottom: 20px;
}
.block .title span,
.block .title em {
	line-height: 1.3em;
}
.block .text p {
	margin-bottom: 10px;
}
.block .text p:last-of-type {
	margin-bottom: 0px;
}

/* ヘッダー */
.headerArea {
	background-image: none;
	height: auto;
	text-align: center;
}
.headerArea .headGoHome {
	text-align: left;
	padding: 10px;
}
.headerArea .headGoHome img {
    width: 75px;
    height: auto;
}
.headerArea .image {
	padding: 0;
	min-width: 50%;
}
.headerArea .image img.text {
	width: 60%;
	max-width: 323px;
}


/* フッター */
.footerArea  {
	padding-top: 20px;
}
.footerArea .footerBox {
	padding: 10px;
}
.footerArea .goTop {
	bottom: 10px;
	right: 10px;
}
.footerArea .goTop img {
	width: 40px;
	height: auto;
}

/* SNS */
.snsArea {
	text-align: center;
	min-width: inherit;
	display: block;
	margin: 20px 0;
}
.snsArea ul {
	display: block;
	text-align: center;
	vertical-align: middle;
}
.snsArea li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 2px;
}

/* 書籍 */
.bookBox {
    margin-left: -10px;
    margin-right: -10px;
    background: #fff000;
    margin-top: 20px;
}
.bookBox .content {
	padding: 10px;
	display: block;
}
.bookBox .detail {
	display: table;
}
.bookBox .detail .image {
	vertical-align: top;
	width: 120px;
}
.bookBox .detail .image img {
	width: 120px;
	height: auto;
}
.bookBox .detail .text {
    display: table;
}
.bookBox .detail .text .image,
.bookBox .detail .text dl {
    display: table-cell;
    vertical-align: top;
}
.bookBox .detail .text dl {
    padding-left: 10px;
}
.bookBox .detail .text dl dt em {
	font-size: 1.8rem;
}
.bookBox .detail .text dl dt span {
	font-size: 1.4rem;
}
.bookBox .detail .text dl dd {
	margin-bottom: 10px;
}
.bookBox .detail ul {
	margin-top: 0px;
	margin-left: 0px;
	width: 100%;
    font-size: 0;
}
.bookBox .detail ul li {
	display: inline-block;
	margin-top: 10px;
	margin-right: 0px;
    width: 100%;
}
.bookBox .detail ul li:nth-of-type(2n) {
	margin-left:0;
}
.bookBox .detail ul li a {
	display: block;
	vertical-align: middle;
	font-size: 1.4rem;
	padding: 10px;
	width: 100%;
	height: auto;
    border: 1px solid #392f2d;
}

.book02Box {
	text-align: center;
	margin-top: 20px;
    padding-top: 40px;
}
.book02Box .content {
	display: block;
	width: 100%;
	padding-top: 0px;
}
.book02Box .content .detail {
	display: block;
}
.book02Box .content .text {
	display: block;
}
.book02Box .content .detail {
	display: block;
	width: 100%;
}
.book02Box .content .detail .image {
	width: 100%;
    padding: 0 40px;
    box-sizing: border-box;
}
.book02Box .content .detail .image img {
	max-width: 100%;
	height: auto;
}
.book02Box .content .text {
	padding-left: 0px;
}
.book02Box .content .text dl dt {
    text-align: center;
}
.book02Box .content ul {
	margin-top: 0px;
}
.book02Box .content ul li {
	display: block;
	margin-top: 10px;
}
.book02Box .content ul li a {
	display: block;
	margin-right: 0px;
	width: 100%;
}

/* ナビ */
.navArea {
	text-align: center;
	padding: 0;
}
.navArea ul {
	width: 100%;
	display: block;
	border-left: 0;
    border-top: 1px solid #7c7776;
}
.navArea ul li {
	display: block;
	border-right: 0;
	padding: 10px 0;
	font-size: 1.6rem;
    border-bottom: 1px solid #7c7776;
}
.navArea ul li a,
.navArea ul li p {
	box-sizing: border-box;
	text-decoration: none;
	background-repeat: no-repeat;
	background-position: left 20px center;
	width: 100%;
	line-height: 1.2em;
	padding: 0;
}
.navArea ul li span {
	display: inline-block;
}

/* 内容紹介 */
.storyBox .content {
	display: block;
}
.storyBox .textBox {
	display: block;
	padding-right: 0px;
	line-height: 1.4em;
    float: none;
    width: 100%;
    box-sizing: border-box;
}
.storyBox .textBox p + p {
	margin-top: 10px;
}
.storyBox .bookBox {
    margin-top: 20px;
	display: block;
    float: none;
    width: auto;
    box-sizing: border-box;
    padding: 10px;
}

/* 応援コメント */
.commentBox {
    padding-left: 10px;
    padding-right: 10px;
}
.commentBox .content {
    padding: 0;
}
.commentBox .subTitle {
	margin-bottom: 10px;
}
.commentBox .subTitle p {
	background-size: 40px auto;
	padding-left: 40px;
}
.commentBox .subTitle em {
	font-size: 2.0rem;
}
.commentBox .subTitle span {
	font-size: 1.8rem;
}
.commentBox dl {
	margin-bottom: 10px;
	padding: 10px;
}

/* 著者プロフィール */
.profileBox dl dt {
	font-size: 1.6rem;
}
.profileBox .img {
    width: 100%;
    margin-bottom: 40px;
}

/* 著者メッセージ */
.messageBox {
	margin-top: 20px;
}
.messageBox .img {
	padding-top: 20px;
}
.messageBox .img img {
	width: 100%;
}


/* 試し読み */
.trialBox {
	margin-top: 20px;
}
.trialBox .content {
    background-size: auto 100%;
    height: auto;
    padding: 20px 20px;
    margin-top: -20px;
}
.trialBox .content .ttl {
    font-size: 1.8em;
    margin-bottom: 10px;
}
.trialBox .content .img {
	margin-top: 10px;
}

.trialBox .content .image {
	margin-bottom: 20px;
}
.trialBox .content .text dt {
	margin-bottom: 10px;
}
.trialBox .content .text dd + dd {
	margin-top: 20px;
}

/* 書評 */
.reviewBox {
	margin-top: 0;
}
.reviewBox.block {
    padding: 20px 0 0 0;
}
.reviewBox .content dt {
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.reviewBox .content dt em {
    font-size: 20px;
    line-height: 1.5em;
    margin-bottom: 10px;
}
.reviewBox .content dt span {
    font-size: 14px;
    margin-bottom: 10px;
}
.reviewBox .content .switchBtn {
	margin-top: 10px;
}

/* リンクボタン */
.interviewBox .content .btn,
.trialBox .content .btn  {
	margin-top: 10px;
}
.interviewBox .content .btn a,
.trialBox .content .btn a {
	display: block;
	width: 100%;
	padding: 10px;
}
/* リンクボタン */
.reviewBox .content .switchBtn,
.commentBox .content .switchBtn {
	margin-top: 10px;
}
.reviewBox .content .switchBtn p,
.commentBox .content .switchBtn p {
	display: block;
	width: 100%;
	padding: 10px;
}



	
/* -------------------------------------------------------------------------- */
}

























