@charset "utf-8";

/* -----------------------------------------------------------
   ft-links-area
-------------------------------------------------------------- */
#kyotakusien .ft-links-area .ft-links-kyotakusien,
#kyotakusien .ft-links-area .ft-links-recruit{
	display: none;
}

/*common.cssへ移動させる*/
#kyotakusien .underttl-img {
	background-image: url("../img/underttl-img-kyotakusien.jpg");
	background-size: 101%;
}
@media screen and (max-width: 768px) {
	#kyotakusien .underttl-img {
		background-position: center;
	}
}

/* -----------------------------------------------------------
   feature-area
-------------------------------------------------------------- */
.feature-area {
	margin: 110px 0 0;
}

/*特徴 イラストエリア feature-detail-box*/
.feature-detail-box {
	background: url("../img/top-strengths-bg.jpg")center bottom 20px/100% auto no-repeat;
	padding: 0 0 85px;
	margin: 40px 0 0;
}

.feature-detail-box .inner {
	display: flex;
	justify-content: space-between;
}

.feature-detail-box .inner.re {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}

.feature-detail-box .txt-wrap {
	/*width: 50%;*/
	/*margin: 80px 0 0;*/
	margin: 0 0 0;
}

.feature-detail-box .section-underttl {
	margin-bottom: 40px;
}

.feature-detail-box .section-underttl .ja {
	align-items: flex-start;
}

.feature-detail-box p {
	letter-spacing: .08em;
	line-height: 2.4;
}

.feature-detail-box p.feature-catch {
	color: #1d170a;
    font: 700 4rem / 1.475 var(--zen);
    letter-spacing: .1em;
    margin: 25px 0 0 0;
}

.feature-detail-box p.style2 {
	margin: 30px 0 0;
}


/*特徴 feature01～04*/
.feature-area .feature-list {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
}

.feature-area .feature-list li {
	width: calc((100% - 60px)/2);
	border-radius: 20px;
	overflow: hidden;
	background-color: #eef4fc;
}

.feature-area .txt-wrap {
	padding: 20px 25px 30px;
	position: relative;
}

.feature-area .list-num {
	display: inline-block;
	color: var(--aqua);
	font: 600 2.0rem / 1 var(--en);
	letter-spacing: 0.05em;
	padding: 9px 25px 0;
	border-radius: 15px 15px 0 0;
	background-color: #eef4fc;
	position: absolute;
	top: -35px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin: 0 auto;
}

.feature-area .list-num span {
	font-size: 2.6rem;
}

.feature-area .list-ttl {
	font-size: 2.9rem;
	font-weight: 700;
	color: var(--mainc);
	line-height: 1.5;
	letter-spacing: .03em;
	text-align: center;
	margin: 0 0 20px;
}

.feature-area p {
	letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {

	.feature-area {
		margin: 50px 0 0;
	}
	
	/*特徴 イラストエリア feature-detail-box*/
	.feature-detail-box {
		background: url("../img/top-strengths-bg-sp.jpg")center bottom/100% auto no-repeat;
		padding: 0 0 18vw;
		margin: 0 0 0;
		position: relative;
		z-index: 2;
	}

	.feature-detail-box .inner {
		flex-direction: column;
	}

	.feature-detail-box .txt-wrap {
		width: 100%;
		margin: 0;
	}
	
	.feature-detail-box .section-underttl {
		margin-bottom: 20px;
	}

	.feature-detail-box .section-underttl .ja {
		align-items: center;
		text-align: center;
		line-height: 1.5;
		letter-spacing: .07em;
	}
	
	.feature-detail-box .section-underttl .ja .deco {
		top: -5px;
	}
	
	.feature-detail-box p.feature-catch {
		font-size: 2.7rem;
        line-height: 1.55;
        letter-spacing: .05em;
        margin: 0 0 0;
	}
	
	.feature-detail-box p.style2 {
		margin: 20px 0 0;
	}
	
	.feature-area .feature-detail-box .txt-wrap {
		padding: 15px 0 20px;
	  }

	/*特徴 feature01～04*/
	.feature-area .feature-list {
		width: 100%;
		padding: 0 20px;
		flex-direction: column;
		gap: 30px;
		margin-top: 0;
	}

	.feature-area .feature-list li {
		width: 100%;
		border-radius: 20px;
	}

	.feature-area .txt-wrap {
		padding: 15px 20px 20px;
	}

	.feature-area .list-num {
		font: 600 2.0rem / 1 var(--en);
		padding: 7px 20px 0;
		border-radius: 15px 15px 0 0;
		top: -32px;
	}

	.feature-area .list-num span {
		font-size: 2.5rem;
	}

	.feature-area .list-ttl {
		font-size: 2.1rem;
		margin: 0 0 15px;
	}
}

/* -----------------------------------------------------------
loadmap-area
-------------------------------------------------------------- */
/*top-cmn-blue-list--------------------------*/
.top-cmn-blue-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.top-cmn-blue-list.style2 {
	flex-direction: row;
	flex-wrap: wrap;
}

.top-cmn-blue-list.row {
	flex-wrap: wrap;
	flex-direction: row;
	gap: 20px 35px;
}

.top-cmn-blue-list li {
	padding: 0 0 0 15px;
	position: relative;
	letter-spacing: .07em;
}

.map-wrap .top-cmn-blue-list li:first-child {
	margin-top: 0;
}

.top-cmn-blue-list li::before {
	content: "";
	background: var(--aqua);
	border-radius: 50%;
	width: 5px;
	height: 5px;
	left: 0;
	position: absolute;
}

.map-wrap .top-cmn-blue-list.no-dot li {
	padding: 0 0 0;
}
.top-cmn-blue-list.no-dot li::before {
	display: none;
}

@media screen and (max-width: 768px) {

	/*top-cmn-ttl--------------------------*/
	.top-cmn-ttl {
		font-size: 1.7rem;
	}

	.top-cmn-ttl .deco {
		width: 15px;
		margin: 0 0 5px;
	}

	.top-cmn-ttl .deco::before, .top-cmn-ttl .deco::after {
		width: 6px;
		height: 6px;
	}

	/*top-cmn-ttl2--------------------------*/
	.top-cmn-ttl2 {
		font-size: 2.7rem;
		letter-spacing: .03em;
	}

	/*top-cmn-catch--------------------------*/
	.top-cmn-catch {
		font-size: 2.7rem;
		line-height: 1.55;
		letter-spacing: .05em;
		margin: 20px 0 0;
	}

	/*top-cmn-blue-list--------------------------*/
	.top-cmn-blue-list li {
		padding: 0 0 0 12px;
	}
}

/*----- 左側-----------------------------------*/
.loadmap-area {
	margin: 120px 0 0;
}

.loadmap-area .section-underttl .ja {
	text-align: center;
}

.loadmap-area #loadmap {
	position: relative;
	margin-top: 50px;
}

