/* 誌面紹介 */
.sample-fig{
  margin-right: 2px;
  margin-left: 2px;
}
.sample-fig:not(:last-of-type){
  margin-bottom: max(2.2em, min(3vw,3em));
  margin-bottom: clamp(2.2em,3vw,3em);
}

div.bookimages{
  padding-top: 0;
  display: flex;
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0%), 0 6px 10px 0 rgb(0 0 0 / 20%), 0 2px 2px 0 rgb(0 0 0 / 10%);
  background: #000;
}
div.bookimages img.book-cover {
  max-width: 100%;
  max-height: 1017px;
  box-shadow: none;
  border-radius: 0;
  transition: all .25s ease-out;
}
div.bookimages a{
  border: 2px solid #dddcdc;
}
div.bookimages a:first-of-type {
  border-right-width: 1px;
}
div.bookimages a:last-of-type {
  border-left: none;
}
.bookimages-hidden{
  background: #e5e5e5;
  border: 2px solid #dddcdc;
  border-left: none;
  }
.bookimages-hidden img{
  visibility: hidden;
}

/* common */
div.tab-pane {
	padding:0 15px;
}

.info_ttl2 {
	border-left: 8px greenyellow solid;
	padding-left: 8px;
	margin-top:30px;
}

h3.info_ttl2 {
	margin-left:5px;
	padding-left: 8px;
}

.wf-sawarabigothic {
	font-family: "Sawarabi Gothic";
}

body {
	background: #dce7ef;
	margin: 0;
}

.text {
	margin: 0.5em 0.5em 3em;
	font-size: medium;
	line-height: 1.8em;
}

.text-text {
	margin: 0.5em 0.5em 1em;
	font-size: medium;
	line-height: 1.8em;
}

.text-text-text {
	margin: 0.5em 0.5em;
	font-size: medium;
	line-height: 1.8em;
}

.under {
	border-bottom: dashed 1.6px rgba(0, 0, 0, 0.3);
	padding-bottom: 0.2em;
}	

/* contents */
#contents {
	overflow: hidden;
}

#contents .contents-wrap:not(:root) {
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	/* font-size: 17px; */
	letter-spacing: .4px;
	line-height: 2 !important;
	margin: 0 auto 20px;
}

/* main */
.main {
	max-width: 840px;
	margin: 14px auto 0;
	padding: 32px 60px 40px;
	background: #fff;
	box-shadow: 0 2px 4px rgb(98 109 104 / 16%);
	position: relative;
}

.main strong {
	font-size: 110%;
}

/*記事部分*/

