@charset "UTF-8";

/* sidebar
------------------------------------------------*/
#sidebar.company,
#sidebar.office,
#sidebar.contact,
#sidebar.complete,
#sidebar.link,
#sidebar.privacy,
#sidebar.site-map {
	display: none;
}

/* common
------------------------------------------------*/
.post a:link,
.post a:visited {
	text-decoration: underline;
	color: #005481;
}
.post a:hover {
	text-decoration: none !important;
}
.post .headline01 {
	background: #fff;
	border-bottom: 1px solid #F7AA04;
	margin: 40px 0 30px;
	padding: 5px 10px;
	font-size: 26px;
	font-weight: bold;
	color: #F7AA04;
}
.post .headline01:first-child {
	margin-top: 0;
}
.post .headline02 {
	position: relative;
	margin: 30px 0 15px;
	padding: 0 0 0 25px;
	font-size: 22px;
	font-weight: bold;
}
.post .headline02:after {
	position: absolute;
	top: 10px;
	left: 0;
	z-index: 2;
	content: '';
	width: 16px;
	height: 16px;
	border: 4px solid #F7AA04;
	border-radius: 100%
}
.post .catch {
	margin-bottom: 40px;
	letter-spacing: 0.1em;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	color: #F7AA04;
}
.post .return-btn a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	width: 480px;
	height: 75px;
	margin: 30px auto 0;
	text-align: center;
	line-height: 75px;
	text-decoration: none;
	font-size: 20px;
	font-weight: bold;
}
.post .return-btn a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 15px;
	width: 7px;
	height: 7px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	margin: -4px 0 0;
}
.post .return-btn a:hover {
	opacity: 0.8;
}
.post .flex.half {
	justify-content: space-between;
}
.post .flex.half .flex-img,
.post .flex.half .flex-text {
	width: 48%;
}
.flex.half .headline02:first-child {
	margin-top: 0;
}
.post table,
.post table th,
.post table td {
	border-collapse: collapse;
}
.post table th,
.post table td {
	padding: 15px;
}
.post table th {
	background: #FFE09F;
	border-bottom: solid 1px #fff;
	font-weight: bold;
}
.post table td {
	background: #fff;
	border-bottom: solid 1px #ccc;
}

@media screen and (max-width:767px) {
	.post .headline01 {
		margin: 30px 0 20px;
		font-size: 20px;
	}
	.post .headline02 {
		margin: 20px 0 10px;
		font-size: 17px;
	}
	.post .headline02:after {
		top: 7px;
	}
	.post .catch {
		margin-bottom: 30px;
		letter-spacing: 0;
		text-align: left;
		font-size: 19px;
	}
	.post .return-btn a {
		width: 100%;
		height: 50px;
		line-height: 50px;
		font-size: 16px;
	}
	.post .flex.half .flex-img,
	.post .flex.half .flex-text {
		width: 100%;
	}
	.post table th,
	.post table td {
		padding: 7px 10px;
	}
	.post .table-wrap {
		width: 100%;
		overflow-x: scroll;
	}
	.post .sp-block {
		display: block;
	}

}


/* 2023.6.21 角丸 */
/*.wp-block-gallery*/
#main .rounded_corners img {
	padding: 0;
	width: 100%;
	border-radius: 10px;
}



/* targetlink
------------------------------------------------*/
.targetlink {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.targetlink:after {
	content: "";
	display: block;
	width: 32.5%;
}
.targetlink li {
	width: 32.5%;
	margin-bottom: 10px;
}
.targetlink li a {
	display: block;
	position: relative;
	background: #fff;
	border-radius: 5px;
	padding: 15px;
	text-decoration: none !important;
	font-weight: bold;
	color: #555 !important;
}
.targetlink li a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	width: 7px;
	height: 7px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin: -4px 0 0;
}
.targetlink li a:hover {
	opacity: 0.8;
}

@media screen and (max-width:767px) {
	.targetlink:after {
		content: none;
	}
	.targetlink li {
		width: 49%;
	}
	.targetlink li a {
		padding: 10px 35px 10px 10px;
		height: 100%;
	}
}

/* company
------------------------------------------------*/
.company h3 span {
	display: block;
}
.company p {
	line-height: 1.9;
	margin-bottom: 25px;
}
.company p strong {
	font-size: 1.5em;
}
.company table {
	width: 100%;
}
.company table dt {
	float: left;
	clear: both;
	padding: 10px 0;
	font-weight: bold;
}
.company table dd {
	border-bottom: solid 1px #eee;
	padding: 10px 0 10px 6em;
}
.company table dt:first-child,
.company table dt:first-child + dd {
	padding-top: 0;
}
.company table dd:last-child {
	border: none;
}
.company .flex {
	justify-content: space-between;
}
.company .flex .flex-img {
	width: 30%;
}
.company .flex .flex-text {
	width: 66%;
}

