/* *******************************************************************

@‹¤’Ê

******************************************************************* */
body{line-height:1.5 !important;}

/* PC SP Ø‘Ö */
.pc { display: inline-block;}
.pcIn { display: inline;}
.pcCont { display: block;}
.sp,.spIn,.spCont { display: none;}

@media only screen and (max-width: 768px) {
	body {
		min-width: 320px;
	}
	img{
		width: auto;
		max-width: 100%;
        height: auto;
	}
	.pc,.pcIn,.pcCont { display: none;}
	.sp { display: inline-block;}
    .spIn { display: inline;}
	.spCont { display: block;}
}

/* ƒŠƒ“ƒN */
.block a {
}
.block ul li a:hover {
    opacity: 0.7;
    text-decoration: none;
}

/* –¾’©‘ÌŽw’è
.contents.characterBlock .title {
	font-family: "Ÿà–¾’©", YuMincho, "ƒqƒ‰ƒMƒm–¾’© ProN W3", "Hiragino Mincho ProN", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
} */

/* Š‡ŒÊ’²® */
.contents.profileBlock .title {
    font-feature-settings: 'palt';
}

/* *******************************************************************

@w•ƒ@Mon Perex(PC)

******************************************************************* */
/* ‹¤’Ê */
.blackArea {
    text-align: center;
    color: #000000;
	width: 940px;
	margin: 0 auto 100px auto;
	background: #e8d7c3;
	font-size: 16px;
}
.contents {
    text-align: center;
	margin: 0 auto 60px auto;
}
.contents:last-of-type {
    margin-bottom: 0;
}
.contents .block  {
    text-align: left;
    width: 740px;
    margin: auto;
}

/* ƒƒCƒ“‰æ‘œ */
.contents.mainView {
    margin-bottom: 0;
}
.contents.mainView .block {
	width: 940px;
    margin: auto;
    position: relative;
}
.contents.mainView .block > .bottom {
    position: absolute;
    bottom: 0;
}

/* “à—eÐ‰î */
.contents.storyBlock {
    background: #fdfbf9;
    width: 100%;
}
.contents.storyBlock .box {
    position: relative;
    padding-bottom: 60px;
}
.contents.storyBlock .block {
	display: table;
	box-sizing: border-box;
    margin-top: -180px;
}
.contents.storyBlock .block > div {
	display: table-cell;
	vertical-align: bottom;
}
.contents.storyBlock .block > div.image {
	width: 260px;
	box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.contents.storyBlock .block > div.image img {
	width: 100%;
	height: auto;
	box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2);
}
.contents.storyBlock .block > div.image .detail {
    color: #666666;
    font-size: 12px;
    margin-top: 10px;
}
.contents.storyBlock .block > div.text {
	padding: 0 0 0 30px;
	box-sizing: border-box;
    text-align: left;
}
.contents.storyBlock .block > div.text dl.story dt {
	margin-bottom: 20px;
    font-size: 28px;
}
.contents.storyBlock .block > div.text dl.story dd {
    line-height: 2em;
}
.contents.storyBlock .block.btn {
    position: absolute;
    bottom: -35px;
    z-index: 1;
    width: 100%;
    display: block;
}
.contents.storyBlock .block.btn > ul {
    font-size: 0;
    text-align: center;
}
.contents.storyBlock .block.btn > ul li {
    display: inline-block;
    background: #ffffff;
}
.contents.storyBlock .block.btn > ul li + li {
    margin-left: 20px;
}
.contents.storyBlock .block.btn > ul li a {
	background: #9fb7d4;
	display: inline-block;
    text-align: center;
    padding: 20px;
    width: 360px;
    box-sizing: border-box;
	box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2);
}
.contents.storyBlock .block.btn > ul li a span {
	color: #ffffff;
	display: inline-block;
    font-size: 20px;
}
.contents.storyBlock .block.txt {
    display: none;
}

/* ’˜ŽÒ */
.contents.profileBlock .block {
    padding-top: 20px;
}
.contents.profileBlock .block .text {
    margin-left: auto;
    margin-right: auto;
}
.contents.profileBlock .block .text dt {
	margin-bottom: 20px;
}
.contents.profileBlock .block .text dt em {
	font-size: 24px;
}
.contents.profileBlock .block .text dt span {
	font-size: 16px;
}
.contents.profileBlock .block .yosete {
    background: rgba(255,255,255,0.5);
    margin-top: 40px;
    padding: 40px;
}
.contents.profileBlock .block .yosete .ttl {
    display: table;
    margin-bottom: 20px;
}
.contents.profileBlock .block .yosete .ttl .img {
    display: table-cell;
    vertical-align: top;
    width: 190px;
}
.contents.profileBlock .block .yosete .ttl .tit {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #e03a00;
    width: 100%;
}
.contents.profileBlock .block .yosete .ttl .tit em {
    font-size: 40px;
    display: block;
}
.contents.profileBlock .block .yosete .ttl .tit span {
    font-size: 30px;
    display: block;
}