#loadmap .map-for {
	position: absolute;
	left: auto;
	top: 85px;
	transition: .3s;
	z-index: 5;
	width: 220px;
}

#loadmap .map-for-ttl {
	border-bottom: 1px solid var(--mainc);
	color: var(--mainc);
	font: 600 2.3rem / 1 var(--en);
	letter-spacing: .1em;
	padding: 0 0 10px;
	margin: 0 0 10px;
}

#loadmap .map-for.follow-fix {
	position: fixed;
	top: 150px;
	left: auto;
}

#loadmap .map-for-txt {
	align-items: center;
	color: #b3c1d4;
	display: flex;
	font-size: 1.6rem;
	width: 100%;
	height: 50px;
}

#loadmap .bar {
	border-radius: 50%;
	width: 8px;
	height: 8px;
	background: transparent;
	display: inline-block;
	margin: 0 8px 0 0;
}

#loadmap .nav-active .bar {
	background: var(--mainc);
}

#loadmap .map-for-txt:hover {
	font-weight: bold !important;
}

#loadmap .map-for-txt.nav-active {
	color: var(--mainc);
	font-weight: bold !important;
	font-size: 2rem;
}

#loadmap .is-follow.follow-fix {
	position: fixed;
	top: 150px;
	left: auto;
}

#loadmap .map-for.follow-fade {
  position: absolute; /* fixedから解除 */
  top: auto;
}

/*----- 右側共通-----------------------------------*/
.map-wrap {
	width: 900px;
	margin: 0 0 0 auto;
}

#loadmap .anchor {
	margin-bottom:90px;
}

.map-wrap .map-header {
	margin: 90px 0 10px 290px;
	padding: 0 0 0 5px;
	border-bottom: 5px solid #215f45;
}

.map-wrap .map-header-txt {
	align-items: center;
	background: var(--mainc);
	border-radius: 60px;
	font-size: 2.5rem;
	flex-wrap: wrap;
	color: #fff;
	display: flex;
	font-weight: bold;
	line-height: 1;
	letter-spacing: .05em;
	padding: 15px 20px 20px 67px;
	position: relative;
	margin: 0 0 23px;
}

.map-wrap .map-header-txt::before {
	content: "";
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	transition: .5s;
	left: 20px;
	width: 38px;
	height: 37px;
}

.map-wrap .map-contents {
	padding: 0 20px;
}

.map-cmn-txt {
	letter-spacing: .07em;
}

/*map-cmn-list-----------------------------------*/
.map-wrap .map-cmn-list {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.map-wrap .map-cmn-item {
	border: 1px solid #534d41;
	padding: 7px 10px 9px;
	line-height: 1.75;
	letter-spacing: .07em;
}

/*top-cmn-blue-list------------------------------*/
.map-wrap .top-cmn-blue-list li {
	line-height: 1.47;
}

.map-wrap .top-cmn-blue-list li::before {
	top: 12px;
}

/*top-cmn-blue-box------------------------------*/
.map-wrap .top-cmn-blue-box {
	align-items: center;
	background: var(--aquabg);
	border-radius: 5px;
	display: flex;
	gap: 20px;
	padding: 23px 20px 27px;
}

.map-wrap .top-cmn-blue-box .box-ttl {
	color: var(--aqua);
	font-size: 2rem;
	font-weight: bold;
	flex-shrink: 0;
}

/*service-cmn-linettl------------------------------*/
.map-wrap .service-cmn-linettl {
	align-items: center;
	display: flex;
	color: var(--aqua);
	font-size: 2rem;
	font-weight: bold;
	gap: 10px;
	letter-spacing: .07em;
	white-space: nowrap;
}

.map-wrap .service-cmn-linettl::after {
	content: "";
	border-bottom: dotted 3px var(--aqua);
	height: 1px;
	width: 100%;
}

/*- kyotakusien-area-----------------------------------*/
#kyotakusien-area .map-header-txt::before {
	background-image: url("../img/nurse-map-icon2.svg")
}

