@charset "utf-8";
/*
Theme Name: Oki Hospital
Description:
Version: 1.0
Author: Ishiwa@Will3in
*/

@import "css/reset.css";
@import "css/editor-style.css";

/* Base Style
================================================== */
html {
	font-size: 62.5%;
}

body {
	position: relative;
	background-color: #fff;
	color: #333;
	font-size: 1.6rem;
	font-family: Verdana, 'Hiragino Kaku Gothic ProN', Meiryo, 'MS PGothic', sans-serif;
	line-height: 1.5;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
}

a:focus img {
	background-color: transparent;
}

img.external {
	margin: 0 3px;
	vertical-align: middle;
}

@media screen and (min-width: 481px) {
	.alignnone + img.external {
		margin-left: -9px;
	}
}

input,
select,
textarea {
	color: #000;
	font-family: inherit;
	font-size: 100%;
}

input[type="submit"] {
	-webkit-appearance: none;
}

address {
	font-style: normal;
}

.new {
	display: inline-block;
	margin-top: -3px;
	margin-right: .5em;
	padding: 1px 5px 3px;
	border-radius: 1em;
	background: #d93838;
	color: #fff;
	font-size: 1.3rem;
	font-weight: normal;
	line-height: 1;
	vertical-align: middle;
}

.hide,
.scrText {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
}


/* Layout
================================================== */
.inner {
	max-width: 980px;
	margin: 0 auto;
}

#content {
	margin: 30px 0 80px;
}

#main {
	float: left;
	width: 100%;
	margin-right: -266px;
}

.col1 #main {
	float: none;
	margin-right: 0;
}

#mainInner {
	margin-right: 266px;
}

#sidebar {
	float: right;
	width: 236px;
}

@media screen and (max-width: 1020px) {
	.inner {
		margin: 0 20px;
	}
}

@media screen and (max-width: 768px) {
	#main {
		float: none;
		margin-right: 0;
		margin-bottom: 60px;
	}

	#mainInner {
		margin-right: 0;
	}

	#sidebar {
		float: none;
		width: auto;
	}
}

@media screen and (max-width: 480px) {
	.inner {
		margin: 0 10px;
	}
}


/* Block Skip
================================================== */
.skip a {
	display: block;
	height: 0;
	overflow: hidden;
}

.skip a:focus {
	height: auto;
}


/* Header
================================================== */
#commonHeader {
	border-top: 12px solid #38abc8;
}

#commonHeader .inner {
	padding: 15px 0 8px;
	background: url(images/bg_sky.jpg) no-repeat 65px -12px;
}

#siteId {
	float: left;
	margin: 5px 0 12px;
}

#guideNav {
	text-align: right;
}

#guideNav ul,
#guideNav li,
#siteSearch {
	display: inline-block;
}

#guideNav ul,
#siteSearch {
	margin-bottom: 12px;
	vertical-align: middle;
}

#guideNav li {
	margin-right: 5px;
	font-size: 1.4rem;
}

#guideNav li a {
	padding-left: 1.5em;
	background-repeat: no-repeat;
	background-position: 0 60%;
	background-size: auto 1em;
	color: #666;
}

#guideNav li.page-access a {
	background-image: url(images/icon_access.png);
}

#guideNav li.page-contact a {
	background-image: url(images/icon_contact.png);
}

#guideNav li.page-sitemap a {
	background-image: url(images/icon_sitemap.png);
}

#guideNav li a:hover,
#guideNav li a:focus {
	color: #333;
}

.searchForm {
	border: 1px solid #a0a0a0;
	border-radius: 1em;
	background-color: #fff;
	font-size: 1.4rem;
}

.searchForm input[type="text"] {
	float: left;
	width: 12em;
	height: 1.9em;
	padding: 0 10px 0 .75em;
	border: 0;
	box-sizing: border-box;
	background: transparent;
}

#blogSearch input[type="text"] {
	width: calc(100% - 1.5em - 17px);
}

.searchForm input[type="image"] {
	float: right;
	height: 1.5em;
	padding: .2em 10px .2em 7px;
	border-radius: 0 1em 1em 0;
	background-color: #247baf;
}

#commonHeader .reception {
	float: right;
	margin-bottom: 10px;
}

#commonHeader .reception .phone {
	display: inline-block;
	margin: 0 10px;
	color: #247baf;
	font-size: 3.6rem;
	font-weight: bold;
	font-family: Arial, sans-serif;
	line-height: 1;
	vertical-align: top;
}

#commonHeader .reception .phone img {
	margin-right: 3px;
	vertical-align: baseline;
	height: .7em;
	width: auto;
}

#commonHeader .reception dl {
	display: inline-block;
	font-size: 1.3rem;
	line-height: 1.3;
	vertical-align: top;
}

#commonHeader .reception dl dt {
	clear: left;
	float: left;
}

#commonHeader .reception dl dt::after {
	content: "／";
}

#commonHeader .reception dl dd {
	float: left;
}

@media screen and (max-width: 640px) {
	#commonHeader .inner {
		margin: 0;
		padding-right: 20px;
		padding-left: 20px;
		background-position: 85px -12px;
	}
	
	#siteId {
		float: none;
		text-align: center;
	}
	
	#commonHeader #guideNav {
		display: none;
	}
	
	#commonHeader .reception {
		clear: left;
		float: none;
		margin-bottom: 2px;
		text-align: center;
	}
}

@media screen and (max-width: 480px) {
	#commonHeader .inner {
		margin: 0;
		padding: 10px 10px 8px;
		background-position: 75px -17px;
	}
	
	#siteId {
		margin-right: calc(3.375em + 12px);
		margin-bottom: 6px;
	}
}


/* Global Nav
================================================== */
#spMenu {
	display: none;
}

#globalNav {
	right: auto;
	margin-bottom: 4px;
}

#globalNav .parent > li {
	float: left;
	width: 20%;
	padding-bottom: 14px;
	position: relative;
}

#globalNav .parent > li.page-home {
	width: 15%;
}

#globalNav .parent > li.page-medical-personnel {
	width: 25%;
}

#globalNav .parent > li > a {
	display: block;
	padding-bottom: 5px;
	border-right: 1px dotted #b8c4c9;
	color: #333;
	font-size: 1.7rem;
	text-decoration: none;
	text-align: center;
	line-height: 1.3;
	position: relative;
}

#globalNav .parent > li:first-child > a {
	border-left: 1px dotted #b8c4c9;
}

#globalNav .parent > li > a::before,
#globalNav .parent > li:first-child > a::before {
	content: "";
	position: absolute;
	top: 0;
	height: 100%;
}

#globalNav .parent > li > a::before {
	right: 0;
	border-right: 1px dotted #b8c4c9;
}

#globalNav .parent > li:first-child > a::before {
	left: 0;
	border-left: 1px dotted #b8c4c9;
}

#globalNav .parent > li > a span {
	display: block;
	color: #247baf;
	font-size: 1.0rem;
}

#globalNav .parent > li.current-menu > a::after,
#globalNav .parent > li:hover > a::after,
#globalNav .parent > li.focus > a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: calc(100% - 24px);
	margin-left: 12px;
	border-top: 1px solid #a1c4dd;
	border-bottom: 2px solid #a1c4dd;
	border-radius: 2px;
}

#globalNav .parent > li.current-menu > a::after {
	border-color: #75bde7;
}

#globalNav .children {
	position: absolute;
	top: 100%;
	left: 0;
	height: 0;
	overflow: hidden;
	z-index: 99;
	opacity: 0;
	transition: opacity .2s;
}

#globalNav .parent > li:last-child > .children {
	left: auto;
	right: 0;
}

#globalNav .children .children {
	top: 8px;
	left: 100%;
}

#globalNav .parent > li:nth-last-child(-n+2) .children .children {
	left: auto;
	right: 100%;
}


#globalNav li:hover > .children,
#globalNav li.focus > .children {
	width: 240px;
	height: auto;
	overflow: visible;
	border: 1px solid #a1c4dd;
	border-radius: 5px;
	box-sizing: border-box;
	box-shadow: 0 0 5px rgba(0,0,0,.5);
	background-color: #fff;
	opacity: 1;
}

#globalNav .parent > li > .children::before {
	content: "";
	position: absolute;
	top: 0;
	left: 35%;
	width: 20px;
	height: 20px;
	margin-top: -11px;
	border-top: 1px solid #a1c4dd;
	border-left: 1px solid #a1c4dd;
	box-shadow: 0 0 5px rgba(0,0,0,.5);
	background-color: #fff;
	transform: rotate(45deg);
}

