@charset "utf-8";
/* CSS Document */

.main.access{
	overflow:hidden;
}
.main div.search,
.main div.list,
.main div.top_content {
	clear:both;
}
.main .search .search_main,
.main div.list {
	background-color: #fff;
	padding: 20px 0;
}
.main .search ul.tab li {
	width: calc((100% - 20px) / 2);
	float:left;
}
.main .search ul.tab li:not(:last-child),
.main .search article:not(:last-child) {
	margin-right: 20px;
}
.main .search ul.tab li,
.main .agent ul li h3,
.main .doctors article h3 {
	font-size: 2.0rem;
	position:relative;
	text-align: center;
	background-color: #5a8bd3;
	padding:5px 0;
	color:#fff;
}
.main .search ul.tab li{
	font-size: 2.5rem;
    font-weight: bold;
}
.main .agent ul li h3,
.main .doctors article h3 {
	font-weight: normal;
	text-align: left;
	padding-left: 20px;
	padding-right: 20px;
	font-size: 1.6rem;
}

.main .top_content {
	display:flex;
	flex-wrap:wrap;
	clear: both;
}

#search_form {
	min-width: 1140px;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: border-box;
}
.main .search.waku {
	padding: 30px 0;
	background-color: #f0f4f6;
}
@media(max-width: 1139px) {
	.main .search.waku {
		background-color: #fff;
	}
}


