@charset "UTF-8";
/* Element Styles */
html {
	font-size: 62.5%;
	overflow: auto;
}

body {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, figure, input, textarea, p, blockquote {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

button, address, caption, code, em, th, var, sup, sub {
	font-style: normal;
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6,
input, button, textarea {
	font-size: 100%;
	font-weight: normal;
}

button {
	display: inline-block;
	padding: 0;
	background: none;
	border: none;
	outline: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	cursor: pointer;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "HiraKakuPro-W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

ol, ul, li {
	list-style-type: none;
}

img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
}

img[src$=".svg"] {
	width: 100%;
}

a:link, a:visited, a:active {
	color: #222;
	text-decoration: none;
}

a:focus {
	outline: none;
}

main, article, aside, section, header, footer,
canvas, figcaption, figure, nav {
	display: block;
}

/* Generic Styles */
.g-is-hidden {
	display: none;
}

/* Extracted Styles */
.ext-button {
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	border-radius: .3em;
	text-align: center;
	background: #466f81;
	color: #fff;
	line-height: 1.5;
	letter-spacing: .15em;
	font-family: 'Myriad Pro', Arial, sans-serif;
	transition: background .4s;
}

.ext-button:link, .ext-button:visited, .ext-button:active {
	color: #fff;
}

.ext-button:hover {
	background: #588ba2;
}

.ext-themeLabel {
	display: inline-block;
	min-width: 14em;
	box-sizing: border-box;
	padding: .1em .8em;
	line-height: 1.4;
	white-space: nowrap;
	text-align: center;
	color: #fff;
}

.ext-themeLabel:link, .ext-themeLabel:visited, .ext-themeLabel:active {
	color: #fff;
	transition: opacity .4s;
}

.ext-themeLabel.var-gdn {
	background: #d45d87;
	border: solid 1px #d45d87;
}

body.gdn .ext-themeLabel {
	background: #d45d87;
	border: solid 1px #d45d87;
}

.ext-themeLabel.var-heart-campaign {
	background: #1e98b9;
	border: solid 1px #1e98b9;
}

body.heart-campaign .ext-themeLabel {
	background: #1e98b9;
	border: solid 1px #1e98b9;
}

.ext-themeLabel.var-heart-medical {
	background: #59955c;
	border: solid 1px #59955c;
}

body.heart-medical .ext-themeLabel {
	background: #59955c;
	border: solid 1px #59955c;
}

.ext-themeLabel.var-bigdata {
	background: #416bb1;
	border: solid 1px #416bb1;
}

body.bigdata .ext-themeLabel {
	background: #416bb1;
	border: solid 1px #416bb1;
}

.ext-themeLabel.var-invert.var-gdn {
	color: #d45d87;
	background: #fff;
}

body.gdn .ext-themeLabel.var-invert {
	color: #d45d87;
	background: #fff;
}

.ext-themeLabel.var-invert.var-heart-campaign {
	color: #1e98b9;
	background: #fff;
}

body.heart-campaign .ext-themeLabel.var-invert {
	color: #1e98b9;
	background: #fff;
}

.ext-themeLabel.var-invert.var-heart-medical {
	color: #59955c;
	background: #fff;
}

body.heart-medical .ext-themeLabel.var-invert {
	color: #59955c;
	background: #fff;
}

.ext-themeLabel.var-invert.var-bigdata {
	color: #416bb1;
	background: #fff;
}

body.bigdata .ext-themeLabel.var-invert {
	color: #416bb1;
	background: #fff;
}

.ext-themeParentTitleBar {
	display: flex;
}

.ext-themeParentTitleBar > ._e-theme,
.ext-themeParentTitleBar > ._e-parentTitle {
	opacity: 1;
	transition: .3s;
}

.ext-themeParentTitleBar > ._e-theme:hover,
.ext-themeParentTitleBar > ._e-parentTitle:hover {
	opacity: .8;
}

.ext-themeParentTitleBar > ._e-theme {
	min-width: initial;
}

.ext-themeParentTitleBar > ._e-parentTitle {
	min-width: 13em;
}

.ext-arrow {
	font-size: 1.3rem;
	cursor: pointer;
	position: relative;
	display: inline-block;
	text-indent: -100em;
	width: 4em;
	height: 2em;
}

.ext-arrow::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: .2em;
	margin: auto;
	display: inline-block;
	content: '';
	width: .7em;
	height: .7em;
	border-bottom: solid 1px #466f81;
	border-left: solid 1px #466f81;
	transform: rotate(-135deg);
}

.ext-arrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1px;
	margin: auto;
	display: inline-block;
	content: '';
	width: 2em;
	height: 1px;
	background: #466f81;
}

.ext-arrow.var-up {
	width: 4em;
	height: 4em;
	font-size: 1rem;
	transform: rotate(-90deg);
}

.ext-arrow.var-up::before {
	position: absolute;
	left: 1.3em;
	bottom: 0;
}

.ext-arrow.var-up::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.ext-arrow.var-left {
	transform: rotate(180deg);
}

.ext-arrow.var-link {
	width: 7rem;
	height: 4rem;
	transition: .4s;
}

.ext-arrow.var-link.is-hover {
	transform: translateX(1em);
}

.ext-thumbnail {
	display: block;
	overflow: hidden;
}

.ext-thumbnail img {
	transition: .5s;
}

.ext-thumbnail:hover img, .ext-thumbnail.is-hover img {
	transform: scale(1.1);
}

.ext-leafTitle {
	font-size: 1.78571em;
	line-height: 1.5;
	font-weight: bold;
}

.ext-vol {
	list-style-type: inherit;
	font-size: inherit;
	font-weight: inherit;
	display: inline-block;
}

/* Class Styles */
body {
	font-family: "Noto Sans JP", "Noto Snas Japanese", Helvetica, Arial, verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "HiraKakuPro-W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: .08em;
	color: #222;
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body.top {
	background: url(/images/21forum/2019/bg_bottom.jpg) center bottom no-repeat;
	background-size: 100%;
}

_:-ms-input-placeholder,
:root {
	font-weight: 500;
}

#wrapper {
	position: relative;
}

#wrapper > [class^="-wrap"] > .-wrapPad {
	padding-left: 40px;
	padding-right: 40px;
	box-sizing: border-box;
	max-width: 1380px;
	min-width: 1120px;
	margin-left: auto;
	margin-right: auto;
}

#wrapper > .-wrapContent {
	background: transparent;
}

#wrapper > .-wrapContent > .-wrapPad {
	overflow: hidden;
}

#wrapper > .-wrapBottom {
	background: #f6f6f6;
}

#wrapper > .-wrapFooter {
	background: #466f81;
}

body.top #wrapper > .-wrapFooter {
	min-width: 1120px;
	background: #466f81 url(/images/21forum/2019/bg_bottom.jpg) center bottom no-repeat;
	background-size: 100%;
	background-blend-mode: multiply;
	overflow: hidden;
}