#globalNav .children li {
	margin: 0 8px;
	padding: 3px 0;
	background-color: #fff;
	position: relative;
}

#globalNav .children li:not(:last-child) {
	border-bottom: 1px dotted #b8c4c9;
}

#globalNav .children li a {
	display: block;
	margin: 0 -5px;
	padding: 8px;
	color: #333;
	text-decoration: none;
}

#globalNav .children li.hasChild > a {
	background: url(images/arrow_ss.png) no-repeat 98% 50%;
	background-size: 5px auto;
}

#globalNav .children li a:hover,
#globalNav .children li a:focus {
	background-color: #edf3f7;
}


@media screen and (max-width: 640px) {
	#spMenu {
		display: block;
		position: absolute;
		top: 32px;
		right: 20px;
		z-index: 100;
		line-height: 1;
	}
	
	#spMenu a {
		position: relative;
		display: block;
		width: 4.5em;
		height: 4.5em;
		border: 2px solid #38abc8;
		border-radius: 5px;
		background-color: #fff;
		color: #247baf;
		font-size: 75%;
		text-decoration: none;
		text-transform: uppercase;
		text-align: center;
	}
	
	#spMenu a::before {
		content: "\2261";
		display: block;
		color: #38abc8;
		font-size: 500%;
		margin: -0.1875em 0 -0.125em;
	}

	body.open #spMenu a::before {
		content: "×";
	}
	
	#globalNav {
		position: fixed;
		top: 0;
		right: -270px;
		width: 270px;
		height: 100%;
		overflow: auto;
		z-index: 99;
		padding-top: calc(3.375em + 44px);
		border-top: 12px solid #38abc8;
		background: #fff;
	}
	
	body.open #globalNav {
		right: 0;
	}
	
	#globalNav .parent > li,
	#globalNav .parent > li.page-home,
	#globalNav .parent > li.page-medical-personnel {
		float: none;
		width: auto;
		padding: 0;
	}
	
	#globalNav .parent > li > a {
		padding: 6px 0 6px 11px;
		border-right: 0;
		border-bottom: 1px dotted #b8c4c9;
		text-align: left;
	}
	
	#globalNav .parent > li:first-child > a {
		border-left: 0;
		border-top: 1px dotted #b8c4c9;
	}
	
	#globalNav .parent > li > a::before,
	#globalNav .parent > li:first-child > a::before {
		content: "";
		position: absolute;
		top: 0;
		width: 100%;
		height: auto;
	}
	
	#globalNav .parent > li > a::before {
		bottom: 0;
		border-right: 0;
		border-bottom: 1px dotted #b8c4c9;
	}
	
	#globalNav .parent > li:first-child > a::before {
		top: 0;
		border-left: 0;
		border-top: 1px dotted #b8c4c9;
	}
	
	#globalNav .parent > li.current-menu > a::after {
		top: 0;
		bottom: auto;
		width: 0;
		height: calc(100% - 12px);
		margin-left: 0;
		margin-top: 6px;
		border-top: 0;
		border-bottom: 0;
		border-right: 1px solid #75bde7;
		border-left: 2px solid #75bde7;
	}

	#globalNav .parent > li:hover > a::after,
	#globalNav .parent > li.focus > a::after {
		content: none;
	}	

	#globalNav .children {
		display: none;
	}

	#globalNav #guideNav {
		margin: 12px 0 0 11px;
		text-align: left;
	}
	
	#globalNav #guideNav a {
		display: inline-block;
		padding-top: 3px;
		padding-bottom: 3px;
	}

	body.open #mobileNavLayer {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 95;
		background-color: rgba(0,0,0,0.5);
	}
}

@media screen and (max-width: 480px) {
	#spMenu {
		top: 27px;
		right: 10px;
	}

	#globalNav {
		right: -250px;
		width: 250px;
		padding-top: calc(3.375em + 34px);
	}

}


/* Footer
================================================== */
#commonFooter {
	border-top: 1px solid #d9d9d9;
	background: #f0f0f0;
}

#commonFooter a {
	color: #666;
}

#commonFooter a:hover,
#commonFooter a:focus {
	color: #333;
}

#footNav {
	border-bottom: 1px solid #fff;
}

#footNav ul {
	padding: 8px 0 10px;
	background: url(images/logo_footer_a.png) no-repeat 100% 100%;
	background-size: 156px auto;
}

#footNav li {
	display: inline-block;
	font-size: 1.4rem;
}

#footNav li:not(:first-child)::before {
	content: "";
	display: inline-block;
	height: 1em;
	margin-right: .625em;
	margin-left: .25em;
	border-right: 1px solid #666;
	vertical-align: text-bottom;
}

#commonFooter address {
	padding: 18px 0;
	font-style: normal;
	background: url(images/logo_footer_b.png) no-repeat 100% -1px;
	background-size: 156px auto;
}

#commonFooter address em {
	font-size: 2.0rem;
	font-style: normal;
}

#commonFooter address span {
	display: inline-block;
	margin-right: .5em;
}

#commonFooter address a {
	display: inline-block;
	font-size: 1.4rem;
}

#copyright {
	padding: 8px 0 12px;
	border-top: 6px solid #38abc8;
	background-color: #fff;
	color: #666;
	font-size: 1.4rem;
	line-height: 1.3;
	text-align: center;
}
	
#copyright p {
	display: inline-block;
	text-align: left;
}

@media screen and (max-width: 640px) {
	#footNav {
		text-align: center;
	}
}

@media screen and (max-width: 480px) {
	#footNav ul {
		margin: 0;
		padding: 0;
		background: none;
	}
	
	#footNav li {
		float: left;
		width: 50%;
		box-sizing: border-box;
	}
	
	#footNav li:nth-child(odd) {
		padding-left: 10px;
	}
	
	#footNav li:nth-child(even) {
		padding-right: 10px;
	}
	
	#footNav li:nth-child(n+3) {
		border-top: 1px solid #fff;
	}
	
	#footNav li a {
		display: block;
		margin: 2px 0;
		padding: 6px 0;
		border-left: 1px solid #fff;
		text-decoration: none;
	}
	
	#footNav li:nth-child(even) a {
		border-right: 1px solid #fff
	}
	
	#footNav li:not(:first-child)::before {
		content: none;
	}
	
	#commonFooter address {
		background: url(images/logo_footer.png) no-repeat 100% 100%;
		background-size: 156px auto;
	}
	
	#commonFooter address a {
		display: block;
	}
	
	#commonFooter address br {
		display: none;
	}
}

@media screen and (max-width: 400px) {
	#commonFooter address .tel {
		display: block;
	}
}


/* Scroll top
================================================== */
#scrollTop {
	position: fixed;
	bottom: 0;
	width: 100%;
	display: none;
}

#scrollTop p {
	position: relative;
}

#scrollTop a {
	position: absolute;
	right: 0;
	bottom: 0;
	margin-bottom: -1px;
	padding: 5px 12px 7px 28px;
	border: 1px solid #d9d9d9;
	border-bottom: 0;
	border-radius: 5px 5px 0 0;
	background: #f0f0f0 url(images/arrow_t.png) no-repeat 12px 50%;
	background-size: 10px auto;
	color: #666;
	font-size: 1.4rem;
	text-decoration: none;
}

#scrollTop a:hover,
#scrollTop a:focus {
	color: #333;
}

@media screen and (max-width: 480px) {
	#scrollTop a {
		width: 0;
		height: 0;
		overflow: hidden;
		right: 10px;
		bottom: 10px;
		margin-bottom: 0;
		padding: 48px 48px 0 0;
		border: 2px solid #ccc;
		border-radius: 5px;
		background: #fff;
	}
	
	#scrollTop a::before {
		content: "▲";
		position: absolute;
		top: 50%;
		left: 50%;
		margin-top: -0.5em;
		margin-left: -0.5em;
		color: #666;
		font-size: 2.4rem;
		line-height: 1;
	}
}


/* Key visual
================================================== */
#keyvisual {
	position: relative;
	background-color: #38abc8;
}

#keyvisual::after,
#topicPath::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 26px;
	background: url(images/arch.png) no-repeat 50% 0;
	background-size: 100% 100%;
}

#keyvisual .inner {
	position: relative;
}

#keyvisual .inner::before,
#keyvisual .inner::after {
	content: "";
	position: absolute;
	width: 110px;
	height: 100%;
	top: 0;
	z-index: 90;
	background-color: #38abc8;
}