.contents-wrap mark {
	background: linear-gradient(transparent 70%, #d6dcf5 70%);
	background: -webkit-linear-gradient(transparent 70%, #d6dcf5 70%);
	padding-bottom: 0;
	padding-top: 0;
	font-weight: 700;
	font-size: 110%;
}

/* 元の .title に適用される、共通の親スタイル */
.title {
  max-width: 840px;
  width: 100%;
  margin: -14px auto 0;
  text-align: center;
}

.title h1 {
  padding: 22px 18px;
  text-align: center;
  color: #fff;
  margin: 0;
  font-size: 22px;
  background: #4ec078 url(img/hitsuji-title.png) no-repeat left;
  box-shadow: 0 2px 4px rgb(98 109 105 / 16%);
  background-size: contain;
  background-position: left 23% bottom;
  line-height: 2;
}

/* --- レスポンシブ対応 --- */
/* PC表示（画面幅768px以上）では、スマホ用画像を非表示にする */
@media (min-width: 768px) {
  .title .visible-xs {
    display: none;
  }
}

/* スマホ表示（画面幅767px以下）では、PC用画像を非表示にする */
@media (max-width: 767px) {
  .title .hidden-xs {
    display: none;
  }
}

/*記事見出し*/
.post-header-tag {
	background: #e3f5f1;
	padding: 0px 20px 0px 20px;
	color: #0ab38c;
	font-weight: 700;
	/* font-size: 16px; */
	line-height: 32px;
	z-index: 2;
	position: relative;
	margin-left: 25px;
	display: inline-block;
}


/*いま売れていますタグ*/
.post-header-tag::before {
	content: '\f521';
	font-family: "Font Awesome 5 Free";
	color: #ffffff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: #0ab38c;
	border-radius: 35px;
	position: absolute;
	width: 39px;
	height: 39px;
	line-height: 37px;
	text-align: center;
	left: -25px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	border-bottom: 3px solid #069e7b;
}

.post-header-tag::after {
	content: '';
	top: 0;
	right: 0;
	border-width: 16px 10px 16px 0px;
	border-color: transparent #fff transparent transparent;
	border-style: solid;
	position: absolute;
}

/*記事見出し 鳥*/
.post-header-tag-bird {
	background: #e3f5f1;
	padding: 0px 20px 0px 20px;
	color: #0ab38c;
	font-weight: 700;
	font-size: 16px;
	line-height: 32px;
	z-index: 2;
	position: relative;
	margin-left: 25px;
	display: inline-block;
}


/*いま売れていますタグ 鳥*/
.post-header-tag-bird::before {
	content: '\f520';
	font-family: "Font Awesome 5 Free";
	color: #ffffff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: #0ab38c;
	border-radius: 35px;
	position: absolute;
	width: 39px;
	height: 39px;
	line-height: 37px;
	text-align: center;
	left: -25px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	border-bottom: 3px solid #069e7b;
}

.post-header-tag-bird::after {
	content: '';
	top: 0;
	right: 0;
	border-width: 16px 10px 16px 0px;
	border-color: transparent #fff transparent transparent;
	border-style: solid;
	position: absolute;
}


/*記事見出し*/
/* h2 {
	padding: 20px 0px;
	position: relative;
	font-size: 1.6em;
	margin: 0;
	z-index: 1;
	font-weight: 700;
	line-height: 1.75;
	margin-top: -1px;
} */

.post-header h1 {
	padding: 20px 0px;
	position: relative;
	font-size: 1.8em;
	margin: 0;
	z-index: 1;
	font-weight: 700;
	line-height: 1.75;
	margin-top: -1px;
}

.post-header h1 .fadeIn {
  animation-name: fadeIn;
  animation-duration: 0.8s;
  animation-timing-function: ease-out;
  animation-delay: 0.5s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeIn;
  -webkit-animation-duration: 0.8s;
  -webkit-animation-timing-function: ease-out;
  -webkit-animation-delay: 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
  opacity: 0;
	display: block;
}

/* .post-header h2 {
	padding: 20px 0px;
	position: relative;
	font-size: 28px;
	margin: 0;
	z-index: 1;
	font-weight: 700;
	line-height: 1.75;
	margin-top: -1px;
}

.post-header h2 .fadeIn {
  animation-name: fadeIn;
  animation-duration: 0.8s;
  animation-timing-function: ease-out;
  animation-delay: 0.5s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeIn;
  -webkit-animation-duration: 0.8s;
  -webkit-animation-timing-function: ease-out;
  -webkit-animation-delay: 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
  opacity: 0;
	display: block;
} */


/*記事公開日*/
.date, .date-list {
	margin-bottom: 1em;
	color: #999;
	font-size: 16px;
	font-weight: 700;
	text-align: right;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	list-style: none;
	line-height: 1.5;
}

.date li, .date-list li {
	display: inline-block;
	margin-right: 10px;
}

.date i {
	margin-right: 4px;
	/* color: #758cce; */
	font-size: 15px;
}

.date-list li:first-child::before {
	content: '\f017';
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
	margin-right: 4px;
	font-size: 15px;
}

.date-list li:nth-child(2)::before {
	content: '\f2f1';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 4px;
	font-size: 15px;
}


/*ヘッダー書影*/
.book-cover-container {
	background: #c9e9f9;
	padding: 50px 20px;
	position: relative;
	margin-bottom: 2.5em;
}

.book-cover-container::after {
	position: absolute;
	content: "";
	right: 0;
	top: 0;
	border-width: 0 16px 16px 0;
	border-style: solid;
	border-color: #fff #fff #aedaf1;
	box-shadow: -1px 1px 1px rgb(0 0 0 / 15%);
}

.book-cover-container2 {
	display: flex;
	flex-wrap: wrap;
	gap: 28px;
	background: #c9e9f9;
	padding: 50px 20px;
	position: relative;
	margin-bottom: 2.5em;
	justify-content: center;
}

.book-cover-container2::after {
	position: absolute;
	content: "";
	right: 0;
	top: 0;
	border-width: 0 16px 16px 0;
	border-style: solid;
	border-color: #fff #fff #aedaf1;
	box-shadow: -1px 1px 1px rgb(0 0 0 / 15%);
}

.book-cover-inner {
	width: 180px;
	position: relative;
	box-shadow: 10px 10px rgb(16 110 165 / 20%);
	margin-left: auto;
	margin-right: auto;
	transition: all .3s;
	-moz-transition: all .3s;
	-webkit-transition: all .3s;
}

.book-cover-inner::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(
		-90deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.1) 80%,
		rgba(255, 255, 255, 0.4) 94%,
		rgba(255, 255, 255, 0.5) 96%,
		rgba(255, 255, 255, 0) 100%
		);
}