#wrapper .-wrapContentHeader {
	float: left;
	width: 260px;
	margin-right: 60px;
	padding-bottom: 5rem;
}

#wrapper .-wrapContentMain {
	float: right;
	width: calc(100% - 320px);
	padding-bottom: 5rem;
}

/* IE表示用のCSS */
_:-ms-input-placeholder body.top #wrapper > .-wrapFooter,
:root body.top #wrapper > .-wrapFooter {
	background: #466f81;
}

.siteLogo {
	border-top: solid 6px #222;
}

.siteLogo a {
	display: block;
	width: 26rem;
	height: 26rem;
	box-sizing: border-box;
	padding: 2rem;
	display: flex;
	align-items: center;
	transition: .4s;
}

.siteLogo a:hover {
	opacity: .8;
}

body.top .siteLogo {
	pointer-events: none;
}

.localNavi > ._about {
	padding-bottom: .3em;
	border-bottom: solid 2px #222;
	font-weight: bold;
}

.localNavi > ._themes > li {
	border-bottom: solid 1px #e2e2e2;
}

.localNavi > ._themes ._button {
	display: block;
	padding: .8em 0;
	margin: 3px 0;
	font-size: .95em;
	font-weight: bold;
}

.localNavi > ._themes ._button::before {
	display: inline-block;
	content: '';
	width: 3px;
	height: 2em;
	vertical-align: middle;
	margin-right: .8em;
}

.localNavi > ._themes ._button.var-gdn::before {
	background: #d45d87;
}

.localNavi > ._themes ._button.var-heart-campaign::before {
	background: #1e98b9;
}

.localNavi > ._themes ._button.var-heart-medical::before {
	background: #59955c;
}

.localNavi > ._themes ._button.var-bigdata::before {
	background: #416bb1;
}

.localNavi > ._themes ._button:hover.var-gdn {
	background: #fae7ed;
}

.localNavi > ._themes ._button:hover.var-heart-campaign {
	background: #ddf0f6;
}

.localNavi > ._themes ._button:hover.var-heart-medical {
	background: #e5efe7;
}

.localNavi > ._themes ._button:hover.var-bigdata {
	background: #e2e9f3;
}

body.gdn .localNavi > ._themes ._button.var-gdn {
	background: #fae7ed;
}

body.heart-campaign .localNavi > ._themes ._button.var-heart-campaign {
	background: #ddf0f6;
}

body.heart-medical .localNavi > ._themes ._button.var-heart-medical {
	background: #e5efe7;
}

body.bigdata .localNavi > ._themes ._button.var-bigdata {
	background: #e2e9f3;
}

.seriesColumns {
	margin-top: 6rem;
	padding-left: 1rem;
	padding-right: 1rem;
}

.seriesColumns ._banners li:not(:first-child) {
	margin-top: 2rem;
}

.seriesColumns ._banners a {
	display: block;
	opacity: 1;
	transition: .4s;
}

.seriesColumns ._banners a:hover {
	opacity: .8;
}

.sponsorsList > .-pad {
	width: 720px;
	padding-left: 320px;
	padding-top: 2em;
	padding-bottom: 2em;
}

.sponsorsList ._title {
	color: #888;
	border-bottom: solid 1px #e2e2e2;
	font-size: .9em;
	line-height: 1.3;
}

.sponsorsList ._list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 2.5rem;
}

.sponsorsList ._list::before {
	width: 22.5%;
	display: block;
	content: '';
	order: 1;
}

.sponsorsList ._list::after {
	width: 22.5%;
	display: block;
	content: '';
}

.sponsorsList ._list > li {
	width: 22.5%;
}

.sponsorsList ._list > li:not(:nth-child(-n+4)) {
	margin-top: 1rem;
}

.siteFooter {
	color: #fff;
	font-size: 1.2rem;
}

.siteFooter .corpLogo img {
	height: 23px;
}

.siteFooter > .-pad {
	width: 720px;
	padding-left: 320px;
	padding-top: 2em;
	padding-bottom: 2.2em;
}

.siteFooter .-credit {
	margin-top: 1.25em;
	display: flex;
	justify-content: space-between;
}

.siteFooter .-credit > .-logo {
	width: 17%;
}

.siteFooter .-credit > .-right {
	width: 78%;
}

.globalFooter ul {
	display: flex;
	justify-content: space-between;
}

.globalFooter li {
	line-height: 1;
}

.globalFooter li:not(:first-child) {
	border-left: solid 1px #fff;
	margin-left: 1em;
	padding-left: 1.1em;
}

.globalFooter a {
	color: #fff;
	text-decoration: none;
}

.globalFooter a:hover {
	text-decoration: underline;
}

.copyright {
	text-align: right;
}

.pageUp {
	position: fixed;
	right: 5rem;
	bottom: 9rem;
	opacity: 0;
	transition: .5s;
	background: rgba(255, 255, 255, 0.9);
}

.pageUp.is-visible {
	opacity: 1;
}

.pageUp:hover {
	transform: translateY(-0.5em);
}

.pageUp > ._arrow {
	font-size: 1.5rem;
	transition: .4s;
}

.mainContent > .-mainPad {
	width: 720px;
}

.topVisualTopics {
	padding-top: 6rem;
	margin-bottom: 2.5rem;
	position: relative;
}

.topVisualTopics > ._title {
	position: absolute;
	width: 16rem;
	text-align: center;
	z-index: 10;
	font-family: 'Roboto', 'Lato', 'Myriad Pro', 'Arial', sans-serif;
	font-size: 2.6rem;
	line-height: 1.6;
	letter-spacing: .2em;
	text-indent: .2em;
	color: #fff;
	background: #222;
}

.topSlider {
	opacity: 0;
	transition: 1s;
	outline: none;
}

.topSlider.slick-initialized {
	opacity: 1;
}

.topSlider .slick-list {
	overflow: visible;
	outline: none;
}

.topSlider .slick-slide {
	outline: none;
}

.topSlider .slick-dots {
	position: absolute;
	right: 0;
	width: 10rem;
	display: flex;
	justify-content: space-between;
}

.topSlider .slick-dots li button {
	display: inline-block;
	border-radius: 50%;
	background: #e2e2e2;
	width: 1rem;
	height: 1rem;
	padding: .4rem;
	text-indent: -10em;
	overflow: hidden;
}

.topSlider .slick-dots li.slick-active button {
	background: #476f81;
}

@media screen and (min-width: 1380px) {
	.topSlider .slick-dots {
		top: 78.5%;
	}
}

@media screen and (max-width: 1379px) {
	.topSlider .slick-dots {
		top: 77.5%;
	}
}

@media screen and (max-width: 1340px) {
	.topSlider .slick-dots {
		top: 76%;
	}
}