@media screen and (max-width:767px) {
	.company h3 span {
		display: inline;
	}
	.company table th,
	.company table td {
		display: block;
	}
	.company table td {
		background: none;
		border: none;
		margin: 10px 0 15px;
		padding: 0;
	}
	.company .flex {
		flex-direction: row;
	}
	.company .flex .flex-img,
	.company .flex .flex-text {
		width: 100%;
	}
	.company .flex .flex-img {
		text-align: center;
	}
}

/* service
------------------------------------------------*/
.body_service #main .inner {
    width: 100%;
    padding: 0 3%;
}
.body_service #main .flex {
	justify-content: space-between;
}
.body_service #main .flex li {
	width: 32%;
	margin-bottom: 20px;
	line-height: 1.4;
	text-align: center;
}
 li img {
	display: block;
	border-radius: 10px;
	max-width: 100%;
	height: auto;
	margin: 0 auto 5px;
}
.body_service #main .flex li a {
	display: block;
	text-decoration: none;
	color: #46423f;
}
.body_service #main .flex li a:hover {
	opacity: 0.8;
}
.body_service #main .flex li.no-img a {
	background: #FEE46E;
	border-radius: 10px;
    margin: 0 auto;
    padding: 28% 0;
    max-width: 270px;
}

.body_service #main .flex:after {
	content: "";
	display: block;
	width: 32%;
}

@media screen and (max-width:767px) {
    .body_service #main .inner {
        padding: 0 20px;
    }
	.body_service #main .flex li {
		width: 49%;
	}
	.body_service #main .flex:after {
		content: none;
	}
}

/* office
------------------------------------------------*/
.office .wrap_box iframe {
	border: 0;
}
/*
.office table thead th {
	padding: 10px;
	text-align: center;
	word-break: keep-all;
}
.office table thead th.name { width: 30%; }
.office table thead th.address { width: 40%; }
.office table thead th.service { width: 20%; }
.office table thead th.access  { width: 10%; }
.office table tbody th {
	background: #fff;
	border-bottom: solid 1px #ccc;
}
.office table thead th,
.office table td {
	font-size: 0.9em;
}
.office table td.ico,
.office table td.map {
	text-align: center;
}
.office table td.ico .service {
	display: inline-block;
	background: #F7AA04;
	border-radius: 20px;
	margin-bottom: 2px;
	padding: 1px 10px;
	word-break: keep-all;
	color: #fff;
}
.office table td.ico .service + .service {
	margin-left: 5px;
}
.office table td.map a {
	display: inline-block;
	background: #fff;
	border: solid 1px #ccc;
	border-radius: 5px;
	padding: 2px 15px 2px 10px;
	text-decoration: none;
	position: relative;
}
.office table td.map a:hover {
	opacity: 0.8;
}
.office table td.map a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 5px;
	width: 5px;
	height: 5px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -3px 0 0;
}
*/
.office .targetlink li {
    width: 49%;
	margin-bottom: 20px;
}
.office .flex {
	justify-content: space-between;
}
.office .flex:after {
	content: "";
	display: block;
	width: 32%;
}
.office .flex .box {
	position: relative;
	background: #fff;
	width: 49%;
	margin: 25px 0;
	border-radius: 10px;
	border-top-left-radius: 0;
	padding: 0 15px 50px;
	font-size: 14px;
}
.office .flex .box ul {
	display: flex;
	justify-content: center;
	position: absolute;
	top: -25px;
	left: 0;
}
.office .flex .box ul li {
	background: #F7AA04;
	height: 25px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	margin-right: 5px;
	padding: 0 10px;
	font-weight: bold;
	color: #fff;
}
.office .flex .box ul li:last-child {
	margin: 0;
}
.office .flex .box h4 {
	background: #FFE09F;
	border-top-right-radius: 10px;
	margin: 0 -15px 15px;
	padding: 10px 5px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}
.office .flex .box.radius,
.office .flex .box.radius h4 {
	border-top-left-radius: 10px;
}
.office .flex .box dt {
	float: left;
	background: #F7AA04;
	width: 3em;
	border-radius: 20px;
	margin: 0 0 5px;
	text-align: center;
	font-size: 12px;
	color: #fff;
}
.office .flex .box dd {
	margin: 0 0 5px 3.2em;
}
.office .flex .box dd .tel {
	margin: 0 1em 0 0;
}
.office .flex .box .link {
	position: absolute;
	bottom: 15px;
	width: calc(100% - 30px);
	text-align: center;
	font-size: 12px;
}
.office .flex .box .link a {
	display: block;
	background: #fff;
	width: 100px;
	border: solid 1px #ccc;
	border-radius: 5px;
	margin: 0 auto;
	padding: 2px 25px 2px 20px;
	text-decoration: none;
	position: relative;
}
.office .flex .box .link a:hover {
	opacity: 0.8;
}
.office .flex .box .link a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	width: 5px;
	height: 5px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -3px 0 0;
}

