@charset "UTF-8";
/* --------------- 経歴 --------------- */
.year_wrapper {
		line-height: 1.3em;
		margin: 16px 0px;
}
	.career dt {
		clear: left;
		float: left;
		width: 70px;
	}
	.career dt.last {
		width: 100%;
		float: none;
	}
	.career dd {
		margin: 0px 0px 6px 70px;
	}

/* --------------- 著書 --------------- */
#books #contents_wrapper {
	padding-bottom: 0px;
}
#book_inner_wrapper .bk_wrapper {
	position: relative;
	width: 201px;
	text-align: center;
	margin-bottom: 40px;
	margin-left: 16px;
	margin-right: 16px;
	float: left;
}
body.sp #book_inner_wrapper .bk_wrapper {
	margin-left: 0px;
	margin-right: 0px;
}
#book_inner_wrapper .bk_wrapper .image_wrapper {
	height: 240px;
}
#book_inner_wrapper .bk_wrapper .image_unit {
	left: 20px;
	height: 240px;
}
#book_inner_wrapper .bk_wrapper .image_unit img {
	height: 240px;
}
#book_inner_wrapper .bk_wrapper .text_unit {
	display: table;
	width: 201px;
	font-size: 12px;
	line-height: 20px;
	margin-bottom: 6px;
}
#book_inner_wrapper .bk_wrapper .text_unit p.new_release {
	left: 25px;
	width: 150px;
}
#book_inner_wrapper .bk_wrapper .text_unit p.million {
	color: white;
	font-weight: bold;
	background-color: red;
	border: 0px;
}
#book_inner_wrapper .bk_wrapper .text_unit h4 {
	display: table-cell;
	height: 70px;
	vertical-align: bottom;
}


/* ------------------------ 新刊+4d対策 ------------------------ */
	#book_inner_wrapper .bk_wrapper:nth-child(1) .text_unit h4,
	#book_inner_wrapper .bk_wrapper:nth-child(2) .text_unit h4,
	#book_inner_wrapper .bk_wrapper:nth-child(3) .text_unit h4,
	#book_inner_wrapper .bk_wrapper:nth-child(4) .text_unit h4 {
		height: 90px;
	}
	body.sp #book_inner_wrapper .bk_wrapper:nth-child(1) .text_unit h4,
	body.sp #book_inner_wrapper .bk_wrapper:nth-child(2) .text_unit h4 {
		height: 70px;
	}
	body.sp #book_inner_wrapper .bk_wrapper:nth-child(3) .text_unit h4,
	body.sp #book_inner_wrapper .bk_wrapper:nth-child(4) .text_unit h4 {
		height: 90px;
	}
	body.sp #book_inner_wrapper .bk_wrapper.bk51 .text_unit h4 br {
		display: none;
	}
	

#book_inner_wrapper .bk_wrapper .button {
	display: inline-block;
	margin: 10px 0px 0px 0px;
}
#book_inner_wrapper .bk_wrapper .button.off {
	opacity: 0.2;
	cursor: default;
}
#book_inner_wrapper .bk_wrapper .side_release {
	position: absolute;
	bottom: 88px;
	right: 0px;
	z-index: 10;
}
.bk_wrapper .new_release.off,
.bk_wrapper .side_release.off {
	display: none;
}
#book_inner_wrapper .bk_wrapper .onlyside {
	display: none;
}
#book_wrapper .bk_wrapper .onlymain {
	display: none;
}

/* --------------- 予約の流れ --------------- */
.consul_flow {
	clear: both;
	width: 100%;
	min-height: 110px;
	background: url( /../images/flow/consul_arrow.gif ) 130px bottom no-repeat;
}
body.sp .consul_flow {
	background-position-x: 65px;
	min-height: 130px;
}
	.consul_flow.last {
		background-image: none;
		min-height: 70px;
	}
.consul_flow .consul_fig {
	width: 255px;
	padding: 5px;
	background-color: #fde8da;/* ----- お客様 ----- */
	border-radius: 4px;
	-webkit-border-radius: 4px;	/* Safari, Chrome */
	-moz-border-radius: 4px;		/* Firefox */
	float: left;
}
	body.sp .consul_flow .consul_fig {
		box-sizing: border-box;
		width: 140px;
	}
.consul_flow .consul_fig.secretariat {
	background-color: #e3f3d7;/* ----- 事務局 ----- */
}
.consul_flow .consul_fig .customer,
.consul_flow .consul_fig .secretariat {
	box-sizing: border-box;
	display: table;
	width: 46px;
	height: 46px;
	font-size: 13px;
	color: white;
	text-align: center;
	margin-right: 10px;
	background-color: #f07800;/* ----- お客様　四角 ----- */
	border-radius: 4px;
	-webkit-border-radius: 4px;	/* Safari, Chrome */
	-moz-border-radius: 4px;		/* Firefox */
	float: left;
}
	body.sp .consul_flow .consul_fig .customer,
	body.sp .consul_flow .consul_fig .secretariat {
		float: none;
		width: 100%;
		height: 20px;
		margin-bottom: 5px;
	}
.consul_flow .consul_fig .secretariat {
	background-color: #00963c;/* ----- 事務局　四角 ----- */
}
.consul_flow .consul_fig p {
	display: table-cell;
	vertical-align: middle;
}
.consul_flow .consul_fig .fig_text {
	display: table;
	height: 46px;
}
.consul_flow .consul_fig .fig_text p {
	display: table-cell;
	font-size: 14px;
	/*font-weight: bold;*/
	vertical-align: middle;
	line-height: 1.4em;
}
.consul_text {
	margin-left: 285px;
}
	body.sp .consul_text {
		margin-left: 155px;
	}
.consul_text h4 {
	margin-bottom: 5px;
}
/* 囲み */
.column_table {
	width: 100%;
	text-align: left;
	margin: 5px 0px 10px 0px;
}
.column_table, .column_table td {
	border: 1px #dcdcdc solid;
}
.column_table th, .column_table td {
	padding: 5px 10px 3px ;
	vertical-align: middle;
}
.column_table th {
	font-weight: bold;
	width: 70px;
	background-color: #dcdcdc;
	border-bottom: 1px white solid;
}
.column_table tr:last-child th {
	border-bottom: none;
}

/* --------------- カレンダー --------------- */
.calender_wrapper .month {
	font-size: 24px;
	margin-bottom: 10px;
	position: relative;
	_width: 604px; /* IE6 */
	_height: 28px; /* IE6 */
	_line-height: 28px; /* IE6 */
}
	.month p {
		position: absolute;
		top: 6px;
		right: 0px;
		font-size: 14px;
		top: 4px\9; /* IE8- */
		*top: 10px; /* IE7 */
	}
	.calender_wrapper .month.next {
		margin-top: 40px;
	}
span.times {
	display: block;
	font-size: 13px;
	line-height: 13px;
}
table.calender_table {
	table-layout: fixed;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
}
table.calender_table, table.calender_table th, table.calender_table td {
	border: 1px #dcdcdc solid;
}
table.calender_table th {
	width: 86px;
	font-size: 12px;
	line-height: 17px;
	background-color: #f8f8f8;
}
	body.sp table.calender_table th {
		width: 60px;
	}
	table.calender_table th { width/*\**/: 71px\9; } /* IE */
	table.calender_table th.holiday_bk {
		background-color: #ffdce6;
	}
	table.calender_table th.saturday_bk {
		background-color: #c8e6fa;
	}