@media screen and (max-width: 1300px) {
	.topSlider .slick-dots {
		top: 75%;
	}
}

@media screen and (max-width: 1250px) {
	.topSlider .slick-dots {
		top: 74%;
	}
}

@media screen and (max-width: 1200px) {
	.topSlider .slick-dots {
		top: 73%;
	}
}

@media screen and (max-width: 1130px) {
	.topSlider .slick-dots {
		top: 72%;
	}
	.topSlider .slick-dots li button {
		width: 1.5rem;
		height: 1.5rem;
	}
}

.topSlider-item .-date {
	position: absolute;
	top: -3.3rem;
	right: -1.5rem;
}

.topSlider-item .-text {
	width: 720px;
	margin-top: -70px;
}

.topSlider-item .-titleBox {
	width: 580px;
	box-sizing: border-box;
	padding-right: 1em;
	background: #fff;
	position: relative;
}

.topSlider-item .-bottom {
	display: flex;
	justify-content: flex-end;
}

.topSlider-item ._thumbnail img {
	transition: .6s;
}

.topSlider-item ._thumbnail.is-hover img {
	transform: scale(1.04);
}

.topSlider-item ._textLink {
	display: block;
	transition: .4s;
}

.topSlider-item ._textLink:hover {
	color: #6f6f6f;
}

.topSlider-item ._theme {
	line-height: 1.8;
	margin-bottom: 1em;
}

.topSlider-item ._theme ._label {
	padding-top: .2em;
	padding-bottom: .2em;
}

.topSlider-item ._title {
	margin-bottom: .8em;
}

.topSlider-item ._title > span {
	margin-right: .3em;
}

.topSlider-item ._summary {
	margin-top: 2em;
}

.topInformation {
	background: #f6f6f6;
	padding: 2rem 2.5rem;
	margin-bottom: 3rem;
	font-size: 1em;
	line-height: 1.71428;
}

.topInformation > ._title {
	font-size: 1.14286em;
	line-height: 1.5;
	font-weight: bold;
	border-bottom: solid 1px #e2e2e2;
	padding-bottom: .5em;
}

.topInformation > ._content {
	margin-top: .8em;
}

.articleBody + .articleList,
.articleList + .articleList {
	margin-top: 4em;
}

.articleList.var-movie > ._title {
	font-size: 1.28571em;
	line-height: 1.4;
	border-left: solid 3px #466f81;
	padding-left: .8em;
	margin-bottom: 1.4em;
}

.listA {
	border-top: solid 2px #222;
}

body.index .listA {
	border-top: none;
}

.listA-item {
	border-bottom: solid 2px #222;
	padding: 1.5em 0 1em;
	font-size: 1.4rem;
	line-height: 1.71428;
	transition: opacity 1s;
}

.listA-item > .-image {
	width: 180px;
	height: calc(180px * .666);
	overflow: hidden;
	float: right;
	margin-left: 1em;
	margin-bottom: .55em;
}

.listA-item > .-link {
	position: relative;
	margin-top: 1em;
	min-height: 2em;
}

.listA-item > .-link > .-this {
	position: absolute;
	top: -.8em;
	right: 0;
}

.listA-item .-props {
	display: flex;
	margin-bottom: .1em;
}

.listA-item .-props > .-prop1 {
	margin-right: 1.2em;
	width: 100px;
}

.listA-item::after {
	content: "";
	display: block;
	clear: both;
}

.listA-item ._thumbnail {
	max-width: 100%;
}

.listA-item ._theme {
	font-size: 0.85714em;
}

.listA-item ._textLink {
	display: block;
	transition: .4s;
}

.listA-item ._textLink:hover {
	opacity: .6;
}

.listA-item ._title {
	font-size: 1.42857em;
	line-height: 1.5;
	font-weight: bold;
}

.listA-item ._title > span {
	margin-right: .3em;
}

.listA-item ._summary {
	font-size: 1em;
	letter-spacing: .02em;
	margin-top: .6em;
}

.listA-item.is-hidden {
	opacity: 0;
}

body.gdn .listA-item ._theme {
	display: none;
}

body.heart-campaign .listA-item ._theme {
	display: none;
}

body.heart-medical .listA-item ._theme {
	display: none;
}

body.bigdata .listA-item ._theme {
	display: none;
}

.authors {
	margin-top: .6em;
	margin-bottom: .6em;
}

.authors > li {
	color: #888;
	font-size: 0.85714em;
	line-height: 1.33;
	font-weight: normal;
}

.authors > li:not(:first-child) {
	margin-top: .33em;
}

.leafHeader .authors > li {
	color: #222;
}

.pubDate {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	font-family: 'Roboto', 'Lato', 'Myriad Pro', 'Arial', sans-serif;
	display: flex;
	transform: translateY(-1em);
}

.pubDate span {
	display: block;
	text-shadow: #fff 2px 0px,  #fff -2px 0px,
 #fff 0px -2px, #fff 0px 2px,
 #fff 2px 2px , #fff -2px 2px,
 #fff 2px -2px, #fff -2px -2px,
 #fff 1px 2px,  #fff -1px 2px,
 #fff 1px -2px, #fff -1px -2px,
 #fff 2px 1px,  #fff -2px 1px,
 #fff 2px -1px, #fff -2px -1px;
}

.pubDate > .-ym {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-content: flex-end;
	margin-right: .1em;
}

.pubDate > .-d {
	display: flex;
	align-content: flex-end;
}

.pubDate ._year {
	font-size: 1em;
	letter-spacing: -.03em;
}

.pubDate ._month {
	font-size: 2em;
	letter-spacing: -.03em;
}

.pubDate ._date {
	display: block;
	font-size: 5em;
	letter-spacing: -.02em;
	transform: translateY(0.1em);
}

.topSlider-item .pubDate,
.leafHeader .pubDate {
	font-size: 1.6rem;
}

.volLinks {
	display: flex;
}

.volLinks > li {
	font-size: 0.85714em;
}

.volLinks > li:not(:first-child) {
	margin-left: 1em;
}

.volLinks > li ._button {
	padding: .1em .6em;
	letter-spacing: .05em;
	font-weight: normal;
	transition: .4s;
}

body.gdn .volLinks > li ._button {
	background: #d45d87;
}

body.heart-campaign .volLinks > li ._button {
	background: #1e98b9;
}

body.heart-medical .volLinks > li ._button {
	background: #59955c;
}

body.bigdata .volLinks > li ._button {
	background: #416bb1;
}

.volLinks > li ._button::before {
	display: inline-block;
	content: '';
	width: .3em;
	height: .3em;
	border-bottom: solid 1px #fff;
	border-left: solid 1px #fff;
	transform: rotate(-135deg);
	vertical-align: .2em;
	margin-right: .6em;
}

.volLinks > li ._button:hover {
	opacity: .8;
}