#kyotakusien-area .map-cmn-item span {
	font-size: 1.6rem;
}

#kyotakusien-area .service-cmn-linettl {
	margin: 25px 0;
}

/*- kyotakusien-apply-----------------------------------*/
#kyotakusien-apply .map-header-txt::before {
	background-image: url("../img/nurse-map-icon3.svg")
}

#kyotakusien-apply .top-cmn-blue-box {
	margin-top: 25px;
}

/*- kyotakusien-contact-----------------------------------*/
#kyotakusien-contact .map-header-txt::before {
	background-image: url("../img/nurse-map-icon4.svg")
}

#kyotakusien-contact .top-cmn-blue-list {
	margin-top: 30px;
}

/*- kyotakusien-service-----------------------------------*/
#kyotakusien-service .map-header-txt::before {
	background-image: url("../img/nurse-map-icon5.svg")
}

#kyotakusien-service .service-item {
	margin: 40px 0 0;
}

#kyotakusien-service .service-item .img {
	float: left;
	width: 290px;
	height: 180px;
}

#kyotakusien-service .service-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#kyotakusien-service .service-item .subttl {
	color: var(--aqua);
	border-bottom: 2px dotted var(--aqua);
	float: right;
	font-size: 2.3rem;
	font-weight: bold;
	width: 550px;
	letter-spacing: .03em;
	padding: 0 0 10px;
	margin: 10px 0 18px;
}

#kyotakusien-service .service-item .top-cmn-blue-list {
	float: right;
	width: 550px;
	gap: 15px;
}

#kyotakusien-service .service-item .top-cmn-blue-list.row {
	gap: 15px 35px;
}

.service-management .map-cmn-txt {
	float: right;
	width: 550px;
	line-height: 1.6;
	margin: 0 0 15px;
}

.service-management .map-cmn-txt.txt-height {
	line-height: 2.1;
}

#kyotakusien-service .service-management.service-item .top-cmn-blue-list.row {
	gap: 10px 35px;
}

#kyotakusien-service .service-management.service-item .subttl {
	margin: 0 0 10px;
}

/*- kyotakusien-flow-----------------------------------*/
#kyotakusien-flow {
	position: relative;
}
#kyotakusien-flow .map-header-txt::before {
	background-image: url("../img/nurse-map-icon6.svg")
}

#kyotakusien-flow p[class^="gray"] {
	align-items: center;
	background: #eee;
	border-radius: 5px;
	display: flex;
	font-size: 1.8rem;
	font-weight: bold;
	justify-content: center;
	padding: 20px;
	margin: 0 0 20px;
	letter-spacing: .07em;
	position: relative;
	width: 100%;
}

#kyotakusien-flow div[class^="white"] {
	align-items: center;
	background: #fff;
	border-radius: 5px;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	justify-content: center;
	padding: 20px;
	margin: 0 0 35px;
	letter-spacing: .07em;
	position: relative;
}

.flow-purple {
	background: #e9ecf8 !important;
}

.flow-blue {
	background: #e4edf9 !important;
}

/*
#kyotakusien-flow .gray-care {
	width: 475px;
}

#kyotakusien-flow .gray-medi {
	width: 350px;
}

#kyotakusien-flow .gray-row {
	display: flex;
	justify-content: space-between;
	gap: 25px;
}
*/

#kyotakusien-flow p[class^="gray"] i {
	margin: 0 0 0 8px;
}

#kyotakusien-flow div[class^="white"] i {
	margin: 0 0 0 8px;
}

#kyotakusien-flow .fa-circle {
	font-size: 2.3rem;
	color: #dd4356;
}

#kyotakusien-flow .fa-times {
	font-size: 2.6rem;
}

#kyotakusien-flow .gray .logo {
	width: 59px;
	margin: 0 10px 0 0;
}

#kyotakusien-flow .white .logo {
	width: 59px;
	margin: 0 10px 0 0;
}

#kyotakusien-flow .white .white-txt {
	/*width: calc( 100% - 69px );*/
	line-height: 1.5;
}

#kyotakusien-flow .white .line-txt {
	width: 100%;
	margin: 10px 0 0 0;
	padding: 10px 0 0 0;
	border-top: 2px dotted var(--aqua);
	text-align: center;
	line-height: 1.5;
}

#kyotakusien-flow .white .tel-txt {
	padding: 10px 0 0 0;
	line-height: 1.5;
}

/*insurance-wrap*/
.insurance-wrap {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	position: relative;
	justify-content: space-between;
	margin: 144px 0 90px 0;
}

.insurance-wrap div[class^="insurance-head"] {
	border-radius: 5px;
	flex-shrink: 0;
	/*padding: 25px 20px;*/
	padding: 0 0 0;
}

.insurance-wrap .flow-wrap {
	padding: 0 20px 25px;
}

.insurance-subttl {
	font-size: 2.2rem;
	font-weight: bold;
	letter-spacing: .07em;
	text-align: center;
	margin: 0 0 20px;
	padding: 15px 10px;
	border-radius: 5px 5px 0px 0px;
}

.flow-title {
	position: relative;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	margin: 0 0 35px;
	padding: 0 0 5px;
}

.service-flow-contents .arrow-normal {
	position: relative;
}

