@charset "utf-8";
/* 
日本漢方協会オンライン受講ページ用 CSS
v2020a by みどり情報技術　池村
*/


/* ======================= */
/* 全般定義 */
/* ======================= */

* {
	margin: 0;
	padding: 0;
}

body {
	/* utf-8 でフォント指定無し→IEでうまくない */
	font-family: Meiryo, "Helvetica Neue", Helvetica, "Yu Gothic Medium", "ＭＳ Ｐゴシック", "Lucida Grande", "Hiragino Kaku Gothic ProN", sans-serif;
	overflow-y:scroll; /* 右スクロールバー常時表示　*/
	background: #e8e8ff;
	width: 100%;
}

a {
	color: #0066ff;
}
a:hover {
	color: #ff0000;
}

a.img-bright {
	transition: all 150ms ease;
}
a.img-bright:hover {
	opacity: .9;
}

.sp-hla {
	/*
	padding-left: 8px;
	line-height: 1.7em;
	border-left: #99cc99 8px solid;
	*/
}



/* ======================= */
/* 標準値Override */
/* ======================= */

@media print {
	/* 印刷時にリンク先が印字されるbootstrapの標準機能をキャンセル */
	a[href]:after {
		content: "" !important;
	}
	abbr[title]:after {
		content: "" !important;
	}
}

div {
	box-sizing: border-box;
}

h1 {
	margin-top: 0;
	margin-bottom: 0;
}

h2, h3 {
	font-weight: bold;
}

.container {
  /* margin: 0 auto; ←もともと定義済 */
}

.sp-h1h {
	display: none;
}

.h-yk {
	margin: .4em;
	padding: .3em;
	font-size: 1.6em;
	border-left: #ff9900 7px solid;
	color: #003300;
}

/* 左ナビゲータ（PCのみ） */
.div-nav {
	background: #99cc77;
}
	.div-nav a {
		color: #ffffff;
	}
	.div-nav a:hover {
		color: #ccffcc;
	}

.nav-tabs {
	margin-top: 10px;
}
.nav-tabs a {
	color: #339933;
	border-radius: 10px 10px 0 0 !important;
	border-top: #99cc99 1px solid !important;
	border-left: #99cc99 1px solid !important;
	border-right: #99cc99 1px solid !important;
	background-color: #d8f8dd !important;
}
.nav-tabs a:hover {
	color: #007700;
	background-color: #aaeeaa !important;
}
.nav-tabs > li.active > a {
	color: #ffffff;
	background-color: #339933 !important;
}
.nav-tabs > li.active > a:hover {
	color: #ffffff;
}


.nav-pills {
	padding-bottom: 12px;
}
.nav-pills a {
	color: #00bb66 !important;
	background-color: #f0fff0 !important;
	border-radius: 24px !important;
}
.nav-pills a:hover {
	color: #33cc66 !important;
	background-color: #ddffcc !important;
}

.sp-user-pill {
	/* display: inline-block; */
	width: 100%;
	max-width: 320px;
	margin: 0 auto;
}

.sp-user-pill .active a, .sp-user-pill .active a:hover {
	color: #ffffff !important;
	background-color: #66bb55 !important;
	border-radius: 24px !important;
}

/* ======================= */
/* 構成部別特性 */
/* ======================= */
/* 最大幅960px（モバイル時100%）の属性をもつものはすべてこのセクション */

#sp-panel-head {
	max-width: 960px;
	padding: 0;
	background: #ffffff;
	/* border-radius: 16px 16px 0 0; */
}

#sp-container {
	max-width: 960px;
	padding: 0;
	background: #ffffff;
	/* border-radius: 0 0 16px 16px; */
	/* box-shadow: 0 -4px 7px 0 rgba(0,0,0,.2) inset; */
}

#main-cols {
	margin: 0;
	padding: 0;
	max-width: 960px; /* 左カラムをはみ出させないために重要 */
	/* background: #99cc77; */
	background: #ffffff;
}


#sp-left {
	margin: 0;
	height: 100%;
	/*
	margin-left: 15px;
	margin-right: -15px;
	*/
	padding-top: 15px;
	background: #99cc77;
}
	#sp-left p {
		margin-bottom: 1.5em;
	}

#sp-right {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #ffffff;
}

/* 下部 */
#bottom-col {
	max-width: 960px;
	margin: 0 auto;
}


	
/* スマホの場合のみ　下ナビゲータ */
#sp-mobile-bottom {
	width: 98%;
	margin: 0 auto;
	padding-top: .6em;
	text-align:center;
}

/* 最下部フッター */
#footer-panel {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

#sp-footer {
	width: 100%;
	box-sizing: border-box;
	padding: 10px;
	/* background: #559955; */
	color: #779977;
}
	#sp-footer p {
		margin: 0;
		padding: 0;
		text-align: center;
		line-height: 1.2em;
	}

/* 最大幅960pxの要素は、画面幅狭いときは100％付近 */
@media screen and (max-width: 768px) {
	#sp-panel-head {
		width: 98%;
	}
	#sp-container {
		width: 98%;
	}
	#main-cols {
		width: 98%;
	}
	#bottom-col {
		width: 100%;
	}
	#footer-panel {
		width: 100%;
	}
}

		
/* ======================= */
/* 汎用タイル2020 */
/* ======================= */

ul.tile-container {
	display: block;
	list-style-type: none;
	width: 100%;
	margin: 0;
	padding: 1px;
	border: none;
	/* text-align: center; */
}
		