.viewMore {
	margin: 3rem 0;
}

.viewMore ._button {
	padding: .8em;
}

.viewMore ._button::before {
	display: inline-block;
	content: '';
	width: .6em;
	height: .6em;
	border-bottom: solid 1px #fff;
	border-left: solid 1px #fff;
	transform: rotate(-45deg);
	vertical-align: .2em;
	margin-right: .9em;
}

.breadcrumb {
	padding: .8em 0;
	width: 100%;
	overflow: hidden;
}

.breadcrumb li {
	display: inline-block;
	font-size: 0.85714em;
	overflow: hidden;
}

.breadcrumb li a {
	color: #222;
}

.breadcrumb li a:hover {
	text-decoration: underline;
	color: #555;
}

.breadcrumb li:last-child {
	max-width: 16em;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.breadcrumb li:last-child a {
	pointer-events: none;
	color: #888;
}

.breadcrumb li:not(:first-child)::before {
	vertical-align: .1em;
	display: inline-block;
	content: '';
	width: .5em;
	height: .5em;
	margin: 0 1.3em 0 .65em;
	border-top: solid 1px #888;
	border-right: solid 1px #888;
	transform: rotate(45deg);
}

.indexHeader > ._theme {
	display: block;
	text-align: left;
	margin-bottom: 1em;
}

.listM {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.listM::after {
	display: block;
	content: '';
	width: 30.55556%;
	height: 0;
}

.listM-item {
	width: 30.55556%;
	transition: opacity 1s;
}

.listM-item:not(:nth-child(-n + 3)) {
	margin-top: 1.4em;
}

.listM-item a {
	display: block;
}

.listM-item .-text {
	margin-top: .6em;
}

.listM-item ._thumbnail {
	position: relative;
}

.listM-item ._thumbnail::before {
	position: absolute;
	display: block;
	content: '';
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 3.3em;
	height: 3.3em;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 50%;
}

.listM-item ._thumbnail::after {
	position: absolute;
	display: block;
	content: '';
	z-index: 15;
	top: 0;
	bottom: 0;
	left: 1.2em;
	right: 0;
	margin: auto;
	width: 0;
	height: 0;
	border: solid 1em transparent;
	border-left-color: #fff;
	border-width: 0.5em 0.866em;
}

.listM-item ._vol {
	font-size: 0.85714em;
	line-height: 1.4;
}

.listM-item ._title {
	font-size: 1em;
	line-height: 1.4;
	letter-spacing: 1;
	margin-top: .25em;
}

.listM-item.is-hidden {
	opacity: 0;
}

.leafParentHeader {
	margin-bottom: 2em;
}

.leafParentHeader ._parentTitle:hover {
	opacity: 1;
}

.profiles {
	margin-bottom: 4rem;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}

.profile {
	background: #f6f6f6;
	cursor: pointer;
	padding: 2rem 2rem 4rem 6rem;
	position: relative;
	display: flex;
	justify-content: space-between;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}

.profile:not(:first-child) {
	margin-top: 1em;
}

.profile .-image {
	width: 110px;
	margin-right: 1.5em;
	position: relative;
}

.profile .-text {
	flex: 1;
}

.profile::before {
	content: 'Profile';
	display: inline-block;
	position: absolute;
	left: -1rem;
	width: 7em;
	height: 1em;
	transform: rotate(90deg) translateX(42%);
}

.profile::after {
	display: inline-block;
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2rem;
	margin: auto;
	width: .5em;
	height: .5em;
	border-right: solid 1px #3a3a3a;
	border-bottom: solid 1px #3a3a3a;
	transform: rotate(45deg);
	transition: .5s;
}

.profile ._photo {
	width: 110px;
	height: 110px;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 0;
	overflow: hidden;
}

.profile ._name {
	font-weight: bold;
	font-size: 1.14286em;
}

.profile ._position {
	font-size: 0.85714em;
	color: #727272;
}

.profile ._profile {
	font-size: 1em;
	line-height: 1.714;
	height: calc(1em * 1.714 * 3);
	overflow: hidden;
	margin-top: .8em;
	position: relative;
}

.profile ._profile::after {
	display: block;
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 3em;
	opacity: 1;
	transition: .5s;
	background: linear-gradient(to bottom, rgba(246, 246, 246, 0) 0%, #f6f6f6 100%);
}

.profile.is-opened::after {
	transform: rotate(-135deg);
	bottom: 1.5rem;
	transition: .5s;
}

.profile.is-opened ._profile {
	height: auto;
}

.profile.is-opened ._profile::after {
	bottom: -3em;
	transition: 1s;
}

.leafHeader {
	margin-bottom: 4rem;
	border-bottom: solid 1px #e2e2e2;
}

.leafHeader .-date-title {
	margin-top: 1.25em;
	margin-bottom: 1.25em;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.leafHeader .-date-title > .-date {
	width: 13.5rem;
}

.leafHeader .-date-title > .-titlebox {
	min-height: 6em;
	width: calc(100% - 13.5rem - 2rem);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.leafHeader ._parentTitle {
	opacity: 1;
	transition: .3s;
}

.leafHeader ._parentTitle:hover {
	opacity: .8;
}

.leafHeader ._title > span {
	margin-right: .3em;
}

.leafHeader ._subTitle {
	font-size: 1.14286em;
	line-height: 1.75;
	margin-top: .33em;
}

.leafHeader ._author {
	margin-top: 1.5em;
	margin-bottom: 1.75em;
}

.leafHeader ._summary {
	font-size: 1em;
	line-height: 2;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

/* ================================================
■BP標準CSS（21世紀医療フォーラム）
================================================  */
.articleBody::after {
	display: block;
	content: '';
	clear: both;
}

.articleBody h4.sample {
	background: #466f81 !important;
	color: #fff !important;
	font-size: 1em !important;
	line-height: 1.5 !important;
	padding: .3em .7em !important;
	margin-top: 0 !important;
}

.articleBody h4.sample:not(:first-child) {
	margin-top: 5em !important;
}

/* リード */
.articleBody .bplead {
	margin-bottom: 3em;
}

/* 中見出し */
.articleBody > h3 {
	clear: both;
	margin-top: 3em;
	margin-bottom: 1.5em;
	font-size: 1.21429em;
	line-height: 1.66;
	font-weight: bold;
	padding-bottom: .5em;
	border-bottom: solid 2px #e2e2e2;
	position: relative;
}

.articleBody > h3::after {
	display: inline-block;
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 30%;
	height: 2px;
	background: #466f81;
	transform: translateY(100%);
}

/* 小見出し */
.articleBody > h4 {
	clear: both;
	margin-top: 3em;
	margin-bottom: 1.5em;
	font-size: 1.07143em;
	line-height: 1.77;
	font-weight: bold;
}

/* 地の文 */
.articleBody p {
	margin: 0.5em;
}

/* フォントのサイズ変更 */
.articleBody .fontSizeXXL {
	font-size: 3em;
}

.articleBody .fontSizeXL {
	font-size: 2em;
}

.articleBody .fontSizeL {
	font-size: 1.5em;
}

.articleBody .fontSizeS {
	font-size: 0.8em;
}

.articleBody .fontSizeXS {
	font-size: 0.4em;
}

/* 文字色と背景色 */
.articleBody [class^="bgCol"] {
	display: inline-block;
	line-height: 1.7;
	padding: 0 .4em;
}

.articleBody .textCol {
	color: #222;
}

.articleBody .textColTintA {
	color: #222;
}

.articleBody .textColTintB {
	color: #222;
}

.articleBody .textColShade {
	color: #888;
}

.articleBody .textColShadeA {
	color: #888;
}

.articleBody .textColShadeB {
	color: #888;
}

.articleBody .bgCol {
	background-color: #466f81;
	color: #fff;
}

.articleBody .bgColTintA {
	background-color: #2d799a;
	color: #fff;
}

.articleBody .bgColTintB {
	background-color: #1482b3;
	color: #fff;
}

.articleBody .bgColShade {
	background-color: #dbe6eb;
}

.articleBody .bgColShadeA {
	background-color: #e1ebef;
}

.articleBody .bgColShadeB {
	background-color: #ebf2f4;
}

.articleBody .textColBlackTintA {
	color: dimgray;
}

.articleBody .textColBlackTintB {
	color: darkgray;
}

.articleBody .textColBlackShade {
	color: lightgrey;
}

.articleBody .textColBlackShadeA {
	color: gainsboro;
}

.articleBody .textColBlackShadeB {
	color: whitesmoke;
}

.articleBody .bgColBlack {
	background-color: black;
}

.articleBody .bgColBlackTintA {
	background-color: dimgray;
}

.articleBody .bgColBlackTintB {
	background-color: darkgray;
}

.articleBody .bgColBlackShade {
	background-color: lightgrey;
}

.articleBody .bgColBlackShadeA {
	background-color: gainsboro;
}

.articleBody .bgColBlackShadeB {
	background-color: whitesmoke;
}

.articleBody .textColBlack {
	color: black;
}

.articleBody .textColGray {
	color: gray;
}

.articleBody .textColSilver {
	color: silver;
}

.articleBody .textColWhite {
	color: white;
}

.articleBody .textColRed {
	color: red;
}

.articleBody .textColYellow {
	color: yellow;
}

.articleBody .textColLime {
	color: lime;
}

.articleBody .textColAqua {
	color: aqua;
}

.articleBody .textColBlue {
	color: blue;
}

.articleBody .textColFuchsia {
	color: fuchsia;
}

.articleBody .textColMaroon {
	color: maroon;
}

.articleBody .textColOlive {
	color: olive;
}

.articleBody .textColGreen {
	color: green;
}

.articleBody .textColTeal {
	color: teal;
}

.articleBody .textColNavy {
	color: navy;
}

.articleBody .textColPurple {
	color: purple;
}

.articleBody .bgColBlack {
	background-color: black;
}

.articleBody .bgColGray {
	background-color: gray;
}

.articleBody .bgColSilver {
	background-color: silver;
}

.articleBody .bgColWhite {
	background-color: white;
}

.articleBody .bgColRed {
	background-color: red;
}

.articleBody .bgColYellow {
	background-color: yellow;
}

.articleBody .bgColLime {
	background-color: lime;
}

.articleBody .bgColAqua {
	background-color: aqua;
}

.articleBody .bgColBlue {
	background-color: blue;
}

.articleBody .bgColFuchsia {
	background-color: fuchsia;
}

.articleBody .bgColMaroon {
	background-color: maroon;
}

.articleBody .bgColOlive {
	background-color: olive;
}

.articleBody .bgColGreen {
	background-color: green;
}

.articleBody .bgColTeal {
	background-color: teal;
}

.articleBody .bgColNavy {
	background-color: navy;
}

.articleBody .bgColPurple {
	background-color: purple;
}

/* テキストの強調 */
.articleBody .fontBold,
.articleBody b {
	font-weight: bold;
}

.articleBody .fontNormal {
	font-weight: normal;
}

.articleBody .fontItalic,
.articleBody i {
	font-style: italic;
}

.articleBody em,
.articleBody strong {
	font-style: inherit;
	font-weight: inherit;
}

/* テキストの上付き、下付き */
.articleBody sup {
	vertical-align: super;
}

.articleBody sub {
	vertical-align: sub;
}

/* 下線と取り消し線 */
.articleBody .textSolidUndrLine,
.articleBody u {
	text-decoration: none;
	padding-bottom: .05em;
	border-bottom: solid .1em gray;
}

.articleBody .textUnsolidUndrLine {
	padding-bottom: .05em;
	border-bottom: dashed .1em gray;
}

.articleBody .textLineThrough,
.articleBody del,
.articleBody s {
	text-decoration: line-through;
}

/* マーカー（Highlight） */
.articleBody [class^=textHighlight] {
	display: inline-block;
	padding: 0 .33em;
}

.articleBody .textHighlight {
	background: #466f81;
	color: #fff;
}

.articleBody .textHighlightTintA {
	background: red;
	color: white;
}

.articleBody .textHighlightTintB {
	background: greenyellow;
}

.articleBody .textHighlightShade {
	background: #dbe6eb;
	background: linear-gradient(transparent 60%, #dbe6eb 60%);
}

.articleBody .textHighlightShadeA {
	background: plum;
	background: linear-gradient(transparent 60%, plum 60%);
}

.articleBody .textHighlightShadeB {
	background: palegreen;
	background: linear-gradient(transparent 60%, palegreen 60%);
}

/* 左寄せ、左右中央、右寄せ */
.articleBody .textAlignLeft {
	text-align: left;
}

.articleBody .textAlignCenter {
	text-align: center;
}

.articleBody .textAlignRight {
	text-align: right;
}

/* 区切り要素 */
.articleBody hr,
.articleBody hr.line {
	display: inline-block;
	margin: 2em 0;
	width: 100%;
	height: 1px;
	background: #e2e2e2;
	border: none;
}

.articleBody hr::after,
.articleBody hr.line::after {
	content: "";
	display: block;
}

.articleBody hr.asterisk {
	border: none;
	background: none;
	height: 2em;
}

.articleBody hr.asterisk::after {
	content: "＊＊＊";
	letter-spacing: 4em;
	margin-right: -4em;
	text-align: center;
}

.articleBody hr.diamond {
	border: none;
	background: none;
	height: 2em;
}

.articleBody hr.diamond::after {
	content: "◇◇◇";
	letter-spacing: 4em;
	margin-right: -4em;
	text-align: center;
}

/* 回り込み解除 */
.articleBody .clearLeft {
	clear: left;
}

.articleBody .clearRight {
	clear: right;
}

.articleBody .clearBoth {
	clear: both;
}

.articleBody .clearfix::after {
	content: "";
	display: block;
	clear: both;
}

/* 図（画像） */
.articleBody [class^='bpimage'] img {
	width: 100% !important;
}

.articleBody .bpimage_image a {
	display: block;
}

.articleBody .bpimage_image iframe {
	display: block;
	margin: 1em auto;
}

.articleBody .bpimage_click + .bpimage_image,
.articleBody .bpimage_caption + .bpimage_image,
.articleBody .bpimage_title + .bpimage_image {
	margin-top: .65em;
}

/* 画像のキャプション */
.articleBody .bpimage_title + .bpimage_caption {
	margin-top: .3em;
}

.articleBody .bpimage_title {
	font-size: 0.92857em;
	line-height: 1.5em;
	font-weight: bold;
	margin-top: .75em;
}

.articleBody .bpimage_title:first-child {
	margin-top: 0;
}

.articleBody .bpimage_caption {
	font-size: 0.92857em;
	line-height: 1.5em;
	margin-top: .75em;
}

.articleBody .bpimage_title + .bpimage_caption {
	margin-top: .35em;
}

.articleBody .bpimage_click {
	font-size: 0.92857em;
	line-height: 1.5em;
	margin-top: .75em;
	color: #466f81;
}

.articleBody .bpimage_title + .bpimage_click,
.articleBody .bpimage_caption + .bpimage_click {
	margin-top: .4em;
}

/* 図（回り込み：左）右配置 */
.articleBody .bpimage_right {
	float: right;
	margin: .3em 0 1em 2em;
}

/* 図（回り込み：右）左配置 */
.articleBody .bpimage_left {
	float: left;
	margin: .3em 2em 1em 0;
}

/* 図（スタンダード）中央配置 */
.articleBody .bpimage_center {
	width: 100% !important;
	margin: 3em auto;
}

/* 図（二つ並び） */
.articleBody .bpimage_double {
	width: 100% !important;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 3em auto;
	overflow: hidden;
}

.articleBody .bpimage_double .bpimage_wrap {
	overflow: hidden;
	margin-bottom: 1em;
}

.articleBody .bpimage_double .bpimage_left {
	float: none;
	width: 48% !important;
	margin: 0 0;
}

.articleBody .bpimage_double .bpimage_right {
	float: none;
	width: 48% !important;
	margin: 0 0;
}

/* 図（三つ並び） */
.articleBody .bpimage_triple {
	width: 100% !important;
	margin: 3em auto;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.articleBody .bpimage_triple .bpimage_wrap {
	margin: 0;
	width: 475px !important;
	display: flex;
	justify-content: space-between;
}

.articleBody .bpimage_triple .bpimage_left,
.articleBody .bpimage_triple .bpimage_center {
	margin: 0;
	width: 230px !important;
}

.articleBody .bpimage_triple .bpimage_right {
	margin: 0;
	width: 230px !important;
}

.articleBody .bpimage_triple > .bpimage_title,
.articleBody .bpimage_triple > .bpimage_caption,
.articleBody .bpimage_triple > .bpimage_click {
	width: 100%;
}

/* 図（縦積み）*/
.articleBody .bpbox_left {
	float: left;
	margin: .5em 2em 1em 0;
}

.articleBody .bpbox_right {
	float: right;
	margin: .5em 0 1em 2em;
}

.articleBody .bpimage_set {
	margin: 0 0 1.5em;
}

/* 図（エトキ右配置） */
.articleBody .bpimage_caption_right {
	margin: 2em auto;
	overflow: hidden;
}

.articleBody .bpimage_caption_right .bpimage_left {
	margin-bottom: 0;
}

.articleBody .bpimage_caption_right .bpimage_title {
	margin-top: .3em;
	padding: 0;
	clear: none;
}

.articleBody .bpimage_caption_right .bpimage_caption {
	clear: none;
}

/* テーブル基本 */
.articleBody .bptable {
	margin: 3em auto;
	overflow-x: auto;
}

.articleBody .bptable table {
	border-collapse: collapse;
}

.articleBody .bptable td,
.articleBody .bptable th {
	border: 1px solid #e2e2e2;
	padding: .65em 1em;
	font-size: 1em;
	line-height: 1.3em;
	text-align: center;
}

.articleBody .bptable th {
	background: #f6f6f6;
}

.articleBody .bptable_title {
	font-size: 1em;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: .5em;
}

.articleBody .bptable_caption {
	font-size: 1em;
	line-height: 1.5em;
}

.articleBody .bptable_caption + table,
.articleBody .bptable_title + table {
	margin-top: .75em;
}

/* テーブル（イ）表左寄せ */
.articleBody .bptable_left {
	float: left;
	clear: both;
	margin: 0 2em 1em 0;
}

/* テーブル（ウ）表右寄せ */
.articleBody .bptable_right {
	float: right;
	clear: both;
	margin: 0 0 1em 2em;
}

/* テーブル（エ）表中央 */
.articleBody .bptable_center {
	clear: both;
}

/* プロフィール */
.articleBody .bpprofile,
.articleBody .bpprofile_photo {
	width: auto;
	clear: both;
	border-top: 3px solid #888;
	margin: 4em 0;
	padding: 1.5em .5em 0;
	overflow: hidden;
}

.articleBody .bpprofile_profile {
	margin: 0 0 1em;
}

.articleBody .bpprofile_position {
	font-size: 1em;
	line-height: 1.4em;
	display: inline-block;
	margin: .5em 0 0;
}

.articleBody .bpprofile_name {
	line-height: 1.4em;
	font-weight: bold;
	display: inline-block;
	margin: 0;
}

.articleBody .bpprofile_text {
	font-size: 1em;
	line-height: 1.8;
	margin: 1em 0 0;
}

/* プロフィール（顔写真付） */
.articleBody .bpprofile_photo .bpprofile_text img {
	float: right;
	margin: 0 0 0 2em;
	padding: 0;
}

/* インタビュープロフィール用 */
.articleBody .bpinterview {
	width: auto;
	margin: 2em 0;
	padding: 1em 1.5em;
	border: 1px solid #ccc;
}

.articleBody .bpinterview_profile {
	margin: 0 0 1em;
}

.articleBody .bpinterview_position {
	font-size: 1em;
	line-height: 1.4;
	display: inline-block;
	margin: .5em 0 0;
}

.articleBody .bpinterview_name {
	line-height: 1.4;
	font-weight: bold;
	display: inline-block;
}

.articleBody .bpinterview_text {
	font-size: 1em;
	line-height: 1.8;
	margin: 1em 0 0;
}

/* リスト */
.articleBody ol > li,
.articleBody ul > li {
	padding-left: .4em;
}

.articleBody dl > dd {
	margin: 0 0 .5em 2em;
}

.articleBody dl,
.articleBody ol,
.articleBody ul {
	margin-bottom: 1.5em;
}

.articleBody ul {
	padding-left: 2em;
}

.articleBody ul li {
	list-style-type: disc;
}

.articleBody ul.disc li {
	list-style-type: disc;
}

.articleBody ul.circle li {
	list-style-type: circle;
}

.articleBody ul.square li {
	list-style-type: square;
}

.articleBody ul.none {
	margin-left: 0;
	padding-left: .5em;
}

.articleBody ul.none li {
	list-style-type: none;
}

.articleBody ol {
	padding-left: 2em;
}

.articleBody ol li {
	list-style-type: decimal;
}

.articleBody ol.upperAlpha li {
	list-style-type: upper-alpha;
}

.articleBody ol.lowerAlpha li {
	list-style-type: lower-alpha;
}

.articleBody ol.upperRoman li {
	list-style-type: upper-roman;
}

.articleBody ol.lowerRoman li {
	list-style-type: lower-roman;
}

.articleBody ol.circledDecimal {
	padding-left: 1em;
}

.articleBody ol.circledDecimal li {
	list-style: none;
	text-indent: -1em;
}

.articleBody ol.circledDecimal li::before {
	padding-right: .35em;
}

.articleBody ol.circledDecimal li:nth-child(1)::before {
	content: "\2460";
}

.articleBody ol.circledDecimal li:nth-child(2)::before {
	content: "\2461";
}

.articleBody ol.circledDecimal li:nth-child(3)::before {
	content: "\2462";
}

.articleBody ol.circledDecimal li:nth-child(4)::before {
	content: "\2463";
}

.articleBody ol.circledDecimal li:nth-child(5)::before {
	content: "\2464";
}

.articleBody ol.circledDecimal li:nth-child(6)::before {
	content: "\2465";
}

.articleBody ol.circledDecimal li:nth-child(7)::before {
	content: "\2466";
}

.articleBody ol.circledDecimal li:nth-child(8)::before {
	content: "\2467";
}

.articleBody ol.circledDecimal li:nth-child(9)::before {
	content: "\2468";
}

.articleBody ol.circledDecimal li:nth-child(10)::before {
	content: "\2469";
}

.articleBody ol.circledDecimal li:nth-child(11)::before {
	content: "\246a";
}

.articleBody ol.circledDecimal li:nth-child(12)::before {
	content: "\246b";
}

.articleBody ol.circledDecimal li:nth-child(13)::before {
	content: "\246c";
}

.articleBody ol.circledDecimal li:nth-child(14)::before {
	content: "\246d";
}

.articleBody ol.circledDecimal li:nth-child(15)::before {
	content: "\246e";
}

.articleBody ol.circledDecimal li:nth-child(16)::before {
	content: "\246f";
}

.articleBody ol.circledDecimal li:nth-child(17)::before {
	content: "\2470";
}

.articleBody ol.circledDecimal li:nth-child(18)::before {
	content: "\2471";
}

.articleBody ol.circledDecimal li:nth-child(19)::before {
	content: "\2472";
}

.articleBody ol.circledDecimal li:nth-child(20)::before {
	content: "\2473";
}

.articleBody dl > dt {
	text-decoration: underline;
	margin: 1em 1em;
}

.articleBody dl > dd > ul {
	margin-top: .5em;
}

/* 対談、インタビュー */
.articleBody p span[class^='speaker'] {
	color: #222;
	font-weight: bold;
	margin-right: 0.5em;
}

/* 質問と回答 */
.articleBody .bpquestion {
	font-weight: bold;
	margin: 0 0 1.5em;
}

.articleBody .bpquestion::before {
	content: '——';
	display: inline-block;
	margin-right: .35em;
	color: #a9a9a9;
}

/* 囲み共通 */
.articleBody .bpbox,
.articleBody .bpbox2,
.articleBody .bpbox3,
.articleBody .bpbox4,
.articleBody .bpframe {
	width: auto;
	clear: both;
	margin: 3em 0;
	padding: 1.75em 2em;
}

.articleBody .bpbox_title {
	line-height: 1.4;
	font-size: 1.14286em;
	font-weight: bold;
	margin: 0 0 .8em;
	padding: 0 0 .7em;
}

.articleBody .bpbox_text h3 {
	line-height: 1.4;
	margin-bottom: .8em;
}

.articleBody .bpbox_text h4 {
	font-size: 1em;
	line-height: 1.4;
	margin-bottom: .8em;
}

.articleBody .bpbox_text p + h3,
.articleBody .bpbox_text p + h4 {
	margin-top: 1.5em;
}

.articleBody .bpbox_text,
.articleBody .bpbox_text p {
	font-size: 1em;
	line-height: 1.7em;
	margin: 0;
	overflow: hidden;
}

.articleBody .bpbox_text .bpimage_left {
	margin: 0 1em 0 0;
}

.articleBody .bpbox_text p + p {
	margin-top: 1em;
}

.articleBody .bpbox_text li {
	font-size: 1em;
	margin: 0 0 .6em 2em;
	text-indent: -1em;
}

/* 囲み1 */
.articleBody .bpbox {
	border: 1px solid #f6f6f6;
	background: #f6f6f6;
}

.articleBody .bpbox .bpbox_title {
	border-bottom: 1px solid #e2e2e2;
}

/* 囲み2 */
.articleBody .bpbox2 {
	border: 1px solid #fff9f5;
	background: #fff9f5;
}

.articleBody .bpbox2 .bpbox_title {
	border-bottom: 1px solid #e2e2e2;
}

/* 囲み3 */
.articleBody .bpbox3 {
	border: 1px solid #e2e2e2;
	background: #fff;
}

.articleBody .bpbox3 .bpbox_title {
	border-bottom: 1px solid #e2e2e2;
}

/* 囲み4 */
.articleBody .bpbox4 {
	border: 1px solid #fff;
	background: #eee;
}

.articleBody .bpbox4 .bpbox_title {
	border-bottom: 1px solid #fff;
}

/* シンプル囲み */
.articleBody .bpframe {
	border: 1px solid #ccc;
	background: #fafafa;
}

.articleBody .bpframe .bpbox_title {
	border-bottom: 1px solid #e2e2e2;
}

/* 引用 */
.articleBody blockquote {
	background-color: #f6f6f6;
	margin: 3em 0;
	padding: 3em 2em 3em;
	position: relative;
	line-height: 1.7;
}

.articleBody blockquote::before {
	content: "“";
	font-size: 5em;
	line-height: 1;
	font-family: sans-serif;
	color: #ddd;
	position: absolute;
	left: 14px;
	top: .2em;
}

.articleBody blockquote::after {
	content: "”";
	font-size: 5em;
	line-height: .2em;
	font-family: sans-serif;
	color: #ddd;
	position: absolute;
	right: 14px;
	bottom: 0;
}

.articleBody blockquote h3 {
	border-bottom: solid 1px #e2e2e2;
	font-size: 1.14286em;
	font-weight: bold;
	padding-bottom: .3em;
	margin-bottom: .6em;
}

.articleBody blockquote cite {
	font-style: normal;
}

.articleBody blockquote [class^='textAlign'] {
	margin-top: 1.5em;
}

/* コード */
.articleBody pre {
	margin: 3em 0;
	padding: 1.75em 2em;
	white-space: pre;
	font-size: 1em;
	line-height: 1.7;
	overflow: auto;
	border: 1px solid #e2e2e2;
	background: #fff;
}

.articleBody pre.light {
	color: black;
	background-color: #f6f6f6;
	border: 1px solid #f6f6f6;
}

.articleBody pre.dark {
	color: white;
	background-color: black;
	border: 1px solid silver;
}

.articleBody pre > code {
	font-family: 'Myriad Pro', Arial, sans-serif;
}

/* コードリスト共通 ★廃止。互換性のために残す必要がある場合に使用★ */
.articleBody .bpcode,
.articleBody .bpcode2 {
	width: auto;
	clear: both;
	margin: 3em 0;
	padding: 1em;
	overflow: auto;
}

.articleBody .bpcode pre,
.articleBody .bpcode2 pre {
	line-height: 1.7em;
	font-size: 1em;
	margin: 0;
}

/* コードリスト（灰色） ★廃止。互換性のために残す必要がある場合に使用★ */
.articleBody .bpcode {
	background: #f6f6f6;
	border: 1px solid #f6f6f6;
}

/* コードリスト（緑色） ★廃止。互換性のために残す必要がある場合に使用★ */
.articleBody .bpcode2 {
	background: #f6f6f6;
	border: 1px solid #f6f6f6;
}

/* 訂正  */
.articleBody .bpteisei_box {
	width: auto;
	clear: both;
	margin: 2em 0;
	padding: 1.5em 2em;
	background: #f6f6f6;
	border-radius: 3px;
}

.articleBody .bpteisei_box .bpteisei {
	font-size: 1em;
	line-height: 1.7;
}

.articleBody .bpteisei_box .bpteisei b {
	font-size: 1.14286em;
	color: #222;
	display: inline-block;
	margin: 0 0 .3em;
}

/* 用語解説 */
.articleBody .bpword {
	line-height: 1.7;
	padding: 0;
	margin: 2em 0;
}

.articleBody .bpword b {
	font-size: 1.14286em;
	color: #222;
	display: inline-block;
	margin: 0 0 .3em;
}

/* 注釈  */
.articleBody .bpannotation {
	font-size: 1em;
	line-height: 1.5;
	margin: 2em 0;
}

/* 参考文献 */
.articleBody .bpreference {
	font-size: 1em;
	line-height: 1.7;
	border-top: 1px solid #ccc;
	padding: 1em 0;
}

.articleBody .bpreference b {
	font-size: 1.14286em;
	color: #222;
	display: inline-block;
	margin: 0 0 .3em;
}

.articleBody .pagenation {
	margin-top: 2em;
	padding: 2.5em;
	border-top: solid 1px #e2e2e2;
}

.articleBody .pagenation ol {
	display: flex;
	justify-content: center;
	padding: 0;
	margin: 0;
}

.articleBody .pagenation li {
	width: 2.2em;
	height: 2.2em;
	padding: 0;
	background: #f6f6f6;
	text-align: center;
	line-height: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.articleBody .pagenation li:not(:first-child) {
	margin-left: 1.5em;
}

.articleBody .pagenation li a {
	width: 100%;
	height: 100%;
	line-height: 2.1;
	transition: .2s;
}

.articleBody .pagenation li a:hover {
	background: #476f81;
	color: #fff;
}

.articleBody .pagenation li.current a {
	pointer-events: none;
	background: #476f81;
	color: #fff;
}

.backnumber {
	margin-top: 3rem;
	margin-bottom: 4rem;
}

.backnumber ._all {
	margin-top: 1em;
	text-align: right;
}

.backnumber ._all > ._button {
	width: 4.5em;
	font-size: 0.85714em;
}

.backnumber ._all > ._button::before {
	display: inline-block;
	content: '';
	margin-right: .5em;
	width: .3em;
	height: .3em;
	border-right: solid 1px #fff;
	border-bottom: solid 1px #fff;
	transform: translateY(-0.15em) rotate(-45deg);
}

.listB {
	border-top: solid 1px #e2e2e2;
}

.listB-item {
	border-bottom: solid 1px #e2e2e2;
	transition: opacity 1s;
}

.listB-item a {
	display: block;
	padding: .7em 1em;
	transition: .2s;
}

.listB-item a:hover {
	background: #f6f6f6;
}

.listB-item a > span {
	margin-right: .3em;
}

.listB-item.is-hidden {
	opacity: 0;
}

.linkPrevNext {
	margin-bottom: 3em;
}

.linkPrevNext ul {
	display: flex;
}

.linkPrevNext li {
	width: 50%;
	box-sizing: border-box;
	overflow: hidden;
}

.linkPrevNext li:first-child {
	border-right: solid 1px #e2e2e2;
}

.linkPrevNext ._arrow {
	color: transparent;
	transition: .4s;
}

.linkPrevNext a {
	display: block;
	padding: 2em;
	height: 100%;
	background: #fff;
	transition: .2s;
}

.linkPrevNext a:hover {
	background: #f6f6f6;
}

.linkPrevNext a:hover ._arrow {
	transform: translateX(0.75em);
}

.linkPrevNext a:hover ._arrow.var-left {
	transform: translateX(-0.75em) rotate(180deg);
}

.linkPrevNext a.is-hidden {
	visibility: hidden;
}

.linkPrevNext ._arrowTitle {
	font-weight: bold;
}

.linkPrevNext ._articleTitle {
	margin-top: 1em;
	line-height: 1.7;
}

.linkPrevNext ._prev {
	text-align: left;
	padding-right: 4em;
}

.linkPrevNext ._next {
	text-align: right;
	padding-left: 4em;
}

.article > .-return {
	margin-top: 2em;
	width: 20em;
	margin-left: auto;
	margin-right: auto;
}

.article ._returnButton {
	padding-top: .8em;
	padding-bottom: .8em;
}

.article ._returnButton::before {
	display: inline-block;
	content: '';
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(/images/21forum/2019/icon_return.svg);
	background-size: 1em 1em;
	transform: translateY(0.2em);
}

.zoomImageHeader ._title {
	margin-top: .5em;
}

.zoomImageHeader ._title > span {
	margin-right: .3em;
}

.zoomImage ._image {
	margin-top: 3.5rem;
}

.zoomImage ._caption {
	margin-top: 1em;
}