table.calender_table td {
	height: 65px;
	vertical-align: top;
	padding-top: 7px;
}
/* @-moz-document url-prefix() { table.calender_table td { height: 70px; } }	FF */
	table.calender_table td.saturday {
		color: #0064e6;
	}
	table.calender_table td.sunday, table.calender_table td.holiday, table.calender_table td.sub_holiday {
		color: #ff001e;
	}
	table.calender_table td.closed {
		background-color: #eee;
	}
	.drmarker.weekday {
		color: #924f38;		/* 色変更201410 */
	}
	/* 休診 */
	.hosp_close {
		font-size: 13px;
		line-height: 13px;
		color: #464646;
		padding-top: 12px;
	}
		.hosp_close.double {
			padding-top: 6px;
			padding-bottom: 6px;
		}
	/* 休日hover設定 */
	table.calender_table td.holiday a:hover { color: #ff001e; text-decoration: none; cursor: pointer; }
	table.calender_table td.sub_holiday a:hover { color: #ff001e; text-decoration: none; cursor: pointer; }
.calender_footer {
	width: 100%;
	margin-top: 10px;
}
.calender_footer a.button {
	margin-left: 50px;
	float: left;
}
	body.sp .calender_footer a.button {
		margin-left: 0px;
		margin-bottom: 7px;
	}
.calender_footer_wrapper {
	width: 320px;
	float: right;
}
	body.sp .calender_footer_wrapper {
		float: left;
	}
.calender_footer p {
	text-align: right;
	line-height: 1.6em;
}
	body.sp .calender_footer p {
		text-align: left;
		font-size: 15px;
	}
/* 祝日バルーン整形　jQueryで表示*/
a.popup {
	display: block;
	width: 100%;
}
.holiname {
	position: relative;
}
.balloon {
	display: none;
	position: absolute;
	top: -60px;
	left: 28px;
	padding-top: 5px;
	width: 94px;
	height: 40px;
	font-size: 12px;
	font-weight: bold;
	line-height: 16px;
	color: #fff;
	background: url( ../images/balloon.png ) 0px 0px no-repeat;
}
	body.sp .balloon {
		left: 15px;
	}
/* 満了・終了のお知らせ */
.full_subscription {
	display: none;
	width: 100%;
	height: 22px;
	text-align: center;
	color: #f44;
	background-color: #fde9e9;
	padding-top: 8px;
}
	body.sp .full_subscription {
		height: 40px;
	}
.full_subscription h5 {
	font-size: 12px;
}
/* 先生逝去対応20220814 */
.calender20228 .full_subscription,
.calender20229 .full_subscription {
	display: none !important;
}

/* 休業のお知らせ */
.close_wrapper h5 {
	float: left;
}
.close_wrapper {
	display: none;
	border: 1px #dcdcdc solid;
	border-top: 0px;
	font-size: 12px;
	line-height: 18px;
	padding: 7px 10px 4px 10px;
	background-color: #f8f8f8;
}
.close_day {
	margin-left: 120px;
	font-size: 12px;
}
.sunday {
	color: #ff001e;
}
.saturday {
	color: #0064e6;
}
.weekday, .drmarker {
	color: #924f38;		/* 色変更201410 */
}

/* ---------- お問い合わせ窓口 ---------- */
.mail_wrapper {
	box-sizing: border-box;
	width: 418px;
	border: 1px #fff solid;
	margin-left: 34px;
	padding-bottom: 20px;
}
.mail_wrapper.on {
	/* 先生逝去対応20220814 */
	/*border: 1px solid #f44;
	margin-bottom: 25px;*/
}
	body.sp .mail_wrapper {
		margin-left: 0px;
	}
.mail_btn_wrapper {
	margin-left: 125px;
}
.mail_btn_wrapper a.button {
	margin: 0px;
	padding-top: 29px !important;
	padding-bottom: 29px;
}
.mail_btn_wrapper .text_wrapper {
	margin-top: 10px;
}
.contact_arrow {
	margin-left: 15px;
	float: left;
}
a.mailform_btn {
	display: block;
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	background: url( ../images/button/btn_close.png ) 0px 0px no-repeat;
	z-index: 30;
}
a.mailform_btn:hover {
	background-position-y: -30px;
}
iframe#mailform_frame {
	width: 100%;
	height: 100%;
	border: none;
}
/* 予約満了の場合表示する見出し要素 */
.full_caution {
	display: none;
	width: 100%;
	text-align: center;
	font-size: 12px;
	line-height: 18px;
	color: #f44;
	background-color: #fde9e9;
	padding: 8px 0px 6px 0px;
	margin-bottom: 20px;
}
/* 先生逝去対応20220814 */
.mail_wrapper.on .full_caution {
	/*display: block;*/
}
/* メールフォーム(iframe) */
#mailform_shadow {
	display: none;
	opacity: 0;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	min-width: 996px;
	height: 100%;	/* jsで計算 */
	background-color: #000;
	opacity: 0.7;
	z-index: 1000;
}
body.sp #mailform_shadow {
	min-width: initial;
	min-width: auto;
}
#mailformbk_wrapper {
	display: none;
	opacity: 0;
	position: absolute;
	top: 40px;
	left: 50%;
	width: 700px;
	margin-left: -350px;
	background-color: #fff;
	z-index: 1000;
}
body.sp #mailformbk_wrapper {
	top: 40px;
	width: 460px;
	margin-left: -230px;
}
#mailformbk_wrapper #mf_wrapper {
	width: 660px;
	height: 1365px;
	padding: 20px 20px 0px 20px;
	overflow: hidden;
}
body.sp #mailformbk_wrapper #mf_wrapper {
	width: 420px;
}
/* 問い合わせ・予約・PDF */
.getsheet {
	border: 3px solid #21b100;
	background-color: #f9fcf6;
}
.getsheet h2 {
	font-size: 16px;
	color: white;
	text-align: center;
	background-color: #21b100;
}
.column_txt_wrapper {
	padding: 20px;
}
.column_txt_wrapper .column_outer {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	margin-top: 20px;
}
.column_txt_wrapper .column_left {
	width: 310px;
	margin-left: 50px;
}
body.sp .column_txt_wrapper .column_left {
	width: 250px;
	margin-left: 0px;
}
.column_txt_wrapper .column_right {
	width: 196px;
	position: relative;
}
body.sp .column_txt_wrapper .column_right {
	width: 111px;
}
.column_txt_wrapper .column_right a:hover img {
	opacity: 0.7;
}
.column_txt_wrapper .column_right img.sample {
	width: 100%;
}
.column_txt_wrapper .column_right img.expand {
	position: absolute;
	top: 2px;
	right: 2px;
}
.column_btn_wrapper {
	width: 100%;
}
.column_btn_wrapper:first-child {
	margin-bottom: 20px;
}
.column_btn_wrapper p {
	margin-top: 8px;
}
.column_btn_wrapper a.space {
	padding-right: 9px;
}
body.sp .column_btn_wrapper p {
	width: 210px;
}
.adress_wrapper {
	position: relative;
}
.adress_wrapper h2 {
	margin-bottom: 8px;
}
.adress_wrapper tr.space {
	height: 10px;
}
.adress_wrapper th {
	width: 84px;
	font-size: 13px;
	font-weight: normal;
	text-align: center;
	line-height: 2em;
	padding-top: 2px;
	background-color: #eee;
	vertical-align: middle;
}
body.sp .adress_wrapper th {
	width: 64px;
}
.adress_wrapper td {
	font-size: 15px;
	line-height: 1.6em;
	padding-left:15px;
	vertical-align: middle;
}
.adress_wrapper td.strong {
	font-size: 120%;
}
.adress_wrapper a.button {
	position: absolute;
	top: 54px;
	right: 0px;
	margin-right: 0px;
}
body.sp .adress_wrapper a.button {
	top: 118px;
}
.adress_wrapper .cont_caution {
	margin-top: 4px;
}
/* 個人情報について */
.privacypolicy {
	padding: 20px;
	border: 1px solid #dcdcdc;
}






/* ---------- アクセス・地図 ---------- */
/* タブボタン */
.tabbtn_wrapper {
	width: 100%;
	margin-top: 20px;
}
.btn_wrapper {
	width: 100%;
}
.btn_wrapper li {
	float: left;
}
.btn_wrapper li a {
	position: relative;
	top: 1px;
	display: block;
	width: 140px;
	height: 36px;
	background: url( ../images/button/btn_tab_accessmap.gif ) no-repeat;
}
	.btn_wrapper li a.access_shibuya { background-position: 0px 0px; }
	.btn_wrapper li a.access_aoyama { background-position: -140px 0px; }
	.btn_wrapper li a.access_googlemap { background-position: -280px 0px; width: 138px; }
	.btn_wrapper li a.access_shibuya:hover { background-position: 0px -36px; }
	.btn_wrapper li a.access_aoyama:hover { background-position: -140px -36px; }
	.btn_wrapper li a.access_googlemap:hover { background-position: -280px -36px; }
	.btn_wrapper li a.access_shibuya.on { background-position: 0px -36px; cursor: default; }
	.btn_wrapper li a.access_aoyama.on { background-position: -140px -36px; cursor: default; }
	.btn_wrapper li a.access_googlemap.on { background-position: -280px -36px; cursor: default; }

