/*
Theme Name: adachi
Author: adachi
Author URI: https://adachiku-med.or.jp/
Description: adachi
Version: 2025.9
*/

/*-------------------------------
 
reset CSS
 
-------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: none;
font-style: normal;
text-align: left;
zoom: 1;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
table {
border-collapse: collapse;
font-family: inherit;
}
h1, h2, h3, h4, h5 {
font-size: 100%;
font-weight: normal;
line-height: 1.5;
}
input, textarea, select {
font-family: inherit;
font-size: 16px;
}
input[type="button"], input[type="text"], input[type="submit"] {
-webkit-appearance: none;
border-radius: 0;
}
textarea {
resize: vertical;
-webkit-appearance: none;
border-radius: 0;
}
th, td {
border-collapse: collapse;
}
ul, ol {
list-style-type: none;
}
img {
vertical-align: text-bottom;
vertical-align: -webkit-baseline-middle;
max-width: 100%;
height: auto;
width :auto;
}
div {
box-sizing: border-box;	
}
a {
color: #000;
text-decoration: none;
}
a:hover {
opacity: 0.8;
}
address a {
color: #fff;
}
body {
color: #000;
display: initial;
font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
line-height: 1.8em;
}

/*-------------------------------
 
header
 
-------------------------------*/
header {
	background: rgba(255, 255, 255, 1);
	display: table;
	position: fixed;
	top : 0;
	transition: all 0.3s;
	width: 100%;
	z-index: 1000;
}
header .pc {
	display: table-cell;
	vertical-align: middle;
}
a {
	color: #104b7d;
    display: block;
    width: fit-content;
}
h2, h3, h4 {
	font-family: sans-serif;
}
strong {
	font-weight: bold;
}
header .logo {
	float: left;
	max-width: 340px;
	width: 25%;
}
header a {
	font-weight: bold;
}
.nav-inner01 {
	margin: auto;
	max-width: 1500px;
	overflow: hidden;
	padding: 15px 1em;
}
.nav-inner01-1 {
	display: flex;
	float: right;
	grid-gap: 0 2em;
}
.txt_switch_box {
	display: flex;
}
.txt_switch {
	color: #104b7d;
	margin-right: .8em;
}
.size-button {
	background: #fff;
	border: 2px solid #104b7d;
	border-radius: 5px;
	color: #104b7d;
	font-size: 1em;
	margin-right: 5px;
	padding: 0 5px 2px 5px;
}
.size-button:last-of-type {
	margin-right: 0;
}
.size-button:hover {
	background: #409acf;
	border: 2px solid #409acf;
	color: #fff;
}
.size-button.active {
	background: #104b7d;
	color: #fff;
}
.nav-inner01-1 > .search::before, .links::before, .members::before {
	background-size: contain;
	content: "";
	display: inline-block;
	margin-right: .8em;
}
.nav-inner01-1 .search::before {
	background: url(img/common/icon-hospital.svg) no-repeat;
	position: relative;
	top: 4px;
	width: 24px;
	height: 24px;
}
.nav-inner01-1 .links::before {
	background: url(img/common/icon-link.svg) no-repeat;
	position: relative;
	top: 4px;
	width: 24px;
	height: 24px;
}
.nav-inner01-1 .search-window {
	border: 1px solid #ccc;
	border-radius: 30px;
	display: flex;
	padding: .3em 1.5em .3em 1em;
	width: 150px;
}
.nav-inner01-1 .search-window button {
	background: #fff;
	background: url(img/common/icon-search.svg) no-repeat;
	background-size: contain;
	border: none;
	content: "";
	display: inline-block;
	margin-right: .8em;
	position: relative;
	top: 6px;
	width: 20px;
	height: 20px;
}
.nav-inner01-1 .search-window form {
	width: 90px;
}
.nav-inner01-1 .search-window input {
	border: none;
	width: 100%;
}
.nav-inner01-1 .search-window input::placeholder {
	color: #104b7d;
	font-weight: bold;
}
.nav-inner01-1 .members {
	background: #1054a5;
	border-radius: 30px;
	color: #fff;
	display: flex;
	padding: .3em 1.5em .3em 1em;
}
.nav-inner01-1 .members::before {
	background: url(img/common/icon-members.svg) no-repeat;
	position: relative;
	top: 2px;
	width: 24px;
	height: 24px;
}
.nav-inner01-1 .members:hover {
	background: #409acf;
	opacity: 1;
}
.nav-child {
	display: none;
	opacity: 0;
	visibility: hidden;
}
.nav-parent li.on .nav-child {
	display: block;
	opacity: 1;
	position: absolute;
	visibility: visible;
}
.nav-inner02 {
	margin: auto;
}
.nav-inner02 .nav-parent {
	display: flex;
	margin: auto;
	max-width: 1080px;
	padding-bottom: 12px;
	width: fit-content;
}
.nav-inner02 .nav-parent li {
	border-right: 1px solid #ccc;
	margin: auto;
	text-align: center;
}
.nav-inner02 .nav-parent li:first-of-type {
	border-left: 1px solid #ccc;
}
.nav-inner02 .nav-parent li a {
	box-sizing: border-box;
	color: #333;
	display: block;
	padding: .4em 1.8em .6em 1.8em;
    text-align: center;
    width: 100%;
}
.nav-inner02 .nav-parent li a::before {
	background-size: contain;
	content: "";
	display: inline-block;
	margin-right: .8em;
	position: relative;
	top: 6px;
}
.nav-inner02 .nav-parent li:first-of-type a::before {
	background: url(img/common/icon-home.svg) no-repeat;
	width: 22px;
	height: 22px;
}
.nav-inner02 .nav-parent li:nth-of-type(2) a::before {
	background: url(img/common/icon-residents.svg) no-repeat;
	width: 26px;
	height: 22px;
}
.nav-inner02 .nav-parent li:nth-of-type(3) a::before {
	background: url(img/common/icon-medical.svg) no-repeat;
	width: 22px;
	height: 22px;
}
.nav-inner02 .nav-parent li:nth-of-type(4) a::before {
	background: url(img/common/icon-medical-association.svg) no-repeat;
	width: 22px;
	height: 22px;
}
.nav-inner02 .nav-parent li:hover {
	background: #f5f4f0;
	opacity: 1;
}
.nav-inner02 .nav-parent li:hover a {
	opacity: 1;
}
.nav-inner02 .nav-parent .on {
	position: relative;
}
.nav-inner02 .nav-parent .on::after {
	background: #333;
	content: "";
	display: block;
	margin: auto;
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	height: 6px;
}
.nav-inner02 .nav-parent li:first-of-type.on::after, .nav-inner02 li:nth-of-type(4).on::after {
	background: #006eab;
}
.nav-inner02 .nav-parent li:nth-of-type(2).on::after {
	background: #dd770d;
}
.nav-inner02 .nav-parent li:nth-of-type(3).on::after {
	background: #0e7dae;
}
.nav-child-residents, .nav-child-medical-info, .nav-child-members-info {
	padding: 1em .6em;
}
.nav-child-residents {
	background: #dd770d;
}
.nav-child-medical-info {
	background: #0e7dae;
}
.nav-child-members-info {
	background: #1054a5;
}
.nav-child-residents ul, .nav-child-medical-info ul, .nav-child-members-info ul {
	display: flex;
	margin: auto;
    max-width: 1080px;
    width: fit-content;
}
.nav-child-residents li, .nav-child-medical-info li, .nav-child-members-info li {
	padding: 0 1.5em;
}
.nav-child-residents a, .nav-child-medical-info a, .nav-child-members-info a {
	color: #fff;
	position: relative;
}
.nav-child-residents a:hover, .nav-child-medical-info a:hover, .nav-child-members-info a:hover {
	opacity: 1;
}
.nav-child-residents a:hover::after, .nav-child-residents .on a::after, .nav-child-medical-info a:hover::after, .nav-child-medical-info .on a::after, .nav-child-members-info a:hover::after, .nav-child-members-info .on a::after {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 2px;
}