.service-flow-contents .arrow-normal .arrow {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.service-flow-contents .arrow {
	position: absolute;
	z-index: 2;
}

.service-flow-contents .arrow-h30 {
	bottom: -35px;
}

.service-flow-contents .arrow span {
	position: relative;
    display: block;
}

.service-flow-contents .arrow span::before, .service-flow-contents .arrow span::after {
	content: "";
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.service-flow-contents .arrow span::before {
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	border-top: 17px solid #534d41;
	border-bottom: 0;
	bottom: 0;
}

.service-flow-contents .arrow span::after {
	background: #534d41;
	width: 4px;
	bottom: 5px;
}

.service-flow-contents .arrow-h25 span::after {
	height: 25px;
}

.service-flow-contents .arrow-h30 span::after {
	height: 30px;
}

.service-flow-contents .arrow-row.gray .arrow1 {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.service-flow-contents .arrow-row1 .arrow1 {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.service-flow-contents .arrow-row3 .arrow1 {
	left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.service-flow-contents .arrow-row.gray .arrow2 {
	right: 204px;
}

.service-flow-contents .arrow-row2 .arrow1 {
	left: 198px;
}

.service-flow-contents .arrow-row2 .arrow2 {
	right: 198px;
}

.service-flow-contents .arrow-row3 {
	position: relative;
	height: 40px;
	width: 100%;
}

.service-flow-contents .arrow-row3 .arrow {
	bottom: 0;
}

.service-flow-contents .arrow-row3 .arrow1 {
	left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.service-flow-contents .arrow-row3 .arrow2 {
	right: 177px;
}

.insurance-wrap div[class^="insurance-item"] {
	position: relative;
	border-radius: 5px;
}

.insurance-wrap div[class^="insurance-item"] .subttl {
	font-size: 1.9rem;
	font-weight: bold;
	letter-spacing: .07em;
	line-height: 1.315;
	text-align: center;
	padding: 0 0 10px;
	margin: 0 0 15px;
}

.insurance-wrap div[class^="insurance-item"] .subttl span {
	display: block;
	font-size: 1.7rem;
}

.insurance-wrap .underline {
	background-repeat: no-repeat;
	background-position: 100% 100%;
	background-size: 200% 8px;
}

.insurance-wrap .note {
	line-height: 1.76;
	text-align: center;
}

/*介護保険--------------------------------------*/
.insurance-head-care {
	background: #dce2f9;
	/*width: 411px;*/
	width: 100%;
}

.insurance-head-care .insurance-subttl {
	/*color: #5169cc;*/
	color: #fff;
	background: #5169cc;
}

.insurance-head-care .flow-title {
	color: #5169cc;
}

.insurance-item-care {
	background: #fff;
	padding: 30px 10px;
	margin: 0 0 35px;
}

.insurance-item-care.match {
	min-height: 170px;
}

.insurance-list-w50 {
	display: flex;
	justify-content: space-between;
}

.insurance-list-w50 div[class^="insurance-list"] {
	flex-shrink: 0;
	width: calc((100% - 20px) / 2);
}

.insurance-item-care .subttl {
	border-bottom: 2px dotted #5069cd;
	color: #5069cd;
}

.insurance-care-cap {
	text-indent: -1em;
	margin-left: 1em;
	line-height: 1.76;
}

.insurance-head-care .underline {
	background-image: linear-gradient(to right, #d8e0ff 0%, #d8e0ff 100%, transparent 100%);
}

.insurance-head-care .insurance-care-cap .underline {
	background-image: linear-gradient(to right, #bac7fa 0%, #bac7fa 100%, transparent 100%);
}

.insurance-head-care .top-cmn-blue-list {
	border: 1px solid #534d41;
	border-radius: 5px;
	gap: 10px 30px;
	padding: 15px;
	margin: 20px 0 0;
}


/*障害福祉--------------------------------------*/
.insurance-head-medical {
	background: #d6e5f9;
	/*width: 411px;*/
	width: 100%;
}

.insurance-head-medical .insurance-subttl {
	/*color: var(--aqua)*/
	color: #fff;
	background: var(--aqua);
}

.insurance-head-medical .flow-title {
	color: var(--aqua);
}

.insurance-item-med {
	background: #fff;
	padding: 15px 10px 20px;
	margin: 0 0 30px;
}

.insurance-item-med .subttl {
	border-bottom: 2px dotted var(--aqua);
	color: var(--aqua);
}

.service-flow-contents .arrow.arrow3 {
	left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.top-cmn-blue-list.row.list02 {
	margin: 10px 0 0 0;
    gap: 10px 35px;
}

.num-tel.medi-tel {
	padding: 0 0 0 10px;
	font-weight: bold;
}
.num-tel.medi-tel::before {
    content: "\f095";
    font: 900 1.7rem / 1 "Font Awesome 5 Free";
    left: 10px;
}

/*- kyotakusien-fee-----------------------------------*/
#kyotakusien-fee .map-header-txt::before {
	background-image: url("../img/nurse-map-icon7.svg")
}

#kyotakusien-fee .kyotakusien-fee-point {
	background: var(--aquabg);
	padding: 15px 20px;
	margin-top: 30px;
}
#kyotakusien-fee .kyotakusien-fee-point i {
	color: var(--aqua);
	font-size: 2.5rem;
	margin: 0 8px 0 0;
}
#kyotakusien-fee .kyotakusien-fee-point p {
	color: var(--aqua);
}

#kyotakusien-fee .kyotakusien-fee-point.white {
	background: none;
	padding: 0 0 0;
	margin-top: 20px;
	color: #333;
	text-align: right;
}
#kyotakusien-fee .kyotakusien-fee-point.white i {
	color: #333;
	font-size: 1.8rem;
	margin: 0 8px 0 0;
}
.fa-circle-chevron-right:before {
	content: "\f138";
}
#kyotakusien-fee .kyotakusien-fee-point.white p {
	color: #333;
}

#kyotakusien-fee .table-box {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #534d41;
	border-radius: 5px;
	margin: 30px 0 0;
}

#kyotakusien-fee .table-box th {
	border-right: 1px solid #534d41;
	border-bottom: 1px solid #534d41;
	font-size: 2rem;
	letter-spacing: .07em;
	font-weight: bold;
	padding: 20px;
}