.stage_wrapper {
	box-sizing: border-box;
	clear: both;
	width: 100%;
	border: 1px solid #dcdcdc;
}
li.tabstage {
	box-sizing: border-box;
	position: relative;
	width: 604px;
	padding: 20px;
	display: none;
}
body.sp li.tabstage {
	width: 418px;
}
	/* iframe */
	.stage_wrapper .googlemap {
		box-sizing: border-box;
		width: 100%;
		height: 755px;
		margin-bottom: 20px;
		border: 1px solid #dcdcdc;
		overflow: hidden;
	}
	body.sp .stage_wrapper .googlemap {
		height: 508px;
	}
	.stage_wrapper .accessmap {
		position: relative;
		width: 100%;
		height: 792px;
		margin-bottom: 20px;
	}
	body.sp .stage_wrapper .accessmap {
		height: 558px;
	}
	.access_shibuya .accessmap { background: url( /../images/webmap/map_bkgnd_shibuya.jpg ) 0px 0px no-repeat; }
	body.sp .access_shibuya .accessmap { background: url( /../images/webmap/map_bkgnd_shibuya_sp.jpg ) 0px 0px no-repeat; }
	.access_aoyama .accessmap { background: url( ../images/webmap/map_bkgnd_aoyama.jpg ) 0px 0px no-repeat; }
	body.sp .access_aoyama .accessmap { background: url( /../images/webmap/map_bkgnd_aoyama_sp.jpg ) 0px 0px no-repeat; }
	li.tabstage.on {
		display: block;
	}