.book-cover-container:hover .book-cover-inner {
	transform: translateY(-4px);
	-webkit-transform: translateY(-4px);
	-moz-transform: translateY(-4px);
	box-shadow: 20px 26px 30px -5px rgb(16 110 165 / 20%), 0 6px 6px rgb(16 110 165 / 15%);
}

.book-cover-inner img {
	display: block;
	border-radius: 4px;
	width: 100%;
}

.book-cover-inner2 {
	width: 180px;
	position: relative;
	box-shadow: 10px 10px rgb(16 110 165 / 20%);
	margin-left: auto;
	margin-right: auto;
	transition: all .3s;
	-moz-transition: all .3s;
	-webkit-transition: all .3s;
}

.book-cover-inner2::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(
		-90deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.1) 80%,
		rgba(255, 255, 255, 0.4) 94%,
		rgba(255, 255, 255, 0.5) 96%,
		rgba(255, 255, 255, 0) 100%
		);
}

.book-cover-container2:hover .book-cover-inner2 {
	transform: translateY(-4px);
	-webkit-transform: translateY(-4px);
	-moz-transform: translateY(-4px);
	box-shadow: 20px 26px 30px -5px rgb(16 110 165 / 20%), 0 6px 6px rgb(16 110 165 / 15%);
}

.book-cover-inner2 img {
	display: block;
	border-radius: 4px;
	width: 100%;
}

/*ヘッダー バナー使用時*/
.header-banner {
	margin: 0.5em;
}

.header-banner img {
max-width: 100%;
box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
}


/*吹き出し バージョン2　マージンのみ調整*/
.chat-ver2 {
	display: flex;
	align-items: flex-start;
	overflow: hidden;
	width: 100%;
	margin: 2em 0;
}

/*吹き出し*/
.chat {
	display: flex;
	align-items: flex-start;
	overflow: hidden;
	width: 100%;
	margin-bottom: 2.5em;
}

.chat-right {
	flex-direction: row-reverse;
}

.chat-face {
	display: table-cell;
	padding-right: 20px;
	text-align: center;
	vertical-align: top;
	width: clamp(62px, 15.5vw, 98px);
}

.chat-right .chat-face {
	padding-left: 20px;
	padding-right: 0;
}

.chat-face img {
	border-radius: 50%;
	width: 78px;
	vertical-align: middle;
	border: solid 1px #dcdcdc;
}