#keyvisual .inner::before {
	right: 100%;
	background: -webkit-linear-gradient(right, rgba(56,171,200,0), #38abc8);
	background: linear-gradient(to left, rgba(56,171,200,0), #38abc8);
}

#keyvisual .inner::after {
	left: 100%;
	background: -webkit-linear-gradient(left, rgba(56,171,200,0), #38abc8);
	background: linear-gradient(to right, rgba(56,171,200,0), #38abc8);
}

#keyvisual .slider {
	margin: 0 -110px;
}

#keyvisual .bx-controls-auto {
	position: absolute;
	right: 4px;
	bottom: 4px;
	z-index: 90;
}

#keyvisual .bx-controls-auto a {
	display: block;
	padding: 5px;
	background-color: rgba(0,0,0,.6);
	color: #fff;
	font-size: 1.4rem;
	text-decoration: none;
	line-height: 1;
}

#keyvisual .bx-controls-auto a.bx-stop::before {
	content: "\25A0";
	margin-right: .25em;
}

#keyvisual .bx-controls-auto a.bx-start::before {
	content: "\25B6";
	margin-right: .25em;
}

#keyvisual .catchy {
	position: absolute;
	top: 15%;
	left: 24px;
	z-index: 90;
}

@media screen and (max-width: 1280px) {
	#keyvisual {
		width: 100%;
		overflow: hidden;
	}
	
	#keyvisual::after,
	#topicPath::after {
		background-size: auto;
	}
}

@media screen and (max-width: 640px) {
	#keyvisual::after,
	#topicPath::after {
		content: none;
	}
	
	#keyvisual .catchy {
		left: 0;
		width: 100%;
		text-align: center;
	}
}


/* Topic path
================================================== */
#topicPath {
	background-color: #f1f1f1;
	position: relative;
}

#topicPath p {
	padding: 16px 12px 4px;
	box-sizing: border-box;
	color: #247baf;
	font-size: 1.4rem;
}

#topicPath em {
	color: #333;
	font-style: normal;
}

@media screen and (max-width: 640px) {
	#topicPath p {
		padding-top: 4px;
	}
}


/* Main
================================================== */
#mainHeader {
	margin-bottom: 24px;
}

#mainHeader h1 {
	padding: 8px 5px 8px 21px;
	border: 1px solid #ccc;
	background: -webkit-linear-gradient(top, #fff, #f0f0f0);
	background: linear-gradient(to bottom, #fff, #f0f0f0);
	background-color: #f7f7f7;
	font-size: 3.2rem;
	line-height: 1.15;
	position: relative;
}

#information.post #mainHeader h1 {
	display: table-cell;
	width: 714px;
	height: calc((3.2rem + 1.2rem) * 1.15 + 3px);
	vertical-align: middle;
}

#mainHeader h1::before {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	width: 8px;
	height: calc(100% - 10px);
	background: url(images/border_dot.png) repeat-y;
	background-size: 8px auto;
}

#mainHeader h1 span.en {
	display: block;
	margin-top: 3px;
	color: #247baf;
	font-size: 1.2rem;
}

#mainHeader .postMeta {
	margin-top: .5em;
	color: #666;
	text-align: right;
}

#mainHeader + .emergencyMsg {
	margin: -8px 0 16px;
	color: #d93838;
	font-size: 2.1rem;
}

#mainImg {
	margin-bottom: 24px;
}

@media screen and (max-width: 640px) {
	.wideTable {
		margin: 1.25em 0 1.5em;
		overflow-x: auto;
	}
	
	.wideTable::-webkit-scrollbar{
		height: 5px;
	}

	.wideTable::-webkit-scrollbar-track{
		background: #f1f1f1;
	}

	.wideTable::-webkit-scrollbar-thumb {
		background: #ccc;
	}

	.wideTable table {
		min-width: 640px;
		margin: 0;
	}
}

@media screen and (max-width: 540px) {
	#mainHeader h1 {
		font-size: 2.8rem;
	}
}

.mceContentBody.emergency {
	padding: 1em 15px;
	border: 3px solid #d93838;
}


/* Child pages
-------------------------------------------------- */
.mceContentBody + #childPages {
	margin-top: 60px;
}

#childPages li {
	float: left;
	width: calc((100% - 12px) / 2);
	margin-bottom: 12px;
	border: 2px solid #a1c4dd;
	border-radius: 5px;
	box-sizing: border-box;
}

#childPages li:nth-child(odd) {
	clear: left;
	margin-right: 12px;
}

#childPages li a {
	display: block;
	padding: 16px 24px;
	border-radius: 3px;
	background: url(images/arrow_s.png) no-repeat 10px 50%;
	background-size: 6px auto;
	color: #333;
	font-size: 1.8rem;
	text-decoration: none;
}

#childPages li a:hover,
#childPages li a:focus {
	background-color: #edf3f7;
}

@media screen and (max-width: 860px) and (min-width: 769px), screen and (max-width: 600px) {
	#childPages li {
		float: none;
		width: auto;
	}
	
	#childPages li:nth-child(odd) {
		margin-right: 0;
	}
}


/* Pagination
-------------------------------------------------- */
.pagination {
	margin-top: 60px;
	text-align: center;
	line-height: 1;
}

.pagination a:not(.prev):not(.next),
.pagination .current {
	display: inline-block;
	width: 1.5em;
	padding: .25em 0;
	border: 1px solid #247baf;
	border-radius: 1em; 
}

.pagination a:not(.prev):not(.next) {
	background-color: #edf3f7;
	text-decoration: none;
}

.pagination a {
	color: #666;
}

.pagination .current {
	background-color: #247baf;
	color: #fff;
}

/* SNS Button
-------------------------------------------------- */
.snsBtn {
	margin: 40px 0 -40px;
}

.snsBtn iframe {
	vertical-align: top;
}


/* Home content
================================================== */
/* Emergency
-------------------------------------------------- */
#home .emergency {
	margin-bottom: 30px;
	border: 3px solid #d93838;
}

#home .emergency h2 {
	padding: 5px 21px 8px;
	background-color: #d93838;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
}

#home .emergency ul {
	margin: 0 15px;
}


/* Recruit banner
-------------------------------------------------- */
#home #main .banner.recruit {
	display: none;
}

@media screen and (max-width: 768px) {
	#home #main .banner.recruit {
		display: block;
		margin-bottom: 30px;
	}
	
	#home #main .banner.recruit h2 {
		padding-left: 52px;
		text-align: center;
	}
	
	#home #sidebar .banner.recruit {
		display: none;
	}
}

/* Web Interview
-------------------------------------------------- */
#home .interview {
	margin-bottom: 30px;
	padding: 12px;
	border: 2px solid #fff000;
	background: #fffcce url(images/bg_interview.png) no-repeat 100% 100%;
	background-size: 180px auto;
}

#home .interview h2 {
	padding: 0 6px;
	color: #1464b4;
	font-size: 2.4rem;
	font-weight: bold;
	border-bottom: 2px solid #1464b4;
}

#home .interview h2 em {
	color: #489401;
	font-style: normal;
}

#home .interview h2 + p,
#home .interview ul {
	margin: .5em 6px 0;
	text-shadow:  0   -1px 2px #fffcce,
	              1px -1px 2px #fffcce,
	              1px  0   2px #fffcce,
	              1px  1px 2px #fffcce,
	              0    1px 2px #fffcce,
	             -1px  1px 2px #fffcce,
	             -1px  0   2px #fffcce,
	             -1px -1px 2px #fffcce;
}

#home .interview p {
	font-weight: bold;
}

#home .interview ul li {
	margin-bottom: .25em;
	text-indent: -1em;
	padding-left: 1em;
}

#home .interview ul li::before {
	content: '◆';
	color: #1464b4;
}

#home .interview ul em {
	font-style: normal;
	font-weight: bold;
}

#home .interview a {
	display: inline-block;
	margin: 12px 6px 8px;
	padding: 10px 36px 10px 50px;
	border: 1px solid #657f05;
	border-radius: 5px;
	background: #657f05 url(images/arrow_w.png) no-repeat 28px 50%;
	background-size: 8px auto;
	color: #fff;
	text-decoration: none;
}

#home .interview:hover a,
#home .interview a:hover,
#home .interview a:focus {
	background-color: rgba(101,127,5,.85);
}


/* Outpatient info
-------------------------------------------------- */
#home .outpatient {
	margin-bottom: 30px;
}

#home .outpatient li {
	float: left;
	width: calc((100% - 24px) / 3);
	box-sizing: border-box;
	border: 2px solid #e2ba95;
	border-radius: 5px;
	position: relative;
}