/* ポインタ */
.accessmap .pointer {
	position: absolute;
	top: 423px;
	left: 19px;	
	display: block;
	width: 17px;
	height: 17px;
	text-indent: -9999px;
}
body.sp .accessmap .pointer {
	width: 13px;
	height: 13px;
	top: 281px;
	left: 11px;	
}
	/* 渋谷 */
	.access_shibuya a.pointer {
		background: url( /../images/webmap/map_btn_shibuya.png ) 0px 0px no-repeat;
	}
	body.sp .access_shibuya a.pointer {
		background: url( '/images/webmap/map_btn_shibuya_sp.png' );
	}
		.accessmap .pointer.shibuya2 { top: 267px; left: 41px; background-position: -20px 0px; }
		.accessmap .pointer.shibuya3 { top: 264px; left: 88px; background-position: -40px 0px; }
		.accessmap .pointer.shibuya4 { top: 264px; left: 144px; background-position: -60px 0px; }
		.accessmap .pointer.shibuya5 { top: 248px; left: 189px; background-position: -80px 0px; }
		.accessmap .pointer.shibuya6 { top: 195px; left: 254px; background-position: -100px 0px; }
		.accessmap .pointer.shibuya7 { top: 164px; left: 290px; background-position: -120px 0px; }
			body.sp .accessmap .pointer.shibuya2 { top: 177px; left: 28px; background-position: -20px 0px; }
			body.sp .accessmap .pointer.shibuya3 { top: 176px; left: 58px; background-position: -40px 0px; }
			body.sp .accessmap .pointer.shibuya4 { top: 175px; left: 96px; background-position: -60px 0px; }
			body.sp .accessmap .pointer.shibuya5 { top: 164px; left: 126px; background-position: -80px 0px; }
			body.sp .accessmap .pointer.shibuya6 { top: 129px; left: 169px; background-position: -100px 0px; }
			body.sp .accessmap .pointer.shibuya7 { top: 109px; left: 193px; background-position: -120px 0px; }
		.accessmap a.shibuya1:hover { background-position: 0px -20px; }
		.accessmap a.shibuya2:hover { background-position: -20px -20px; }
		.accessmap a.shibuya3:hover { background-position: -40px -20px; }
		.accessmap a.shibuya4:hover { background-position: -60px -20px; }
		.accessmap a.shibuya5:hover { background-position: -80px -20px; }
		.accessmap a.shibuya6:hover { background-position: -100px -20px; }
		.accessmap a.shibuya7:hover { background-position: -120px -20px; }
			body.sp .accessmap a.shibuya1:hover { background-position: 0px -20px; }
			body.sp .accessmap a.shibuya2:hover { background-position: -20px -20px; }
			body.sp .accessmap a.shibuya3:hover { background-position: -40px -20px; }
			body.sp .accessmap a.shibuya4:hover { background-position: -60px -20px; }
			body.sp .accessmap a.shibuya5:hover { background-position: -80px -20px; }
			body.sp .accessmap a.shibuya6:hover { background-position: -100px -20px; }
			body.sp .accessmap a.shibuya7:hover { background-position: -120px -20px; }
		.accessmap .pointer.shibuya1.on { background-position: 0px -20px; cursor: default; }
		.accessmap .pointer.shibuya2.on { background-position: -20px -20px; cursor: default; }
		.accessmap .pointer.shibuya3.on { background-position: -40px -20px; cursor: default; }
		.accessmap .pointer.shibuya4.on { background-position: -60px -20px; cursor: default; }
		.accessmap .pointer.shibuya5.on { background-position: -80px -20px; cursor: default; }
		.accessmap .pointer.shibuya6.on { background-position: -100px -20px; cursor: default; }
		.accessmap .pointer.shibuya7.on { background-position: -120px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya1.on { background-position: 0px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya2.on { background-position: -20px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya3.on { background-position: -40px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya4.on { background-position: -60px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya5.on { background-position: -80px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya6.on { background-position: -100px -20px; cursor: default; }
			body.sp .accessmap .pointer.shibuya7.on { background-position: -120px -20px; cursor: default; }
		/* マップ内矢印 */
		.access_shibuya img.number { position: absolute; display: none; }
		body.sp .access_shibuya img.number { position: absolute; display: none; }
		.access_shibuya img.on { display: block; }
		body.sp .access_shibuya img.on { display: block; }
		.accessmap img.shibuya1 { top: 387px; left: -16px; }
		.accessmap img.shibuya2 { top: 229px; left: 6px; }
		.accessmap img.shibuya3 { top: 233px; left: 103px; }
		.accessmap img.shibuya4 { top: 223px; left: 140px; }
		.accessmap img.shibuya5 { top: 217px; left: 158px; }
		.accessmap img.shibuya6 { top: 209px; left: 265px; }
		.accessmap img.shibuya7 { top: 136px; left: 262px; }
			body.sp .access_shibuya img.number { position: absolute; display: none; }
			body.sp .access_shibuya img.on { display: block; }
			body.sp .accessmap img.shibuya1 { top: 251px; left: -17px; }
			body.sp .accessmap img.shibuya2 { top: 148px; left: -1px; }
			body.sp .accessmap img.shibuya3 { top: 152px; left: 70px; }
			body.sp .accessmap img.shibuya4 { top: 143px; left: 91px; }
			body.sp .accessmap img.shibuya5 { top: 141px; left: 102px; }
			body.sp .accessmap img.shibuya6 { top: 141px; left: 176px; }
			body.sp .accessmap img.shibuya7 { top: 87px; left: 172px; }

	/* 青山 */
	.access_aoyama a.pointer{
		background: url( /../images/webmap/map_btn_aoyama.png ) 0px 0px no-repeat;
	}
	body.sp .access_aoyama a.pointer {
		background: url( '/images/webmap/map_btn_aoyama_sp.png' );
	}
		.accessmap .pointer.aoyama1 { top: 365px; left: 536px; }
		.accessmap .pointer.aoyama2 { top: 590px; left: 277px; background-position: -20px 0px; }
		.accessmap .pointer.aoyama3 { top: 555px; left: 248px; background-position: -40px 0px; }
		.accessmap .pointer.aoyama4 { top: 521px; left: 209px; background-position: -60px 0px; }
		.accessmap .pointer.aoyama5 { top: 494px; left: 168px; background-position: -80px 0px; }
		.accessmap .pointer.aoyama6 { top: 519px; left: 138px; background-position: -100px 0px; }
			body.sp .accessmap .pointer.aoyama1 { top: 241px; left: 360px; }
			body.sp .accessmap .pointer.aoyama2 { top: 394px; left: 185px; background-position: -20px 0px; }
			body.sp .accessmap .pointer.aoyama3 { top: 369px; left: 164px; background-position: -40px 0px; }
			body.sp .accessmap .pointer.aoyama4 { top: 348px; left: 139px; background-position: -60px 0px; }
			body.sp .accessmap .pointer.aoyama5 { top: 330px; left: 111px; background-position: -80px 0px; }
			body.sp .accessmap .pointer.aoyama6 { top: 347px; left: 91px; background-position: -100px 0px; }
		.accessmap a.aoyama1:hover { background-position: 0px -20px; }
		.accessmap a.aoyama2:hover { background-position: -20px -20px; }
		.accessmap a.aoyama3:hover { background-position: -40px -20px; }
		.accessmap a.aoyama4:hover { background-position: -60px -20px; }
		.accessmap a.aoyama5:hover { background-position: -80px -20px; }
		.accessmap a.aoyama6:hover { background-position: -100px -20px; }
			body.sp .accessmap a.aoyama1:hover { background-position: 0px -20px; }
			body.sp .accessmap a.aoyama2:hover { background-position: -20px -20px; }
			body.sp .accessmap a.aoyama3:hover { background-position: -40px -20px; }
			body.sp .accessmap a.aoyama4:hover { background-position: -60px -20px; }
			body.sp .accessmap a.aoyama5:hover { background-position: -80px -20px; }
			body.sp .accessmap a.aoyama6:hover { background-position: -100px -20px; }
		.accessmap .pointer.aoyama1.on { background-position: 0px -20px; cursor: default; }
		.accessmap .pointer.aoyama2.on { background-position: -20px -20px; cursor: default; }
		.accessmap .pointer.aoyama3.on { background-position: -40px -20px; cursor: default; }
		.accessmap .pointer.aoyama4.on { background-position: -60px -20px; cursor: default; }
		.accessmap .pointer.aoyama5.on { background-position: -80px -20px; cursor: default; }
		.accessmap .pointer.aoyama6.on { background-position: -100px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama1.on { background-position: 0px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama2.on { background-position: -20px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama3.on { background-position: -40px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama4.on { background-position: -60px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama5.on { background-position: -80px -20px; cursor: default; }
			body.sp .accessmap .pointer.aoyama6.on { background-position: -100px -20px; cursor: default; }
		/* マップ内矢印 */
		.access_aoyama img.number { position: absolute; display: none; }
		body.sp .access_aoyama img.number { position: absolute; display: none; }
		.access_aoyama img.on { display: block; }
		body.sp .access_aoyama img.on { display: block; }
		.accessmap img.aoyama1 { top: 321px; left: 532px; }
		.accessmap img.aoyama2 { top: 606px; left: 271px; }
		.accessmap img.aoyama3 { top: 541px; left: 266px; }
		.accessmap img.aoyama4 { top: 481px; left: 209px; }
		.accessmap img.aoyama5 { top: 454px; left: 171px; }
		.accessmap img.aoyama6 { top: 490px; left: 111px; }
			body.sp .accessmap img.aoyama1 { top: 207px; left: 356px; }
			body.sp .accessmap img.aoyama2 { top: 405px; left: 181px; }
			body.sp .accessmap img.aoyama3 { top: 358px; left: 176px; }
			body.sp .accessmap img.aoyama4 { top: 317px; left: 138px; }
			body.sp .accessmap img.aoyama5 { top: 299px; left: 113px; }
			body.sp .accessmap img.aoyama6 { top: 325px; left: 71px; }

	/* 写真 */
	.change_wrapper {
		position: absolute;
		margin-top: 0px;
	}
	.change_wrapper img {
		margin: 0px;
	}
	body.sp .change_wrapper img {
		width: 289px;
	}
		.change_wrapper.shibuya { top: 467px; left: 138px; }
		body.sp .change_wrapper.shibuya { top: 319px; left: 99px; }
		.change_wrapper.aoyama { top: 34px; left: 34px; }
		body.sp .change_wrapper.aoyama { top: 30px; left: 30px; }
		.change_wrapper a.change {
			position: absolute;
			display: block;
			width: 28px;
			height: 28px;
			background: url( ../images/webmap/map_btn_photochange.png ) 0px 0px no-repeat;
		}
		.change_wrapper a.change_left { top: 133px; left: -8px; }
		body.sp .change_wrapper a.change_left { top: 84px; }
		.change_wrapper a.change_right { top: 133px; right: -8px; background-position: -30px 0px; }
		body.sp .change_wrapper a.change_right { top: 84px; }
		.change_wrapper a:hover {
			background-position-y: -30px;
		}

/* アクセスマップPDF */
.map_btn_wrapper {
	position: relative;
	margin-top: 30px;
	margin-bottom: 30px;
}
.map_btn_wrapper a.button {
	float: left;
}
body.sp .map_btn_wrapper a.button {
	float: none;
	margin-bottom: 10px;
}
.map_btn_wrapper p {
	float: left;
}
/* アクセス方法 */
.access_wrapper h2 {
	font-size: 16px;
	line-height: 20px;
	margin-bottom: 10px;
}
body.sp .access_wrapper h2 {
	font-size: 18px;
}
.access_wrapper h3 {
	font-size: 14px;
	line-height: 20px;
	margin-top: 10px;
}
body.sp .access_wrapper h3 {
	font-size: 16px;
}
.access_wrapper h5 {
	font-size: 14px;
	line-height: 20px;
	margin-bottom: 5px;
}
body.sp .access_wrapper h5 {
	font-size: 16px;
	line-height: 24px;
}
dl.access {
	overflow: hidden;
	zoom: 1;
}  
	dl.access dt {
		clear: both;
		width: 85px;
		float: left;
	}
	dl.access dd {
		padding: 0px 0px 10px 85px;
	}
	dl.access dd div {
		border-left: 1px solid #464646;
		padding-left: 15px;
	}
	.access_googlemap dl.access dd {
		margin-bottom: 10px;
	}
	.access_googlemap dl.access dd:last-child {
		margin-bottom: 0px;
	}
/* 写真 */
.photo_wrapper {
	margin-top: 15px;
}
.photo_wrapper img {
	margin-right: 10px;
	float: left;
}
.photo_wrapper img:last-child {
	margin-right: 0px;
}
body.sp .photo_wrapper img {
	width: 184px;
}

/* ---------- 講演会 ---------- */
.lecture_header {
	position: relative;
	margin-bottom: 30px;
}

/* text */
#lecture_text {
	width: 534px;
	margin: 0px auto;
}
body.sp #lecture_text {
	width: auto;
}
#lecture_text img.left {
	float: left;
}
	body.sp #lecture_text img.left {
		width: 120px;
	}
#lecture_text .right {
	box-sizing: border-box;
	margin-left: 200px;
	padding-top: 0px;
}
	body.sp #lecture_text .right {
		width: 288px;
		margin-left: 130px;
		padding-top: 0px;
	}

#lecture_text .right h3 {
	font-size: 18px;
	line-height: 1.5em;
	border-bottom: 1px solid #ddd;
}
#lecture_text .right h3 span {
	font-size: 13px;
	line-height: 1.5em;
}
#lecture_text .right h2 {
	font-size: 22px;
	line-height: 28px;
	color: #E60000;
	margin: 15px 0px 10px 0px;
}

#lecture_text .right ul {
	font-size: 13px;
	line-height: 1.4em;
}
#lecture_text .right li {
	margin-top: 5px;
	padding-left: 15px;
	background: url( /../images/img_listheader.png ) 0px 2px no-repeat;
}

/* place */
.lecture_place {
	font-size: 16px;
	text-align: center;
	margin-top: 25px;
}
.lecture_place div {
	padding: 25px 0px 10px 0px;
	border: 3px solid #E60000;
}
	.blue201709 div {
		border-color: #0068B7;
	}
	.green201804 div {
		border-color: #8cd200;
	}
	.purple201811 div {
		border-color: #715a89;
	}
	.orange201904 div {
		border-color: #F0A000;
	}