.chat-face img.bg-m{
	background-color: #fff5ee;
}

.chat-face img.bg-h{
	background-color: #fff8dc;
}

.chat-face img.bg-a{
	background-color: #fff0f5;
}

.chat-face img.bg-y{
	background-color: #f0fff0;
}

.chat-face span {
	font-size: 12px;
	display: block;
	margin-top: 10px;
	line-height: 1.4;
}

.chat-balloon {
	padding: 20px;
	border: 2px solid rgb(218, 218, 218);
	word-break: break-word;
	border-radius: 12px;
	position: relative;
}

.chat-balloon::before {
	display: inline-block;
	position: absolute;
	top: 30px;
	left: -17px;
	border: 9px solid transparent;
	border-right: 8px solid #fff;
	content: "";
	z-index: 2;
}

.chat-right .chat-balloon::before {
	right: -17px;
	left: initial;
	border-left: 8px solid #fff;
	border-right: none;
	right: -8px;
}

.chat-balloon::after {
	display: inline-block;
	position: absolute;
	top: 27px;
	left: -24px;
	border: 12px solid transparent;
	border-right: 12px solid rgb(218, 218, 218);
	content: "";
	z-index: 1;
}

.chat-right .chat-balloon::after {
	left: initial;
	right: -12px;
	border-left: 12px solid rgb(218, 218, 218);
	border-right: none;
}

.chat-balloon p{
	padding: 0;
	margin: 0;
}

.chat-balloon p:not(:last-child) {
	margin-bottom: 36px;
}

.chat-big .chat-balloon p {
	font-size: 20px;
	font-weight: 700;
}

.closing-chat {
	margin-top: 3em;
	margin-bottom: -2.5em;
}

.fadeIn-left{
  -webkit-transition: all .5s linear;
  -moz-transition: all .5s linear;
  transition: all .5s linear;
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  transform: translateX(100%);
  opacity: 0;
}

.fadeIn-left.active, .fadeIn-right.active {
  -webkit-transform: translateX(0%);
  -moz-transform: translateX(0%);
  transform: translateX(0%);
  opacity: 1;
}

.fadeIn-right {
  -webkit-transition: all .5s linear;
  -moz-transition: all .5s linear;
  transition: all .5s linear;
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  transform: translateX(-100%);
  opacity: 0;
}

/*心の声*/
.balloon4 {
  position: relative;
  margin: 2em 0 2em 40px;
  padding: 15px;
  background: #e0edff;
  border-radius: 30px;
	width: fit-content;
	color: #696969;
}

.balloon4:before {
  content: "";
  position: absolute;
  left: -38px;
  width: 13px;
  height: 12px;
  bottom: 0;
  background: #e0edff;
  border-radius: 50%;
}

.balloon4:after {
  content: "";
  position: absolute;
  left: -24px;
  width: 20px;
  height: 18px;
  bottom: 3px;
  background:#e0edff;
  border-radius: 50%;
}

.balloon4 p {
  margin: 0;
  padding: 0;
}

/*h3見出し*/
.sub-head {
	margin: 3.2em 0 1.8em;
	padding: 18px 20px;
	border-left: 5px solid #4ec078;
	border-bottom: solid 3px #dadada;
	font-weight: bold;
	background-color: #f7f7f7;
	line-height: 1.6;
	font-size: 24px;
}

.update-head {
	margin: 3em 0 1em;
	padding: 6px 12px;
	font-size: 20px;
	border-left: 5px solid #4ec078;
}

/*h3見出し　バージョン2*/
.update-head-ver2 {
	margin: 1.5em 0 1em;
	padding: 6px 12px;
	font-size: large;
	border-left: 5px solid #4ec078;
	line-height: 1.7;
	background-color: #f7f7f7;
	font-weight: bold;
	box-shadow: rgba(0, 0, 0, 0.15) 2.4px 2.4px 3.2px;
}