@media screen and (max-width:767px) {
	.office .wrap_box {
		padding-top: 130%;
		margin-bottom: 50px;
	}
	/*.office table {
		width: 500px;
	}
	.office table th,
	.office table td {
		padding: 5px;
	}
	.office table thead th {
		text-align: left;
	}
	.office table thead th.name { width: 100px; }
	.office table thead th.address { width: 100px; }
	.office table td.ico {
		text-align: left;
	}
	*/
	.office .targetlink li {
	    width: 100%;
		margin-bottom: 10px;
	}
	.office .flex:after {
		content: none;
	}
	.office .flex .box {
		width: 100%;
	}
	.office .flex .box .link a {
		width: 100%;
	}
}

/* visit-bathing
------------------------------------------------*/
.visit-bathing p {
	margin-bottom: 15px;
}
.visit-bathing .flex {
	justify-content: space-between;
}
.visit-bathing .flex .box {
	background: #fff;
	width: 49%;
	margin: 20px 0 0;
	padding: 0 30px 10px;
}
.visit-bathing .flex .flex-img {
	width: 170px;
}
.visit-bathing .flex .flex-text {
	width: calc(100% - 200px);
}
.visit-bathing .wp-block-gallery ul {
	width: 100%;
}

@media screen and (max-width:767px) {
	.visit-bathing .flex .box {
		margin: 0 0 10px;
	}
	.visit-bathing .flex .box .flex {
		display: block;
	}
	.visit-bathing .flex .flex-img {
		width: 100%;
		margin: 0 auto 10px;
		text-align: center;
	}
	.visit-bathing .flex .flex-text {
		width: 100%;
	}
}
@media screen and (max-width:480px) {
	.visit-bathing .flex .box {
		width: 100%;
	}
}

/* visit-care
------------------------------------------------*/
.visit-care p {
	margin-bottom: 15px;
}
.visit-care .clear {
	clear: both;
}
.visit-care .wp-block-image .alignright {
	margin-top: 0;
}

@media screen and (max-width:767px) {
	.visit-care .wp-block-image .alignlright{
		float: none;
		margin: 10px auto;
	}
}

/* care-management
------------------------------------------------*/
.post.care-management p {
	margin-bottom: 15px;
}
.post.care-management ul {
	list-style: disc;
	padding: 0 0 0 1.5em;
}
.post.care-management ul li {
	margin: 3px 0;
}
.care-management .search-btn a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	width: 600px;
	height: 75px;
	margin: 30px auto 0;
	text-align: center;
	line-height: 75px;
	text-decoration: none;
	font-size: 20px;
	font-weight: bold;
}
.care-management .search-btn a:hover {
	opacity: 0.8;
}
.care-management .search-btn a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 15px;
	width: 20px;
	height: 20px;
  margin-top: -10px;
	background: url(img/icn-search.svg) 20px center;
	background-size: contain;
}
.care-management dl {
	background: #fff;
	margin: 20px 0 0;
	padding: 20px 30px;
}
.care-management .flex {
	justify-content: space-between;
}
.care-management .flex dl {
	width: 49%;
	padding: 0 30px 20px;
}
.care-management .flex dd.clearfix img {
	float: left;
	margin: 0 20px 0 0;
}

@media screen and (max-width: 767px) {
	.care-management .search-btn a {
		width: 100%;
		height: auto;
		padding: 10px 0;
		line-height: normal;
		font-size: 16px;
	}
	.care-management .search-btn a span {
		display: block;
		font-size: 12px;
	}
}
@media screen and (max-width:480px) {
	.care-management .flex dl {
		width: 100%;
	}
}

/* day-service,group-home,short-stay,visit-nursing,food
------------------------------------------------*/
.day-service p,
.group-home p,
.short-stay p,
.visit-nursing p,
.food p {
	margin-bottom: 15px;
}
.body_hospice .flex,
.day-service .flex,
.group-home .flex,
.short-stay .flex,
.visit-nursing .flex,
.food .flex {
	justify-content: space-between;
	margin-bottom: 20px;
}
.body_hospice .flex dl,
.day-service .flex dl,
.group-home .flex dl,
.short-stay .flex dl,
.visit-nursing .flex dl,
.food .flex dl {
	width: 49%;
	background: #fff;
	margin: 20px 0 0;
	padding: 20px 30px;
}
.food .flex .photo {
	width: 49%;
	margin: 20px 0 0;
}
.body_hospice dt,
.day-service dt,
.group-home dt,
.short-stay dt,
.visit-nursing dt,
.food dt {
	margin: 0 0 5px;
	font-size: 18px;
	font-weight: bold;
}
.body_hospice #haruka_features ul,
.post.day-service ul,
.post.group-home ul,
.post.short-stay ul,
.post.visit-nursing ul {
	list-style: disc;
	padding: 0 0 0 1.5em;
}
.post.day-service ul li,
.post.group-home ul li,
.post.short-stay ul li,
.post.visit-nursing ul li {
	margin: 3px 0;
}
.post.day-service .wp-block-gallery ul,
.post.group-home .wp-block-gallery ul,
.post.short-stay .wp-block-gallery ul,
.post.visit-nursing .wp-block-gallery ul {
	padding: 0;
	width: 100%;
}
.post.day-service .wp-block-gallery ul {
	justify-content: center;
}
.post.day-service .wp-block-gallery ul li figure,
.post.day-service .wp-block-gallery ul li figure img {
	width: 150px;
	margin: 0 auto;
}
.food .message {
	margin: 0 0 50px;
	text-align: center;
	line-height: 2;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-size: 1.2em;
}
.food .message .block {
	display: block;
}