.lecture_place .day {
	font-size: 30px;
	line-height: 1.0em;
	margin-bottom: 5px;
}
.lecture_place .place {
	font-size: 30px;
	line-height: 38px;
	margin-bottom: 5px;
}
.lecture_place .address {
	position: relative;
	line-height: 22px;
}
.lecture_place .ticket {
	font-size: 28px;
	margin-top: 10px;
	margin-bottom: 10px;
}
.lecture_place .bold {
	font-weight: bold;
}
.lecture_place span.small {
	font-size: 70%;
}
.lecture_place span.small2 {
	font-size: 70%;
}
.lecture_place .inquiry {
	font-size: 13px;
	line-height: 20px;
	margin: 0px 30px;
	padding-top: 3px;
	border-top: 1px solid #ddd;
}
.lecture_place img.arrow {
	vertical-align: top;
}
.lecture_arrow {
	margin-right: 8px;
	float: left;
}
/* button */
.lecture_wrapper {
	font-size: 14px;
	line-height: 22px;
	margin-left: 56px;
	margin-bottom: 20px;
}
body.sp .lecture_wrapper {
	margin-left: 0px;
}
.lecture_wrapper .txt_wrapper {
	padding-top: 6px;
}
.lecture_wrapper .txt_wrapper .double {
	padding-top: 11px;
}
.lecture_wrapper .btn_wrapper {
	width: inherit;
	margin-left: 128px;
}
.lecture_wrapper .btn_wrapper a.button {
	background-color: #f07800;
	margin-right: 0px;
}
/* close */
.lecture_close_wrapper {
	position: relative;
}
.lecture_close_wrapper .close_text {
	position: absolute;
	text-align: center;
	width: 100%;
	height: 100%;
	background: rgba( 25, 25, 25, 0.5 );
	z-index: 1000;
}
.lecture_close_wrapper .close_text p {
	height: 150px;
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 0px;
	left: 0px;
	margin: auto;
	font-size: 50px;
	font-weight: bold;
	line-height: 1.4em;
	color: white;
}
/* book */
.book_wrapper {
	position: relative;
	padding-top: 30px;
	border-top: 1px solid #ddd;
}
.book_wrapper h3 {
	box-sizing: border-box;
	position: absolute;
	top: 30px;
	left: 0px;
	width: 95px;
	height: 95px;
	font-size: 100%;
	color: white;
	background-color: #c40018;
	padding: 30px 0px 0px 12px;
	border-radius: 10px;
	-webkit-border-radius: 10px;	/* Safari, Chrome */
	-moz-border-radius: 10px;		/* Firefox */
}
	body.sp .book_wrapper h3 {
		position: static;
		width: 100%;
		height: inherit;
		text-align: center;
		padding: 12px 0px 10px 0px;
		margin-bottom: 20px;
	}
.book_wrapper .book_contents {
	margin-left: 115px;
	float: left;
}
	body.sp .book_wrapper .book_contents {
		margin-left: 0px;
	}

.book_wrapper .book_contents .book_item {
	margin-bottom: 20px;
}
.book_wrapper .book_contents .book_item:last-child {
	margin-bottom: 0px;
}
.book_wrapper .book_contents a.books {
	float: left;
	border: 1px solid #dcdcdc;
	box-shadow: 2px 2px 4px #ccc;
	-moz-box-shadow: 2px 2px 4px #ccc;			/* Firefox */
	-webkit-box-shadow: 2px 2px 4px #ccc;	/* Safari Chrome */
}
.book_wrapper .book_contents a:hover {
	opacity: 0.7;
}
.book_wrapper .book_contents a.books img {
	width: 120px;
}
	body.sp .book_wrapper .book_contents a.books img {
		width: 95px;
	}
.book_wrapper .book_contents .text_wrapper {
	margin-left: 140px;
}
	body.sp .book_wrapper .book_contents .text_wrapper {
		margin-left: 110px;
	}
.book_wrapper .book_contents .text_wrapper h4 {
	font-size: 22px;
	font-weight: normal;
	line-height: 26px;
}
	body.sp .book_wrapper .book_contents .text_wrapper h4 {
		font-size: 20px;
	}

.book_wrapper .book_contents .text_wrapper h4 span {
	color: red;
}
	.book_wrapper .book_contents .text_wrapper h4 span.blue201709 {
		color: #1a99eb;
	}
.book_wrapper .book_contents .text_wrapper .author {
	font-size: 12px;
	line-height: 1.4em;
	margin: 5px 0px 10px 0px;
}
/* book short */
.book_wrapper.book_wrapper_short h3 {
	position: static;
	width: 100%;
	height: auto;
	font-size: 140%;
	text-align: center;
	padding: 10px 0px;
	margin-bottom: 20px;
}
.book_wrapper.book_wrapper_short h3 .expsp {
	display: none;
}
.book_wrapper.book_wrapper_short .book_contents {
	margin-left: 0px;
	float: left;
}
.book_wrapper.book_wrapper_short .book_contents .book_item {
	width: 188px;
	text-align: center;
	margin-right: 20px;
	float: left;
}
	body.sp .book_wrapper.book_wrapper_short .book_contents .book_item {
		width: 199px;
	}
.book_wrapper.book_wrapper_short .book_contents .book_item:nth-child(3n) {
	margin-right: 0px;
}
	body.sp .book_wrapper.book_wrapper_short .book_contents .book_item:nth-child(3n) {
		margin-right: 20px;
	}
	body.sp .book_wrapper.book_wrapper_short .book_contents .book_item:nth-child(2n) {
		margin-right: 0px;
	}
.book_wrapper.book_wrapper_short .book_contents a.books {
	display: inline-block;
	float: none;
}
.book_wrapper.book_wrapper_short .book_contents a.books img {
	width: auto !important;
	height: 200px;
}
.book_wrapper.book_wrapper_short .book_contents .text_wrapper {
	margin-top: 10px;
	margin-left: 0px !important;
	text-align: left;
}
.book_wrapper.book_wrapper_short .book_contents .text_wrapper h4 {
	font-size: 15px !important;
	line-height: 20px;
}
.book_wrapper.book_wrapper_short .book_contents .text_wrapper .author {
	font-size: 11px;
}

/* past lecture */
#past_lecture dt {
	margin: 25px 0px 8px 0px;
}
#past_lecture dt .day {
	box-sizing: border-box;
	width: 54px;
	height: 54px;
	font-size: 12px;
	line-height: 16px;
	text-align: center;
	color: white;
	padding-top: 12px;
	margin-right: 14px;
	background-color: #464646;
	border-radius: 4px;
	-webkit-border-radius: 4px;	/* Safari, Chrome */
	-moz-border-radius: 4px;		/* Firefox */
	float: left;
}
#past_lecture dt h4 {
	font-size: 14px;
}
#past_lecture dd {
	position: relative;
	margin-left: 68px;
	font-size: 12px;
	line-height: 16px;
}
#past_lecture dd .past_lecture_main {
	margin-bottom: 14px;
}
#past_lecture dd .past_lecture_main a.gallery {
	position: relative;
	width: 258px;
	height: 171px;
	background-color: #ddd;
	float: left;
	text-align: center;
}
#past_lecture dd .past_lecture_main img.photo {
	max-width: 100%;
	max-height: 100%;
}
	body.sp #past_lecture dd .past_lecture_main img.photo {
		width: 350px;
	}
	body.sp #past_lecture dd .past_lecture_main img.photo.vertical {
		width: auto;
		height: 171px;
	}
#past_lecture dd .past_lecture_main a.gallery {
	margin-right: 20px;
	margin-bottom: 10px;
}
#past_lecture dd .past_lecture_main a.gallery:nth-child(2n) {
	margin-right: 0px;
}
	body.sp #past_lecture dd .past_lecture_main a.gallery:first-child {
		margin-right: 0px;
		margin-bottom: 10px;
	}
#past_lecture dd .past_lecture_main img.expand,
#past_lecture dd .past_lecture_right img.expand {
	position: absolute;
	top: 2px;
	right: 2px;
}
#past_lecture dd .past_lecture_main p {
	margin-top: 0px;
}
#past_lecture dd .past_lecture_main .lecture_mov {
	margin-top: 10px;
}
	body.sp #past_lecture dd .past_lecture_main .lecture_mov a#lecture0225_kondo {
		margin-bottom: 10px;
	}
#past_lecture dd .past_lecture_left {
	float: left;
	margin-right: 20px;
}
	body.sp #past_lecture dd .past_lecture_left {
		float: none;
	}
