@charset "UTF-8";

/*コンテナ*/
#container {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
/*ヘッダー*/
#header {
	width: 100%;
	margin: 0 auto;
	text-align: left;
}
#header_wrapper {
	width: 980px;
	height: 80px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

/*ヘッダー：ロゴ部分*/
#header_wrapper h1 {
	display: inline-block;
	width: 286px;
	padding: 6px 0 0;
}
#header_wrapper h1 img{
	width: 286px;
	height: 64px;
}

/*ヘッダー：検索・リンク（小）部分*/
#header_wrapper #header_search {
	width: calc( 100% - 300px);
	padding: 15px 0px 0px 0px ;
	font-size: 12px;
	
}
/*▼▼▼Google検索▼▼▼*/

#header_search div#google {
	padding-left: 10px;
	padding-bottom: 5px;
	float: right;
	width: auto;
	white-space: nowrap;
}
#google input {
	width: 200px;
	height: auto;
	outline: none;
}
#google input:focus{
	outline: none;
	border-color: #6667B8;
}

#google input#submit_button {
	width: 50px;
	height: auto;
	color: #FFFFFF;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Osaka;
	font-weight: 600;
	border-radius: 4px;
	background-color: #e4e3df;
	background: #336699;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #121734), color-stop(0.95, #040621), color-stop(0.45, #171b5d), color-stop(0.00, #5d6b9c));
	background: -webkit-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -moz-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -o-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -ms-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: linear-gradient(to bottom, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	border-width: 1px;
	border-color: #6667B8;
	cursor: pointer;
}
#google input#submit_button:hover {
	color: #FFFFFF;
	background-color: #e4e3df;
	background: #336699;
	background: linear-gradient(to bottom, hsla(234,40%,70%,1.00) 0%, hsla(234,40%,24%,1.00) 45%, hsla(234,40%,8%,1.00) 95%, hsla(234,40%,14%,1.00) 100%);
	border-color: hsla(234,60%,40%,1.00);
}
#header_search div#google form {
	display: inline;
}
#header_search div#google img {
	vertical-align: bottom;
	width: 96px;
	height: 22px;
}
.focus{
	color: #333333;
	border: 1px solid #0d1d55;
	padding: 2px;
	margin: 0;
	height: 14px;
	display: inline-block;
	width: 120px;
}
/*▲▲▲Google検索▲▲▲*/
/*▼▼▼リンク（小）▼▼▼*/
#header_search div#s_link {
	display: inline-block;
	padding-right: 0;
	padding-bottom: 5px;
	position: relative;
	top:  -5px;
	margin-left: 8px;
	font-size: 0.95em;
}
div#s_link ul {
	margin: 0;
	list-style: none;
	padding-right: 10px;
}
div#s_link li {
/*	float: left;*/
	display: inline;
	margin: 0;
	padding: 1px 3px 1px 5px;
	height:17px;
	border-left: 1px solid #000000;
/*	overflow: hidden;*/
}
div#s_link li:last-child{
	padding-right: 5px;
	border-right: 1px solid #000000;
}
/*▲▲▲リンク（小）▲▲▲*/
/*▼▼▼Englishボタン▼▼▼*/
#header_search .btn_english {
	padding-left: 0px;
	white-space: nowrap;
}
#header_search .btn_english img{
	width: 51px;
	height: 22px;
}
/*▲▲▲Englishボタン▲▲▲*/
/*ヘッダー：メニューボタン部分*/
#header #header_menu {
	height: 35px;
	width: 100%;
	background: #336699;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #121734), color-stop(0.95, #040621), color-stop(0.45, #171b5d), color-stop(0.00, #5d6b9c));
	background: -webkit-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -moz-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -o-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: -ms-linear-gradient(top, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	background: linear-gradient(to bottom, #5d6b9c 0%, #171b5d 45%, #040621 95%, #121734 100%);
	border-bottom: 1px solid #3f4b7c;
}
#header_menu ul{
	background-image: url(../img/header/hm_om.gif);
	background-repeat: no-repeat;
	list-style-type: none;
	margin: 0px auto;
	padding: 0px;
	width: 980px;
	height: 35px;
	letter-spacing: -.40em; /*inline-blockでの余白対策 直下のliで解除している*/
}
#header_menu ul li{
	display: inline-block;
	letter-spacing: 0;
	margin: 0px;
	padding: 0px;
	width: 130px;
	height: 35px;
}
#header_menu ul li a img{
	display: block;
	width: 130px;
	height: 35px;
}
#header_menu ul li.sick,
#header_menu ul li.search{	
	width: 118px;
}
#header_menu ul li.sick{
	margin-left: 20px;
}
#header_menu ul li.sick a img,
#header_menu ul li.search a img{
	width: 118px;
	height: 35px;
}
#header_menu ul li.member{
	width: 105px;
	margin-left: 19px;
}
#header_menu ul li.member a img{
	width: 105px;
	height: 35px;
}