@media screen and (max-width: 767px) {
	.body_hospice .flex dl,
	.day-service .flex dl,
	.group-home .flex dl,
	.short-stay dl,
	.visit-nursing .flex dl,
	.food .flex dl {
		width: 100%;
	}
	.food .flex .photo {
		width: 100%;
	}
	.visit-nursing table td.flex {
		display: block;
	}
	.food .message {
		text-align: left;
		letter-spacing: 0;
		font-size: 1.05em;
	}
	.food .message .block {
		display: inline;
	}
}


/* .visit-nursing
------------------------------------------------*/

.visit-nursing .dl_btn a {
	display: block;
	max-width: 500px;
	position: relative;
	background: #F7AA04;
	border-radius: 5px;
	padding: 15px 0;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
}
.visit-nursing .dl_btn a:hover {
	opacity: 0.8;
}

@media screen and (max-width: 767px) {
	.visit-nursing #pamphlet {
		gap: 0;
	}
}


/* .body_hospice
------------------------------------------------*/
.body_hospice .wp-block-gallery {
	margin: 0;
}

.body_hospice .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	margin-top: 1em;
	position: inherit;
	background: none;
	color: #333;
	font-weight: bold;
	font-size: 1em;
	line-height: 1.2;
	text-align: left;
}

.body_hospice .wp-block-gallery.has-nested-images figure.wp-block-image figcaption span {
	margin-top: 1em;
	font-weight: normal;
	font-size: 0.9em;
}

.body_hospice .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) {
	margin-top: 12px;
}
.body_hospice #main .wp-block-gallery img {
	border-radius: 10px;
}
.body_hospice .dl_btn {
	margin-top: 4em;
}

.body_hospice .dl_btn a {
	display: block;
	max-width: 500px;
	position: relative;
	background: #F7AA04;
	border-radius: 5px;
	padding: 15px 0;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
}
.body_hospice .dl_btn a:hover {
	opacity: 0.8;
}

.body_hospice #pamphlet {
	max-width: 800px;
}

.body_hospice .order1 img,
.body_hospice #pamphlet img {
	border-radius: 6px;
}

.body_hospice #pamphlet .wp-block-image {
	margin-bottom: 0;
}

.body_hospice .emphasis {
	font-size: 20px;
}

/* Form */
.body_hospice #form_area {
	margin-top: 2em;
}
.body_hospice #form_area .item {
	margin-bottom: 1em;
}

.body_hospice #form_area .input_area input {
	width: 370px;
	margin-bottom: 8px;
	padding: 8px;
	border: 1px solid #999999;
	box-shadow: 0 1px 1px 0 rgb(0 0 0 / 20%) inset;
	font-size: 108%;
	text-align: left;
	border-radius: 3px;
}

.body_hospice #form_area textarea {
	width: 700px;
	padding: 8px;
	border: 1px solid #999999;
	box-shadow: 0 1px 1px 0 rgb(0 0 0 / 20%) inset;
}

/* 必須  */
.body_hospice #form_area .need {
	margin-left: 0.3em;
	color: #CC0000;
	font-weight: bold;
}
/* 送信 */
.body_hospice #form_area .wpcf7-submit {
    width: 270px;
    height: 42px;
    margin: 1em 0;
    border: none;
    border-radius: 3px;
    background: #F7AA04;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}
.body_hospice #form_area .wpcf7-response-output {
	border-color: #ff0000;
	color: #ff0000;
}


@media screen and (max-width: 767px) {
	.body_hospice .wp-block-gallery.has-nested-images figure.wp-block-image figcaption span br {
		display: none;
	}
	.body_hospice .dl_btn {
		margin-top: 1em;
	}
	.body_hospice #haruka_access {
		gap: 0;
	}

	.body_hospice .order1 {
		order: 1;
		gap: 0;
	}
	.body_hospice .order1 img {
		display: block;
		margin: 0 auto;
	}
	.body_hospice .order2 {
		order: 2;
	}

	.body_hospice #form_area .input_area input,
	.body_hospice #form_area textarea {
		width: 100%;
	}

}