#past_lecture dd .past_lecture_left img.past {
	width: 258px;
}
#past_lecture dd .past_lecture_right .img_wrapper a {
	position: relative;
	display: inline-block;
}
#past_lecture dd .past_lecture_right {
	width: 258px;
	float: right;
}
	body.sp #past_lecture dd .past_lecture_right {
		float: none;
		width: 350px;
		margin-left: 0px;
		margin-top: 10px;
	}
#past_lecture dd .past_lecture_right .img_wrapper {
	float: left;
}
#past_lecture dd .past_lecture_right .img_wrapper a img.photo {
	width: 100px;
}
	body.sp #past_lecture dd .past_lecture_right .img_wrapper a img.photo {
		width: 170px;
	}
#past_lecture dd .past_lecture_right p {
	margin-left: 110px;
	margin-top: 0px;
}
	body.sp #past_lecture dd .past_lecture_right p {
		margin-left: 180px;
	}
#past_lecture dd .past_lecture_main a:hover,
#past_lecture dd .past_lecture_right .img_wrapper a:hover {
	opacity: 0.7;
}
/* in preparation */
#past_lecture dd .inpreparation {
	box-sizing: border-box;
	position: absolute;
	top: 10px;
	left: 168px;
	font-size: 40px;
	line-height: 1em;
	color: white;
	padding: 20px 40px;
	background-color: #969696;
	border-radius: 10px;
	opacity: 0.6;
}
	body.sp #past_lecture dd .inpreparation {
		top: -10px;
		left: 75px;
	}

/* ---------- レポート ---------- */
#report #contents_wrapper {
	background-image: url( '/images/report/report_bk.jpg' );
	background-repeat: no-repeat;
	background-position:right -34px;
}
#report.reporttop #contents_wrapper {
	padding: 30px 0px 4px;
}
	body.sp#report #contents_wrapper {
		background-size: 380px auto;
		background-position: right -30px;
	}
	body.sp#report.reporttop #contents_wrapper {
		padding: 20px 0px 0px;
	}
#report .header_wrapper {
	position: relative;
	padding: 0px 240px 0px 0px;
	background-image: url( '/images/report/report_header.png' );
	background-repeat: no-repeat;
	background-position: 45px 0px;
	background-size: 19px auto;
}
	#report.reporttop .header_wrapper {
		padding: 0px 270px 0px 30px;
		background-position: 75px 0px;
	}

	body.sp#report .header_wrapper {
		padding: 0px 0px;
		background-position: 10px 0px;
		background-size: 19px auto;
	}
	body.sp#report.reporttop .header_wrapper {
		padding: 0px 20px;
		background-position: 30px 0px;
	}

#report .header_wrapper p.catch {
	font-size: 18px;
	padding: 20px 0px 0px 80px;
}
	body.sp#report .header_wrapper p.catch {
		font-size: 16px;
		padding: 2px 0px 0px 40px;
	}
#report .header_wrapper h1 {
	font-size: 40px;
	line-height: 1.0em;
	color: #464646;
	padding: 5px 0px 10px 80px;
	border-left: 0px;
	border-bottom: 1px solid #464646;
}
	body.sp#report .header_wrapper h1 {
		font-size: 32px;
		line-height: 1.1em;
		padding: 0px 0px 6px 40px;
		margin-bottom: 10px;
		background-size: 9px auto;
	}
#report .header_wrapper h1 span {
	font-size: 80%;
}
#report .reader_wrapper {
	padding-left: 110px;
}
	body.sp#report .reader_wrapper {
		padding: 0px 20px;
	}
	body.sp#report .reader_wrapper p.reader {
		font-size: 87.5%;
		line-height: 1.5em;
		padding-left: 40px;
	}
body.sp#report.reporttop .contents {
	margin: 20px 20px 0px 20px;
}
#report.reporttop #report_container {
	max-width: 934px;
	margin: 0px auto;
}
#report.reporttop .contents .outer {
	display: flex;
	flex-wrap: wrap;
}


/* unit */
#report .unit {
	box-sizing: border-box;
	margin: 0px 26px 26px 0px;
	width: 294px;
	float: left;
}
#report .unit .unit_inner {
	position: relative;
	background-color: white;
	border: 2px solid #78af96;
	border-radius: 4px;
	box-shadow: 4px 4px 4px #ccc;
}
#report .outer.main .unit:nth-child(3n),
#report .outer.other .unit:nth-child(3n) {
	margin-right: 0px;
}
body.sp#report .unit {
	width: 418px;
	margin-right: 0px;
	margin-bottom: 20px;
	float: none;
}
	#report .unit.even .unit_inner {
		border-color: #aaaa96;
	}
	#report .unit.unit_ex .unit_inner {
		border-color: #fecfcf;
	}
	#report .unit.unit_ex.gray .unit_inner {
		border-color: #dedede;
	}
#report .unit .unit_inner:hover {
	opacity: 0.8;
}
#report #report_container > hr {
	margin: 24px 0px 50px;
}
body.sp#report #report_container > hr {
	margin: 30px 0px 24px;
}

#report .unit a {
	text-decoration: none;
	color: #464646;
}
#report .unit h3.unit_number {
	box-sizing: border-box;
	height: 40px;
	background-color: #78af96;
	font-size: 11px;
	font-weight: normal;
	text-align: center;
	color: white;
	padding-top: 10px;
	margin-bottom: 0px;
}
	#report .unit.even h3.unit_number {
		background-color: #aaaa96;
	}
	#report .unit.unit_ex h3.unit_number {
		background-color: #fecfcf;
		color: #464646;
	}
	#report .unit.unit_ex.gray h3.unit_number {
		background-color: #dedede;
	}
#report #article h3.unit_number {
	width: 180px;
	position: absolute;
	top: 0px;
	left: 80px;
	border-radius: 0px 0px 0px 0px;
}
#report .unit h3.unit_number span.number {
	font-size: 220%;
	vertical-align: -3px;
}
#report .unit h3.unit_number span.icon {
	position: absolute;
	top: 0px;
	left: 30px;
	width: 40px;
	height: 40px;
	background-image: url( '/images/report/report_icon.jpg' );
	background-repeat: no-repeat;
	background-size: auto 40px;
}
body.sp#report .unit h3.unit_number span.icon {
	left: 40px;
}
#report .unit h3.unit_number span.icon.anticancer { background-position-x: 0px; }
#report .unit h3.unit_number span.icon.drug { background-position-x: -40px; }
#report .unit h3.unit_number span.icon.quest { background-position-x: -80px; }
#report .unit h3.unit_number span.icon.report { background-position-x: -120px; }
#report .unit h3.unit_number span.icon.hospital { background-position-x: -160px; }
#report .unit h3.unit_number span.icon.chart { background-position-x: -200px; }
#report .unit h3.unit_number span.icon.patient { background-position-x: -240px; }
#report .unit h3.unit_number span.icon.opinion2 { background-position-x: -280px; }
#report .unit h3.unit_number span.icon.medicheck { background-position-x: -320px; }
#report .unit h3.unit_number span.icon.scan { background-position-x: -360px; }
#report .unit h3.unit_number span.icon.surgery { background-position-x: -400px; }
#report .unit h3.unit_number span.icon.syringe { background-position-x: -440px; }

#report .unit h3.unit_number img.newflash {
	position: absolute;
	top: 12px;
	right: 30px;
	width: 36px;
	height: 16px;
}
#report .unit .article_wrapper {
	padding: 13px 13px 10px 13px;
	text-align: right;
}
#report .unit .article_wrapper h2 {
	font-size: 22px;
	font-weight: normal;
	text-align: left;
}
#report .unit .article_wrapper p {
	margin-top: 8px;
	font-size: 12px;
	line-height: 1em;
}
#report .unit .unit_inner:hover .article_wrapper p {
	text-decoration: underline;
	color: #00963c;
}

/* extra */
#report.reporttop #report_extra {
	max-width: 934px;
	margin: 14px auto 0px;
	padding-top: 10px;
	border-top: 1px solid #464646;
}
#report.reporttop #report_extra > h2 {
	margin-bottom: 26px;
	letter-spacing: 2px;
}
#report_extra .unit_inner,
#report.extra .unit_inner {
	border: 2px solid #fecfcf !important;
}
#report_extra h3.unit_number,
#report.extra h3.unit_number {
	color: #464646 !important;
	background-color: #fecfcf !important;
}
#report.extra .page_wrapper .forward,
#report.extra .page_wrapper .next {
	display: none !important;
}