/*-------------------------------
 
footer
 
-------------------------------*/
footer {
	font-size: .9em;
	margin-top: 6em;
}
.footer-nav-box, .nav-box-inner02 {
	border-top: 1px solid #ccc;
}
.nav-box-inner01, .nav-box-inner02 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	grid-gap: 3em 2.5em;
	padding: 3em 0 4em 0;
}
.footer-nav-box p {
	border-bottom: 1px solid #b3b3b3;
	color: #4d4d4d;
	margin-bottom: .8em;
	padding-bottom: .5em;
}
.footer-nav-box a {
	color: #4d4d4d;
}
.footer-nav-box a::before {
	content: "＞";
	display: inline-block;
	margin-right: .3em;
}
.footer-nav-box a:hover {
	opacity: 1;
	text-decoration: underline;
}
.footer-address {
	border-top: 1px solid #ccc;
	border-top: 1px solid #ccc;
	line-height: 1.8em;
	padding: 1.5em 0;
}
.credit {
	border-top: 1px solid #ccc;
	font-size: .8em;
	padding: .5em 0;
	text-align: center;
}
.top-btn {
	position: fixed;
	right: 0;
	bottom: 0;
	width: 50px;
	z-index: 1000;
}
.top-btn img {
	width: 100%;
}
.cta-btn {
	display: none;
}