/* visit-dental
------------------------------------------------*/
.visit-dental p {
	margin-bottom: 15px;
}
.visit-dental .flex {
	justify-content: space-between;
}
.visit-dental .flex .box {
	width: 47%;
	background: #fff;
	margin: 0 0 15px;
	padding: 20px 30px;
	position: relative;
}
.visit-dental .flex.flow .box:first-child {
	width: 100%;
}
.visit-dental .flex.flow .box:nth-child(n+2) {
	margin-top: 40px;
	position: relative;
}
.visit-dental .flex.flow .box:nth-child(n+2)::before,
.visit-dental .flex.flow .box:last-child::after {
	content: "";
	position: absolute;
	top: -35px;
	left: 50%;
	margin-left: -15px;
	display: block;
	width: 30px;
	height: 30px;
	border-left: solid 15px #F7AA04;
	border-top: solid 15px transparent;
	border-bottom: solid 15px transparent;
	transform: rotate(90deg);
}
.visit-dental .flex.flow .box:last-child::after {
	top: 50%;
	left: -55px;
	margin-top: -15px;
	margin-left: 0;
	transform: rotate(180deg);
}
.visit-dental .flex.price .box:first-child::after{
	content: "+";
	position: absolute;
	top: 50%;
	right: -10%;
	margin-top: -25px;
	line-height: 1;
	font-weight: bold;
	font-size: 50px;
	color: #F7AA04;
}
.visit-dental .flex .box h3 {
	margin-top: 0;
}
.visit-dental .flex .box h4 {
	background: #FFE09F;
	margin: 0 0 15px;
	padding: 5px 10px;
	font-weight: bold;
}
.visit-dental .flex.price .box dl dt {
	margin-right: 1em;
	font-weight: bold;
}
.visit-dental .flex.price .box dl dd {
	margin: 0 0 10px;
}

@media screen and (max-width: 767px) {
	.visit-dental .flex.flow .box {
		padding: 15px;
	}
	.visit-dental .flex.flow .box:last-child::after {
		left: -22%;
	}
	.visit-dental .flex.price .box {
		width: 100%;
	}
	.visit-dental .flex.price .box:first-child {
		margin-bottom: 50px;
	}
	.visit-dental .flex.price .box:first-child::after{
		top: auto;
		right: 50%;
		bottom: -45px;
		margin: 0 -25px 0 0;
	}
}

/* tool
------------------------------------------------*/
.tool .flex {
	justify-content: space-between;
}
.tool .flex.flex-start {
	justify-content: flex-start;
}
.tool ul.slogan li {
	margin-bottom: 15px;
	font-size: 1.2em;
}
.tool ul.slogan li span {
	background: #F7AA04;
	border-radius: 50%;
	margin: 0 10px 0 0;
	padding: 10px;
	line-height: 1;
	font-weight: bold;
	color: #fff;
}
.tool .flow li {
	background: #fff;
	width: 31%;
	padding: 10px 10px 10px;
	position: relative;
	text-align: center;
}
.tool .flow li strong {
	display: block;
	background: #F7AA04;
	margin: 0 0 10px;
	padding: 10px;
	text-align: center;
	font-size: 1.1em;
	color: #fff;
}
.tool .flow li::after {
	content: "";
	display: inline-block;
	position: absolute;
	right: -6%;
	top: 50%;
	width: 10px;
	height: 10px;
	border-left: solid 2px #ccc;
	border-bottom: solid 2px #ccc;
	transform: rotate(-135deg);
}
.tool .flow li:last-child::after {
	content: none;
}
.tool .flex.flex-start ol {
	margin-right: 50px;
}
.tool .flex .box {
	width: 50%;
}
.tool ol li {
	margin-bottom: 5px;
}
.tool ol li .num {
	background: #F7AA04;
	border-radius: 50%;
	display: inline-block;
	margin: 0 10px 0 0;
	padding: 4px 0;
	width: 1.5em;
	height: 1.5em;
	box-sizing: border-box;
	line-height: 1;
	text-align: center;
	font-size: 0.9em;
	color: #fff;
}
.tool .wp-block-gallery ul li {
	margin: 2px 1px;
}

@media screen and (max-width: 767px) {
	.tool .flex .box {
		width: 100%;
	}
	.tool ul.slogan li {
		font-size: 1em;
	}
	.tool ul.slogan li span {
		padding: 5px;
	}
	.tool .flow li {
		width: 100%;
		margin: 0 0 20px;
	}
	.tool .flow li::after {
		right: 50%;
		top: auto;
		bottom: -12px;
		margin-right: -5px;
		transform: rotate(-45deg);
	}
}

/* composite-type,small-multifunction
------------------------------------------------*/
.post.composite-type ul,
.post.small-multifunction ul {
	list-style-type: disc;
	padding-left: 20px;
	margin-bottom: 15px;
}
.post.composite-type .wp-block-gallery ul,
.post.small-multifunction .wp-block-gallery ul {
	width: 100%;
	padding: 0;
}