/* ‘•] */
.contents.reviewBlock .title {
	background: #9fb7d4;
	display: block;
    text-align: center;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    color: #ffffff;
    margin-bottom: 30px;
    font-size: 24px;
}
.contents.reviewBlock dl dt {
	margin-bottom: 20px;
}
.contents.reviewBlock dl dt em {
    font-size: 24px;
}
.contents.reviewBlock dl dt span {
    font-size: 22px;
}
.contents.reviewBlock dl dd + dd,
.contents.reviewBlock dl dd p + p {
	margin-top: 10px;
}

/* –{ */
.contents.bookBlock {
    background: #ffffff;
    padding: 50px 0 0 0;
}
.contents.bookBlock .block {
	display: table;
	width: 460px;
	box-sizing: border-box;
}
.contents.bookBlock .block > div {
	display: table-cell;
	vertical-align: top;
}
.contents.bookBlock .block > div.image {
	width: 180px;
	box-sizing: border-box;
}
.contents.bookBlock .block > div.image img {
	width: 100%;
	height: auto;
	box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2);
}
.contents.bookBlock .block > div.text {
	padding: 0 0 0 20px;
	box-sizing: border-box;
}
.contents.bookBlock .block > div.text dt {
	margin-bottom: 10px;
}
.contents.bookBlock .block > div.text dt em {
	font-size: 28px;
    display: block;
}
.contents.bookBlock .block > div.text dt span {
	font-size: 20px;
    display: block;
}
.contents.bookBlock .block > div.text dd {
	font-size: 14px;
	margin-bottom: 20px;
}
.contents.bookBlock .block > div.text dd span {
	display: block;
}
.contents.bookBlock .block > div.text ul {
    margin-top: 20px;
}
.contents.bookBlock .block > div.text ul li {
    display: block;
}
.contents.bookBlock .block > div.text ul li + li {
    margin-top: 10px;
}
.contents.bookBlock .block > div.text ul li a {
	background: #9fb7d4;
	display: block;
    text-align: center;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
	box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2);
}
.contents.bookBlock .block > div.text ul li a span {
	color: #ffffff;
	display: inline-block;
    font-size: 16px;
}

/* ŽŽ‚µ“Ç‚Ý */
.trialPage {
    background:url("image/trial_bg.png") no-repeat center top #e8d7c3;
}
.trialPage .contents.bookBlock {
    background: none;
}
.trialPage .contents.trialBlock .title {
	background: #9fb7d4;
	display: block;
    text-align: center;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    color: #ffffff;
    margin-bottom: 30px;
    font-size: 24px;
}
.trialPage .contents.trialBlock dl dt {
	margin-bottom: 20px;
}
.trialPage .contents.trialBlock dl dt em {
    font-size: 30px;
}
.trialPage .contents.trialBlock dl dt span {
    font-size: 24px;
}
.trialPage .contents.trialBlock dl dd + dd,
.trialPage .contents.trialBlock dl dd p + p {
	margin-top: 10px;
}
.trialPage .contents.trialBlock dl + dl {
    margin-top: 40px;
}
.trialPage .contents.trialBlock .back {
    text-align: center;
    padding: 60px 0;
}
.trialPage .contents.trialBlock .back a {
    font-size: 22px;
    color: #000000;
}
.trialPage .contents.trialBlock .back a:hover {
    text-decoration: none;
    opacity: 0.7;
}

/* *******************************************************************

@w•ƒ@Mon Perex(SP)

******************************************************************* */