.k-block-tile {
	display: inline-block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 270px;
	min-height: 240px;
	margin: 2px;
	padding: 1px;
	border: none;
	border: #80a080 1px solid;
	border-radius: 5px;
	background: #ffffff;
	text-align: center;
	vertical-align: top;
	
}
		
/* ======================= */
/* トピックボックス */
/* ======================= */

div.sp-topic-box {
	width: 97.5%;
	/* margin: 0; */
	padding: 8px;
	border: #80a080 1px solid;
	border-radius: 6px;
	margin: 8px 2px 4px 8px;
	background: #ffffff;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
	div.sp-topic-box p {
		margin: 2px 4px;
		padding: 0;
	}

div.sp-topic-tile {
	float: left;
	width: 144px;
	height: 216px;
	margin: 4px;
	padding: 1px;
	border: none;
	/*
	border: #cccccc 1px solid;
	border-radius: 6px;
	*/
	background: #ffffff;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-align: center;
}
	div.sp-topic-tile p {
		margin: 2px 4px;
		padding: 0;
	}

	
div.tbox-color1 {
	border-color: #f87777;
	background: #fff8f8;
}

div.tbox-color2 {
	border-color: #33aa55;
	background: #f6fff0;
}

div.tbox-color3 {
	border-color: #779933;
	background: #f9ffd8;
}

h2.tbox-h2a {
	font-size: 1.4em;
	margin: .1em 0;
}

h2.tbox-h2m {
	font-size: 1.2em;
	margin: .3em;
}

h2.tbox-h2s {
	font-size: 1.1em;
	margin: .1em;
}

h3.tbox-h3m {
	font-size: 1.1em;
	margin: .1em .3em;
	color: #55aa33;
}

h3.tbox-h3a {
	font-size: 1.25em;
	color: #007722;
	margin: 7px 0;
}
h3.tbox-h3b {
	font-size: 1.25em;
	color: #009966;
	margin: 7px 0;
}

h3.kakokiji {
	font-size: 1.2em;
	margin: .6em .3em .1em .3em;
	padding-top: .2em;
	color: #007722;
	border-top: #cccccc 1px solid;
}
	h3.kakokiji small {
		font-size:.8em;
		color: #555555;
	}

h3.h3aks {
	clear: both;
	margin-top: 0.8em;
	margin-bottom: 0;
	padding-top: 0.2em;
	font-size: 1.1em;
	color: #007700;
	border-top: #d8f8d8 1px solid;
}

div.sp-f-left {
	float: left;
}
div.sp-f-right {
	float: right;
}

.sp-news-prev {
	float: left;
	width: 48%;
	padding-bottom: 12px;
}
.sp-news-next {
	float: right;
	width: 48%;
	text-align: right;
	padding-bottom: 12px;
}
.sp-news-prev p, .sp-news-next p {
	margin: 0;
	padding: 0;
}

/* 耳 */
/*
span.sp-topic-title {
	margin: 0 0 0 12px;
	padding: 1px 20px;
	border-radius: 10px 10px 0 0;
	background: #808080;
	color: #ffffff;
	font-weight: bold;
}
*/



span.sp-tt1 {
	background: #0055aa;
}
div.sp-tb1 {
	border-color: #0055aa;
}

img.i-left {
	float: left;
	margin: 2px 6px 6px 0;
}
img.i-right {
	float: right;
	margin: 2px 0 6px 6px;
}


.sp-imgs {
	width: 100%;
	margin: 8px 5px 8px 0;
	padding: 3px 6px;
	background: #ffffff;
	border-radius: 0;
	border: none;
}
.sp-imgs img {
	margin: 3px;
	box-shadow: 2px 2px 3px rgba(0, 0, 0, .2);
}

.sp-news-headline {
	margin: 3px;
	padding: 2px 4px;
	border-top:#bbddbb 1px solid;
}
.sp-news-headline2 {
	margin: 3px;
	padding: 2px 4px;
	border-top:#ffbbbb 1px solid;
}
.sp-news-headline3 {
	margin: 3px;
	padding: 2px 4px;
	border-top:#8888dd 1px solid;
}
.sp-columns-headline {
	margin: 8px;
	padding: 4px;
	border-top:#ffccdd 1px solid;
}

/* 汎用 */
.attention1 {
	color: #ff0055;
}

.attention2 {
	color: #0077cc;
}


	
/* モジュール記事中の強調表示 */
strong.st-mod {
	font-size:1.2em;
	color:#ff5555;
}
strong.st-mod2 {
	font-size:1.2em;
	color:#007700;
}
/* 20200604追加刷新 */
strong.mod-ema1 {
	font-size:1.5em;
	color:#ff3333;
}
strong.mod-ema2 {
	font-size:1.15em;
	color:#ff3333;
}
strong.mod-emb1 {
	font-size:1.5em;
	color:#227722;
}
strong.mod-emb2 {
	font-size:1.15em;
	color:#227722;
}


/* ======================= */
/* その他 */
/* ======================= */

/* ページの最上部へ飛ぶボタン（フェードイン）：画面表示のみ */
@media screen {
	a#sp-navi2top {
		display: block;
		position: fixed;
		right: 10px;
		bottom: 10px;
		padding: 4px;
		border-radius: 4px;
		color: #ffff00;
		background: #3333cc;
		opacity: 0.7;
		text-decoration: none;
	}
	a#sp-navi2top:hover {
		opacity: 0.95;
		text-decoration: none;
	}
}
/* 印刷時は要らないので */
@media print {
	a#sp-navi2top {
		visibility: hidden;
	}
}