/* contact
------------------------------------------------*/
.contact .mw_wp_form dt {
	position: relative;
	float: left;
	width: 240px;
	padding: 25px 0 25px 40px;
	box-sizing: border-box;
	font-weight: bold;
}
.contact .mw_wp_form dt.required:before {
	content: "必須";
	display: block;
	position: absolute;
	top: 27px;
	left: 0;
	background: #bc5c5c;
	padding: 2px;
	font-size: 12px;
	color: #fff;
}
.contact .mw_wp_form dd {
	border-bottom: 1px solid #ccc;
	margin: 0;
	padding: 25px 0 25px 240px;
	text-align: left;
}
.contact .mw_wp_form input,
.contact .mw_wp_form textarea {
	border: 1px solid #ccc;
	padding: 5px;
	font-size: 16px;
}
.contact .mw_wp_form .maxSize {
	width: 100%;
}
.contact .mw_wp_form dl + p {
	margin-top: 20px;
}
.contact .mw_wp_form .submitButton {
	text-align: center;
}
.contact .mw_wp_form .submitButton input {
	background: #F7AA04;
	border: 1px solid #F7AA04;
	border-radius: 5px;
	margin: 0;
	padding: 10px 30px;
	font-weight: bold;
	color: #fff;
}
.contact .mw_wp_form .submitButton input.return {
	background: #aaa;
	border: 1px solid #aaa;
	padding: 10px 20px;
	margin: 0 0 0 20px;
	color: #fff;
}

@media screen and (max-width:767px) {
	.contact .mw_wp_form {
		width: 100%;
	}
	.contact .mw_wp_form dt {
		float: none;
		width: auto;
		padding: 15px 0 10px;
	}
	.contact .mw_wp_form dt.required {
		padding-left: 40px;
	}
	.contact .mw_wp_form dt.required:before {
		top: 14px;
	}
	.contact .mw_wp_form dd {
		min-height: inherit;
		padding: 0 0 15px;
	}
}

/* site-map
------------------------------------------------*/
.site-map p {
	margin-bottom: 30px;
}
.site-map ul {
	border-top: 1px solid #ccc;
}
.site-map ul li {
	border-bottom: 1px solid #ccc;
	margin: 10px 0;
	padding: 0 0 10px;
}
.site-map ul li a {
	position: relative;
	padding: 0 0 0 20px;
}
.site-map ul li a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 7px;
	height: 7px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -4px 0 0;
}
.site-map ul li ul {
	border: 0;
	margin: 0 0 0 20px;
}
.site-map ul li ul li {
	border: 0;
	padding: 0;
}

/* recruit
------------------------------------------------*/
.body_recruit #main .inner {
    width: 100%;
    padding: 0 5%;
}
.body_recruit #main .flex {
	justify-content: space-around;
}
.body_recruit #main .flex li {
	width: 49%;
	box-sizing: border-box;
	margin-bottom: 25px;
	padding: 0 10px;
}
.body_recruit #main .flex li a {
	display: block;
	background: #fff;
	border-radius: 10px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	font-size: 18px;
	color: #555;
	position: relative;
}
.body_hospice #form_area .wpcf7-submit:hover,
.body_recruit #main .flex li a:hover {
	opacity: 0.8;
}
.body_recruit #main .flex li a span {
	display: block;
	padding: 15px 0;
	position: relative;
}
.body_recruit #main .flex li a span::after {
	content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  width: 7px;
  height: 7px;
  border-left: solid 1px #555;
  border-top: solid 1px #555;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  margin: -4px 0 0;
}
.body_recruit #main .flex li a img {
    border-radius: 0;
}

	/* 求人を探す  */
	.body_recruit #main #btn_li_recruit_l a,
	.body_recruit #main #btn_li_recruit a {
		background-color: #F7AA04;
	}
	.body_recruit #btn_li_recruit_l span,
	.body_recruit #btn_li_recruit span {
		color: #fff;
	}
	.body_recruit #main #btn_li_recruit_l span::after,
	.body_recruit #main #btn_li_recruit span::after {
		border-left: solid 1px #fff;
		border-top: solid 1px #fff;
	}

@media screen and (max-width:767px) {
	.body_recruit #main .inner {
        padding: 0 20px;
    }
	.body_recruit #main .flex li {
		width: 100%;
		margin: 0 0 5px;
		padding: 0;
	}
	.body_recruit #main .flex li a {
		display: flex;
		align-items: center;
		font-size: 14px;
	}
	.body_recruit #main .flex li a img {
        margin: 0;
		width: 100px;
		height: auto;
	}
	.body_recruit #main .flex li a span {
		text-align: left;
		width: calc( 100% - 100px );
		box-sizing: border-box;
		padding: 15px;
	}
	/* 求人を探す  */
	.body_recruit #main #btn_li_recruit {
		margin-bottom: 1.2em;
	}
	.body_recruit #btn_li_recruit_l span,
	.body_recruit #btn_li_recruit span {
		font-size:1.4em;
	}

}