/*箇条書き（チェック）*/
.check-box {
	margin-bottom: 2.5em;
	/* margin-top: 1.6em; */
}

.check-list {
  list-style-type: none;
  padding:.5em .2em .5em .8em;
  background: #e8f5ed;
	font-weight: 700;
}

.check-list li {
  position: relative;
  padding-left: 30px;
  padding: 1em .5em 1em 35px;
}

.check-list li:before {
  position: absolute;
	content: '\f00c';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
  display:inline-block;
  background: #4ec078;
  color: white;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*.check-list 太字なしバージョン*/
.check-list-ver2 {
  list-style-type: none;
  padding:1.5em;
  background: #e8f5ed;
}

.check-list-ver2 li {
  position: relative;
  padding-left: 30px;
  padding: 1em .5em 1em 35px;
}

.check-list-ver2 li:before {
  position: absolute;
	content: '\f00c';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
  display:inline-block;
  background: #4ec078;
  color: white;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.img-center {
	text-align: center;
}

.img-center img {
width: 55%;
box-shadow: #137cbc 0px 1px 4px, #137cbc 0px 0px 0px 3px;
border-radius: 6px;
}

@media screen and (max-width: 767px) {
.img-center img {
width: 100%;
box-shadow: #137cbc 0px 1px 4px, #137cbc 0px 0px 0px 3px;
border-radius: 6px;
}
}

/*箇条書き（数字）*/
.number-list {
	list-style-type: none;
	counter-reset: number;
	padding-left: 28px;
	margin-bottom: 2.5em;
}

.number-list li {
	position: relative;
}

.number-list li::before {
	counter-increment: number;
	content: counter(number);
	background: #fff;
	border: 1px solid #4ec078;
	color: #4ec078;
	width: 2.2rem;
	height: 2.2rem;
	line-height: 2rem;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	border-radius: 50%;
	display: block;
	position: absolute;
	left: -28px;
	top: 6px;
}

.number-list li:not(:last-child) {
	margin-bottom: 1rem;
}


/* Twitter引用投稿 */
.tweet-flex {
	display: flex;
}
.tweet-flex .tweet-box{
	width: 45%;
}
.tweet-box{
	margin: 0 auto;
}

.twitter-tweet{
	margin: 1em auto;
}


/* YouTube引用投稿 */
.youtube-list {
  position:relative;
  width: 100%;
  max-width: 560px;
	margin: 0 auto;
}

.youtube-list::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.25%;
}

.youtube-list iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


/* YouTube引用投稿 横並びflex*/
.youtube {
  position: relative;
  height: 0;
  /* margin-bottom: 20px; */
  padding-bottom: 56.25%;
  overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
	height: 100%;
	margin: 0 1rem 0 1rem;
}
.youtube-flex img{
  max-width: 100%;
}

.youtube-item figcaption{
	font-size: x-small;
	font-weight: normal;
	text-align: center;
	color:#696969;
}

@media screen and (min-width: 600px) {
  .youtube-flex{
		display: flex;
    margin-bottom: 1.5rem;
    justify-content: center;
    align-items: flex-start;
  }
  .youtube-item{
    flex-basis: 49.5%;
  }
}


/* 書籍紹介 */
.book-detail {
	display: flex;
	align-items: start;
	padding: 1.6em 2em 2em;
	margin-bottom: 1.5em;
	position: relative;
	z-index: 1;
	border: 1px solid #c1d9ea;
}

.book-detail-img {
	margin: 6px 24px auto 0;
	background: #000;
	box-shadow: 0 1px 4px 0 rgb(0 0 0 / 0%), 0 6px 10px 0 rgb(0 0 0 / 20%), 0 2px 2px 0 rgb(0 0 0 / 10%);
}

.book-detail-img-container {
	transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	-webkit-transition: .3s ease-in-out;
	overflow: hidden;
}

.book-detail-img-container:hover {
	opacity: 0.6;
}

.book-detail-img img {
	width: 140px;
	transition: all .3s;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
}

.book-detail-img img:hover {
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
}

.book-detail-title {
	margin: 0;
	margin-bottom: 4px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.5;
}

.book-detail-title a {
	color: initial;
}

.book-detail-sub {
	display: block;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	color: #758cce;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0 0 10px;
}

.book-detail-author,
.book-detail-price {
	display: block;
	font-size: 14px;
}

.book-detail-author {
	margin-top: 4px;
}

.book-detail-btn {
	margin: 12px 0 0;
}

.book-detail-btn-container {
	position: relative;
	text-decoration: none;
	display: inline-block;
	text-align: center;
	background: #61b9f7;
	border-radius: 25px;
	outline: none;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
}

.book-detail-btn-container:hover {
	text-decoration: none;
	background: #53aeef;
}

.book-detail-btn-container::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 4px;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 25px;
	background-color: #4ba0dc;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
}