#kyotakusien-fee .table-box td {
	border-right: 1px solid #534d41;
	border-bottom: 1px solid #534d41;
	padding: 30px 20px;
}

#kyotakusien-fee .purple1 {
	background: #c5cce8;
}

#kyotakusien-fee .purple2 {
	background: #e7ebf9;
}

#kyotakusien-fee .blue1 {
	background: #bfd4f0;
}

#kyotakusien-fee .blue2 {
	background: #e0eaf9;
}

@media screen and (min-width: 769px) {
	.deco-wrap {
		display: none;
	}

	.map-wrap .map-contents {
		display: block !important;
	}

	#kyotakusien-flow .sp-only {
		display: none !important;
	}
}

@media screen and (max-width: 768px) {
	.loadmap-area {
		margin: 40px 0 0;
	}

	.loadmap-area #loadmap {
		margin-top: 20px;
	}

	.map-for {
		display: none !important;
	}

	.map-wrap {
		width: 100%;
		margin: 0 auto;
	}

	#loadmap .anchor {
		margin-bottom: 0;
	}

	#loadmap .map-contents {
		display: none;
		padding: 25px 20px 50px;
	}

	.map-cmn-txt {
		line-height: 2;
	}

	.map-wrap .map-header-txt {
		background: transparent;
		border-radius: 0;
		border-top: 1px solid #534d41;
		font-size: 2.2rem;
		color: #534d41;
		letter-spacing: .05em;
		padding: 24px 20px 25px 57px;
		position: relative;
		margin: 0;
		transition: .5s;
	}

	.map-wrap .map-header-txt.active-cmn-more {
		background: var(--mainc);
		border: none;
		color: #fff !important;
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.map-wrap .map-header-txt::before {
		width: 29px;
		height: 28px;
	}

	.map-wrap .map-header-txt .deco-wrap {
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		right: 20px;
	}

	/*map-cmn-list-----------------------------------*/
	.map-wrap .map-cmn-list {
		gap: 13px;
	}

	/*service-cmn-linettl-----------------------------------*/
	.map-wrap .service-cmn-linettl {
		font-size: 1.8rem;
		gap: 5px;
	}

	/*service-cmn-linettl-----------------------------------*/
	.map-wrap .top-cmn-blue-box {
		display: block;
		padding: 10px 15px 25px;
		margin: 20px 0 0;
	}

	.map-wrap .top-cmn-blue-box .box-ttl {
		text-align: center;
		font-size: 1.8rem;
	}

	/*top-cmn-blue-box------------------------------*/
	.map-wrap .top-cmn-blue-box {
		display: block;
		padding: 10px 15px 25px;
		margin: 20px 0 0;
	}

	.map-wrap .top-cmn-blue-box .box-ttl {
		text-align: center;
		font-size: 1.8rem;
		margin: 0 auto;
	}

	/*- kyotakusien-area-----------------------------------*/
	#kyotakusien-area .map-header-txt::before {
		background-image: url("../img/nurse-map-icon2-sp.svg")
	}

	#kyotakusien-area .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon2.svg")
	}

	#kyotakusien-area .service-cmn-linettl {
		margin: 20px 0;
	}

	/*- kyotakusien-apply-----------------------------------*/
	#kyotakusien-apply .map-header-txt::before {
		background-image: url("../img/nurse-map-icon3-sp.svg")
	}

	#kyotakusien-apply .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon3.svg")
	}

	#kyotakusien-apply .service-apply-contents {
		display: block;
	}

	#kyotakusien-apply .top-cmn-blue-box {
		margin-top: 20px;
	}

	/*- kyotakusien-contact-----------------------------------*/
	#kyotakusien-contact .map-header-txt::before {
		background-image: url("../img/nurse-map-icon4-sp.svg")
	}

	#kyotakusien-contact .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon4.svg")
	}

	#kyotakusien-contact .top-cmn-blue-list {
		margin-top: 0;
	}

	/*- kyotakusien-service-----------------------------------*/
	#kyotakusien-service .map-header-txt::before {
		background-image: url("../img/nurse-map-icon5-sp.svg")
	}

	#kyotakusien-service .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon5.svg")
	}

	#kyotakusien-service .service-item .img {
		border-radius: 5px;
		width: 47%;
		height: auto;
		margin: 0 0 20px;
		overflow: hidden;
	}

	#kyotakusien-service .service-item .img img {
		aspect-ratio: 150/90;
	}

	#kyotakusien-service .service-item .subttl-wrap {
		aspect-ratio: 150/80;
		align-items: center;
		display: flex;
		float: right;
		width: 53%;
	}

	#kyotakusien-service .service-item .subttl {
		font-size: 2rem;
		width: 100%;
		line-height: 1.368;
		letter-spacing: .03em;
		padding: 0 0 8px 12px;
		margin: 0;
	}

	#kyotakusien-service .service-item .top-cmn-blue-list {
		gap: 13px;
		width: 100%;
	}

	#kyotakusien-service .service-item .top-cmn-blue-list.row {
		gap: 10px 20px;
	}

	#kyotakusien-service .service-item {
		margin: 20px 0 0;
		background: #e8f0fa;
		padding: 13px 10px 22px;
		border-radius: 5px;
	}

	#kyotakusien-service .top-cmn-blue-list li {
		line-height: 1.588;
	}

	.service-management .map-cmn-txt {
		margin: 0 0 15px;
		width: 100%;
	}

	/*- kyotakusien-flow-----------------------------------*/
	#kyotakusien-flow {
		position: static;
	}
	#kyotakusien-flow .map-header-txt::before {
		background-image: url("../img/nurse-map-icon6-sp.svg")
	}

	#kyotakusien-flow .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon6.svg")
	}

	#kyotakusien-flow .pc-only {
		display: none !important;
	}

	#kyotakusien-flow .sp-care, #kyotakusien-flow .sp-medi {
		display: none !important;
	}

	#kyotakusien-flow .map-contents {
		padding: 25px 0 25px;
	}

	.insurance-wrap {
		display: block;
		margin: 0 0 0;
	}

	.insurance-wrap div[class^="insurance-head"] {
		padding: 20px 10px;
		width: calc(100% - 40px) !important;
		margin: 0 auto 30px;
	}
	
	.insurance-wrap .flow-wrap {
		padding: 0 0 0;
	}

	.insurance-subttl {
		font-size: 1.8rem;
		margin: 0 0 15px;
	}
	
	.flow-title {
		font-size: 1.8rem;
		margin: 0 0 30px;
		padding: 0 0 0;
	}

	#kyotakusien-flow p[class^="gray"] {
		font-size: 1.7rem;
		font-weight: 500;
		padding: 10px;
		text-align: center;
		line-height: 1.529;
		margin: 0 auto 30px;
		width: calc(100% - 40px);
	}
	
	#kyotakusien-flow div[class^="white"] {
		font-size: 1.7rem;
		font-weight: 500;
		padding: 10px;
		text-align: center;
		line-height: 1.529;
		margin: 0 0 30px;
		width: 100%;
	}
	
	#kyotakusien-flow .white .white-txt,
	#kyotakusien-flow .white .line-txt {
		text-align: left;
	}

	.service-flow-contents .arrow span::before {
		border-right: 6px solid transparent;
		border-left: 6px solid transparent;
		border-top: 12px solid #534d41;
	}

	.service-flow-contents .arrow-h30 {
		bottom: -30px;
	}
	.service-flow-contents .arrow-h30 span::after {
		height: 25px;
	}
    
    [data-empty="minus40"] span::after {
    	height: 30px;
    }


	.insurance-wrap div[class^="insurance-item"] .subttl {
		font-size: 1.8rem;
		padding: 0 0 5px;
		margin: 0 0 10px;
	}

	.insurance-wrap .note {
		font-size: 1.6rem;
		text-align: left;
	}

	.service-flow-contents .empty {
		height: 30px;
		width: 100%;
	}

	.service-flow-contents .empty .arrow {
		bottom: 0;
	}

	#insurance-medi, #insurance-care, h4[class^="table-box-subttl"] {
		align-items: center;
		border: 1px solid #534d41;
		border-radius: 5px;
		font-size: 2rem;
		line-height: 1.3;
		display: flex;
		justify-content: space-between;
		padding: 17px 10px 19px;
		width: calc(100% - 40px);
		margin: 0 auto;
		transition: .3s;
		position: relative;
	}

	#insurance-medi.insurance-active, #insurance-care.insurance-active {
		color: #fff;
		border: none;
		border-radius: 0;
		font-weight: bold;
		width: 100%;
		margin-bottom: 15px !important;
		justify-content: center;
	}

	h4[class^="table-box-subttl"].active-cmn-more {
		border-radius: 5px 5px 0 0;
	}

	.table-box-subttl-care.active-cmn-more {
		background: #c5cce8;
	}

	.table-box-subttl-medi.active-cmn-more {
		background: #bfd4f0;
	}

	#insurance-medi.insurance-active .deco-wrap, #insurance-care.insurance-active .deco-wrap {
		display: none;
	}

	#insurance-medi.insurance-active {
		background: var(--aqua);
	}

	#insurance-care.insurance-active {
		background: #5169cc;
	}

	#insurance-care {
		margin-bottom: 30px;
	}

	.flow-purple {
		background: #e9ecf8 !important;
	}

	.flow-blue {
		background: #e4edf9 !important;
	}

	/*介護保険*/
	.insurance-item-care {
		padding: 12px 10px 15px;
		margin: 0 0 30px;
	}

	.insurance-item-care.match {
		min-height: 150px;
	}

	/*.insurance-list-care .insurance-item-care:nth-of-type(2) {
		margin-bottom: 18px;
	}*/

	#insurance-care p[class^="gray"] {
		background: #eceffa !important;
	}
	#insurance-care div[class^="white"] {
		background: #fff !important;
	}

	/*障害福祉*/
	/*- kyotakusien-fee-----------------------------------*/
	#kyotakusien-fee .map-header-txt::before {
		background-image: url("../img/nurse-map-icon7-sp.svg")
	}

	#kyotakusien-fee .active-cmn-more.map-header-txt::before {
		background-image: url("../img/nurse-map-icon7.svg")
	}

	#kyotakusien-fee .map-header-txt {
		border-bottom: 1px solid #534d41;
	}

	#kyotakusien-fee .table-box-sp {
		display: none;
	}

	#loadmap #kyotakusien-fee .map-contents {
		padding: 25px 0 0;
	}

	#kyotakusien-fee .kyotakusien-fee-point {
		padding: 15px 10px;
		margin: 10px auto 20px;
		width: calc(100% - 40px);
	}

	#kyotakusien-fee .kyotakusien-fee-point i {
		font-size: 2.2rem;
		margin: 0;
		display: block;
		text-align: center;
	}

	#kyotakusien-fee .kyotakusien-fee-point p {
		line-height: 1.7647;
		font-size: 1.7rem;
	}
	
	#kyotakusien-fee .kyotakusien-fee-point.white {
		padding: 0;
		margin: 10px auto 20px;
		width: calc(100% - 40px);
	}
	#kyotakusien-fee .kyotakusien-fee-point.white i {
		font-size: 1.7rem;
		display: inline-block;
		text-align: center;
	}

	#kyotakusien-fee .table-box {
		border-radius: 0 0 5px 5px;
		border-width: 0 0 0 1px;
		margin: 0 auto;
		width: calc(100% - 40px);
		table-layout: fixed;
		display: table;
	}
	
	#kyotakusien-fee .table-box.pc-display-b {
		display: none!important;
	}

	.table-box-subttl-medi {
		margin-top: 20px !important;
	}

	#kyotakusien-fee .table-box th {
		font-size: 1.7rem;
		padding: 10px;
		width: 80px;
		line-height: 1.41;
	}

	#kyotakusien-fee .table-box td {
		padding: 15px 10px;
	}
}