/*ヘッダーメニューのロールオーバー*/
#header_menu li a {
	display: block;
	float:left;
}
#header_menu a:hover img {
	visibility:hidden
}
#header_menu a:hover {
	background-color: transparent;
}

#main_wrapper {
	width: 980px;
	margin: 0px auto;
	text-align: left;
}

/*フッター*/
#footer {
	clear: both;
	width: 100%;
	height: 27px;
	padding-top: 7px;
}
#footer address{
	margin: 0;
	padding: 0;
	display: block;
	height: 27px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #b9c1ce), color-stop(0.95, #bac2cf), color-stop(0.20, #bac2cf), color-stop(0.00, #8a92a7));
	background: -webkit-linear-gradient(top, #8a92a7 0%, #bac2cf 20%, #bac2cf 95%, #b9c1ce 100%);
	background: -moz-linear-gradient(top, #8a92a7 0%, #bac2cf 20%, #bac2cf 95%, #b9c1ce 100%);
	background: -o-linear-gradient(top, #8a92a7 0%, #bac2cf 20%, #bac2cf 95%, #b9c1ce 100%);
	background: -ms-linear-gradient(top, #8a92a7 0%, #bac2cf 20%, #bac2cf 95%, #b9c1ce 100%);
	background: linear-gradient(to bottom, #8a92a7 0%, #bac2cf 20%, #bac2cf 95%, #b9c1ce 100%);
	border-top: 2px solid #8b93aa;
}
#footer address img{
	display: block;
	margin: 6px auto 0;
	width: 400px;
	height: 16px;
}

/*メイン部分*/
#main {
	width: 684px;
	float: right;
	padding-top: 0.8em;
}

/*パンくずリスト*/
#pankuzu {
/*	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: solid 1px #2B3860;*/
	margin-bottom: 2px;
	padding-left: 0px;
	font-size: 95%;

	overflow: hidden;
	overflow-x: hidden;
	overflow-y: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
#pankuzu a {
	margin-right: 0.2em;
/*	margin-right: 0.4em;*/
	margin-left: 0.2em;
}
#pankuzu a:first-child {
	margin-left: 0;
}

#main h2 {
	margin-bottom: 1em;
}
#main h2 img{
	display: block;
	width: 684px;
	height: 71px;
}

#main #main_contents{
	width: calc(100% - 20px);
	margin: 15px 10px 10px;
}
#main h3 {
	text-align: left;
	clear: both;
	margin: 0px 8px 5px;
	padding: 0.25em 0.3em 0.2em;
	background: linear-gradient(#f7f6f7, #e1e1e1);
	border: solid 1px #CCCCCC;
	font-size: 1.1em;
}
#main h3 span {
	padding-left: 0.3em;
	border-left: #5867c9 solid 0.4em;
	display: block;
}
#main #main_contents h3 {
	margin: 0px 0px 15px;
}
#main h4 {
	clear: both;
	font-size: 1em;
	border-bottom: #5867c9 solid 1px;
	border-left: #5867c9 solid 0.5em;
	margin: 2em 1em 1em;
/*	margin: 2em 20px 1em;*/
	padding: 0.2em 0 0.2em 0.3em;
}
#main #main_contents h4 {
	margin: 2em 10px 1em;
}
#main h5 {
	font-size: 1em;
	border-left: #5867c9 solid 6px;
	margin: 2em 1.25em 1em 1.25em;
	padding: 0 0.3em;
}
#main h6 {
	font-size: 1em;
	color: #333399;
	margin: 1.25em 1.25em 1em 1.25em;
}

#main p {
	margin: 0em calc(10px + 1em) 1em;
/*	margin: 0em 30px 1em;*/
	line-height: 1.6em;
}
#main #main_contents p {
	margin: 0em 20px 1em;
}

#main p.indent1{
	text-indent: 1em;
}

#main #main_contents p.update{
	text-align: right;
	color:#3366FF;
	font-weight: bold;
	margin-right: 4px;
}

#main iframe{
	margin: 0px auto 1em;
}