/* ---------- レポート 記事 ---------- */
#report .article_outer_wrapper {
	position: relative;
	margin-top: 50px;
}
body.sp#report .article_outer_wrapper {
	margin-top: 40px;
}
#report .page_wrapper {
	font-size: 12px;
	text-align: right;
	line-height: 1em;
}
#report .page_wrapper li {
	display: inline-block;
}
#report .page_wrapper  a {
	text-decoration: none;
}
#report .page_wrapper .forward a {
	margin: 0px 5px 0px 2px;
}
#report .page_wrapper .forward:before {
	content: '◀';
}
#report .page_wrapper .forward:after {
	content: '｜';
}
#report .page_wrapper .forward:hover {
	color: #00963c;
}
#report .page_wrapper .upper a {
	margin: 0px 5px;
}
#report .page_wrapper .next a {
	margin: 0px 2px 0px 5px;
}
#report .page_wrapper .next:before {
	content: '｜';
}
#report .page_wrapper .next:after {
	content: '▶';
}
#report .page_wrapper .next:hover {
	color: #00963c;
}
#report .page_wrapper.page_top {
	position: absolute;
	top: -30px;
	right: 0px;
	background-image: url( '/images/report/report_mask.png' );
	padding: 5px 8px;
	border-radius: 11px;
		-webkit-border-radius: 11px;	/* Safari, Chrome */
		-moz-border-radius: 11px;		/* Firefox */
}
#report .page_wrapper.page_bottom {
	padding-top: 8px;
	border-top: 1px solid #ccc;
}
#report #article {
	position: relative;
	padding: 40px;
	background-color: white;
	box-shadow: 0px 0px 6px #ddd;
	-moz-box-shadow:0px 0px 6px #ddd;			/* Firefox */
	-webkit-box-shadow: 0px 0px 6px #ddd;	/* Safari Chrome */

}
body.sp#report #article {
	padding: 28px 15px 15px 15px;
}
#report #article h3.unit_number {
	box-sizing: border-box;
	position: absolute;
	top: 0px;
	left: 80px;
	width: 160px;
	height: 40px;
	background-color: #78af96;
	font-size: 11px;
	font-weight: normal;
	text-align: center;
	color: white;
	padding-top: 10px;
	margin-bottom: 0px;
}
body.sp#report #article h3.unit_number {
	left: 55px;
}
#report #article h3.unit_number.even {
	background-color: #aaaa96;
}
#report #article h3.unit_number span.number {
	font-size: 220%;
	vertical-align: -3px;
}
#report #article h3.unit_number span.icon {
	position: absolute;
	top: 0px;
	left: -40px;
	width: 40px;
	height: 40px;
	background-image: url( '/images/report/report_icon.jpg' );
	background-repeat: no-repeat;
	background-size: auto 40px;
}
#report #article h3.unit_number span.icon.drug { background-position-x: -40px; }
#report #article h3.unit_number span.icon.quest { background-position-x: -80px; }
#report #article h3.unit_number span.icon.report { background-position-x: -120px; }
#report #article h3.unit_number span.icon.hospital { background-position-x: -160px; }
#report #article h3.unit_number span.icon.chart { background-position-x: -200px; }
#report #article h3.unit_number span.icon.human { background-position-x: -240px; }
#report #article h3.unit_number span.icon.opinion2 { background-position-x: -280px; }
#report #article h3.unit_number span.icon.medicheck { background-position-x: -320px; }
#report #article h3.unit_number span.icon.scan { background-position-x: -360px; }
#report #article h3.unit_number span.icon.surgery { background-position-x: -400px; }
#report #article h3.unit_number span.icon.syringe { background-position-x: -440px; }

#report #article .article_date {
	font-size: 12px;
	line-height: 1em;
	text-align: right;
}
#report #article h2 {
	font-size: 32px;
	font-weight: normal;
	line-height: 1.4em;
	text-align: center;
	margin: 70px 0px;
}
body.sp#report #article h2 {
	margin: 30px 0px 25px;
}
#report #article h4 {
	margin-top: 1em;
}
/* text space */
#report #article .article_text_wrapper {
	width: 680px;
	margin: 0px auto;
}
body.sp#report #article .article_text_wrapper {
	width: 100%;
	float: none;
}
#report #article .article_text_wrapper h4.mt2em {
	margin-top: 2em;
}
#report #article .article_text_wrapper h4.red {
	color: red;
}
#report #article .article_text_wrapper p {
	text-indent: 1em;
	line-height: 1.8em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-word;
}
#report #article .article_text_wrapper p.space {
	margin-top: 1em;
}
#report #article .article_text_wrapper p.space.double {
	margin-top: 2em;
}
#report #article .article_text_wrapper .bold {
	font-weight: bold;
}
#report #article .article_text_wrapper p.breakall {
	word-break: break-all;
	/*word-wrap: break-word;*/
}
#report #article .article_text_wrapper p.list {
	text-indent: -1em;
	margin-left: 1em;
}
#report #article .article_text_wrapper p.caption {
	text-indent: 0em;
	text-align: left;
	line-height: 1.6em;
}
#report #article .article_text_wrapper p span.green {
	color: #3cb44b;
}
#report #article .article_text_wrapper p span.red {
	color: red;
}


/* Q&A */
#report #article .article_text_wrapper .qa_wrapper p {
	position: relative;
	text-indent: 0em;
	margin-left: 78px;/*54*/
}
#report #article .article_text_wrapper .qa_wrapper p.one {
	margin-left: 54px;
}
#report #article .article_text_wrapper .qa_wrapper p span {
	width: 78px;/*54*/
	font-size: 220%;
	padding: 6px 0px 0px 0px;
	color: #00963c;
	position: absolute;
	top: 0px;
	right: 100%;
}
#report #article .article_text_wrapper .qa_wrapper p.one span {
	width: 54px;/*54*/
}
#report #article .article_text_wrapper .qa_wrapper dd {
	margin-top: 1.5em;
}
#report #article .article_text_wrapper .qa_wrapper dt:not(:first-child) {
	margin-top: 2em;
	padding-top: 2em;
	border-top: 2px dotted #dedede;
}


/* article_set */
#report #article .article_set {
	margin-top: 3em;
	padding-top: 0.75em;
	border-top: 1px solid #dedede;
}
#report #article .article_set p {
	text-indent: 0em;
}
/* case_wrapper */
#report #article .case_wrapper {
	border: 1px solid #464646;
	margin: 2em 0em;
	border-radius: 4px;
	overflow: hidden;
}
#report #article .case_wrapper p {
	text-indent: 0em;
}
#report #article .case_wrapper dt {
	background-color: #eeeeee;
	padding: 16px 16px 14px 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#report #article .case_wrapper dd {
	padding: 16px 16px 14px 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#report #article .case_wrapper dt + dd {
	padding: 16px 16px 0px 16px;
}
#report #article .case_wrapper dd:last-child {
	padding: 16px 16px 14px 16px;
}
#report #article .case_wrapper p.header {
	font-weight: bold;
	text-align: center;
	line-height: 1.4em;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	width: 70px;
	height: 50px;
	float: left;
	border: 1px solid #464646;
	border-radius: 4px;
}
#report #article .case_wrapper p.detail {
	width: calc(100% - 80px);
}