/* data
------------------------------------------------*/
.data h3 {
	margin: 0 0 20px;
	text-align: center;
	line-height: 1;
	font-weight: bold;
	font-size: 24px;
	color: #F7AA04;
}
.data .flex {
	justify-content: space-between;
}
.data .box {
	background: #fff;
	margin: 0 0 20px;
	padding: 40px;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}
.data .flex .box {
	width: 49%;
}
 .data .box.number {
	 padding-left: 0;
	 padding-right: 0;
 }
 .data .box.years {
	padding-left: 0;
 }
.data .box.gender img {
	max-width: 80%;
	margin-left: 10%;
}
.data .box.age img {
	max-width: 80%;
}
.data .note {
	margin: 0;
	text-align: right;
	font-size: 13px;
	color: #888;
}
.data .box .note {
	position: absolute;
	bottom: 20px;
	right: 20px;
}
.data .licence .flex {
	justify-content: space-around;
}
.data .licence .flex li {
	width: 21%;
	margin: 30px 0 0;
}
.data .licence .flex li strong {
	display: block;
	margin: 0 0 20px;
	text-align: center;
	line-height: 1;
	font-weight: bold;
	font-size: 18px;
	color: #F7AA04;
}
.data .flex.column-3 .box {
	width: 30%;
}
.data .flex.column-3 .box.age {
	width: 31%;
}
.data .flex.column-3 .box.years {
	width: 35%;
}
.data .flex.column-3 .box.age img {
	margin-top: 50px;
}
.data .box.leaving img {
	max-width: 600px;
}
.data .link {
	margin-top: 25px;
}
.data .link a {
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px 20px;
	text-decoration: none;
}
.data .link a:hover {
	opacity: 0.8;
}
@media screen and (max-width:767px) {
	.data h3 {
		margin: 0 0 15px;
		font-size: 20px;
	}
	.data .box {
		margin: 0 0 15px;
		padding: 20px;
	}
	.data .flex .box {
		width: 100%;
	}
	.data .box .note {
		position: relative;
		bottom: -10px;
		right: -10px;
	}
	.data .box.number .note,
	.data .box.leaving .note {
		right: 10px;
	}
	.data .licence .flex {
		justify-content: space-between;
	}
	.data .licence .flex li {
		width: 45%;
	}
	.data .licence .flex li strong {
		margin: 0 0 15px;
		font-size: 16px;
	}
	.data .flex.column-3 .box,
	.data .flex.column-3 .box.age  {
		width: 48%;
	}
	.data .flex.column-3 .box.years {
		width: 100%;
	}
	.data .flex.column-3 .box.age img {
		margin-top: 30px;
	}
	.data .box.leaving {
		padding-left: 10px;
		padding-right: 0;
	}
}

/* message
------------------------------------------------*/
.message .flex {
	justify-content: space-between;
}
.message .flex .box {
	width: 32%;
}
.message .flex .box a {
	display: block;
	background: #fff;
	text-decoration: none;
	color: #333;
}
.message .flex .box a:hover {
	opacity: 0.8;
}
.message .flex .box a p.comment {
	border-left: solid 4px #F7AA04;
	border-bottom: solid 1px #eee;
	padding: 15px;
}
.message .flex .box a p.name,
.message .flex .box a p.date {
	margin: 15px 20px 0;
}
.message .flex .box a p.name {
	line-height: 1;
	font-size: 20px;
}
.message .flex .box a p.date {
	font-size: 0.8em;
}
.message .flex .box a p:last-child {
	margin-bottom: 15px;
}

@media screen and (max-width:767px) {
	.message .flex .box {
		width: 100%;
		margin-bottom: 15px;
	}
}

/* job
------------------------------------------------*/
.job h2 span {
	display: block;
	font-weight: normal;
	font-size: 0.7em;
}
.job p {
	margin: 15px 0 0;
}
.job .search-btn a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	width: 80%;
	height: 55px;
	margin: 20px auto 0;
	text-align: center;
	line-height: 55px;
	text-decoration: none;
	font-weight: bold;
}
.job .search-btn a:hover {
	opacity: 0.8;
}
.job .search-btn a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 15px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url(img/icn-search.svg) 20px center;
	background-size: contain;
}
.job ul.search-btn {
	display: flex;
	justify-content: space-between;
}
.job ul.search-btn li {
	width: 49%;
}
.job ul.search-btn li a {
	width: 100%;
	padding: 10px 0;
	height: auto;
	line-height: 1.4;
}
.job ul.search-btn li a span {
	display: block;
}

.job .targetlink li {
	width: 49%;
}