#main #main_contents ul{
	margin: 0em 20px 1em;
	padding-left: 2em;
	line-height: 1.6em;
}

#main ol{
	margin: 1em 2em 0;
	padding-left: 1.5em;
}
#main ol li{
	margin-bottom: 0.5em;
}

#main #sub_list2 ul {
	list-style-type: none;
	width: auto;
	margin-left:7px;
}

#main #sub_list2 li {
	border: #CCCCCC solid 1px;
	width: 300px;
	margin-bottom: 1em;
	font-weight: bold;
}

#main #sub_list2 li.list_left {
	float: left;
}
#main #sub_list2 li.list_right {
	float: right;
}

#main #main_contents .btn{
	margin: 2em auto 2.5em;
	text-align: center;
}
#main #main_contents .btn_lg{
	font-size: 1.2em;
}
#main #main_contents .btn_xl{
	font-size: 1.5em;
}
#main #main_contents .btn a{
	color: #FFFFFF;
	text-decoration: none;
	border: 1px solid #666699;
	border-radius: 8px;
	padding: 0.4em 0.6em 0.3em;
	text-shadow: 1px 1px 2px #000000;
	box-shadow: 0px 0px 6px 2px #9999FF;
	background-image: -webkit-linear-gradient(#b2b2ed 0%, #5050a5 49%, #1c1c60 50%, #050519);
	background-image: -o-linear-gradient(#b2b2ed 0%, #5050a5 49%, #1c1c60 50%, #050519);
	background-image: linear-gradient(#b2b2ed 0%, #5050a5 49%, #1c1c60 50%, #050519);
}
#main #main_contents .btn a:hover{
	color: #336699;
	text-shadow: -1px -1px 2px #FFFFFF;
	background-image: none;
	background-color: #F0F0FF;
}

/*メイン：ページトップへ*/
.pagetop {
	clear: both;
	text-align: right;
	padding: 1em 0px;
}
.pagetop a {
	background: url(../img/arrow_up.gif) no-repeat left center;
	margin-right: 0px;
	padding-left: 1em;
}
.pagetop a:hover {
	background: url(../img/arrow_up_om.gif) no-repeat left center;
}

#main .pagetop {
	clear: none;
	text-align: right;
	padding: 1em 0px;
}
#main .pagetop a {
	margin-right: 0px;
}
/*メイン部分終了*/


/*サイドメニュー*/
#sidemenu {
	width: 270px;
	float: left;
}
#sidemenu img {
	vertical-align: bottom;
}

#category_menu li img.sm{
	display: block;
	width: 306px;
	height: 40px;
}

#category_menu {
	list-style-type: none;
	width:240px;
	margin:0 0 1em 30px;
}
#category_menu li{
	margin: 0.8em 0 0.2em;
}
#category_menu li img {
	border: 1px solid #CCCCCC;
	width: 240px;
	height: 56px;
}

#category_menu ol {
	list-style-type: none;
	padding: 0em;
	margin: 4px 0 0.2em;
	border-top: solid 1px #CCCCCC;
	border-left: solid 1px #CCCCCC;
	border-right: solid 1px #CCCCCC;
}

#category_menu ol#contentsmenu_public {
	background-color: #FBFBFF;
}
#category_menu ol#contentsmenu_edu {
	background-color: #E7F5EE;
}
#category_menu ol#contentsmenu_media {
	background-color: #FFFBFB;
}

#category_menu ol li {
	padding: 0.2em 0 0.2em 0.9em;
	margin: 0em;
	border-bottom: solid 1px #CCCCCC;
}
#category_menu ol li a {
	background: url(../img/menulist_point.gif) no-repeat left center;
	padding: 2px 0 2px 12px;
}
#category_menu ol li.long a{
	background-position: 0px 6px;
	padding-left: 12px;
	padding-right: 2px;
	display: inline-block;
}
#category_menu ol li a:hover {
	background: url(../img/menulist_point_om.gif) no-repeat left center;
}
#category_menu ol li.long a:hover{
	background-position: 0px 6px;
}

/*ロコモバナー*/
#category_menu .locomo img {
	width: 240px;
	height: 52px;
}