/*-------------------------------
 
common
 
-------------------------------*/
.wrap {
	margin: auto;
	max-width: 1200px;
	width: 90%;
}
.mt1em {
	margin-top: 1em!important;
}
.mt2em {
	margin-top: 2em!important;
}
.mt3em {
	margin-top: 3em!important;
}
.mt4em {
	margin-top: 3em!important;
}
.mt5em {
	margin-top: 5em!important;
}
.mb1em {
	margin-bottom: 1em!important;
}
.mb2em {
	margin-bottom: 2em!important;
}
.mb3em {
	margin-bottom: 3em!important;
}
.mb4em {
	margin-bottom: 4em!important;
}
.mt30 {
	margin-top: 30px;
}
.alignL {
	text-align: left;
}
.alignC {
	text-align: center;
}
.alignR {
	text-align: right;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
.floatL {
	float: left;
}
.floatR {
	float: right;
}
.breadcrumb {
	font-size: .8em;
	margin: 150px auto 80px auto;
	padding: 1em 0;
}
.breadcrumb p {
	margin: auto;
	max-width: 1200px;
	width: 90%;
}
.breadcrumb a, .breadcrumb .blue {
	color: #006eab;
}
.breadcrumb a {
	display: inline;
}
.sub-main-box {
	margin: auto;
	max-width: 1200px;
	width: 90%;
}
.txt-box01 {
	margin-bottom: 5em;
	padding: 0 1em;
}
.txt-box02 {
	margin-bottom: 3em;
	padding: 0 1em;
}
.title-style01 {
	border-bottom: 1px solid #b3b3b3;
	color: #4d4d4d;
	font-size: 1.8em;
	font-weight: bold;
	margin-top: -200px;
	margin-bottom: 1.5em;
	padding-top: 200px;
	padding-bottom: .5em;
	position: relative;
	z-index: -1000;
}
.title-style01::after {
	background: #808080;
	content: "";
	display: block;
	position: absolute;
	bottom: -1.5px;
	width: 180px;
	height: 3px;
}
.title-style02 {
	align-items: center;
	color: #104b7d;
	display: flex;
	font-size: 1.5em;
	font-weight: bold;
	height: 2.5em;
	line-height: 1.2em;
	margin-top: -200px;
	margin-bottom: 1.2em;
	padding-top: 200px;
	padding-left: .5em;
	position: relative;
	z-index: -1000;
}
.title-style02::before {
	background: #104b7d;
	content: "";
	display: block;
	position: absolute;	
	bottom: -2px;
	left: 0;
	width: 2px;
	height: 2.5em;
}
.title-style03 {
	color: #dd770d;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: .6em;
}
.title-style04 {
	font-size: 1.1em;
	margin-bottom: .5em;
}
.title-style05, .title-style06 {
	margin: 2em auto .5em auto;
}
.title-style05::before {
	content: "●";
	margin-right: .2em;
	position: relative;
}
.title-style06::before {
	content: "■";
	margin-right: .2em;
	position: relative;
}
.title-style07 {
	color: #0e7dae;
	font-size: 1.1em;
	font-weight: bold;
	margin-top: .6em;
}
.title-style08 {
	border-top: 1px solid #b3b3b3;
	border-bottom: 1px solid #b3b3b3;
	color: #0e7dae;
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: 1em;
	padding: .6em 0;
}
.font-style01 {
	color: #c1272d;
	font-size: 1.1em;
	font-weight: bold;
}
.font-style02 {
	color: #c1272d;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: .6em;
}
.red {
	color: #c1272d;
	font-weight: bold;
}
.orange {
	color: #dd770d;
	font-weight: bold;
}
.yellow {
	color: #fbb03b;
	font-weight: bold;
}
.txt-indent01 {
	padding-left: 1em;
	text-indent: -1em;
}
.indent-style01 {
	padding-left: 1em;
	text-indent: -1em;
}
.indent-style02 {
	color: #c1272d;
	padding-left: 1em;
	text-indent: -1em;
}
.indent-style03 {
	padding-left: 1em;
	text-indent: -1em;
}
.indent-style01::before {
	color: #dd770d;
	content: "●";
	font-size: 2em;
	position: relative;
	top: 3px;
}
.indent-style02::before {
	color: #c1272d;
	content: "●";
	font-size: 2em;
	position: relative;
	top: 3px;
}
.indent-style03::before {
	content: "●";
	font-size: 2em;
	position: relative;
	top: 3px;
}
.btn-box-style01 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 1em;
	margin: 2em auto;
}
.btn-style01 {
	background: #dd770d;
	border: 2px solid #dd770d;
	border-radius: 10px;
	box-sizing: border-box;
	color: #fff;
	display: block;
	font-weight: bold;
	padding: 1em;
	text-align: center;
	width: 100%;
}
.btn-style01-1 {
	background: #fff;
	border: 2px solid #dd770d;
	border-radius: 10px;
	box-sizing: border-box;
	color: #dd770d;
	display: block;
	font-weight: bold;
	padding: 1em;
	position: relative;
	text-align: center;
	width: 100%;
}
.btn-style01-1::before {
	background: url(img/common/icon-pdf01.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 2px;
	width: 16px;
	height: 18px;
}
.btn-style01:hover {
	background: #f28c30;
	border: 2px solid #f28c30;
	opacity: 1;
}
.btn-style01-1:hover {
	background: #f4efc9;
	opacity: 1;
}
.btn-style02 {
	background: #0e7dae;
	border: 2px solid #0e7dae;
	border-radius: 10px;
	box-sizing: border-box;
	color: #fff;
	display: table;
	font-weight: bold;
	line-height: 1.2em;
	padding: 1em;
	text-align: center;
	width: 100%;
}
.btn-style02 span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.btn-style02-1 {
	background: #fff;
	border: 2px solid #0e7dae;
	border-radius: 10px;
	box-sizing: border-box;
	color: #0e7dae;
	display: block;
	font-weight: bold;
	padding: 1em;
	position: relative;
	text-align: center;
	width: 100%;
}
.btn-style02:hover {
	background: #e2eff5;
	border: 2px solid #0e7dae;
	color: #0e7dae;
	opacity: 1;
}
.btn-style02-1:hover {
	background: #e2eff5;
	opacity: 1;
}
.link-style01, .link-style02 {
	word-break: break-all;
}
.link-style01 {
	color: #006eab;
	display: inline;
	text-decoration: underline;
}
.link-style02 {
	color: #0e7dae;
	display: inline-block;
	margin-bottom: 2em;
}
.link-style02::before {
	content: "▲";
}
.link-style02:hover {
	opacity: 1;
	text-decoration: underline;
}
.link-style03 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	list-style: disc;
	overflow: hidden;
	padding-left: 1em;
}
.link-style03 a {
	color: #000;
}
.link-style03 a:hover {
	opacity: 1;
	text-decoration: underline;
}
.link-style04, .link-style05 {
	color: #0e7dae;
	font-weight: bold;
	margin: .5em 0;
	padding-left: 1.5em;
	text-decoration: underline;
	text-indent: -1.5em;
}
.link-style04::before {
	background: url(img/common/icon-pdf02.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 2px;
	width: 16px;
	height: 18px;
}
.link-style05::before {
	background: url(img/common/icon-link01.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 3px;
	width: 16px;
	height: 18px;
}
.link-style04:hover, .link-style05:hover {
	color: #104b7d;
	opacity: 1;
}
.list-style01 {
	list-style: disc;
	padding-left: 1em;
}
.list-style01 ul {
	list-style: none;
	padding-left: 1em;
}
.list-style01 li:first-of-type, .list-style01 ul li {
	margin-top: 0;
}
.list-style02 {
	padding-left: .5em;
	text-indent: -.5em;
}
.list-style02 li::before {
	content: "●";
}
.list-style03 {
	list-style: decimal;
	margin: 1em auto;
	padding-left: 1em;
}
.banner-style01 {
	border: 1px solid #104b7d;
	border-radius: 10px;
	box-sizing: border-box;
	color: #104b7d;
	display: block;
	font-size: 1.5em;
	margin: 3em auto;
	max-width: 800px;
	padding: 1.2em;
	text-align: center;
	width: 80%;
}
.banner-style01:hover {
	background: #eef5f9;
	opacity: 1;
}
.border-txt01 {
	border: 1px solid #b3b3b3;
	box-sizing: border-box;
	padding: 3em 1.2em 1.2em 1.2em;
	position: relative;
}
.border-txt01 .border-title01 {
	background: #fff;
	border: 1px solid #b3b3b3;
    border-radius: 30px;
    color: #104b7d;
    font-size: 1.1em;
    text-align: center;
    margin-bottom: 2em;
    padding: 1em 1.5em;
    width: fit-content;
    margin: auto;
    position: absolute;
    top: -2em;
    left: 0;
    right: 0;
}
.table-style01, .table-style02 {
	border: 1px solid #ccc;
	margin: 2em auto;
	width: 100%;
}
.table-style03 {
	background: #f5f4f0;
	border: 1px solid #ccc;
	margin: 2em auto .5em auto;
	width: 100%;
}
.table-style01 th, .table-style01 td, .table-style02 th, .table-style02 td, .table-style03 th, .table-style03 td {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: .8em;
	vertical-align: top;
}
.table-style01 th {
	background: #f5f4f0;
	font-weight: normal;
}
.table-style02 th {
	font-weight: normal;
}
.table-style03 td:first-of-type, .table-style03 td:nth-of-type(2), .th-title01 th:first-of-type, .th-title01 th:nth-of-type(2) {
	text-align: center;
	width: 5%;
}
.table-style03 td:nth-of-type(3), .table-style03 td:nth-of-type(4), .th-title01 th:nth-of-type(3), .th-title01 th:nth-of-type(4) {
	width: 35%;
}
.table-style01 tr:last-of-type th, .table-style02 tr:last-of-type th {
	border-bottom: none;
}
.table-style01 tr:last-of-type td, .table-style02 tr:last-of-type td {
	border-bottom: none;
}
.table-style01 th:first-of-type, .table-style02 th:first-of-type {
	border-left: none;
}
.table-style02 tr:nth-child(odd) th, .table-style02 tr:nth-child(odd) td {
	background: #f5f4f0;
}
.table-style02 a {
	color: #000;
}
.table-style02 a:hover {
	opacity: 1;
	text-decoration: underline;
}
.th-style01, .th-style01 th {
	background: #0e7dae!important;
	color: #fff;
	font-size: 1.1em;
}
.th-style02 th {
	background: #dd770d!important;
	color: #fff;
}
.th-style03 th {
	line-height: 1.2em;
	vertical-align: middle;
	text-align: center;
}
.th-style03 th:nth-of-type(2), .th-style03 th:nth-of-type(3), .th-style03 th:nth-of-type(4), .th-style03 th:nth-of-type(5), .th-style03 th:nth-of-type(6) {
	background: #dbe4d7;
}
.th-style03 th:nth-of-type(7), .th-style03 th:nth-of-type(8), .th-style03 th:nth-of-type(9) {
	background: #96af76;
	color: #fff;
}
.th-style03 th:nth-of-type(10), .th-style03 th:nth-of-type(11), .th-style03 th:nth-of-type(12), .th-style03 th:nth-of-type(13), .th-style03 th:nth-of-type(14), .th-style03 th:nth-of-type(15) {
	background: #b2d5e5;
}
.th-style04 th {
	background: #6eb1ce!important;
	color: #fff;
	text-align: center;
}
.th-width01 {
	max-width: 170px;
	width: 15%;
}
.th-width02 {
	max-width: 250px;
	width: 22%;
}
.th-align01 th {
	line-height: 1.2em;
	vertical-align: middle;
}
.th-align02 th, .td-align01 td {
	text-align: center;
}
.td-style01 td {
	background: #f5f4f0;
}
.td-style02 td {
	background: #eef5f9;
}
.td-alignR td {
	text-align: right;
}
.td-alignR td:nth-of-type(6), .td-alignR td:nth-of-type(7), .td-alignR td:nth-of-type(8) {
	background: #e8f4d9;
}
.td-alignR td:nth-of-type(9), .td-alignR td:nth-of-type(10), .td-alignR td:nth-of-type(11), .td-alignR td:nth-of-type(12), .td-alignR td:nth-of-type(13), .td-alignR td:nth-of-type(14) {
	background: #e2eff5;
}
.td-width01 {
	text-align: center;
	width: 6%;
}
.td-link-style01 {
	display: inline;
	text-align: center;
}
.border-box01 {
	border: 1px solid #b3b3b3;
	border-radius: 10px;
	box-sizing: border-box;
	margin: 2em auto;
	padding: 1.5em 2em;
}
.dl-style01 {
	overflow: hidden;
}
.dl-style01 dt, .dl-style01 dd {
	margin-bottom: 1.5em;
}
.dl-style01 dt {
	float: left;
	width: fit-content;
}
.dl-style01 dd {
	float: left;
}
.dl-style01 dt:first-of-type {
	width: 4em;
}
.dl-style01 dt:nth-of-type(2), .dl-style01 dt:nth-of-type(3) {
	width: 3em;
}
.dl-style01 dt:last-of-type {
	width: 8em;
}
.dl-style01 dd:first-of-type {
	width: calc(100% - 4em);
}
.dl-style01 dd:nth-of-type(2), .dl-style01 dd:nth-of-type(3) {
	width: calc(100% - 3em);
}
.dl-style01 dd:last-of-type {
	width: calc(100% - 8em);
}
.img-style01 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0 2em;
}
.box-style01 {
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-gap: 2em;
}
.box-style01-1 {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-gap: 2em;
}
.box-style02 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 2em;
	margin: 2em auto 4em auto;
}
.box-style03 {
	border-bottom: 1px solid #b3b3b3;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 2em;
	padding-bottom: 4em;
	margin: 2em auto 4em auto;
}
.box-style04 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 2em;
	margin: 2em auto 4em auto;
}
figcaption {
	margin-top: .5em;
	text-align: center;
}
hr {
	color: #b3b3b3;
}
.border-style01 {
	border: 1px solid #b3b3b3;
	box-sizing: border-box;
	margin-bottom: 2em;
	padding: 1.8em 1.5em;
}
.required {
	background: #c1272d;
	color: #fff;
	display: inline-block;
	font-size: .7em;
	font-weight: bold;
	line-height: 1.8em;
	margin-left: 1.5em;
	padding: .1em 1em 0em 1em;
	position: relative;
	top: -2px;
	width: fit-content;
}
.btn-submit {
	background: #006eab;
	border-radius: 4px;
	color: #fff;
	font-weight: bold;
	letter-spacing: .1em;
	margin: 3em auto 0 auto;
	padding: .6em;
	text-align: center;
	width: 20%;
}