#home .outpatient li:not(:last-child) {
	margin-right: 12px;
}

#home .outpatient li::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 45%;
	height: 100%;
	border-radius: 0 3px 3px 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	z-index: -10;
}

#home .outpatient li::before {
	width: 33%\9;	/* under IE10 */
}
@media all and (-ms-high-contrast: none) {
	#home .outpatient li::before {
		width: 45%\9;	/* IE10 */
	}
}

#home .outpatient li.page-physician::before {
	background-image: url(images/img_home_doctor.jpg);
}

#home .outpatient li.page-urgency::before {
	background-image: url(images/img_home_urgency.jpg);
}

#home .outpatient li.page-special::before {
	background-image: url(images/img_home_special.jpg);
}

#home .outpatient li a {
	display: block;
	padding: 5px 37% 8px 10px;
	border-radius: 3px;
	box-sizing: border-box;
	background: rgba(255,255,255,.7);
	background: -webkit-linear-gradient(left, #fff 55%, rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, #fff 55%, rgba(255,255,255,0) 100%);
	color: #333;
	text-decoration: none;
}

#home .outpatient li a:hover,
#home .outpatient li a:focus {
	background: rgba(255,255,255,.8);
	background: -webkit-linear-gradient(left, #fff 55%, rgba(255,255,255,.2) 100%);
	background: linear-gradient(to right, #fff 55%, rgba(255,255,255,.2) 100%);
}

#home .outpatient li a .description {
	display: block;
	margin-top: 5px;
	padding-top: 5px;
	border-top: 2px solid #d0721f;
	font-size: 1.4rem;
}

@media screen and (max-width: 480px) {
	#home .outpatient li {
		float: none;
		width: auto;
	}

	#home .outpatient li:not(:last-child) {
		margin-right: 0;
		margin-bottom: 10px;
	}
	
	#home .outpatient li::before {
		width: 35%;
	}
	
	#home .outpatient li a {
		padding-right: 25%;
		background: -webkit-linear-gradient(left, #fff 65%, rgba(255,255,255,0) 100%);
		background: linear-gradient(to right, #fff 65%, rgba(255,255,255,0) 100%);
	}

	#home .outpatient li a:hover,
	#home .outpatient li a:focus {
		background: -webkit-linear-gradient(left, #fff 65%, rgba(255,255,255,.2) 100%);
		background: linear-gradient(to right, #fff 65%, rgba(255,255,255,.2) 100%);
	}
}

/* Recent infomation
-------------------------------------------------- */
#home .recentInfo {
	margin-bottom: 30px;
	padding: 5px;
	border: 1px solid #ccc;
	background: -webkit-linear-gradient(top, #fff, #f0f0f0);
	background: linear-gradient(to bottom, #fff, #f0f0f0);
	background-color: #f7f7f7;
}

#home .recentInfo h2 {
	float: left;
	margin-bottom: 5px;
	padding: 2px 0 2px 16px;
	font-size: 1.8rem;
	line-height: 1.3;
	position: relative;
}

#home .recentInfo h2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 8px;
	height: 100%;
	background: url(images/border_dot.png) repeat-y;
	background-size: 8px auto;
}

#home .recentInfo h2 span {
	display: block;
	color: #247baf;
	font-size: 1.1rem;
}

#home .recentInfo .tabs {
	float: right;
}

#home .recentInfo .tabs li {
	float: left;
	width: calc(8em + 62px);
	border-radius: 5px 5px 0 0;
	font-size: 1.7rem;
}

#home .recentInfo .tabs li.people {
	margin-right: 4px;
	background: -webkit-linear-gradient(top, #e9f3f9, #cae3f1);
	background: linear-gradient(to bottom, #e9f3f9, #cae3f1);
	background-color: #d9ebf5;
}

#home .recentInfo .tabs li.personnel {
	background: -webkit-linear-gradient(top, #f0f4e1, #dce5ba);
	background: linear-gradient(to bottom, #f0f4e1, #dce5ba);
	background-color: #e6eccd;
}

#home .recentInfo .tabs li a {
	display: block;
	padding: 11px 0 14px;
	border: 1px solid transparent;
	border-bottom: 0;
	border-radius: 5px 5px 0 0;
	box-sizing: border-box;
	color: #464646;
	text-decoration: none;
	text-align: center;
}

#home .recentInfo .tabs li a img {
	margin-top: -0.25em;
	vertical-align: middle;
}

#home .recentInfo .tabs li.people a img {
	margin-right: 12px;
}

#home .recentInfo .tabs li.personnel a img {
	margin-right: 8px;
}

#home .recentInfo .tabs li:not(.current) a:hover,
#home .recentInfo .tabs li:not(.current) a:focus {
	background-color: rgba(255,255,255,.3);
}

#home .recentInfo .tabs li.current a {
	color: #fff;
	position: relative;
	z-index: 20;
}

#home .recentInfo .tabs li.people.current a {
	border-color: #247baf;
	background-color: #247baf;
}

#home .recentInfo .tabs li.personnel.current a {
	border-color: #657f05;
	background-color: #657f05;
}

#home .recentInfo .tabBody {
	margin-top: -6px;
	padding: 0 11px;
	border-width: 6px 1px 1px;
	border-style: solid;
	border-radius: 0 0 5px 5px;
	background-color: #fff;
	position: relative;
	z-index: 10;
}

#home .recentInfo #people + .tabBody {
	border-color: #247baf;
}

#home .recentInfo #personnel + .tabBody {
	border-color: #657f05;
}

#home .recentInfo .tabBody .more {
	padding: 7px 6px;
	text-align: right;
}

#home .recentInfo .tabBody .more .seeAll {
	margin-right: 10px;
	padding-left: 12px;
	background-repeat: no-repeat;
	background-position: 0 55%;
	background-size: 6px auto;
}

#home .recentInfo #people + .tabBody .more .seeAll {
	background-image: url(images/arrow_b.png);
}

#home .recentInfo #personnel + .tabBody .more .seeAll {
	background-image: url(images/arrow_g.png);
}

#home .recentInfo .tabBody .more .feed {
	padding-left: 16px;
	background: url(images/icon_feed.png) no-repeat 0 60%;
	background-size: 12px auto;
}

.tabHead {
	display: none;
}

.backToTab a {
	position: absolute;
	height: 0;
	overflow: hidden;
}
.backToTab a:focus {
	position: static;
	height: auto;
	display: block;
	margin-top: 6px;
	text-align: center;
}

@media screen and (max-width: 950px) and (min-width: 769px), screen and (max-width: 680px) {
	#home .recentInfo {
		padding: 0;
		border: 0;
		background: none;
	}
	
	#home .recentInfo h2 {
		float: none;
		padding: 6px 5px 6px 21px;
		border: 1px solid #ccc;
		background: -webkit-linear-gradient(top, #fff, #f0f0f0);
		background: linear-gradient(to bottom, #fff, #f0f0f0);
		background-color: #f7f7f7;
	}
	
	#home .recentInfo h2::before {
		top: 5px;
		left: 5px;
		height: calc(100% - 10px);
	}
	
	#home .recentInfo .tabs {
		float: none;
	}
	
	#home .recentInfo .tabs li {
		width: calc((100% - 4px) / 2);
	}
}

@media screen and (max-width: 480px) {
	#home .recentInfo .tabs li {
		font-size: 1.6rem;
	}
	
	#home .recentInfo .tabs li a img {
		width: 24px;
		height: auto;
	}
	
	#home .recentInfo .tabs li.people a img {
		margin-right: 4px;
	}
	
	#home .recentInfo .tabs li.personnel a img {
		margin-right: 2px;
	}
}

@media screen and (max-width: 360px) {
	#home .recentInfo .tabs li a {
		padding: 8px 0 10px;
	}
	
	#home .recentInfo .tabs li.people a img,
	#home .recentInfo .tabs li.personnel a img {
		display: block;
		margin: 0 auto 2px;
	}
}

/* Home content
-------------------------------------------------- */
#home .mceContentBody {
	padding: 16px 12px 12px;
	border: 1px solid #ccc;
	border-radius: 5px;
}

#home .mceContentBody p:first-child {
	margin-bottom: 0;
}

@media screen and (max-width: 820px) and (min-width: 769px), screen and (max-width: 540px) {
	#home .mceContentBody img {
		margin: 0 auto -70px;
	}
}


/* Info list
================================================== */
.infoList li {
	padding: 14px 0 14px 6px;
	border-bottom: 1px dotted #ccc;
}