/*サブメニュー*/
#submenu {
	margin-left: 30px;
	margin-bottom: 1em;
}
#submenu ul {
	list-style-type: none;
	border-top: solid 1px #CCCCCC;
	border-left: solid 1px #CCCCCC;
	border-right: solid 1px #CCCCCC;
	margin-bottom: 0.8em;
	width: 240px;
}
#submenu li {
	border-bottom: solid 1px #CCCCCC;
	margin: 0;
	padding: 0;
}
#submenu span a {
	padding: 0.3em 0.2em 0.3em 2em;
	background: url(../img/menulist_point_s.gif) no-repeat 1.2em center;
	color: #042c63;
	text-decoration: none;
	font-size: 90%;
}
#submenu span a:hover {
	background: url(../img/menulist_point_s_om.gif) no-repeat 1.2em center;
}
#submenu ul img {
	vertical-align: bottom;
}
#submenu li span{
	display: block;
}
#submenu li span a{
	display: block;
	padding: 1px 0.2em 1px 2em;
}
#submenu .login img {
	width: 240px;
	height: 46px;
}
#submenu .member_faq {
	margin-left: 10px;
}
#submenu .member_faq img{
	width: 210px;
	height: 15px;
}

#submenu .indent {
	margin-left: 10px;
}

/*研修会申請*/
#submenu ul.shinsei {
	margin-top: 20px;
	color: #ffffff;
	font-weight: bold;
}
#submenu ul.shinsei li{
	background-color: #FFFFFF;
}
#submenu ul.shinsei li span a:hover{
	color: #FF0000;
}
#submenu ul.shinsei .title{
	padding: 4px 0;
	height: auto;
	color: #ffffff;
	font-weight: bold;
	background-color: #000099;
	text-align: center;
	line-height: 120%;
}
#submenu ul.shinsei .title span{
	font-size: 75%;
}

/*通常のリスト*/
#main #main_contents ul.normal{
	margin: 2em 20px 1em;
	padding-left: 0px;
	list-style-position: inside;
	list-style-image: url(../img/menulist_point_s.gif);
	background-repeat: no-repeat;
}
#main_contents ul.normal li{
	font-weight: bold;
	padding: 0.2em 0em 0.5em;;
	border-bottom: 1px dotted #CCCCCC;
	margin-bottom: 10px;
}
#main_contents ul li img.icon + span,
#main_contents ul.normal li img.icon + span{
	font-weight: normal;
	font-size: 0.9em;
}
#main_contents a + img[src$="icon_pdf.png"],
#main_contents a + img[src$="icon_s_docx.png"],
#main_contents a + img[src$="icon_s_xlsx.png"],
#main_contents a + img[src$="icon_s_pptx.png"] {
	width: 16px;
	height: 16px;
	margin: 0 2px -2px 4px;
}
#main_contents a + img[src$="icon_pdf.png"] + span,
#main_contents a + img[src$="icon_s_docx.png"] + span,
#main_contents a + img[src$="icon_s_xlsx.png"] + span,
#main_contents a + img[src$="icon_s_pptx.png"] + span{
	font-size: 0.9em;
	margin-left: 0px;
}


#main #main_contents ul.nomark{
	list-style-type: none;
	padding-left: 0;
}
#main #main_contents ul.nomark li{
	margin-bottom: 10px;
	padding-left: 0;
}
#main #main_contents ul.nomark01 li{
	text-indent: -1em;
	margin-left: 1em;
}
#main #main_contents ul.nomark02 li{
	text-indent: -2em;
	margin-left: 2em;
}

/*タイトル直下のサブリスト*/
#main #sub_list{
	margin-left: 0;
	margin-right: 0;
}
#main #sub_list ul {
	list-style-type: none;
	width: auto;
	padding-left: 0;
	margin: 0 1em;
}
#main #sub_list li {
	border: #CCCCCC solid 1px;
	margin: 1em 0.25em 0.1em;
	font-weight: bold;
	width: calc(50% - 0.85em);
	display: inline-block;
}
#main #sub_list li a {
	background:url(../img/menulist_point_s.gif) no-repeat 0.3em center #FFFFFF;
	padding: 0.2em 0.2em 0.2em 1.2em; 
	display: block;
}

#main #sub_list li a:hover {
	background:url(../img/menulist_point_s_om.gif) no-repeat 0.2em center #FBFBFF;
}
#main #sub_list li a.small{ /*長くて一行に収まらないときの対応*/
	font-size: small;
	padding: 0.2em 0.2em 0.4em 1.3em; 
}
#main #sub_list li.list_left,
#main #sub_list li.list_right{
	float: none;
}

/*20170404　専門医検索一時削除*/
/*#header_menu ul li.search,
#pdmenu_public li:nth-child(2),
#submenu ul:first-child li:first-child,
#contentsmenu_public  li:nth-child(2){
	display: none;
}*/