@media screen and (max-width: 767px) {
	.flex.half .headline02:first-child {
		margin-top: 20px;
	}
	.job .search-btn a {
		width: 100%;
		height: auto;
		margin-top: 10px;
		padding: 10px 0;
		line-height: normal;
		font-size: 15px;
	}
	.job ul.search-btn li a {
		padding-left: 20px;
	}
	.job .search-btn a::before {
		left: 10px;
	}
	.job .search-btn a span {
		display: block;
		font-size: 12px;
	}
}
@media screen and (max-width: 400px) {
	.job ul.search-btn {
		display: block;
	}
	.job ul.search-btn li {
		width: 100%;
	}
}

/* education,welfare
------------------------------------------------*/
.education p,
.welfare p {
	margin-bottom: 15px;
}
.education .flex,
.welfare .flex {
	justify-content: space-between;
}
.education .flex + .flex,
.education .flex + .flex {
	margin-top: 30px;
}
.education .flex .box,
.welfare .flex .box {
	background: #fff;
	width: 32%;
	padding: 0 30px 30px;
}
.welfare .flex .box {
	width: 49%;
	margin-top: 20px;
}
.education .flex .box dl dt,
.welfare .flex .box dl dt {
	border-top: solid 1px #ccc;
	margin: 15px 0 5px;
	padding: 10px 0 0;
	font-weight: bold;
}
.education .flex .box dl dd,
.welfare .flex .box dl dd {
	font-size: 0.9em;
}
.welfare .flex .box dl dd ul {
	list-style: disc;
	padding-left: 20px;
}
.welfare .flex .box a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	margin: 15px auto 0;
	padding: 15px 20px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
}
.welfare .flex .box a:hover {
	opacity: 0.8;
}
.welfare .flex .box a::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	width: 7px;
	height: 7px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -4px 0 0;
}
.welfare .flex .box .badge strong {
	display: inline-block;
	background: #D93023;
	margin: 0 0 15px;
	padding: 0 10px;
	font-weight: bold;
	font-size: 15px;
	color: #fff;
}
.welfare .flex .box h3 .note {
	font-weight: normal;
	font-size: 0.7em;
	color: #888;
}
.welfare .wp-block-gallery ul {
	padding: 0;
	width: 100%;
}


@media screen and (max-width: 767px) {
	.education .flex .box,
	.welfare .flex .box {
		width: 100%;
		margin-bottom: 20px;
	}
}

/* application
------------------------------------------------*/
.application .search-btn.flex {
	justify-content: space-between;
	margin-bottom: 50px;
}
.application .search-btn.flex li {
	width: 48%;
	margin: 0 0 10px;
}
.application .search-btn.flex li:last-child {
	margin: 0  auto;
}
.application .search-btn a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 75px;
	margin: 20px auto 0;
	text-align: center;
	line-height: 75px;
	text-decoration: none;
	font-weight: bold;
	font-size: 20px;
}
.application .search-btn a:hover {
	opacity: 0.8;
}
.application .search-btn a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 15px;
	width: 20px;
	height: 20px;
  margin-top: -10px;
	background: url(img/icn-search.svg) 20px center;
	background-size: contain;
}
.application .wp-block-gallery ul {
	padding: 0;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.application .search-btn.flex li {
		width: 100%;
	}
	.application .search-btn a {
		height: auto;
		margin-top: 10px;
		padding: 10px 0;
		line-height: normal;
		font-size: 16px;
	}
	.application .search-btn a span {
		margin-left: 5px;
		font-size: 12px;
	}
}

/* link
------------------------------------------------*/
.link ul {
	display: flex;
	flex-wrap: wrap;
}
.link ul li {
	width: calc(100% / 3);
	margin: 10px 0;
	padding: 0 1em 0 15px;
}
.link ul li a {
	position: relative;
}
.link ul li a:after {
	content: '';
	position: absolute;
	top: 50%;
	left: -15px;
	width: 7px;
	height: 7px;
	border-left: solid 1px #555;
	border-top: solid 1px #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -4px 0 0;
}

@media screen and (max-width: 767px) {
	.link ul li {
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.link ul li {
		margin: 5px 0;
		width: 100%;
	}
}

/* privacy
------------------------------------------------*/
.privacy p {
	margin-bottom: 15px;
}
.privacy p.align-right {
	font-size: 12px;
}
.privacy ol {
	list-style: decimal;
	margin: 15px 0;
	padding: 0 0 0 2em;
}
.privacy ol li {
	margin: 10px 0;
}
.privacy ol li ol {
	margin: 0;
	padding: 0 0 0 1.5em;
}
.privacy table {
	width: 100%;
	margin: 15px 0;
}
.privacy table th {
	width: 260px;
}
.privacy table td ul {
	list-style: disc;
	padding: 0 0 0 1.5em;
}
.privacy .box-w {
	background: #fff;
	margin: 30px 0 0;
	padding: 30px 30px 20px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.privacy table th {
		width: auto;
	}
	.privacy .box-w {
		padding: 20px 20px 10px;
		text-align: left;
	}
}