.main .search .search_main .search-wrapper {
	display: flex;
	gap: 20px;
	margin: 0 30px 20px;
}
.main .search .search_main table {
	margin: 0 auto 13px auto;
	border-collapse: separate;
	border-spacing: 0 2px;
}
.main .search .search_main .search-wrapper .search_location {
	width: 100%;
}
.main .search .search_main .full,
.main .search .search_main .part {
	display: none;
}
.main .search .search_main :has(input#type_1:checked) ~ tr.full,
.main .search .search_main :has(input#type_2:checked) ~ tr.part {
	display: table-row;
}
.main .search .search_main :has(input#type_1:checked) .search_location .full,
.main .search .search_main :has(input#type_2:checked) .search_location .part {
	display: block;
}
.main .search .search_main .search-wrapper .search_location .area-toggle {
	display: none;
}
.main .search .search_main .search-wrapper .search_location .area-checkboxes {
	display: block;
}
.main .search .search_main .search-wrapper .search_location h4 {
	font-size: 16px;
	font-weight: normal;
}
.main .search .search_main .search-wrapper .search_location fieldset {
	display: flex;
	align-items: flex-start;
	padding: 4px 0;
	border: none;
	border-bottom: solid 1px #ddd;
}
.main .search .search_main .search-wrapper .search_location fieldset > input {
	margin-top: calc(1.75em / 2 - 1px);
	transform: translateY(-50%);
}
.main .search .search_main .search-wrapper .search_location fieldset > label {
	white-space: nowrap;
	font-weight: bold;
}
.main .search .search_main .search-wrapper .search_location .prefectures {
	display: flex;
	flex-wrap: wrap;
	gap: 0 3px;
	margin-right: -0.15em;
	width: calc(100% - 8em);
	margin-left: auto;
}
.main .search .search_main .search-wrapper .search_location .prefectures li {
	white-space: nowrap;
	margin-right: 0.15em;
}
.main .search .search_main .search-wrapper .search_location .prefectures li label {
	width: 4em;
	display: inline-block;
}
.main .search .search_main table th,
.main .search .search_main table td {
	padding: 0;
	padding-bottom: 3px;
	vertical-align: middle;
}
.main .search .search_main table th {
	text-align: left;
	font-weight: normal;
}
.main .search .search_main table th:before {
	width: 7em;
}
.main .search .search_main table td ul {
	overflow: hidden;
    max-width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.main .search .search_main table td ul li {
	display: inline-block;
	margin-right: 20px;
}
.main .search .search_main table td:before {
	width: 17.5em;
}
.main .search .search_main input[type="submit"],
.main .search .search_main input[type="button"],
.main .search .search_main button {
	margin: 0 auto;
}
.main .search .search_main :has(input#type_1:checked) ~ input[type="submit"].full,
.main .search .search_main :has(input#type_2:checked) ~ input[type="submit"].part {
	display: block;
}

.main .pager {
	text-align: center;
}
.main .pager ul {
	text-align: center;
	letter-spacing: -0.4em;
	margin: 10px -1px;
	overflow: hidden;
}
.main .pager ul li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0 1px;
}
.main .pager ul li span,
.main .pager ul li a {
	display: block;
	padding: 0 15px;
	height: 35px;
	line-height: 33px;
	vertical-align: middle;
	border: 1px solid #336699;
}
.main .pager ul li span,
.main .pager ul li.active a {
	color: #336699;
	background: none;
}
.main .pager ul li a {
	background-color: #336699;
	color: #fff;
	text-decoration: none;
}
.main .pager ul li a:hover {
	background-color: #6699CC;
}
.main .pager ul li.active a:hover {
	color: #fff;
}
.main .pager ul li.prev span,
.main .pager ul li.prev a,
.main .pager ul li.next span,
.main .pager ul li.next a {
	position: relative;
}
.main .pager ul li.prev span,
.main .pager ul li.prev a {
	padding-left: 30px;
}
.main .pager ul li.next span,
.main .pager ul li.next a {
	padding-right: 30px;
}
.main .pager ul li.prev span:before,
.main .pager ul li.prev a:before,
.main .pager ul li.next span:before,
.main .pager ul li.next a:before {
	content: "";
	position: absolute;
	display: block;
	border: 1px solid #fff;
	width: 8px ;
	height: 8px;
	top: 50%;
	transform:translateY(-50%) rotate(-45deg);
	-webkit-transform:translateY(-50%) rotate(-45deg);
	-moz-transform:translateY(-50%) rotate(-45deg);
	-ms-transform:translateY(-50%) rotate(-45deg);
}
.main .pager ul li.prev span:before,
.main .pager ul li.next span:before {
	border-color: #336699;
}
.main .pager ul li.prev span:before,
.main .pager ul li.prev a:before {
	left: 15px;
	border-right: none;
	border-bottom: none;
}
.main .pager ul li.next span:before,
.main .pager ul li.next a:before {
	right: 15px;
	border-left: none;
	border-top: none;
}

.main div.list ul.list {
	margin: -10px 0;
}
.main div.list ul.list li {
	padding: 20px 0;
	border-bottom: 1px dotted #ccc;
}
.main div.list ul.list li:last-child {
	border: none;
}
.main div.list ul.list li table {
	width: 100%;
	border-collapse:collapse;
	overflow-wrap: anywhere;
}
.recruitment-info {
	margin-bottom: 5px;
}
.recruitment-info .title {
	text-align: left;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 2rem;
	letter-spacing: -0.4em;
}
.recruitment-info .title > * {
	letter-spacing: normal;
}
.recruitment-info .title .new,
.main div.list ul.list li table caption .new,
.recruitment-info .title .arrange,
.main div.list ul.list li table caption .arrange,
.main .detail .more ul li .arrange {
	display:inline-block;
	margin-right: 10px;
	padding: 5px 10px;
	line-height: 100%;
	font-size: 1.6rem;
	vertical-align: middle;
	border-radius: 5px;
	text-align: center;
	color:#fff;
}
.recruitment-info .title .new,
.main div.list ul.list li table caption .new {
	background-color: #ea7031;
}
.recruitment-info .title .arrange,
.main div.list ul.list li table caption .arrange,
.main .detail .more ul li .arrange {
	background-color: #51b82b;
	width: calc(3em + 20px);
}
.recruitment-info .working-conditions1 {
	display:inline-grid;
	grid-template-columns: auto auto auto auto;

	gap: 0 40px;
	margin-bottom: 5px;
	font-weight: bold;
}
.recruitment-info .working-conditions1 i {
	font-size: 20px;
	color: #0d6efd;
}
.recruitment-info .working-conditions2,
.recruitment-info .subjects,
.recruitment-info .occupations {
	display: flex;
	flex-wrap: wrap;
}

.subjects ul,
.occupations ul {
	letter-spacing: -0.4em;
}
.subjects ul li,
.occupations ul li,
.main div.list ul.list .subjects ul li,
.main div.list ul.list .occupations ul li {
	display: inline-block;
	margin:0 10px 10px 0;
	padding: 0 6px;
	color: #000;
	border-radius: 5px;
	font-size: 14px;
	letter-spacing: normal;
	border: none;
}
.subjects ul li {
	background-color: #ffda6a;
}
.occupations ul li {
	background-color: #9ec5fe;
}
.main div.list ul.list li table th,
.main div.list ul.list li table td {
	padding: 5px 10px;
	border: 1px solid #e9eaec;

}
.main div.list ul.list li table th {
	font-weight: normal;
	background-color: #f7f9fb;
	border-right: none;

}
.main div.list ul.list li table td {
	border-left: none;
}
.main div.list ul.list li table th:before {
	width: 7em;
}
.main div.list ul.list li table td:before {
	width: -webkit-calc((1005px - 14em) / 2);
	width: calc((1005px - 14em) / 2);
}
.main div.list ul.list li .button ul,
.main div.entries .button ul,
.main div.hospital .button ul,
.main div.contact .button ul,
.main div.error .button ul,
.main div.manual .button ul,
.main div.doctors .button ul,
.main div.senior .button ul,
.main div.megumi .button ul,
.main div.agent .button ul {
	text-align: center;
	letter-spacing: -0.4em;
	margin-top: 15px;
}
.main div.list ul.list li .button ul li,
.main div.detail .button ul li,
.main div.entries .button ul li,
.main div.hospital .button ul li,
.main div.contact .button ul li,
.main div.error .button ul li,
.main div.manual .button ul li,
.main div.doctors .button ul li,
.main div.senior .button ul li,
.main div.megumi .button ul li,
.main div.agent .button ul li {
	margin: 0;
	padding: 0 15px;
	border: none;
	display:inline-block;
	letter-spacing: normal;
	vertical-align: bottom;
}
.main div.list ul.list li .button ul li {
	font-size: 1.4rem;
}
.main div.list ul.list li .button ul li:first-child a,
.main div.entries .button ul li input[type="submit"].back,
.main div.entries .button ul li input[type="button"].back,
.main div.entries .button ul li button.back,
.main div.hospital .button ul li input[type="submit"].back,
.main div.hospital .button ul li input[type="button"].back,
.main div.hospital .button ul li button.back,
.main div.company .button a,
.main .access .access_left a,
.main div.contact .button ul li input[type="submit"].back,
.main div.contact .button ul li input[type="button"].back,
.main div.contact .button ul li button.back,
.main div.error .button ul li input[type="button"],
.main div.manual .button ul li a.btn,
.main div.doctors .button ul li a.btn,
.main div.senior .button ul li a.btn,
.main div.senior .button ul li a.btn,
.main div.megumi .button ul li a.btn,
.main div.agent .button ul li a.btn {
	display: block;
	height: 40px;
	line-height: 40px;
	text-decoration: none;
	padding: 0 25px;
	background-color: #336699;
	color:#fff;
}
.main div.list ul.list li .button ul li a {
	font-size: 1.6rem;
}
.main div.company .button a,
.main .access .access_left a,
.main div.manual .button ul li a,
.main div.doctors .button ul li a,
.main div.senior .button ul li a {
	text-align: center;
}
.main div.company .button a {
	margin: 30px auto 0 auto;
	width: -webkit-calc(14em + 50px);
	width: calc(14em + 50px);
}
.main .access .access_left a {
	width: -webkit-calc(14.5em + 55px);
	width: calc(14.5em + 55px);
	margin: 0 auto;
}
.main .doctors .button ul li a,
.main div.senior .button ul li a {
	width: -webkit-calc(8em + 55px);
	width: calc(8em + 55px);
	margin: 0 auto;
}
.main div.list ul.list li .button ul li input[type="submit"],
.main div.list ul.list li .button ul li input[type="button"],
.main div.list ul.list li .button ul li button,
.main div.detail .button ul li input[type="submit"],
.main div.detail .button ul li input[type="button"],
.main div.detail .button ul li button,
.main div.entries .button ul li input[type="submit"],
.main div.entries .button ul li input[type="button"],
.main div.entries .button ul li button,
.main div.hospital .button ul li input[type="submit"],
.main div.hospital .button ul li input[type="button"],
.main div.hospital .button ul li button,
.main div.contact .button ul li input[type="submit"],
.main div.contact .button ul li input[type="button"],
.main div.contact .button ul li button,
.main .detail .button button {
	background-color: #e1617a;
}

.main div.list ul.list li .button ul li form {
	margin: 0;
}

.main .detail h2,
.main .entries h2,
.main .hospital h2,
.main .manual h2,
.main .company h2,
.main .access h2,
.main .sitemap h2,
.main .contact h2,
.main .error h2,
.main .privacy h2,
.main .megumi h2,
.main .agent h2,
.main .doctors h2,
.main .senior h2 {
	margin: 20px 0;
	font-size: 2.0rem;
	font-weight: bold;
	background-color: #e3ecf3;
	padding: 10px 20px;
	line-height: 150%;
	overflow-wrap: anywhere;
}
.main .detail div.recruit_list_top {
	margin-top: 15px;
}
.main .detail ol.breadcrumb {
	margin: 0;
	padding: 0;
	letter-spacing: -0.4em;
}
.main .detail ol.breadcrumb li {
	font-size: 1.2rem;
	line-height: 150%;
	letter-spacing: normal;
	display: inline;
}
.main .detail ol.breadcrumb li:after {
	content: "\03e";
	padding: 0 5px;
}
.main .detail ol.breadcrumb li:last-child:after {
	display: none;
}
.main .detail h2 {
	margin-top: 0;
}
.main .detail h2 {
	margin: 0;
}
.main .detail dl {
	margin:15px 0 30px;
}
.main .detail dl dt {
	font-weight: bold;
	color: #ffa500;
	font-size: 1.8rem;
}
.main .detail dl dd {
	margin-left: 1em;
}

.main .detail .recruitment-info .working-conditions1 {
	margin-bottom: 15px;
}
.main .detail .recruitment-info:has(.days) {
	margin-top: 20px;
}
.main .detail .recruitment-info .working-conditions2 {
	margin-bottom: 10px;
}
.main .detail table,
.main .entries table,
.main .hospital table,
.main .company table,
.main .contact table {
	width: 100%;
	border-collapse: collapse;
}
.main .contact table {
	margin-top: 20px;
}
.main .company .main_contents,
.main .megumi article.megumi_article .megumi_left {
	width: calc(100% - 300px);
}
.main .company table.company_table {
	margin-top: 1em;
}
.main .company .recruit table.company_table {
	float: none;
	width: 100%;
	margin-bottom: 30px;
}

.main .detail table th,
.main .detail table td,
.main .entries table th,
.main .entries table td,
.main .hospital table th,
.main .hospital table td,
.main .company table.company_table th,
.main .company table.company_table td,
.main .contact table th,
.main .contact table td {
	border: 1px solid #ccc;
	padding: 10px 15px;
	overflow-wrap: anywhere;
}
.main .detail table th,
.main .entries table th,
.main .hospital table th,
.main .company table th,
.main .contact table th {
	background-color: #f1f1f1;
	font-weight: normal;
}
.main .detail table th:before,
.main .detail table td:before,
.main .entries table th:before,
.main .entries table td:before,
.main .hospital table th:before,
.main .hospital table td:before,
.main .company table th:before,
.main .company table td:before,
.main .contact table th:before,
.main .contact table td:before {
	content: "";
	display: block;
	margin-top: -1px;
	height: 1px;
}
.main .detail table th:before,
.main .entries table th:before,
.main .hospital table th:before,
.main .company table th:before {
	width: 10em;
}
.main .contact table th:before {
	width: 12em;
}
.main .detail table td:before,
.main .entries table td:before,
.main .hospital table td:before {
	width: -webkit-calc(1027px - 10em);
	width: calc(1027px - 10em);
}
.main .contact table td:before {
	width: -webkit-calc(1027px - 12em);
	width: calc(1027px - 12em);
}
.main .company table td:before {
	width: -webkit-calc(727px - 10em);
	width: calc(727px - 10em);
}
.main .detail table td ul,
.main .entries table td ul,
.main .contact table td ul {
	letter-spacing: -0.4em;
}
.main .entries table td ul,
.main .contact table td ul {
	margin-right: -15px;
	overflow: hidden;
}
.main .detail table td ul li,
.main .entries table td ul li,
.main .contact table td ul li {
	letter-spacing: normal;
	display: inline-block;
}
.main .entries table td ul li,
.main .contact table td ul li {
	margin-right: 15px;
}
.main .contact table.confirm td ul li {
	margin-right: 0;
}
.main .detail table td ul li:after,
.main .contact table.confirm td ul li:after {
	content: "、";
}
.main .detail table td ul li:last-child:after,
.main .contact table.confirm td ul li:last-child:after {
	display: none;
}
.main .company table td ul li {
	margin-left: 20px;
	list-style: disc;
}
.main .detail .button {
	text-align: center;
	margin-top: 10px;
	padding-top: 10px;
	background-color: #fff;
	position: sticky;
	bottom: 0;
}
.main .detail .button button {
	width: 100%;
	padding: 15px 0;
	height: auto;
}
.main .detail .button button a {
	color: #fff;
}
.main .detail .button button br {
	display: none;
}
.main .detail .button p {
	font-size: 1.2rem;
	margin: 5px;
}
.main .detail .more {
	margin-top: 30px;
}
.main .detail .more ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 10px;
	margin-top: 20px;
	overflow: hidden;
	transition: max-height 0.3s ease-in-out;
}
.main .detail .more ul li {
	border: 1px solid #ccc;
	padding: 10px;
	width: calc((100% - 30px) / 4);
	line-height: 175%;
}
.main .detail .more ul li,
.main .detail .more ul li .arrange {
	font-size: 1.4rem;
}
.main .detail .more ul li .arrange {
	line-height: 100%;
}
.main .detail .more ul li table {
	border-collapse: separate;
	border-spacing: 5px;
	width: calc(100% + 10px);
	margin-left: -5px;
	margin-right: -5px;
	margin-bottom: -5px;
}
.main .detail .more ul li table *:before {
	display: none;
}
.main .detail .more ul li table th,
.main .detail .more ul li table td {
	border: none;
	padding: 3px 0;
}
.main .detail .more ul li table th {
	padding-left: 5px;
	padding-right: 5px;
	white-space: nowrap;
	text-align: center;
}
.main .detail .more ul li ul {
	display: block;
	margin: 0;
}
.main .detail .more ul li ul li {
	padding: 0;
	border: none;
	width: auto;
	display: inline;
}

.main .detail .more input,
.main .detail .more label .true,
.main .detail .more input:checked + label .false {
	display: none;
}
.main .detail .more input:checked + label .true {
	display: inline;
}
.main .detail .more label {
	width: 100%;
	display: block;
	margin-top: 20px;
	text-align: center;
	background-color: #336699;
	color: #fff;
	padding: 10px 0;
}
.main .detail .more label i {
	transition: all .3s;
}
.main .detail .more input:checked + label i {
	transform: rotate(-90deg);
}

.main .hospital table td.address ul,
.main .hospital table td.email ul,
.main .contact table td.email ul,
.main .contact table td.address ul,
.main .contact table td.timing ul,
.main .contact table td.area_type ul,
.main .contact table td.property_type ul {
	margin: -1px 0;
	padding: 0;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.main .hospital table td.address ul,
.main .contact table td.address ul,
.main .contact table td.area_type ul,
.main .contact table td.property_type ul {
	margin-right: -15px;
}
.main .hospital table td.address ul li,
.main .hospital table td.email ul li,
.main .contact table td.email ul li,
.main .contact table td.address ul li,
.main .contact table td.timing ul li {
	letter-spacing: normal;
	margin: 1px 0;
	position: relative;
}
.main .contact table td.email ul li,
.main .contact table td.timing ul li,
.main .contact table td.area_type ul li:last-child,
.main .contact table td.property_type ul li:last-child {
	display: list-item;
}
.main .hospital table td.address ul li,
.main .contact table td.address ul li {
	display:inline-block;
	float: left;
	margin-right: 15px;
}
.main .hospital table td.address ul li:nth-child(2) {
	width: 300px;
}
.main .hospital table td.address ul li:last-child,
.main .contact table td.address ul li:last-child {
	display: block;
	float: none;
	clear: both;
}
.main .contact table td.area_type ul li:last-child input[type="text"],
.main .contact table td.property_type ul li:last-child input[type="text"] {
	width: 300px;
	margin-left: 15px;
}

.main .contact table td.timing ul li label {
	margin-right: 15px;
}
.main .contact table td.timing ul li .text {
	display: inline-block;
}
.main .contact table td.timing ul li input[type="text"],
.main .contact table td.timing ul li .select {
	display: inline-block;
	width: auto;
	vertical-align: middle;
}
.main .contact table td.timing ul li input[type="text"],
.main .contact table td.day ul li input[type="text"] {
	width: -webkit-calc(4em + 10px);
	width: calc(4em + 10px);
}
.main .contact table td.address ul li.zip input[type="text"] {
	width: -webkit-calc(7em + 10px);
	width: calc(7em + 10px);
}

.main .contact table td dl {
	margin: -1px 0;
	overflow: hidden;
}
.main .contact table td dl dt,
.main .contact table td dl dd {
	float: left;
	margin-top: -webkit-calc(((40px - 1.75em) / 2) + 1px);
	margin-top: calc(((40px - 1.75em) / 2) + 1px);
	margin-bottom: -webkit-calc(((40px - 1.75em) / 2) + 1px);
	margin-bottom: calc(((40px - 1.75em) / 2) + 1px);
}
.main .contact table td dl dt {
	clear: both;
}
.main .contact table td dl dt:after {
	content: "：";
	margin: 0 10px;
}
.main .contact table td dl dd input {
	margin-top: -webkit-calc(0px - ((40px - 1.75em) / 2));
	margin-top: calc(0px - ((40px - 1.75em) / 2));
	margin-bottom: -webkit-calc(0px - ((40px - 1.75em) / 2));
	margin-bottom: calc(0px - ((40px - 1.75em) / 2));
	width: 300px;
}

.main .hospital ul {
	margin: 20px 0;
}
.main .hospital .button ul {
	margin: 15px 0 0 0;
}
.main .hospital ul li i {
	margin-right: 10px;
	color: #336699;
}

.main .manual h3 {
	font-size: 1.8rem;
	color: #336699;
}
.main .manual ul.manual_menu {
	margin: 50px 0 -30px 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.main .manual ul.manual_menu li {
	margin: 0 0 50px 0;
	float: left;
	width: -webkit-calc((100% - 30px) / 2);
	width: calc((100% - 30px) / 2);
	letter-spacing: normal;
	display: inline-block;
}
.main .manual ul.manual_menu li:nth-child(odd) {
	clear: both;
	margin-right: 30px;
}

.main .manual ul.manual_menu li h3 {
	background-color: #5a8bd3;
	padding: 5px 0;
	color: #fff;
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
}
.main .manual ul.manual_menu li ul {
	margin: 10px 0 0 30px;
}
.main .manual ul.manual_menu li ul li {
	display: list-item;
	float: none;
	width: auto;
	margin: 0;
	list-style: disc;
}
 
.main .access article.access_article {
	display: inline-block;
	position: relative;
	width: 100%;
}
.main .company article.company_article,
.main .megumi article.megumi_article {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.main .company article.company_article.recruit {
	display: block;
}
.main .company article.company_article .side,
.main .megumi article.megumi_article .side {
	width: 270px;
}
.main .company article.company_article .side a i,
.main .megumi article.megumi_article .side a i {
	margin-left: 5px;
}
.main .company article.company_article .side ul li,
.main .megumi article.megumi_article .side ul li {
	margin-top: 1em;
}
.main .company article.company_article .side ul li a,
.main .megumi article.megumi_article .side ul li a {
	display: inline-block;
	position: relative;
	font-size: 1.2rem;
	text-decoration: none;
	color: #434343;
	width: 100%;
}
.main .company article.company_article .side ul li a img,
.main .megumi article.megumi_article .side ul li a img {
	width: 50%;
	float: left;
	margin-right: 10px;
}
.main .company article.company_article .side ul li a h4,
.main .megumi article.megumi_article .side ul li a h4 {
	width: 90%;
	float: right;
	background-color: rgba(0, 0, 0, 0.6);
	color: #fff;
	text-decoration: none;
	font-size: 1.4rem;
	font-weight: normal;
	padding: 0 10px;
	display: inline-block;
	margin: 10px 0;
	margin-left: -webkit-calc(0px - 40% - 10px);
	margin-left: calc(0px - 40% - 10px);
}
.main .access .access_left {
	float: left;
	width: 55%;
}
.main .access .access_left img {
	max-width: 100%;
	margin: 0 auto;
	display: block;
}
.main .access .access_left a i {
	margin-left: 5px;
}
.main .access .access_right {
	float: right;
	width: 43%;
}
.main .access .access_right .map {
	width: 100%;
	position: relative;
	padding-top: 85%;
}
.main .access .access_right .map iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform:translate(-50%, -50%);
	-webkit-transform:translate(-50%, -50%);
	-moz-transform:translate(-50%, -50%);
	-ms-transform:translate(-50%, -50%);
	border: none;
}

.main .sitemap ul {
	margin-left: 20px;
}
.main .sitemap ul li ul {
	margin-left: 0;
}
.main .sitemap ul li ul li {
	list-style: circle;
	margin: 10px 0 10px 20px;
}
.main .sitemap ul li ul li ul li {
	list-style: none;
	margin: 10px 0;
}
.main .sitemap ul li ul li h3 {
	font-size: 1.6rem;
	font-weight: normal;
	position: relative;
	padding-left: 1.5em;
}
.main .sitemap ul li ul li h3:before,
.main .sitemap ul li ul li h3 + ul li:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	display: block;
	background-color: #434343;
}
.main .sitemap ul li ul li h3:before {
	width: 0.8em;
	height: 0.8em;
}
.main .sitemap ul li ul li h3 + ul li:before {
	width: 0.3em;
	height: 0.3em;
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
}
.main .sitemap ul li ul li h3 + ul {
	margin-left: 1.5em;
}
.main .sitemap ul li ul li h3 + ul li {
	margin: 0;
	padding-left: 1em;
	position: relative;
}

.main .contact ul.flow {
	letter-spacing: -0.4em;
	border: 1px solid #ccc;
}
.main .contact ul.flow li {
	letter-spacing: normal;
	display: inline-block;
	width: -webkit-calc(100% / 3);
	width: calc(100% / 3);
	font-size: 1.8rem;
	text-align:center;
	background-color: #f1f1f1;
	padding: 15px 0;
	position: relative;
}
.main .contact ul.flow li.active {
	background-color: #5a8bd3;
	color: #fff;
}
.main .contact ul.flow li:before,
.main .contact ul.flow li:after {
	content: "";
	position: absolute;
	top: 50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 0 15px;
	border-top-width: -webkit-calc((1.75em + 28px) / 2);
	border-top-width: calc((1.75em + 28px) / 2);
	border-bottom-width: -webkit-calc((1.75em + 28px) / 2);
	border-bottom-width: calc((1.75em + 28px) / 2);
	border-color: transparent;
}
.main .contact ul.flow li:before {
	left: 0;
	border-left-color: #ccc;
}
.main .contact ul.flow li.active + li:before {
	display: none;
}
.main .contact ul.flow li:after {
	left: -1px;
	border-left-color: #f1f1f1;
}
.main .contact ul.flow li.active + li:after {
	border-left-color: #5a8bd3;
}
.main .contact ul.flow li:first-child:before,
.main .contact ul.flow li:first-child:after {
	display: none;
}

.main .agent ul {
	margin: -20px 0;
}
.main .agent .button ul {
	margin: 0;
}
.main .agent ul li {
	display: inline-block;
	width: 100%;
	position: relative;
	margin: 20px 0;
}
.main .agent .button ul li {
	width: auto;
}
.main .agent ul li .img_width {
	width: 25%;
	float: left;
	margin-right: 30px;
}
.main .agent ul li .img_width .img {
	padding-top: 119.26%;
	overflow: hidden;
}
.main .agent ul li .img_width .img img {
	width: 175px;
	height: auto;
	left: 50%;
	transform:translateX(-50%);
	-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
}

.main .doctors article {
	margin-bottom: 50px;
}

.main .doctors article ul.merit li,
.main .senior ul.examples li {
	margin: 5px 0 5px 40px;
	list-style: disc;
}
.main .doctors article ul.flow {
	margin: 15px auto;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-ms-justify-content: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
}
.main .doctors article ul.flow li {
	width: -webkit-calc((100% - 140px)/ 8);
	width: calc((100% - 140px) / 8);
	background-color: #e3ecf3;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-justify-content: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	padding: 10px 5px;
	margin: 5px 20px 5px 0;
	position: relative;
}
.main .doctors article ul.flow li:after {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	left: 100%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 0 20px;
	border-top-width: -webkit-calc((3.5em + 20px) / 2);
	border-top-width: calc((3.5em + 20px) / 2);
	border-bottom-width: -webkit-calc((3.5em + 20px) / 2);
	border-bottom-width: calc((3.5em + 20px) / 2);
	border-color: transparent transparent transparent #e3ecf3;

}
.main .doctors article ul.flow li:last-child {
	margin-right: 0;
}
.main .doctors article ul.flow li:last-child:after {
	display: none;
}

.main .hospital ul {
	display: inline-block;
	width: 100%;
	margin-top: 0;
}
.main .hospital > ul li {
	margin-right: 50px;
	float: left;
}

div.recruit_list_top {
	text-align: right;
	font-size:1.2rem;
}
td.recruit_description {
	line-height:150%
}

.main .company .recruit img,
.main .entries img {
	vertical-align: middle;
}