#report #article .article_text_wrapper .signeture_wrapper {
	text-align: right;
	margin: 40px 0px 40px;
}
#report #article .article_text_wrapper .signeture_wrapper img {
	width: 260px;
}
body.sp#report #article .article_text_wrapper .signeture_wrapper img {
	width: 220px;
}
/* figure */
#report #article .figure_wrapper {
	width: 340px;
	text-align: center;
	margin: 1em 0px 0px 0px;
}
#report #article .figure_wrapper.max {
	width: 100%;
}
body.sp#report #article .figure_wrapper {
	width: 100%;
}
#report #article .figure_wrapper .unit_wrapper {
	position: relative;
	margin-bottom: 30px;
	margin-right: 30px;
	float: left;
	width: 100%;		/* ie11 */
}
body.sp#report #article .figure_wrapper .unit_wrapper {
	margin-bottom: 20px;
	margin-right: 0px;
	float: none;
}
#report #article .figure_wrapper img {
	max-width: 100%;
	border: 1px solid #dcdcdc;
}
#report #article .figure_wrapper img.expand {
	position: absolute;
	top: 2px;
	right: 2px;
	border: none;
}
body:not(.sp)#report #article .figure_wrapper img.figure:hover {
	opacity: 0.7;
}
/*
#report #article .figure_wrapper .image_unit {
	width: 100%;
	height: 100%;
}
#report #article .figure_wrapper img.figure {
	width: 100%;
	border: 1px solid #dcdcdc;
}
*/
/* table */
#report #article .article_table_wrapper {
	margin: 1.2em 0em 1.5em 1em;
}
#report #article .article_table_wrapper h4 {
	margin-bottom: 0.25em;
}
#report #article .article_table_wrapper th,
#report #article .article_table_wrapper td {
	text-align: center;
	padding: 0.5em 1em 0.35em 1em;
	border: 1px solid #464646;
}
#report #article .article_table_wrapper th {
	font-weight: normal;
	background-color: #eee;
}
#report #article .article_table_wrapper th.dark {
	color: white;
	background-color: #aaa;
}
#report #article .article_table_wrapper th.bold {
	font-weight: bold;
}
/* list */
#report #article .article_list_wrapper {
	margin: 1em 0em 1em 2.3em;
	text-indent: -1.3em;
}
#report #article .article_list_wrapper dt {
	width: 7em;
	float: left;
}
#report #article .article_list_wrapper dd {
	margin-left: 7em;
	text-indent: 0em;
}
/* column */
#report #article .article_column_wrapper {
	margin: 1.2em 0em 1.5em 0em;
	padding: 25px 25px 20px 25px;
	background-color: #eee;
}
#report #article .article_column_wrapper h4 {
	border-bottom: 2px dotted #aaa;
	margin-bottom: 1em;
}
/* term */
#report .term_wrapper {
	font-size: 12px;
	line-height: 1.4em;
	text-align: left;
	background-color: #eee;
	padding: 14px 14px 12px;
	margin-bottom: 30px;
	border-radius: 8px;
}
#report .term_wrapper dt {
	float: left;
}
#report .term_wrapper dd {
	margin-left: 100px;
}
#report .term_wrapper dd:not(:last-child) {
	margin-bottom: 6px;
}

/* ---------- 語る ---------- */
#talk #body_outer {
	background-image: url( '/images/talk/img_talk_bk.jpg' );
	background-size: 1500px auto;
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-color: black;
	padding: 12px 0px 30px;
}
#talk #body_wrapper .pankuzu {
	margin: 0px 0px 7px 0px;
	color: white;
}
#talk #body_wrapper .pankuzu a {
	color: white;
}
#talk #body_wrapper .pankuzu a:hover {
	text-decoration: none;
}
#talk #contents_wrapper {
	box-sizing: border-box;
	width: 100%;
	min-height: 610px;
	background-color: transparent;
	border: none;
	padding: 30px;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	float: none;
}
#talk #footer_wrapper {
	margin-top: 0px;
}
/* 
#talk #contents_wrapper p.newseries {
	display: inline-block;
	padding: 8px 10px 6px;
	border-radius: 4px;
	background-color: red;
	margin-top: 60px;
}
#talk #contents_wrapper p.newseries img {
	width: 50px;
}
*/
#talk #contents_wrapper h1.header {
	padding: 0px;
	border: none;
	width: 302px;
	padding-top: 110px;
}
#talk #contents_wrapper p.reader {
	color: white;
	font-size: 14px;
	line-height: 1.86em;
	display: inline-block;
	background-color: rgba( 0, 0, 0, 0.5 );
}
#talk #contents_wrapper img.dr {
	width: 294px;
	margin-top: 20px;
	display: block;
}
#talk #talk_container {
	margin: 80px 0px 120px;
}
#talk #talk_container h2 {
	font-size: 20px;
	line-height: 1em;
	color: white;
	text-align: center;
	padding-bottom: 8px;
	margin-bottom: 20px;
	border-bottom: 1px solid white;
}
#talk #talk_container .cate {
	margin-bottom: 60px;
}
#talk #talk_container .cate:last-child {
	margin-bottom: 0px;
}
#talk #talk_container .cate > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#talk #talk_container .cate > ul > li.unit {
	width: 294px;
	background-color: white;
	background-image: url( '/images/talk/img_button_bk.svg' );
	background-size: 102px 70px;
	background-position: top 56px center;
	background-repeat: no-repeat;
	border-radius: 8px;
	margin-right: 27px;
	position: relative;
}
#talk #talk_container .cate > ul > li.unit:nth-child(3n) {
	margin-right: 0px;
}
#talk #talk_container .cate > ul > li.unit a {
	text-decoration: none;
}
#talk #talk_container .cate > ul > li.unit a:hover {
	color: #464646;
}
#talk #talk_container .cate > ul > li.unit img.newflash {
position: absolute;
	top: 5px;
	right: 20px;
	width: 36px;
	height: 23px;
	z-index: 200;
}
#talk #talk_container .cate > ul > li.unit .unit_inner {
	position:relative;
	background: rgba( 255,255,255,0.8 );
	padding: 10px;
	border-radius: 8px;
}
#talk #talk_container .cate > ul > li.unit a:hover .unit_inner {
	background: rgba( 255,255,255,0.3 );
}
#talk #talk_container .cate > ul > li.unit .unit_inner p.header {
	position:relative;
	font-size: 24px;
	line-height: 1em;
	color: white;
	background-color: #69574F;
	padding: 4px 4px 4px 35px;
	border-radius: 8px;
}
#talk #talk_container .cate2 > ul > li.unit .unit_inner p.header {
	background-color: #544A63;
}
#talk #talk_container .cate3 > ul > li.unit .unit_inner p.header {
	background-color: #526E8C;
}
#talk #talk_container .cate > ul > li.unit .unit_inner p.header:before {
	content: 'talk ';
	font-size: 12px;
	position: absolute;
	top: 4px;
	left: 8px;
}
#talk #talk_container .cate > ul > li.unit .unit_inner h3 {
	box-sizing: border-box;
	font-size: 22px;
	line-height: 1.45em;
	font-weight: normal;
	padding: 20px 10px;
	margin-bottom: 2px;
	min-height: 102px;
}
#talk #talk_container .cate > ul > li.unit p.play {
	font-size: 14px;
	line-height: 1em;
	color: #FF0000;
	position: absolute;
	bottom: 10px;
	left: 95px;
	opacity: 0.2;
}
#talk #talk_container .cate > ul > li.unit a:hover p.play {
	opacity: 0.8;
}
#talk #side_wrapper,
#talk #sp_wrapper  {
	display: none;
}
@media screen and (max-width: 679px) {
	#talk #body_outer {
		background-size: 800px auto;
		padding: 12px 0px 30px;
		background-position: top center ;
	}
	#talk #contents_wrapper {
		min-height: 400px;
		padding: 30px 0px 0px;
	}
	#talk #contents_wrapper h1.header {
		padding: 0px;
		border: none;
		width: 250px;
		padding-top: 160px;
	}
	#talk #contents_wrapper p.reader {
		color: white;
		font-size: 14px;
		line-height: 1.86em;
		display: inline-block;
		background-color: rgba( 0, 0, 0, 0.5 );
	}
	#talk #contents_wrapper img.dr {
		width: 250px;
		margin-top: 20px;
		display: block;
	}
	#talk #talk_container {
		margin: 60px 0px 60px;
	}
	#talk #talk_container h2 {
		font-size: 20px;
		line-height: 1.2em;
		color: white;
		text-align: center;
		padding-bottom: 6px;
		margin-bottom: 20px;
		border-bottom: 1px solid white;
	}
	#talk #talk_container .cate {
		margin-bottom: 40px;
	}
	#talk #talk_container .cate:last-child {
		margin-bottom: 0px;
	}
	#talk #talk_container .cate > ul {
		justify-content: center;
	}
	#talk #talk_container .cate > ul > li.unit {
		width: 294px;
		margin-right: 0px;
		margin-bottom: 20px;
	}
	#talk #talk_container .cate > ul > li.unit:last-child {
		margin-bottom: 0px;
	}
	#talk #talk_container .cate > ul > li.unit p.play {
		opacity: 0.8;
	}
	#talk #side_wrapper,
	#talk #sp_wrapper  {
		display: none;
	}
}