.infoList  li:last-child {
	border-bottom-style: solid;
}

.infoList  li > * {
	display: table-cell;
}

.infoList  li time {
	width: 8.5em;
}

.infoList  li .category {
	width: 50px;
	text-align: center;
}

.infoList  li .category img {
	vertical-align: text-bottom;
}

.infoList  li .title {
	padding-left: 8px;
}

.noInfo {
	padding: 14px 0;
	border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 950px) and (min-width: 769px), screen and (max-width: 680px) {
	.infoList  li .title {
		display: block;
		padding-left: 0;
	}
}

@media screen and (max-width: 540px) {
	.infoList  li {
		padding-left: 0;
		position: relative;
	}
	
	.infoList  li::after {
	  content: "";
	  display: block;
	  position: absolute;
	  top: 50%;
	  right: 0;
	  width: 6px;
	  height: 6px;
	  margin-top: -4px;
	  border-top: solid 2px #38abc8;
	  border-right: solid 2px #38abc8;
	  -webkit-transform: rotate(45deg);
	  transform: rotate(45deg);
	}
	
	.infoList  li .title {
		margin-right: 15px;
	}
}


/* History
================================================== */
#about-hospital.history .mceContentBody th {
	white-space: nowrap;
	vertical-align: top;
}


/* Moral
================================================== */
#about-hospital.moral .mceContentBody ol li {
	margin-bottom: 1em;
}

#about-hospital.moral .mceContentBody ul {
	list-style: none;
	padding-left: .5em;
	counter-reset: cnt;
}

#about-hospital.moral .mceContentBody ul li {
	padding-left: 1.9em;
	text-indent: -1.9em;
	counter-increment: cnt;
}

#about-hospital.moral .mceContentBody ul li::before {
	content: "(" counter(cnt) ") ";
}


/* access
================================================== */
#about-hospital.access a img[src$="oki_access.gif"] {
	border: 0;
}

.simplemap {
	padding: 3px;
	border: 1px solid #ccc;
}

.simplemap + p {
	margin-top: 0;
}


/* Doctor introduction
================================================== */
.doctorProfile {
	margin-bottom: 30px;
}

.doctorProfile h2 {
	margin: 0 0 1em;
	font-size: 2.0rem;
}

.doctorProfile h2 .kana {
	display: inline-block;
	font-size: 1.6rem;
}

.doctorProfile h2 .post {
	font-size: 1.6rem;
	display: inline-block;
}

.doctorProfile h2 .post::before,
.doctorProfile h2 .post::after {
	content: "－";
}

.doctorProfile .photo {
	float: right;
	margin: 1px;
	padding: 10px;
	background-color: #fff;
}

.doctorProfile dl {
	margin-left: 0;
	border: 1px solid #ccc;
	background-color: #f0f0f0;
}

.doctorProfile dt,
.doctorProfile dd {
	border-top: 1px solid #ccc;
}

.doctorProfile dt:first-of-type,
.doctorProfile dd:first-of-type {
	border-top: 0;
}

.doctorProfile dt {
	float: left;
	clear: left;
	width: 4.25em;
	padding: 5px .75em;
}

.doctorProfile dd {
	margin-left: 5.75em;
	padding: 5px .75em;
	background-color: #fff;
}

.doctorProfile dd ul {
	margin: 0;
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

.doctorProfile dd ul li {
	margin-bottom: 0;
}

@media screen and (max-width: 480px) {
	.doctorProfile .photo {
		float: none;
		margin: 0 0 12px;
		padding: 0;
	}
}


/* Doctor list
================================================== */
#consultation .doctorTable th,
#consultation .doctorTable td {
	height: 3em;
	padding: 2px;
	font-size: 1.5rem;
}

#consultation .doctorTable thead th {
	width: 12%;
	height: auto;
}

#consultation .doctorTable thead th:first-child {
	width: 20%;
}

#consultation .doctorTable thead th:last-child {
	width: 20%;
}

#consultation .doctorTable tbody th:not([colspan]):last-child {
	width: 12%;
}

#consultation .doctorTable th + th,
#consultation .doctorTable .subRow th {
	border-left-style: dotted;
}

#consultation .doctorTable .subRow th,
#consultation .doctorTable .subRow td {
	border-top-style: dotted;
}

#consultation .doctorTable tbody th {
	text-align: center;
}

#consultation .doctorTable tbody th span {
	font-size: 1.3rem;
}

#consultation .doctorTable td:not(:last-child),
#consultation .doctorTable td[colspan] {
	text-align: center;
}

#consultation .doctorTable td:not([colspan]):last-child {
	font-size: 1.3rem;
}


/* Jibika
================================================== */
#consultation .jibiCalendar {
	table-layout: fixed;
}

#consultation .jibiCalendar:not(:first-child) {
	margin-top: 2em;
}

#consultation .jibiCalendar th,
#consultation .jibiCalendar td {
	padding: 2px 5px;
	font-size: 1.5rem;
}

#consultation .jibiCalendar th {
	background-color: #f0f0f0;
}

#consultation .jibiCalendar th:last-child,
#consultation .jibiCalendar td:last-child .day {
	color: #1464b4;
}

#consultation .jibiCalendar th:first-child,
#consultation .jibiCalendar td:first-child .day,
#consultation .jibiCalendar td .holiday,
#consultation .jibiCalendar td:last-child .holiday {
	color: #d93838;
}

#consultation .jibiCalendar td {
	height: calc(4.5em + 5px);
	text-align: right;
	vertical-align: top;
}

#consultation .jibiCalendar td .day {
	padding-bottom: 2px;
	border-bottom: 1px dotted #ccc;
}

#consultation .jibiCalendar td .consultation {
	margin-top: 2px;
	text-align: center;
}

#consultation .currently {
	color: #d93838;
}


/* Recruit
================================================== */
.mceContentBody .urgentlyWanted {
	color: #d93838;
	font-size: 2.0rem;
}


/* Examination
================================================== */
.examinationNotice > h2:first-child {
	margin-top: 2em
}

.examinationNotice .accepting {
	margin-bottom: -1em;
	color: #d93838;
	font-size: 1.8rem;
	text-align: center;
}

.examinationNotice table th:first-child {
	width: 20%;
}

.examinationNotice table th:nth-child(2) {
	width: 20%;
}

.examinationNotice table td:nth-child(2) {
	text-align: center;
}

.examinationNotice address {
	margin-left: 6px;
}


/* Tender
================================================== */
.tenderNotice table th {
	width: 25%;
}

.tenderNotice table td {
	width: 75%;
}

.tenderNotice table td ul {
	list-style: none;
	padding-left: 0;
}

.tenderNotice table td ul li {
	text-indent: -25px;
	margin-left: 25px;
}


/* Newsletter
================================================== */
.newsletters.newest {
	border: 1px solid #acacac;
}

.newsletters.newest h2 {
	margin: 0;
	padding: 5px 0 5px 1em;
	border-bottom: 1px solid #acacac;
	background-color: #d2e7f7;
	font-size: 1.6rem;
	letter-spacing: 1em;
	text-align: center;
}

.newsletters.newest .newestDetail {
	padding: 15px;
}

.newsletters.newest a:link img {
	float: left;
	width: 136px;
	height: auto;
	margin-right: 15px;
}

.newsletters.newest h3 {
	display: inline;
	margin: 0;
	padding: 0 0 0 25px;
	border-bottom: 0;
	background: url(images/icon_pdf.gif) no-repeat 0 .125em;
}

.newsletters.newest .issue {
	display: inline-block;
	margin: 0;
}

.newsletters.newest dl {
	margin-left: 148px;
	margin-bottom: 0;
}

.newsletters.newest dt {
	margin-top: .75em;
	margin-bottom: .5em;
	border-bottom: 1px solid #ccc;
}

.newsletters.newest dd ul {
	margin-top: .75em;
}

.newsletters ul {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}

.newsletters li::before {
	content: "○";
	margin-right: .25em;
}

.newsletters li {
	margin-left: 1.25em;
	text-indent: -1.25em;
}

.newsletters.backnumber h2 {
	border-bottom: 0;
}

.newsletters.backnumber li {
	display: inline-block;
	margin-right: .75em;
}

.newsletters.backnumber th:first-child {
	width: 7em;
}

.newsletters.backnumber th:nth-child(2) {
	width: 4em;
}

.newsletters.backnumber td:not(:last-child){
}

.newsletters.backnumber td span {
	display: block;
	text-align: right;
}