.book-detail-btn-txt:hover {
	text-decoration: none;
	transform: translateY(2px);
	-webkit-transform: translateY(2px);
	-moz-transform: translateY(2px);
}

.book-detail-btn-container:hover::before {
	content: "";
	top: 0;
	left: 0;
}

.book-detail-btn-txt {
	position: relative;
	display: block;
	padding: 6px 30px 6px 40px;
	border-radius: 25px;
	color: #fff;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}


/*フラットロゴ（科研費記事で使用）*/
.btn-flat-logo {
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding: 0.25em 0.5em;
	text-decoration: none;
	color: #FFF;
	background: #00bcd4;
	transition: .4s;
}

.btn-flat-logo:hover {
	background: #1ec7bb;
		color:#FFF;
}

/*FBロゴ（科研費記事で使用）*/
.btn-social-icon-facebook {
	text-decoration: none;
	display: inline-block;
	text-align: center;
	color: #4966a0;;
	font-size: 25px;
	text-decoration: none;
}

.btn-social-icon-facebook:hover {
	color:#668ad8;
	transition: .5s;
}

.btn-social-icon-facebook__square {
	border-radius: 10px;
	position: relative;
	display: inline-block;
	width: 50px;
	height: 50px;
	font-size: 35px;
	line-height: 50px;
	color: #FFF;
	background: #4966a0;;
}

.btn-social-icon-facebook__square .fa-facebook {
	position: absolute;
	bottom: -3px;
	right: 6px;
	font-size: 42px;
}


/*フラットロゴ（科研費記事で使用）*/
.btn-flat-logo {
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding: 0.25em 0.5em;
	text-decoration: none;
	color: #FFF;
	background: #0ab38c;
	transition: .4s;
}

.btn-flat-logo:hover {
	background:#0ab38c;
}


/*FBロゴ（科研費記事で使用）*/
.btn-social-icon-facebook {
	text-decoration: none;
	display: inline-block;
	text-align: center;
	color: #4966a0;;
	font-size: 18px;
	text-decoration: none;
}

.btn-social-icon-facebook:hover {
	color:#668ad8;
	transition: .5s;
}

.btn-social-icon-facebook__square {
	border-radius: 10px;
	position: relative;
	display: inline-block;
	width: 40px;
	height: 40px;
	font-size: 30px;
	line-height: 40px;
	color: #FFF;
	background: #4966a0;;
}

.btn-social-icon-facebook__square .fa-facebook {
	position: absolute;
	bottom: -3px;
	right: 6px;
	font-size: 42px;
}


/*吹き出し追加*/
.balloon1-left {
	position: relative;
	display: inline-block;
	margin: 1em 0 1em 40px;;
	padding: 15px;
	min-width: 120px;
	max-width: 100%;
	color: #696969;
	background:#e0edff;
	border-radius: 15px;
}

.balloon1-left:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid#e0edff;
}

.balloon1-left p {
	margin: 0;
	padding: 0;
}