/*-------------------------------
 
top
 
-------------------------------*/
.main-box {
    background-position: center;
    margin: auto;
    text-align: center;
}
.main-copy {
	color: #fff;
	display: block;
	filter: drop-shadow(-2px 2px 6px #666);
	font-size: 2.5em;
	line-height: 2em;
	margin: 20% auto 0 auto;
	padding: 0 2em;
	position: absolute;
	text-align: center;
	left: 0;
	right: 0;
	width: 80%;
    height: auto;
    z-index: 100;
}
.latest-info-box {
	border-bottom: 1px solid #ccc;
}
.latest-info-box-inner {
	margin: auto;
	max-width: 1200px;
	overflow: hidden;
	padding: 1em;
	width: 90%;
}
.latest-info-box h2 {
	border-right: 4px solid #c0491e;
	box-sizing: border-box;
	color: #c85e31;
	display: inline-block;
	float: left;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.6em;
	padding-right: 1.5em;
}
.latest-info-txt {
	float: right;
	overflow: hidden;
	width: calc(100% - 8em);
}
.latest-info-box p {
	animation: flow 20s linear infinite;
	display: inline-block;
	white-space: nowrap;
	width: 100%;
}
.latest-info-txt a {
	display: inline;
}
@keyframes flow {
    0% {
    	transform: translateX(100%);
    }
    100% {
        transform: translateX(-50%);
    }
}
.top-banner {
	background: #409acf;
	box-sizing: border-box;
	color: #fff;
	display: block;
	font-size: 1.2em;
	margin: 50px auto;
	max-width: 750px;
	padding: 1em 1.5em;
	width: 65%;
}
.top-banner:hover {
	background: #1054a5;
	opacity: 1;
}
.top-banner-inner {
	align-items: center;
	display: flex;
	min-height: 130px;
	position: relative;
}
.top-banner-inner p:first-of-type {
	width: 65%;
}
.top-banner-inner p:last-of-type {
	background: #fff;
	border-radius: 30px;
	color: #409acf;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.1em;
	padding: .5em 2em .5em 1em;
	position: absolute;
	right: 0;
}
.top-banner:hover p:last-of-type {
	color: #1054a5;
}
.top-banner-inner p:last-of-type::after {
	border: 0;
 	border-top: 10px solid transparent;
 	border-right: 10px solid transparent;
 	border-bottom: 10px solid transparent;
 	border-left: 17px solid #409acf;
	content: '';
 	margin: auto;
 	position: absolute;
	top: 0;
	right: 2px;
	bottom: 0;
	width: 0;
	height: 0;
}
.top-banner:hover p:last-of-type::after {
	border: 0;
 	border-top: 10px solid transparent;
 	border-right: 10px solid transparent;
 	border-bottom: 10px solid transparent;
 	border-left: 17px solid #1054a5;
}
.section01 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 1em;
	margin-top: 50px;
}
.section01 div {
	background: #f5f4f0;
	font-size: .9em;
	line-height: 1.5em;
	padding: 2em 1em;
}
.section01 h2 {
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
}
.section01 div:first-of-type h2 {
	color: #0e7dae;
}
.section01 div:nth-of-type(2) h2 {
	color: #911d22;
}
.section01 div:nth-of-type(3) h2 {
	color: #b17130;
}
.section01 div:nth-of-type(4) h2 {
	color: #674a78;
}
.section01 h2::before {
	background-position: center;
	background-size: contain;
	content: "";
	display: block;
	height: 32px;
	margin: 0 auto 10px auto;
}
.section01 div:first-of-type h2::before {
	background: url(img/common/icon-hospital.svg) no-repeat;
	width: 32px;
}
.section01 div:nth-of-type(2) h2::before {
	background: url(img/common/icon-ambulance.svg) no-repeat;
	width: 42px;
}
.section01 div:nth-of-type(3) h2::before {
	background: url(img/common/icon-syringe.svg) no-repeat;
	width: 22px;
}
.section01 div:nth-of-type(4) h2::before {
	background: url(img/common/icon-electro-cardiogram.svg) no-repeat;
	width: 38px;
}
.section01 h2 span {
	color: #898989;
	display: block;
	font-size: .6em;
	margin-top: .25em;
	text-align: center;
}
.section01 img {
	margin: 1em auto;
}
.section01 p {
	margin-bottom: 1.5em;
}
.section01 a {
	font-weight: bold;
	line-height: 2em;
}
.section01 div:first-of-type section a {
	color: #0e7dae;
}
.section01 div:nth-of-type(2) section a:first-of-type, .section01 div:nth-of-type(2) section a:nth-of-type(3) {
	color: #911d22;
}
.section01 div:nth-of-type(3) section a {
	color: #b17130;
}
.section01 div:nth-of-type(4) section a {
	color: #674a78;
}
.section01 a::before {
	background-size: contain;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 5px;
	width: 20px;
	height: 20px;
}
.section01 div:first-of-type section a::before {
	background: url(img/top/arrow01.svg) no-repeat;
}
.section01 div:nth-of-type(2) section a:first-of-type::before, .section01 div:nth-of-type(2) section a:nth-of-type(3)::before {
	background: url(img/top/arrow02-1.svg) no-repeat;
}
.section01 div:nth-of-type(2) section a:nth-of-type(2)::before {
	background: url(img/top/arrow02-2.svg) no-repeat;
}
.section01 div:nth-of-type(3) section a::before {
	background: url(img/top/arrow03.svg) no-repeat;
}
.section01 div:nth-of-type(4) section a::before {
	background: url(img/top/arrow04.svg) no-repeat;
}
.section01 a:hover {
	opacity: 1;
	text-decoration: underline;
}
.section02 {
	border: 1px solid #e6e6e6;
	display: grid;
	grid-template-columns: 23% 77%;
	margin: 5em auto;
	overflow: hidden;
}
.section02 h2 {
	background: #f5f4f0;
	color: #c0491e;
	font-size: 1.3em;
	padding: 50px;
	text-align: center;
}
.section02 h2::before {
	background: url(img/common/icon-info.svg) no-repeat;
	background-size: contain;
	content: "";
	display: block;
	margin: 0 auto 20px auto;
	width: 40px;
	height: 40px;
}
.section02 h2 span {
	color: #898989;
	display: block;
	font-size: .6em;
	margin: 4px auto 0 auto;
	text-align: center;
}
.section02 section {
	float: right;
	padding: 60px 30px;
}
.section02 a {
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
	color: #4d4d4d;
	display: block;
	padding: 1em;
	width: 100%;
}
.section02 a:first-of-type {
	border-top: 1px solid #ccc;
}
.tab-label-box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: .5em;
	margin-bottom: .5em;
}
.tab_label {
	background: #409acf;
	border-radius: 5px;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	padding: .5em 1em;
	text-align: center;
}
.tab_label:first-of-type {
	background: #dd770d;
}
.tab_label:nth-of-type(2) {
	background: #0e7dae;
}
.tab_label:nth-of-type(3) {
	background: #1054a5;
}
.tab {
	display: none;
}
.tab_active {
    display: block;
}
.residents-info, .medical-info, .members-info, .important-info, .category-others {
	background: #409acf;
	border-radius: 4px;
	color: #fff;
	display: inline-block;
	font-size: .8em;
	padding: 0 .8em;
	text-align: center;
}
.residents-info {
	background: #dd770d;
}
.medical-info {
	background: #0e7dae;
}
.members-info {
	background: #1054a5;
}
.important-info {
	background: #c1272d;
}
.section02 .archive_box_inner .category {
	display: inline-block;
	width: 22%;
}
.section02 .archive_box_inner .date {
	display: inline-block;
	font-size: .9em;
	margin-right: .5em;
}
.section02 .archive_box_inner .title {
	display: inline;
}
.address-box {
	background: #f5f4f0;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 65% 35%;
	grid-gap: 0 1em;
	padding: 20px;
}
.address-box iframe {
	border: 1px solid #ccc;
}
.address-box address p:first-of-type {
	font-size: 2em;
	line-height: 1.1em;
	text-align: center;
}
.address-box address span:first-of-type {
	display: block;
	font-size: .6em;
	margin-top: 2em;
	text-align: center;
}
.address-box address span:nth-of-type(2) {
	color: #666;
	display: block;
	font-size: .5em;
	text-align: center;
}
.address-box p:last-of-type {
	color: #4d4d4d;
	line-height: 1.6em;
	margin-top: 50px;
	text-align: center;
}
.top-banner-box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1em;
	margin-top: 3em;
}