.newsletters.backnumber td .fileSize {
	text-align: center;
}

.newsletters.backnumber td:nth-child(2),
.newsletters.backnumber td:last-child {
	font-size: 1.4rem;
}

.newsletters.backnumber td:last-child {
	padding-right: 0;
}

@media screen and (max-width: 540px) {
	.newsletters.backnumber th {
		display: none;
	}
	
	.newsletters.backnumber tr {
		border-top: 1px solid #ccc;
		border-left: 1px solid #ccc;
	}

	.newsletters.backnumber td {
		border: 0;
	}

	.newsletters.backnumber td:nth-child(-n+2) {
		display: inline-block;
		padding-right: 0;
	}
	
	.newsletters.backnumber td:last-child {
		display: block;
	}

	.newsletters.backnumber td span {
		display: inline;
		text-align: left;
	}

	.newsletters.backnumber td .fileSize {
		text-align: left;
	}

}

@media screen and (max-width: 480px) {
	.newsletters.newest a:link img {
		float: none;
		display: block;
		width: auto;
		margin-right: 0;
		margin-bottom: 15px;
	}
	
	.newsletters.newest dl {
		margin-left: 0;
	}
}


/* Blog
================================================== */
#blog #mainHeader h1 {
	padding-right: 55px;
}

#blog #mainHeader h1::after {
	content: "";
	position: absolute;
	top: -10px;
	right: 0;
	width: 72px;
	height: 77px;
	background: url(images/img_feather.png) no-repeat;
	background-size: 72px auto;
}

#blog #mainHeader h1 span {
	display: block;
	color: #247baf;
	font-size: 2.0rem;
}

#blog #mainHeader h2,
#blog #mainHeader p {
	margin: 1.5em 0 1.5em 6px;
}

#blog .home #mainHeader p {
	font-size: 1.4rem;
}

#blog article {
	margin-bottom: 30px;
	padding: 12px;
	border: 1px solid #38abc8;
	border-radius: 3px;
}

#blog article header h2 {
	padding: 0 6px;
	border-bottom: 2px solid #a1c4dd;
	font-size: 2.4rem;
	line-height: 1.25;
}

#blog article header h2 a {
	text-decoration: none;
}

#blog article header .postMeta {
	margin: .5em 0 1.5em 6px;
	color: #666;
	font-size: 1.4rem;
}

#blog article header .postMeta .theme {
	margin-left: 1em;
}

#blog article .tag {
	margin-left: 6px;
	color: #666;
	font-size: 1.4rem;
}

#blog article footer {
	margin-top: 2.5em;
	padding: 0 6px;
	border-top: 1px dotted #a1c4dd;
	color: #666;
	font-size: 1.4rem;
}

#blog article footer .postMeta {
	float: right;
	margin-top: 12px;
}

#blog article footer .snsBtn {
	float: left;
	margin: 12px 0 0;
}

#blog .noPost {
	margin-left: 6px;
}


#blog #sidebar .widget {
	margin-bottom: 18px;
	border: 1px solid #2170c2;
}

#blog #sidebar .widget h2 {
	padding: 3px 11px;
	background-color: #1464b4;
	color: #fff;
}

#blog #sidebar .widget ul {
	margin: 0 3px;
	line-height: 1.3;
}

#blog #sidebar .widget a {
	text-decoration: none;
}

#blog #sidebar .recentPosts ul li:not(:first-child),
#blog #sidebar .categories ul li:not(:first-child) {
	border-top: 1px dotted #a1c4dd;
}

#blog #sidebar .recentPosts ul li a,
#blog #sidebar .categories ul li a {
	display: block;
	padding: 6px 8px;
}

#blog #sidebar .recentPosts ul li a .date {
	display: block;
	color: #333;
}

#blog #sidebar .categories ul.children li a {
	padding-left: 28px;
	position: relative;
}

#blog #sidebar .categories ul.children li a::before {
	content: "";
	position: absolute;
	top: calc(4px + .25em);
	left: 12px;
	width: 8px;
	height: .5em;
	border-bottom: 1px dotted #999;
	border-left: 1px dotted #999;
}

#blog #sidebar .tags ul {
	margin: 6px 11px;
}

#blog #sidebar .tags ul li {
	display: inline-block;
}

#blog #sidebar .calendar table {
	margin: 3px;
	width: calc(100% - 6px);
}

#blog #sidebar .calendar table caption {
	margin-bottom: 3px;
}

#blog #sidebar .calendar table th,
#blog #sidebar .calendar table tbody td {
	font-weight: normal;
	text-align: center;
}

#blog #sidebar .calendar table th:first-child,
#blog #sidebar .calendar table tbody td:first-child {
	color: #d93838;
}

#blog #sidebar .calendar table th:last-child,
#blog #sidebar .calendar table tbody td:last-child {
	color: #1464b4;
}

#blog #sidebar .calendar table tbody td a {
	display: block;
	text-decoration: underline;
}

#blog #sidebar .calendar table tbody tr:last-child td {
	padding-bottom: 3px;
}

#blog #sidebar .calendar table tfoot td {
	padding: 3px 8px 0;
	border-top: 1px solid #a1c4dd;
}

#blog #sidebar .calendar table .next {
	text-align: right;
}

#blog #sidebar .archives .selectMonth {
	margin: 6px 11px;
	text-align: center;
}

#blog #sidebar .archives .selectMonth select {
	width: 100%;
}

#blog #sidebar .archives .ameblo {
	margin: 0 3px;
	padding: 3px 8px;
	border-top: 1px solid #a1c4dd;
}

#blog #sidebar .searchForm {
	margin-bottom: 32px;
}

#blog #sidebar .searchForm input[type="image"] {
	background-color: #1464b4;
}


/* Sidebar
================================================== */
#sidebar .banner.banner {
	margin-bottom: 18px;
}

@media screen and (max-width: 768px) and (min-width: 481px) {
	#home #sidebar .banners,
	#blog #sidebar .widget1 {
		float: left;
		width: calc((100% - 12px) / 2);
		box-sizing: border-box;
	}
	
	#home #sidebar .linkItems,
	#blog #sidebar .widget2 {
		float: right;
		width: calc((100% - 12px) / 2);
		box-sizing: border-box;
	}
}

@media screen and (max-width: 768px) {
	body:not(#home) #sidebar .banners {
		display: none;
	}
}

/* Local nav
-------------------------------------------------- */
#localNav {
	margin-bottom: 24px;
	border: 3px solid #a1c4dd;
	border-radius: 3px;
}

#localNav h2 {
	border-bottom: 3px solid #a1c4dd;
	background-color: #247baf;
	color: #fff;
	font-size: 1.8rem;
}

#localNav h2 a {
	display: block;
	padding: 12px;
	color: #fff;
	text-decoration: none;
}

#localNav > ul {
	margin: 0 3px;
}

#localNav > ul > li:not(:first-child) {
	border-top: 1px dotted #a1c4dd;
}

#localNav ul.children {
	margin-bottom: 3px;
	display: none;
}

#localNav li.current_page_item > ul.children,
#localNav li.current_page_parent > ul.children {
	display: block;
}

#localNav li a {
	display: block;
	margin: 3px 0;
	padding: 10px 9px;
	color: #333;
	text-decoration: none;
}

#localNav ul.children li a {
	margin: 3px 0;
	padding: 4px 9px 4px 33px;
	position: relative;
}

#localNav ul.children li a::before {
	content: "";
	position: absolute;
	top: calc(4px + .25em);
	left: 17px;
	width: 8px;
	height: .5em;
	border-bottom: 1px dotted #999;
	border-left: 1px dotted #999;
}

#localNav ul.children li ul li a {
	padding-left: 58px;
}

#localNav ul.children li ul li a::before {
	left: 42px;
}

#localNav li a:hover,
#localNav li a:focus {
	background-color: #edf3f7;
}

#localNav li.current_page_item > a {
	background-color: #f0f0f0;
}