/*吹き出し追加2*/
.balloon2-left {
	position: relative;
	display: inline-block;
	margin: 1em 0 1em 40px;;
	padding: 15px;
	min-width: 120px;
	max-width: 100%;
	color: #696969;
	background: #fff0f5;
	border-radius: 15px;
}

.balloon2-left:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid#fff0f5;
}

.balloon2-left p {
	margin: 0;
	padding: 0;
}

/*枠追加（赤カギかっこ風）*/
.box19 {
	position: relative;
	padding:0.25em 1em;
	margin-bottom: 3em;
}

.box19:before,.box19:after{
	content:'';
	width: 20px;
	height: 30px;
	position: absolute;
	display: inline-block;
}

.box19:before{
	border-left: solid 1px #dc143c;
	border-top: solid 1px#dc143c;
	top:0;
	left: 0;
}

.box19:after{
	border-right: solid 1px#dc143c;
	border-bottom: solid 1px#dc143c;
	bottom:0;
	right: 0;
}

.box19 p {
	margin: 0;
	padding: 0;
}


/*枠追加（緑点線）*/
.box6 {
padding: 1em;
margin: 0.5em;
background: #fff;
border: dashed 2px #0ab38c;
}

.box6 p {
margin: 0;
padding: 0;
font-size: medium;
}

/*枠追加（青斜線）*/
.box16 {
padding: 0.5em 0.8em;
margin: 1em 0 0.5em 0;
background: -webkit-repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
}

.box16 p {
margin: 0;
font-size: medium;
}

/*引用*/
blockquote {
    position: relative;
    padding: 30px 15px 8px 15px;
    box-sizing: border-box;
    font-style: italic;
    background: #efefef;
    color: #555;
}
blockquote:before{
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 3px;
    content: "“";
    font-family: sans-serif;
    color: #cfcfcf;
    font-size: 90px;
    line-height: 1;
}
blockquote p {
    padding: 0;
    margin: 10px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}