/* -----------------------------------------------------------
   middle-mes-area
-------------------------------------------------------------- */
.middle-mes-area {
	background-color: #faf0f1;
	padding: 90px 0;
}

.middle-mes-area .section-underttl {
	margin-bottom: 60px;
}

.middle-mes-area .section-underttl .ja {
	color: var(--pink);
}

.middle-mes-area .mes-wrap {
	display: block;
}

.middle-mes-area .mes-wrap .mes-img {
	border-radius: 20px;
	overflow: hidden;
	margin: 0 50px 0 0;
	flex-shrink: 0;
	width: 550px;
	height: 230px;
	float: left;
}

.middle-mes-area .mes-wrap .mes-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.middle-mes-area .mes-wrap p {
	text-align: left;
	margin: 0 40px 5px 0;
	line-height: 2.4;
}

.middle-mes-area .mes-wrap p.style2 {
	margin: 14px 0 0;
}

.middle-mes-area .mes-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0 25px;
	margin: 50px 0 0;
}

.middle-mes-area .mes-list li {
	background-color: #fff;
	border-radius: 15px;
	width: 280px;
	padding: 20px 0;
	text-align: center;
}

.middle-mes-area .mes-list li > div {
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.middle-mes-area .mes-list li .mes-illust01 img, .middle-mes-area .mes-list li .mes-illust02 img {
	height: 90px;
}

.middle-mes-area .mes-list li .mes-illust03 img {
	height: 98.5px;
}

.middle-mes-area .mes-list li .mes-illust04 img {
	height: 78px;
}

.middle-mes-area .mes-list p {
	line-height: 1.8;
	margin: 10px 0 0;
}

@media screen and (max-width: 360px) {
	.middle-mes-area .section-underttl .ja {
		font-size: 2.5rem;
	}
}

@media screen and (max-width: 768px) {

	.middle-mes-area {
		margin: 50px 0 0 0;
		padding: 50px 0 40px;
	}
	
	.middle-mes-area .section-underttl {
		margin-bottom: 20px;
	}

	.middle-mes-area .mes-wrap {
		flex-direction: column;
	}

	.middle-mes-area .mes-wrap .mes-img {
		margin: 0 0 20px 0;
		width: 100%;
		min-height: 140px;
		height: 37.3vw;
	}
	
	.middle-mes-area .mes-wrap p {
		line-height: 2.2;
		 margin: 0;
	}

	.middle-mes-area .mes-list {
		flex-direction: column;
		gap: 20px 0;
		margin: 20px 0 0;
	}

	.middle-mes-area .mes-list li {
		gap: 0 10px;
		border-radius: 15px;
		width: 100%;
		padding: 15px 10px;
		text-align: left;
		display: flex;
		align-items: center;
	}

	.middle-mes-area .mes-list li > div {
		width: 110px;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.middle-mes-area .mes-list li .mes-illust01 img, .middle-mes-area .mes-list li .mes-illust02 img {
		width: 105px;
		height: auto;
	}

	.middle-mes-area .mes-list li .mes-illust03 img {
		width: 105px;
		height: auto;
	}

	.middle-mes-area .mes-list li .mes-illust04 img {
		width: 65px;
		height: auto;
	}

	.middle-mes-area .mes-list p {
		font-size: 1.6rem;
		line-height: 1.8;
		margin: 0;
		letter-spacing: .05em;
	}
}

/* -----------------------------------------------------------
    faq-area
-------------------------------------------------------------- */
.faq-area {
	margin: 80px auto 0;
}

.faq-accordion ul {
	border-top: #cecfd1 solid 1px;
	margin: 30px 0 0 0;
}

.faq-accordion ul li {
	border-bottom: 1px solid #cecfd1;
}

.quest {
	align-items: center;
	display: flex;
	position: relative;
	padding: 25px 20px 27px 75px;
	justify-content: space-between;
	width: 100%;
	transition: .5s;
}

.quest::before {
	content: "Q";
	font: 600 3.0rem / 1 var(--en);
	color: var(--mainc);
	font-weight: bold;
	display: block;
	height: 30px;
	line-height: 30px;
	left: 30px;
	text-align: center;
	width: 34px;
	position: absolute;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
}

.faq-accordion .quest .title {
	font-size: 1.8rem;
	line-height: 1.72;
	width: 100%;
	letter-spacing: .07em;
}

.quest:hover {
	cursor: pointer;
}

.answer {
	display: none;
	padding: 0 70px 0 75px;
	position: relative;
	background-color: var(--aquabg);
}

.answer::before {
	content: "A";
	font: 600 3.0rem / 1 var(--en);
	color: var(--aqua);
	font-weight: bold;
	display: block;
	position: absolute;
	height: 30px;
	line-height: 30px;
	left: 30px;
	top: 27px;
	text-align: center;
	width: 34px;
}

.faq-accordion .answer-txt {
	padding: 25px 0 35px 0;
	line-height: 1.8;
}

.faq-accordion .answer-txt p {
	line-height: 2;
	color: #2d2c2b;
	letter-spacing: .03em;
}

.faq-accordion .answer-txt p span {
	color: #e18727;
}

.faq-accordion .answer-txt a:hover {
	text-decoration: none;
}

.faq-accordion .answer-txt dt {
	margin: 15px 0 10px;
	font-weight: bold;
	color: #f09d74;
}

.faq-accordion .answer-txt dl dd:not(:first-child) {
	margin-top: 5px;
}

.faq-accordion .answer-txt small {
	color: #4f4f4f;
	display: block;
	margin: 25px 0 0 0;
}

.faq-accordion-icon {
	height: 25px;
	margin: 0 0 0 20px;
	padding: 10px 0 0 0;
	position: relative;
	width: 25px;
}

.faq-accordion-icon::before, .faq-accordion-icon::after {
	background-color: var(--mainc);
	content: "";
	height: 2px;
	position: absolute;
	width: 100%;
	transition: all .3s;
}

.faq-accordion-icon::before {
	transform: rotate(0deg);
}

.faq-accordion-icon::after {
	transform: rotate(90deg);
}

.faq-accordion .quest.active .faq-accordion-icon::after {
	transform: rotate(180deg);
}

@media screen and (max-width: 768px) {

	.faq-area {
		margin: 50px auto 0;
	}

	.faq-accordion ul {
		margin: 20px 0 0 0;
	}

	.quest {
		padding: 16px 5px 14px 40px;
	}

	.quest::before {
		font: 600 2.5rem / 1 var(--en);
		height: 25px;
		line-height: 25px;
		left: 5px;
		width: 25px;
	}

	.faq-accordion .quest .title {
		font-size: 1.6rem;
		line-height: 1.6;
	}

	.answer {
		padding: 22px 20px 20px 50px;
	}

	.answer::before {
		font: 600 2.5rem / 1 var(--en);
		display: block;
		height: 25px;
		line-height: 25px;
		left: 15px;
		top: 25px;
		width: 25px;
	}

	.faq-accordion .answer-txt {
		padding: 0;
		font-size: 1.6rem;
	}

	.faq-accordion .answer-txt p {
		font-size: 1.6rem;
	}

	.faq-accordion-icon {
		height: 20px;
		width: 20px;
	}
}

/* -----------------------------------------------------------
   スクロールバー
-------------------------------------------------------------- */
.scroll-box {
	margin: 0 0 0;
	position: absolute;
	top: 180px;
}
.scroll-box ul {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin: 0 20px 0;
}
.scroll-box ul li {
	width: 420px;
}
.scroll-box ul li a {
    display: block;
    width: 100%;
    padding: 25px 10px;
    border: solid 1px var(--mainc);
    text-align: center;
    background: #fff;
    color: var(--mainc);
	border-radius: 5px;
    position: relative;
    font-size: 1.8rem;
	line-height: 1.5;
}
.scroll-box ul li a::after {
    display: inline-block;
    content: "\f0dd";
    color: var(--mainc);
    font-weight: 900;
    font-family: 'Font Awesome 5 Free';
    padding: 0 10px;
    font-size: 2.5rem;
    position: absolute;
    top: 17px;
    right: 60px;
	transition: .3s;
}
.scroll-box ul li a:hover {
    background: var(--mainc);
	border: solid 1px var(--mainc);
    color: #fff;
}
.scroll-box ul li a:hover::after {
    color: #fff;
}

.anchor-scroll {
	padding-top: 40px;
	margin-top: -40px;
}

@media screen and (max-width: 768px) {
	.scroll-box, .anchor-scroll {
		display: none;
	}
}