/*-------------------------------
 
search
 
-------------------------------*/
.search-btn-box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1em;
	margin: 2em auto;
}
.search-btn {
	background: #f5f4f0;
	border: 1px solid #b3b3b3;
	border-radius: 4px;
	box-sizing: border-box;
	color: #333;
	display: block;
	font-size: 1.1em;
	font-weight: bold;
	padding: 1em;
	width: 100%;
}
.search-btn::before {
	background: url(img/search/icon-search02.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 3px;
	width: 20px;
	height: 20px;
}
/*.search-btn span {
	display: block;
    font-size: .9em;
    padding-left: 20px;
    line-height: 1.2em;
}*/
.search-btn.on, .search-btn:hover {
	background: #0e7dae;
	border: 1px solid #0e7dae;
	color: #fff;
	opacity: 1;
}
.search-btn.on::before, .search-btn:hover::before {
	background: url(img/search/icon-search01.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 3px;
	width: 20px;
	height: 20px;
}
.btn-search-again {
	background: #104b7d;
	border: none;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff;
	display: block;
	margin: auto;
	max-width: 490px;
	padding: 1.2em;
	position: relative;
	text-align: center;
	width: 30%;
}
.iframe-box01 {
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.iframe-box01 .iframe {
	display: none;
}
.iframe-box01 .iframe_active {
	display: block;
}
.ifame-btn {
	cursor: pointer;
}
.ifame-btn:hover {
	text-decoration: underline;
}
.table-map-list01, .table-map-list02 {
	border: 1px solid #ccc;
	font-size: 1.1em;
	margin: 0 auto 2em auto;
	width: 100%;
}
.table-map-list01 th, .table-map-list01 td, .table-map-list02 th, .table-map-list02 td {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 1.2em 1em;
	vertical-align: top;
}
.table-map-list01 th, .table-map-list02 th {
	background: #f5f4f0;
}
.table-map-list01 a {
	color: #333;
}
.table-map-list01 a:hover {
	opacity: 1;
	text-decoration: underline;
}
.search-table {
	border: 1px solid #ccc;
	margin: 2em auto;
	width: 100%;
}
.search-table th, .search-table td {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 1.2em 1em;
	vertical-align: top;	
}
.search-table th, .search-table td {
	box-sizing: border-box;
	font-weight: normal;
}
.search-table th {
	background: #f5f4f0;
	font-size: 1.1em;
	position: relative;
}
.search-table th p {
	font-size: .8em;
	line-height: 1.6em;
	margin-top: 2em;
}
.search-tbody01 th, .search-tbody02 th, .search-tbody03 th {
	border-left: none;
	width: 240px;
}
.search-tbody01 td:first-of-type, .search-tbody03 td {
	width: 16%;
}
.search-tbody01 td:last-of-type {
	width: 64%;
}
.search-tbody02 td {
	width: 80%;
}
.search-table th input {
	display: none;
}
.cross-btn01, .cross-btn02, .cross-btn03 {
	border: 1px solid #333;
	border-radius: 4px;
	display: block;
	position: absolute;
	top: 15px;
	right: 30px;
	width: 40px;
	height: 40px;
}
.cross-btn01::before, .cross-btn01::after, .cross-btn02::before, .cross-btn02::after, .cross-btn03::before, .cross-btn03::after {
	background: #333;
	content: "";
	display: block;
	width: 24px;
	height: 4px;
	position: absolute;
	top: 18px;
	right: 7px;
}
.cross-btn01::before, .cross-btn02::before, .cross-btn03::before {
	transform: rotate(90deg);
}
.search-tbody01, .search-tbody02, .search-tbody03 {
	display: none;
}
.cross-btn_active.cross-btn01::before, .cross-btn_active.cross-btn02::before, .cross-btn_active.cross-btn03::before {
	display: none;
}
.tbody_active {
	display: block;
}
.search-box {
	margin: 2em auto 4em auto;
}
.search-box input {
	background: #0e7dae;
	border: none;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff;
	display: block;
	margin: auto;
	max-width: 490px;
	padding: 1.2em;
	position: relative;
	width: 30%;
}
.search-box input:hover {
	background: #006eab;
	opacity: 1;
}
.search-box::before {
	background: url(img/search/search-arrow.svg) no-repeat;
	background-size: contain;
	content: "";
	display: block;
	margin: 0 auto 1.5em auto;
	width: 156px;
	height: 48px;
}
#goto-keyword-search {
	padding-top: 100px;
}
.keyword-search-box {
	background: #f5f4f0;
	border: 1px solid #ccc;
	box-sizing: border-box;
	margin: 6em auto;
	max-width: 770px;
	padding: 1.2em 2em 2em 2em;
	width: 65%;
}
.keyword-search-box p {
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: .8em;
	text-align: center;
}
.keyword-search-box form {
	position: relative;
}
.keyword-search-box form::after {
	background: url(img/search/icon-search02.svg) no-repeat;
	background-size: contain;
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: 15px;
	width: 1.2em;
	height: 1.2em;
}
.feas_archive_freeword {
	background: #fff;
	border: 1px solid #808080;
	border-radius: 30px!important;
	margin-right: .5em;
	padding: 0 1.5em 0 3em;
	position: relative;
	width: 75%;
	height: 54px;
}
.search-submit-btn {
	background: url(img/search/search-btn.svg) no-repeat;
	background-size: contain;
	border: none;
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	width: 54px;
	height: 54px;
}
.search-submit-btn:hover {
	opacity: .8;
}
.search-submit-btn input {
	opacity: 0;
	width: 53px;
	height: 53px;
}
.link-map {
	color: #0e7dae;
	float: right;
}
.map-img01 {
	border-right: 1px solid #b3b3b3;
	border-bottom: 1px solid #b3b3b3;
	border-left: 1px solid #b3b3b3;
	box-sizing: border-box;
	margin-top: -2.5em;
	padding: 2em;
}
.map-img01 img {
	display: block;
	margin: 1.5em auto;
	width: 70%;
}

/*-------------------------------
 
archive
 
-------------------------------*/
.archive_box_wrapper a {
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
    color: #4d4d4d;
    display: block;
    padding: 1em;
    width: 100%;
}
.archive_box_wrapper a:first-of-type {
    border-top: 1px solid #ccc;
}
.archive_box_wrapper .archive_box_inner {
	display: grid;
	grid-template-columns: 1fr 5fr;
}
.archive_box_wrapper .archive_box_inner .date {
	margin-right: 2em;
}
.wp-pagenavi {
	background: #f5f4f0;
	font-size: .8em;
	margin: 3em auto;
	overflow: hidden;
	padding: 0 1em;
	text-align: center;
	width: 100%;
}
.wp-pagenavi a, .wp-pagenavi span {
	border: none!important;
	color: #006eab;
	display: initial;
	margin: 0!important;
}
.wp-pagenavi:last-child {
	margin-right: 0;
}
.post-navi {
	margin: 6em auto 0 auto;
	overflow: hidden;
	padding: 0 1em;
	width: fit-content;
}
.post-navi a {
	border: 1px solid #b3b3b3;
	color: #000;
	float: left;
	font-size: .9em;
	margin-right: 10px;
	padding: .25em;
	text-align: center;
	width: 70px;
}
.post-navi a:hover {
	color: #104b7d;
}
.post-navi a:last-of-type {
	margin-right: 0;
}

/*-------------------------------
 
single
 
-------------------------------*/
.sinlge_box_wrapper .category {
	display: inline-block;
	margin-right: 2em;
}
.single_box {
	margin-top: 2em;
}
.single_box h2 {
	border-left: 2px solid #104b7d;
	color: #104b7d;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1.2em;
	padding-left: .5em;
	position: relative;	
}
.tag-box {
	margin: 3em auto;
	position: relative;
}
.tag-box::before {
	background: url(img/common/icon-tag.svg) no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	float: left;
	margin-right: 10px;
	position: relative;
	top: 2px;
	width: 36px;
	height: 32px;
}
.tag-box ul {
	overflow: hidden;
}
.tag-box li a {
	background: #f5f4f0;
	box-sizing: border-box;
	color: #4d4d4d;
	display: block;
	font-size: .8em;
	font-weight: bold;
	float: left;
	margin-right: .5em;
	padding: .2em 1.5em;
}

/*-------------------------------
 
seminar
 
-------------------------------*/
.seminar-archive_box_wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 4em 2em;
}
.seminar-archive_box_wrapper a {
	width: initial;
}
.seminar-archive_box_wrapper .title {
	border-top: 1px solid #b3b3b3;
	border-bottom: 1px solid #b3b3b3;
	color: #0e7dae;
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: .8em;
	padding: 1em 0;
}
.seminar-archive_box_wrapper .txt {
	color: #333;
	font-size: .9em;
}
.seminar-archive_box_wrapper .archive_img {
	margin: 1em auto 0 auto;
	text-align: center;
	width: 90%;
}

/*-------------------------------
 
contact
 
-------------------------------*/
.wpcf7 input[type="text"], .wpcf7 input[type="tel"], .wpcf7 input[type="email"], .wpcf7 textarea {
	background: #f2f2f2;
	border: none;
	box-sizing: border-box;
	width: 100%;
}

@media screen and (max-width: 1024px) {
header {
	border-top: 1px solid #104b7d;
	border-bottom: 1px solid #e6e6e6;
	height: 50px;
	padding: 1em 0;
}
header .pc, .pc, .nav-child-residents, .nav-child-medical-info, .nav-child-members {
	display: none;
}
.sp {
	display: block;
	margin: auto;
	overflow: hidden;
	width: 95%;
}
.sp .logo {
	display: block;
	width: 30%;
}
.sp .nav-box-mb img {
	box-sizing: border-box;
	display: block;
	margin: auto;
}
.mb_btn {
	background: #1054a5;
	border-radius: 8px;
    cursor: pointer;
    display: block;
    padding: 6px;
    position: fixed;
    top: 12px;
    right: 12px;
    width: 40px;
    height: 40px;
}
.mb_btn span {
    background: #fff;
    border-radius: 4px;
    display: block;
    font-weight: bold;
    position: relative;
    right: -2px;
    transition: all .6s;
    width: 24px;
    height: 2px;
}
.mb_btn span:first-child {
    top: 5px;
}
.mb_btn span:nth-child(2) {
    top: 11px;
}
.mb_btn span:nth-child(3) {
    top: 17px;
}
.mb_btn.active span:first-child {
    top: 7px;
    transform: translateY(6px) rotate(-45deg);
}
.mb_btn.active span:nth-child(2) {
    opacity: 0;
}
.mb_btn.active span:nth-child(3) {
    top: 16px;
    transform: translateY(-6px) rotate(45deg);
}
.mb_btn.active + .mb_menu ul {
    right: 0;
    transition: all .6s;
}
.mb_menu ul {
    background: rgba(255, 255, 255, 1);
    position: fixed;
    top: calc(51px + 2em);
    right: -100%;
    transition: all .6s;
    width: 100%;
}
.mb_menu ul li {
	background: #fff;
	float: none;
	position: relative;
}
.mb_menu ul li, .mb_menu ul li a {
    border-bottom: 1px solid #104b7d;
    box-sizing: border-box;
    color: #104b7d;
    display: block;
    font-weight: bold;
    height: initial;
    padding: .5em 1em;
    width: 100%;
}
.mb_menu ul li:first-of-type, .mb_menu ul li:last-of-type {
	border-bottom: none;
	font-size: 1em;
	padding: 0;
}
.mb_menu ul li:first-of-type a {
	border-top: 1px solid #104b7d;
	border-bottom: 1px solid #104b7d;
	display: block;
    font-weight: bold;
    height: initial;
    width: 100%;
}
.mb_menu ul li span {
	display: block;
	position: relative;
	width: 100%;
}
.mb_menu ul li span::after {
	border: 0;
	border-bottom: solid 2px #104b7d;
	border-right: solid 2px #104b7d;
	content: '';
	transform: rotate(45deg);
	margin: auto;
	position: absolute;
	top: 0;
	right: 16px;
	bottom: 0;
	width: 6px;
	height: 6px;
}
.mb_menu li a:hover {
	background: #f5f4f0;
	opacity: 1;
}
.mb_menu .open span::after {
	transform: rotate(-135deg);
}
.mb_menu .open .nav-child {
	display: block;
	height: initial;
	opacity: 1;
	padding: .5em 0 0 0;
	position: initial;
	visibility: visible;
}
.mb_menu .nav-child li {
	border-bottom: none;
	font-size: 1em;
	padding: 0;
}
.mb_menu .nav-child li::after {
	content: none;
}
.mb_menu .nav-child li a {
	font-size: 1em;
	padding: .5em 0;
}
.mb_menu .nav-child li:last-of-type a {
	border-bottom: none;
	padding: .5em 0 0 0;
}
.nav-parent00 a::before, .nav-parent01::before, .nav-parent02::before, .nav-parent03 a::before {
	background-size: contain;
	content: "";
	display: inline-block;
	float: left;
	margin-right: .8em;
	position: relative;
	top: 3px;
}
.nav-parent00 a::before {
	background: url(img/common/icon-home.svg) no-repeat;
	width: 22px;
	height: 22px;
}
.nav-parent01::before {
	background: url(img/common/icon-residents.svg) no-repeat;
	width: 22px;
	height: 18px;
	top: 5px;
}
.nav-parent02::before {
	background: url(img/common/icon-medical.svg) no-repeat;
	width: 22px;
	height: 22px;
}
.nav-parent03 a::before {
	background: url(img/common/icon-members.svg) no-repeat #1054a5;
	border: 2px solid #1054a5;
    border-radius: 50%;
	width: 18px;
	height: 18px;
}
.sub-main-box {
	margin-top: 50px;
}
.footer-nav-box .nav-box-inner01, .footer-nav-box .nav-box-inner02 {
	display: none;
}
.footer-nav-box .sp {
	padding: .5em 0;
}

/* common */
.breadcrumb {
	margin: 50px auto 30px auto;
}
.box-style01, .box-style01-1, .box-style02 {
	grid-template-columns: 1fr;
}
.box-style03, .btn-box-style01 {
	grid-template-columns: 1fr 1fr;
}

/* top */
.top-banner {
	font-size: 1em;
	width: 90%;
}
.section01 {
	grid-template-columns: 1fr 1fr;
}
.section02 {
	display: block;
}
.section02 section {
	float: none;
	padding: 1em;
}
.address-box {
	display: block;
}

/* search */
.keyword-search-box {
	width: 80%;
}
}

@media screen and (max-width: 768px) {
.order-box {
	display: flex;
	flex-wrap: wrap;
}
.order01 {
	order: 1;
}
.order02 {
	order: 2;
}
header {
	height: 30px;
}
.sp .logo {
	max-width: 400px;
	width: 55%;
}
.mb_menu ul {
	top: calc(31px + 2em);
}
footer {
	margin-top: 3em;
}

/* common */
.breadcrumb {
	margin: 30px auto;
}
.title-style01, .title-style02 {
	margin-top: -100px;
	padding-top: 100px;
}
.title-style01 {
	font-size: 1.5em;
}
.title-style02 {
	font-size: 1.2em;
}
.title-style02 .red, .title-style02 .yellow {
	position: absolute;
	bottom: 2.5em;
}
.txt-box01 {
	margin-bottom: 3em;
	padding: 0;
}
.box-style03, .box-style04, .btn-box-style01 {
	grid-template-columns: 1fr;
    margin: 2em auto;
    padding-bottom: 2em;
}
.border-box01 {
	padding: 1em;
}
.border-txt01.txt-box01 {
	padding: 1em;
}
.border-txt01.txt-box01 .border-title01 {
	font-size: 1em;
	margin-bottom: 1em;
	padding: .5em 1em;
	position: relative;
	top: initial;
}
.banner-style01 {
	font-size: 1.2em;
	padding: 1em;
	width: 100%;
}
.iframe-box01 iframe {
	height: 350px;
}
.table-wrapper {
	overflow-x: scroll;
}
.table-wrapper table {
	width: 1200px;
}
.table-style01 th, .table-style01 td, .table-style02 th, .table-style02 td, .table-style03 th, .table-style03 td {
	padding: .5em;
}
.th-style01, .th-style01 th, .th-style04 th {
	font-size: 1em;
}
.link-style03 {
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 0 1em;
}
.indent-style01::before, .indent-style02::before, .indent-style03::before, .title-style05::before {
	font-size: 1em;
	top: 0;
}

/* top */
.main-copy {
	font-size: 1em;
}
.latest-info-box-inner {
	padding: .5em 0;
}
.latest-info-box h2 {
	border-right: none;
	display: block;
	float: none;
	padding: 0;
	text-align: center;
}
.latest-info-txt {
	line-height: 1em;
	width: 100%;
}
.latest-info-box p {
	line-height: 1.8em;
	margin-top: .25em;
}
.top-banner {
	padding: 1.5em 1em;
}
.top-banner-inner {
	display: block;
}
.top-banner-inner p:first-of-type {
	text-align: center;
	width: 100%;
}
.top-banner-inner p:last-of-type {
	margin: 1em auto 0 auto;
	position: relative;
	width: fit-content;
}
.section01 {
	grid-template-columns: 1fr;
}
.section01 h2 {
	font-size: 1.2em;
}
.section02 {
	margin: 3em auto;
}
.tab_label {
	font-size: .8em;
}
.residents-info, .medical-info, .members-info, .important-info, .category-others {
	margin-top: .5em;
}
.residents-info:first-of-type, .medical-info:first-of-type, .members-info:first-of-type, .important-info:first-of-type, .category-others:first-of-type {
	margin-top: 0;
}
.section02 .archive_box_inner .category {
	margin-bottom: .5em;
	width: 100%;
}
.section02 .archive_box_inner .title {
    margin-top: .5em;
    width: 100%;
}
.top-banner-box {
	grid-template-columns: 1fr;
}

/* search */
.search-table th {
	font-size: 1em;
}
.btn-search-again {
	width: fit-content;
}
.search-btn-box {
	grid-template-columns: 1fr;
}
.table-map-list01 th, .table-map-list01 td {
	padding: .5em;
}
.table-map-list01 th {
	width: 20%;
}
.map-img01 {
	padding: 1em;
}
.map-img01 img {
	width: 100%;
}
.search-box input {
	width: fit-content;
}
.keyword-search-box {
	width: 100%;
}
.feas_archive_freeword {
	box-sizing: border-box;
	margin-right: 0;
	width: 100%;
}
.search-submit-btn {
	display: block;
	margin: 1em auto 0 auto;
	position: relative;
}
}