@media screen and (max-width: 540px) {
	#localNav ul.children li {
		border-top: 1px dotted #a1c4dd;
	}
	
	#localNav li a {
		padding-right: 30px;
		position: relative;
	}

	#localNav > ul > li > a:before {
		content: "";
	  display: block;
	  position: absolute;
	  top: 50%;
	  right: 5px;
	  width: 18px;
	  height: 18px;
	  margin-top: -9px;
	  border-radius: 50%;
	  background-color: #67a3ce;
	}

	#localNav > ul > li > a:after {
	  content: "";
	  display: block;
	  position: absolute;
	  top: 50%;
	  right: 11px;
	  width: 6px;
	  height: 6px;
	  margin-top: -4px;
	  border-top: solid 2px #fff;
	  border-right: solid 2px #fff;
	  -webkit-transform: rotate(45deg);
	  transform: rotate(45deg);
	}
	
	#localNav ul.children li a::after {
	  content: "";
	  display: block;
	  position: absolute;
	  top: 50%;
	  right: 11px;
	  width: 6px;
	  height: 6px;
	  margin-top: -4px;
	  border-top: solid 2px #67a3ce;
	  border-right: solid 2px #67a3ce;
	  -webkit-transform: rotate(45deg);
	  transform: rotate(45deg);
	}
}

/* Info Categories
-------------------------------------------------- */
#sidebar .target {
	margin-bottom: 24px;
}

#sidebar .target li {
	margin-bottom: 12px;
	border-radius: 5px;
}

#sidebar .target li.people {
	border: 1px solid #247baf;
	background: -webkit-linear-gradient(top, #e9f3f9, #cae3f1);
	background: linear-gradient(to bottom, #e9f3f9, #cae3f1);
	background-color: #d9ebf5;
}

#sidebar .target li.people.current {
	background: #247baf;
}

#sidebar .target li.personnel {
	border: 1px solid #657f05;
	background: -webkit-linear-gradient(top, #f0f4e1, #dce5ba);
	background: linear-gradient(to bottom, #f0f4e1, #dce5ba);
	background-color: #e6eccd;
}

#sidebar .target li.personnel.current {
	background: #657f05;
}

#sidebar .target li a {
	display: block;
	padding: 14px 9px 14px 53px;
	color: #333;
	text-decoration: none;
	text-indent: -44px;
}

#sidebar .target li.current a {
	color: #fff;
}

#sidebar .target li:not(.current) a:hover,
#sidebar .target li:not(.current) a:focus {
	background-color: rgba(255,255,255,.3);
}

#sidebar .target li a img {
	margin-right: 12px;
	margin-top: -0.25em;
	vertical-align: middle;
}

/* Urgently Wanted
-------------------------------------------------- */
.banner.urgentlyWanted {
	border: 2px solid #c84e4e;
}

.banner.urgentlyWanted a {
	display: table;
	width: 100%;
	background-color: #fff8f8;
	color: #333;
	text-decoration: none;
	line-height: 1.3;
}

.banner.urgentlyWanted a:hover,
.banner.urgentlyWanted a:focus {
	background-color: #fffcfc;
}

.banner.urgentlyWanted .urgently {
	display: table-cell;
	width: 1.3em;
	height: 3em;
	padding: 3px 5px;
	border-right: 2px solid #c84e4e;
	background-color: #c84e4e;
	color: #fff;
	font-size: 2.4rem;
	text-align: center;
	vertical-align: middle;
}

.banner.urgentlyWanted .urgently strong {
	font-weight: normal;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	vertical-align: middle;
}

.banner.urgentlyWanted .text {
	display: table-cell;
	padding: 0 8px;
	text-align: center;
	vertical-align: middle;
}

.banner.urgentlyWanted .text b {
	display: table-cell;
	width: 400px;
	height: 48px;
	font-size: 2.0rem;
	font-weight: normal;
	vertical-align: middle;
}

.banner.urgentlyWanted .text .requirements {
	display: block;
	padding-top: 2px;
	border-top: 1px solid #c84e4e;
}

/* Recruit
-------------------------------------------------- */
.banner.recruit {
	border: 2px solid #5b7205;
	background: url(images/img_recruit.jpg) no-repeat 100% 0;
	background-size: auto 70%;
}