/*～992pxの画面*/
@media screen and (max-width: 991px){
	#header_wrapper { width: calc( 100% - 16px);}
	#header #header_menu { height: 24px;}
	#header_menu ul { background-image: none; margin: 0; width: 100%; height: 24px;}
	#header_menu ul li { width: 87px; height: 23px;}
	#header_menu ul li a img{ width: 87px; height: 23px;}
	#header_menu ul li.sick { margin-left: 14px;}
	#header_menu ul li.sick, #header_menu ul li.search { width: 79px;}
	#header_menu ul li.sick a img, #header_menu ul li.search a img { width: 79px; height: 23px;}
	#header_menu ul li.member { width: 70px; margin-left: 13px;}
	#header_menu ul li.member a img{ width: 70px; height: 23px;}
	#header_wrapper #header_search { padding-top: 5px; font-size: 12px;}
	#header_search div#s_link { margin-top: 5px; padding-bottom: 4px; font-size: 0.9em; line-height: 100%;}
	#main_wrapper { width: 100%;}
	#main{ width: calc( 100% - 300px);}
	#main h2 img { width: 100%; height: auto; max-width: 684px;}
}
/*～768pxの画面*/
@media screen and (max-width: 767px){
	body{ background-image: none; background-color: #FFFFFF;}
	#header{width: 100%;}
	#header_wrapper{width: 100%;  height: 72px; border-bottom: 1px solid #336699;}
	#header_wrapper h1{}
	#header_wrapper #header_search{ display: none;}
	#header #header_menu{ display: none;}
	#main_wrapper{ width: 100%; float: none;}
	#main{ float: none;}
	#main_wrapper #sidemenu{ width: 100%; float: none; margin-left: 0; clear: both;}
	#category_menu { width: 100%; margin: 30px 0 0;}
	#category_menu li{}
	#category_menu li a img{}
	#category_menu > li > a:nth-child(1){ }
	#category_menu li a:nth-child(1) img{ display: block; border: 0px none;}
	#sidemenu #category_menu > li:nth-child(1) > a:nth-child(1),
	#sidemenu #category_menu > li:nth-child(2) > a:nth-child(1),
	#sidemenu #category_menu > li:nth-child(3) > a:nth-child(1){ display: block; border: 1px solid #CCCCCC;}
	#sidemenu #category_menu > li:nth-child(1) > a:nth-child(1) img,
	#sidemenu #category_menu > li:nth-child(2) > a:nth-child(1) img,
	#sidemenu #category_menu > li:nth-child(3) > a:nth-child(1) img{ display: block; margin: 0}
	#sidemenu #category_menu > li:nth-child(1) > a:nth-child(1){ background-color: #f3f3ff;}
	#sidemenu #category_menu > li:nth-child(2) > a:nth-child(1){ background-color: #f2fff3;}
	#sidemenu #category_menu > li:nth-child(3) > a:nth-child(1){ background-color: #fef2f2;}
	#category_menu li a { display: block; border: 0px none;}
	#category_menu li a img{ display: block; margin: 0 auto;}

	#category_menu ol { margin-top: 0; border-top: 0;}
	
	#submenu { margin: 0; width: 100%;}
	#submenu ul { margin-bottom: 0; width: 100%;}
	#submenu ul:first-child { margin-top: 20px;}
	#submenu ul li.login{ background-color: #e4e4eb;}
	#submenu .member_faq { margin: 10px auto; text-align: center;}
	#submenu ul.shinsei { margin-top: 0;}

	div.pagetop{ display: none;}
	#footer { padding-top: 0;}


	#main{ width: 100%; margin-left: 0; padding-top: 2px;}
	#pankuzu{ margin-bottom: 4px; margin-left: 2px; border-bottom: 0px none;}
	#pankuzu a {white-space: nowrap; margin-left: 2px; margin-right: 2px;}

	#main h2{ margin-bottom: 10px;}
	#main h2 img{ width: 100%; height: auto; margin-bottom: 10px;}
	#main #main_contents{ width: 100%; margin: 10px 0 10px;}
	#main h3{ margin-left: 0; margin-right: 0; margin-bottom: 1em;}
	#main h4{ margin: 0 4px 1em;}
	#main p{ margin: 0 12px 1em;}
	#main #main_contents p { margin: 0em 12px 1em;}
}

/*～640pxの画面*/
@media screen and (max-width:639px){

}
/*～480pxの画面*/
@media screen and (max-width:479px){
	#footer{ height: auto;}
	#footer address img{ width: 100%; max-width: 400px; height: auto;}
}