@media screen and (max-width:767px){
/* ---------------------------------------------------------------- */
/* ‹¤’Ê */
.blackArea {
	margin: 0 auto 100px auto;
	font-size: 16px;
	width:100%;
}
.contents  {
	width: 100%;
	margin-bottom: 20px;
}
.contents:last-of-type {
    margin-bottom: 0;
}
.contents .block  {
	width:100%;
    padding: 0 20px;
    box-sizing: border-box;
}

/* ƒƒCƒ“‰æ‘œ */
.contents.mainView .block {
	width: 100%;
    padding: 0;
}
.contents.mainView .block img {
	width: 100%;
}

/* “à—eÐ‰î */
.contents.storyBlock .box {
    padding-bottom: 0px;
}
.contents.storyBlock .block {
	display: block;
    margin-top: 0;
    padding-bottom: 20px;
}
.contents.storyBlock .block > div {
	display: block;
}
.contents.storyBlock .block > div.image {
	width: 100%;
    margin-top: 20px;
}
.contents.storyBlock .block > div.image img {
	width: 100%;
}
.contents.storyBlock .block > div.text {
	padding: 20px 0 0 0;
}
.contents.storyBlock .block > div.text dl.story dt {
    font-size: 20px;
}
.contents.storyBlock .block > div.text dl.story dt br {
    display: none;
}
.contents.storyBlock .block.btn {
    position: static;
    bottom:inherit;
    width: 100%;
    display: block;
}
.contents.storyBlock .block.btn > ul li {
    display: block;
}
.contents.storyBlock .block.btn > ul li + li {
    margin-left: 0px;
    margin-top: 10px;
}
.contents.storyBlock .block.btn > ul li a {
	display: block;
    width: 100%;
}
.contents.storyBlock .block.btn > ul li a span {
    font-size: 20px;
}
.contents.storyBlock .block.txt {
    display: block;
    text-align: center;
    color: #e03a00;
    font-size: 24px;
    margin-top: -60px;
}

/* ’˜ŽÒ */
.contents.profileBlock .block .text dt em {
	font-size: 20px;
}
.contents.profileBlock .block .text dt span {
	font-size: 16px;
}
.contents.profileBlock .block .yosete {
    margin-top: 20px;
    padding: 20px;
}
.contents.profileBlock .block .yosete .ttl {
    display: block;
    margin-bottom: 20px;
}
.contents.profileBlock .block .yosete .ttl .img {
    display: block;
    width: 100%;
    text-align: center;
    padding-bottom: 10px;
}
.contents.profileBlock .block .yosete .ttl .tit {
    display: block;
}
.contents.profileBlock .block .yosete .ttl .tit em {
    font-size: 24px;
    display: block;
}
.contents.profileBlock .block .yosete .ttl .tit span {
    font-size: 20px;
    display: block;
}

/* „‘EƒRƒƒ“ƒg */
.contents.commentBlock {
    padding: 20px 0 20px 0;
}
.contents.commentBlock dl {
    padding: 20px;
}
.contents.commentBlock dl + dl {
    margin-top: 20px;
}
.contents.commentBlock dl dt {
	margin-bottom: 10px;
    padding-bottom: 10px;
}
.contents.commentBlock dl dt em {
    font-size: 20px;
}
.contents.commentBlock dl dt span {
    font-size: 16px;
}
.contents.commentBlock dl dd + dd,
.contents.commentBlock dl dd p + p {
	margin-top: 10px;
}

/* ‘•] */
.contents.reviewBlock .title {
    margin-bottom: 20px;
}
.contents.reviewBlock dl dt em {
    font-size: 18px;
}
.contents.reviewBlock dl dt span {
    font-size: 16px;
}

/* –{ */
.contents.bookBlock {
    padding: 20px 0 0 0;
}
.contents.bookBlock .block {
	display: block;
	width: 100%;
}
.contents.bookBlock .block > div {
	display: block;
}
.contents.bookBlock .block > div.image {
	width: 100%;
    margin-bottom: 10px;
}
.contents.bookBlock .block > div.text {
	padding: 0 0 0 0;
}
.contents.bookBlock .block > div.text dt em {
	font-size: 20px;
}
.contents.bookBlock .block > div.text dt span {
	font-size: 16px;
}
.contents.bookBlock .block > div.text dd span {
	display: block;
}
.contents.bookBlock .block > div.text ul {
    margin-top: 10px;
}
.contents.bookBlock .block > div.text ul li {
    display: block;
}
.contents.bookBlock .block > div.text ul li + li {
    margin-top: 10px;
}
.contents.bookBlock .block > div.text ul li a {
	background: #9fb7d4;
	display: block;
    text-align: center;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
	box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2);
}
.contents.bookBlock .block > div.text ul li a span {
	color: #ffffff;
	display: inline-block;
    font-size: 16px;
}

/* ŽŽ‚µ“Ç‚Ý */
.trialPage .contents.trialBlock .title {
    margin-top: 60px;
    margin-bottom: 20px;
}
.trialPage .contents.trialBlock dl dt em {
    font-size: 20px;
}
.trialPage .contents.trialBlock dl dt span {
    font-size: 16px;
}
.trialPage .contents.trialBlock .back {
    padding: 40px 0;
}
.trialPage .contents.trialBlock .back a {
    font-size: 20px;
}


/* ---------------------------------------------------------------- */
}