.banner.recruit a {
	display: block;
	background: rgba(255,255,255,.7);
	background: -webkit-linear-gradient(left, #fff calc(100% - 75px), rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, #fff  calc(100% - 75px), rgba(255,255,255,0) 100%);
	color: #333;
	text-decoration: none;
	line-height: 1.3;
}

.banner.recruit a:hover,
.banner.recruit a:focus {
	background: rgba(255,255,255,.8);
	background: -webkit-linear-gradient(left, #fff calc(100% - 75px), rgba(255,255,255,.2) 100%);
	background: linear-gradient(to right, #fff calc(100% - 75px), rgba(255,255,255,.2) 100%);
}

.banner.recruit h2 {
	padding: 6px 52px 6px 10px;
	color: #5b7205;
	font-size: 1.2rem;
}

.banner.recruit h2 b {
	display: block;
	margin-top: 3px;
	color: #333;
	font-size: 1.8rem;
	font-weight: normal;
}

.banner.recruit .text {
	display: block;
	padding: 2px 10px 3px;
	border-top: 1px solid #5b7205;
	background-color: #5b7205;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
}

.banner.recruit a:hover .text,
.banner.recruit a:focus .text {
	background-color: #6c7c27;
}

/* Staff blog
-------------------------------------------------- */
.banner.blog {
	border: 1px solid #2170c2;
}

.banner.blog a {
	display: block;
	color: #333;
	text-decoration: none;
}

.banner.blog h2 {
	margin-top: -14px;
	padding-top: 14px;
	background: url(images/img_feather.png) no-repeat 100% 0;
	background-size: 72px auto;
}

.banner.blog h2 span {
	display: block;
	padding: 2px 70px 3px 11px;
	border-bottom: 1px solid #1464b4;
	background-color: #1464b4;
	color: #fff;
	position: relative;
	z-index: -10;
}

.banner.blog a:hover h2 span,
.banner.blog a:focus h2 span {
	background-color: rgba(20,100,180,.85);
}

.banner.blog h2 b {
	display: block;
	padding: 5px 11px;
	color: #464646;
	text-shadow:  2px  2px 0 #fff,
	              0    2px 0 #fff,
	             -2px  2px 0 #fff,
	             -2px  0   0 #fff,
	             -2px -2px 0 #fff,
	              0   -2px 0 #fff,
	              2px -2px 0 #fff,
	              2px  0   0 #fff;
}

.banner.blog .update {
	padding: 0 11px 5px;
	font-size: 1.4rem;
}

/* Medical check
-------------------------------------------------- */
.banner.medicalCheck {
	display: table;
	width: 100%;
	box-sizing: border-box;
	border: 2px solid #e2ba95;
	border-radius: 5px;
	position: relative;
}

.banner.medicalCheck::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 45%;
	height: 100%;
	border-radius: 0 3px 3px 0;
	background: url(images/img_medical.jpg) no-repeat 50% 50%;
	background-size: cover;
	z-index: -10;
}

.banner.medicalCheck a {
	display: table-cell;
	height: 4em;
	width: 100%;
	padding: 0 30% 0 10px;
	border-radius: 3px;
	background: rgba(255,255,255,.7);
	background: -webkit-linear-gradient(left, #fff 55%, rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, #fff 55%, rgba(255,255,255,0) 100%);
	color: #333;
	text-decoration: none;
	vertical-align: middle;
}

.banner.medicalCheck a:hover,
.banner.medicalCheck a:focus {
	background: rgba(255,255,255,.8);
	background: -webkit-linear-gradient(left, #fff 55%, rgba(255,255,255,.2) 100%);
	background: linear-gradient(to right, #fff 55%, rgba(255,255,255,.2) 100%);
}

/* Pickup page
-------------------------------------------------- */
.banner.pickup li {
	margin-bottom: 12px;
	border: 1px solid #b8c4c9;
	background: -webkit-linear-gradient(top, #fff, #f0f0f0);
	background: linear-gradient(to bottom, #fff, #f0f0f0);
	background-color: #f7f7f7;
}

.banner.pickup li a {
	display: block;
	padding: 9px 9px 9px 23px;
	color: #333;
	text-decoration: none;
	position: relative;
}

.banner.pickup li a::before {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	width: 8px;
	height: calc(100% - 10px);
	background: url(images/border_dot.png) repeat-y;
	background-size: 8px auto;
}

.banner.pickup li a:hover,
.banner.pickup li a:focus {
	background-color: rgba(255,255,255,.5);
}

/* Facebook / LINE
-------------------------------------------------- */
.banner.sns li {
	margin-bottom: 12px;
	position: relative;
}

.banner.sns .facebook a,
.banner.sns .line a {
	display: table;
	width: calc(100% - 2px);
	padding: 9px;
	box-sizing: border-box;
	text-decoration: none;
}

.banner.sns .facebook a {
	border: 1px solid #3b5998;
	background-color: #3b5998;
	color: #fff;	
}

.banner.sns .facebook a:hover,
.banner.sns .facebook a:focus {
	background-color: rgba(59,89,152,.9);
}

.banner.sns .line a {
	border: 1px solid #00b900;
	background-color: #fff;
	color: #008b00;
}

.banner.sns .line a:hover,
.banner.sns .line a:focus {
}

.banner.sns img:not(.external),
.banner.sns p {
	display: table-cell;
	vertical-align: middle;
}

.banner.sns img:not(.external) {
	padding-right: 10px;
	max-width: none;
}

.banner.sns p {
	width: 380px;
}

.banner.sns span {
	display: inline-block;
	margin-right: .5em;
	line-height: 1.3;
}

.banner.sns .line span {
	text-transform: uppercase;
}

.banner.sns img.external {
	position: absolute;
	top: 10px;
	right: 7px;
}

.fb-page {
	margin-bottom: 18px;
}

/* Volunteer
-------------------------------------------------- */
.banner.volunteer {
	background-color: #f7f0ea;
	border: 1px solid #d0721f;
	border-radius: 5px;
}

.banner.volunteer a {
	display: block;
	padding: 4px 9px;
	background-size: auto 70px;
	color: #333;
	text-decoration: none;
	text-align: center;
	line-height: 1.3;
}

.banner.volunteer a .name {
	display: block;
	margin: 4px 0;
	border-radius: 1em;
	background-color: #7a3a02;
	color: #fff;
	font-size: 1.8rem;
}

.banner.volunteer a:hover,
.banner.volunteer a:focus {
	background-color: rgba(255,255,255,.5);
}

.banner.volunteer a:hover .name,
.banner.volunteer a:focus .name {
	background-color: #8c5524;
}

.banner.volunteer a .name b {
	margin: 0 -0.25em 0 .25em;
	font-weight: normal;
	letter-spacing: .5em;
}

.banner.volunteer a .subText {
	display: block;
	color: #7a3a02;
	font-weight: bold;
}

/* Links
-------------------------------------------------- */
#sidebar .links li {
	margin-bottom: .5em;
}

#sidebar .links li a {
	display: inline-block;
	padding-left: 12px;
	background: url(images/arrow_s.png) no-repeat 0 .5em;
	background-size: 6px auto;
	font-size: 1.5rem;
}


/* Contact
================================================== */
.wpcf7 dl {
	margin-top: 24px;
	margin-left: 0;
	border: 1px solid #ccc;
	background-color: #f0f0f0;
}

.wpcf7 dt,
.wpcf7 dd {
	border-top: 1px dotted #c1c1c1;
}

.wpcf7 dt:first-of-type,
.wpcf7 dd:first-of-type {
	border-top: 0;
}

.wpcf7 dt {
	float: left;
	clear: left;
	width: 12em;
	padding: .75em;
}

.wpcf7 dd {
	margin-left: 13.5em;
	padding: .75em;
	background-color: #fff;
}

.wpcf7 .required {
	color: #be4545;
}

.wpcf7 .comment {
	display: block;
	margin-bottom: 5px;
	color: #666;
	font-size: 1.4rem;
	line-height: 1.3;
}

.wpcf7 .comment + br {
	display: none;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"] {
	width: 24em;
}

.wpcf7 textarea {
	width: 100%;
	height: 15em;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
	max-width: 100%;
	padding: 5px;
	border: 1px solid #bababa;
	border-radius: 4px;
	box-sizing: border-box;
	background-color: #f9fbfc;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 textarea:focus {
	background-color: #fff;
}

.wpcf7-checkbox label,
.wpcf7-radio label {
	display: inline-block;
}

.wpcf7 .submit {
	margin: 30px auto;
	text-align: center;
}

.wpcf7 .submit input {
	padding: 5px 0 5px 1em;
	border: 1px solid #999;
	border-radius: 4px;
	background-color: #247baf;
	color: #fff;
	font-size: 1.8rem;
	letter-spacing: 1em;
	cursor: pointer;
}

.wpcf7 .wpcf7-not-valid-tip {
	display: inline-block;
	margin-left: .5em;
	color: #c84e4e;
}

.wpcf7 .screen-reader-response {
	margin-left: 6px;
	color: #c84e4e;
}

.wpcf7 .screen-reader-response ul {
	display: none;
}

.wpcf7 .wpcf7-response-output {
	display: none !important;
}

@media screen and (max-width: 640px) {
	.wpcf7 dl {
		background-color: transparent;
	}
	
	.wpcf7 dt {
		float: none;
		width: auto;
		padding-top: .5em;
		padding-bottom: .5em;
	}
	
	.wpcf7 dd {
		margin-left: 0;
		padding-top: 0;
		border-top: 0;
	}
}

.grecaptcha-badge {
	visibility: hidden;
}

.mceContentBody .recaptcha {
	margin-top: 40px;
	font-size: .875em;
}


/* Sitemap
================================================== */
#sitemap .sitemapBody {
	margin-left: 6px;
}

#sitemap .sitemapBody ul li ul {
	margin-top: .5em;
	margin-bottom: .75em;
	margin-left: 48px;
}

#sitemap .sitemapBody ul li ul li {
	margin-bottom: .25em;
	position: relative;
}

#sitemap .sitemapBody ul li ul li::before {
	content: "";
	position: absolute;
	top: -0.5em;
	left: -16px;
	width: 10px;
	height: calc(100% + .75em);
	border-left: 1px solid #38abc8;
}

#sitemap .sitemapBody ul li ul li:last-child::before {
	height: calc(1em + .25em);
}

#sitemap .sitemapBody ul li ul li::after {
	content: "";
	position: absolute;
	top: .75em;
	left: -16px;
	width: 10px;
	border-bottom: 1px solid #38abc8;
}

@media screen and (max-width: 480px) {
	#sitemap .sitemapBody {
		margin: 0;
	}

	#sitemap .sitemapBody ul li ul li::before,
	#sitemap .sitemapBody ul li ul li::after {
		content: none;
	}
		
	#sitemap .sitemapBody ul li ul,
	#sitemap .sitemapBody ul li ul li {
		margin: 0;
		padding: 0;
	}
	
	#sitemap .sitemapBody ul {
		border-bottom: 1px solid #c1c1c1;
	}
	
	#sitemap .sitemapBody ul li ul {
		border-bottom: 0;
	}
	
	#sitemap .sitemapBody ul li {
		border-top: 1px solid #c1c1c1;
	}
	
	#sitemap .sitemapBody ul li ul li ul li {
		border-top-style: dotted;
	}
	
	#sitemap .sitemapBody ul li ul li ul {
		padding-left: 1em;
	}
	
	#sitemap .sitemapBody ul li a,
	#sitemap .sitemapBody ul li .notLink {
		display: block;
		padding: .25em 25px .25em 5px;
		text-decoration: none;
		position: relative;
	}
	
	#sitemap .sitemapBody ul li a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 10px;
		width: 6px;
		height: 6px;
		margin-top: -4px;
		border-top: solid 2px #7c9cd3;
		border-right: solid 2px #7c9cd3;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}


/* Links
================================================== */
#links .mceContentBody li {
	margin-bottom: 1em;
}


/* Accessibility
================================================== */
#accessibility.checklist .mceContentBody table tbody th {
	text-indent: -3.625em;
	padding-left: calc(8px + 3.625em);
}

#accessibility.checklist .mceContentBody table td:nth-child(2),
#accessibility.checklist .mceContentBody table td:nth-child(3),
#accessibility.checklist .mceContentBody table td:nth-child(4) {
	text-align: center;
}


/* Search results
================================================== */
#search .resultHeader {
	margin: 1.5em 0 0 6px;
}

#search .searchResults ul {
	border-top: 1px dotted #ccc;
}

#search .searchResults li {
	padding: 1em 0 1em 6px;
	border-bottom: 1px dotted #ccc;
}

#search .searchResults .excerpt {
	margin-top: .25em;
	font-size: 1.4rem;
}


/* 404
================================================== */
#error .mceContentBody ul {
	list-style: none;
	padding-left: 0;
}

#error .mceContentBody ul li {
	margin-bottom: 1em;
}


/* Colorbox
================================================== */
@media screen and (max-width: 480px) {
	#cboxCurrent {
		display: none !important;
	}
}


/* Adminbar
================================================== */
@media screen and (max-width: 600px) {
	#wpadminbar {
		position: fixed !important;
	}
}


/* Clearfix
================================================== */
.inner:after,
header:after,
footer:after,
section:after,
article:after,
#siteSearch:after,
#blogSearch:after,
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