/*書評用ボックス*/
.review-box {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.review-box .review-box-title {
    font-size: 1.2em;
    background: #ffb6c1;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.review-box p {
    padding: 15px 20px;
    margin: 0;
}

.main .asterisk {
	font-size: small;
	margin: 5px 0 0;
}

/* 更新一覧 */
.update-list {
	list-style: none;
	font-size: 15px;
	border-bottom: 1px solid #eee;
	padding-left: 0;
	padding-bottom: 20px;
	margin-left: 10px;
	line-height: initial;
	/* font-weight: 700; */
}

.update-list:not(:last-child) {
	margin-bottom: 20px;
}

.update-date {
	font-size: 14px;
	color: #999;
}

.update-date, .update-label {
	display: inline-block;
}

.update-label {
	background: #e3f5f1;
	color: #0ab38c;
	padding: 2px 8px;
	border-radius: 30px;
	font-size: 12px;
	margin: 0 2px;
	border: 2px solid;
	line-height: initial;
}

.update-date i {
	margin-right: 4px;
}

.update-title {
	margin-top: 1.2em;
	display:flex;
	align-items: center;
}

.update-title:hover {
	text-decoration: underline;
}

.update-img img {
	margin-top: 1.2em;
	box-shadow: 5px 5px 3px rgba(0, 0, 0, 0.4);
}


/*不明*/
.past-btn a{
	position: relative;
}
.past-btn a::before{
	content: "";
	position: absolute;
	top: 50%;
	left: -14px;
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: #428bca #428bca transparent transparent;
	transform: translateY(-50%)rotate(45deg);
	-moz-transform: translateY(-50%)rotate(45deg);
	-webkit-transform: translateY(-50%)rotate(45deg);
}

.yellow-cr{
	color: #fbff01;
}
.green-cr{
	color: #859fe8;
}
.purple-cr{
	color: #7c95dc;
}


/* メディアクエリ */
@media (min-width: 461px){
	.main{
		border-radius: 12px;
	}
	.title h1 {
    border-radius: 0 0 12px 12px;
}
}
@media (max-width: 767px){
	.title h1{
		padding: 0;
    background: #4ec078;
}
	.title h1 img{
		max-width: 240px;
    width: 62vw;
	}
	.tweet-flex{
		display: block;
	}
	.tweet-flex .tweet-box{
		width: 100%;
	}
	.tweet-box{
		margin: 1em auto 0;
	}
}

@media (max-width: 640px){
.main{
		padding: 32px 20px 40px;
	}
.post-header h1 {
    font-size: 20px;
}
.post-header-tag {
    font-size: 14px;
		background: #e3f5f1;
		padding: 0px 16px 0px 16px;
    line-height: 28px;
}
.post-header-tag::before {
		width: 35px;
    height: 35px;
    line-height: 33px;
}
.post-header-tag::after {
    border-width: 14px 10px 14px 0px;
}
.date{
		font-size: 15px;
}
.date li{
		margin-right: 5px;
}
.date i{
	font-size: 14px;
}
.chat-face img {
		width: 12vw;
    min-width: 50px;
}
.chat-balloon {
    padding: 12px;
}
.chat-balloon::before{
	top: 19px;
}
.chat-balloon::after{
	top: 16px;
}
.chat-big .chat-balloon p {
    font-size: 17px;
}
.chat-face span{
		font-weight: 700;
		font-size: 10px;
		margin-top: 6px;
}
.sub-head{
    font-size: 20px;
}
.book-detail {
    padding: 1.4em 1em 1.6em;
		flex-wrap: wrap;
		justify-content: center;
}
.book-detail-img {
		margin: auto;
    margin-bottom: 22px;
}
.book-detail-title {
    font-size: 18px;
}
.book-detail-sub {
    font-size: 15px;
}
.book-detail-author, .book-detail-price {
    font-size: 12px;
}
.book-detail-btn {
    text-align: center;
}
.book-detail-btn-txt {
    padding: 8px 30px 8px 40px;
		font-size: 15px;
}
}
@media (max-width: 460px){
	#contents{
		padding: 0;
	}
	#contents .col-xs-12{
		padding: 0;
	}
	.main{
		padding: 28px 16px;
			margin: 10px auto;
	}
.chat-face {
    padding-right: 12px;
}
.chat-right .chat-face{
    padding-left: 12px;
}
.chat-balloon p:not(:last-child) {
    margin-bottom: 30px;
}
.main p, .main ul, .main ol {
    font-size: 15px;
}
.number-list li::before{
	top: 3px;
}
}
@media (max-width: 360px){
.book-detail-btn-txt {
		font-size: 3vw;
}
}


/*アニメーション*/
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
		-moz-transition: rotate(6px);
		-webkit-transition: rotate(6px);
	}
  to {
    opacity: 1;
    transform: translateY(0px);
		-moz-transition: translateY(0px);
		-webkit-transition: translateY(0px);
	} }

/*PCとスマホ専用の改行タグ*/
		@media screen and (min-width: 750px){
  .pc { display:inline; }
  .sp { display:none; }
	}
	@media screen and (max-width: 751px){
  .pc { display:none; }
  .sp { display:inline; }
	}


	/* 紙面シャドウ */
		.space-shadow {
			box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px;
			rgba(0, 0, 0, 0.3) 0px 7px 13px -3px;
			rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
			margin-bottom: 2em;
			width:90%;
		} 

.text-center-text-left-wrap {
  text-align: center;
}

.text-center-text-left__child {
  text-align: left;
  display: inline-block;
  background: #c9e9f9;
  list-style: none;
	padding: 0;
	padding: 1.8em;
	font-weight: 700;
}

.text-center-text-left-wrap2 {
  text-align: left;
}

.text-center-text-left__child2 {
  text-align: left;
  display: block;
  background: #f5f5f5; 
  list-style: none;
	padding: 0;
	padding: 1em;
	font-size: medium;
}
