@charset "utf-8";

/* -----------------------------
	一覧（施設デザイン）
-------------------------------- */

#facility .intro-area{
	padding: 80px 0 50px;
	position: relative;
	overflow: hidden;
}
#facility .intro-area::before{
	    content: '';
    background: url(../img/facility-circle.png) no-repeat center top / contain;
    width: 500px;
    height: 520px;
    position: absolute;
    right: 250px;
    top: -300px;
	z-index: -1;
}
#facility .intro-area::after{
	    content: '';
    background: url(../img/facility-circle.png) no-repeat center top / contain;
    width: 500px;
    height: 520px;
    position: absolute;
    left: 150px;
    bottom: -150px;
	z-index: -1;
}
#facility .intro-area .txt-box{
	/*width: 500px;*/
}
#facility .intro-area .txt-box .copy{
	font-family: 'Zen Maru Gothic', sans-serif;
}
#facility .intro-area .basic-txt{
	padding: 30px 0 0;
}
#facility .intro-area .block{
	display: flex;
	justify-content: space-between;
	align-items: center;
	/*flex-direction: row-reverse;*/
}

#facility .intro-area .image{
	width: 550px;
	height: auto;
	border-radius: 30px;
}
#facility .intro-area .image img{
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 30px;
}

.facility-top{
	padding: 100px 0 0;
}
.facility-top .inner1000{
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 768px){
	#facility .intro-area{
		padding: 50px 0 30px;
	}
	#facility .intro-area::before{
		width: 250px;
		height: 250px;
		right: 0px;
		top: -50px;
	}
	#facility .intro-area::after{
		width: 250px;
		height: 250px;
		left: 0px;
		bottom: -50px;
	}
	
	#facility .intro-area .txt-box{
		width: 100%;
		margin: 0 0 0;
	}
	#facility .intro-area .basic-txt{
		padding: 20px 0 0;
	}

	#facility .intro-area .block{
		display: block;
	}
	#facility .intro-area .image{
		width: 100%;
		height: 200px;
		border-radius: 15px;
		margin: 10px 0 0;
	}
	#facility .intro-area .image img{
		width: 100%;
		height: 100%;
		border-radius: 15px;
	}
	.facility-top{
		padding: 40px 0 0;
	}
	.facility-top .inner1000{
		display: block;
	}
}

/* -----------------------------
	一覧（ページタイトル）
-------------------------------- */
.page-title-area.index{
	padding: 150px 0 120px;
	position: relative;
	overflow: hidden;
	height: 570px;
}
.page-title-area.index::before{
	content: '';
	background: url("../img/facility-circle.png") no-repeat center top / auto;
	width: 582px;
	height: 606px;
	position: absolute;
	right: 20px;
	top: 20px;
}
.page-title-area.index::after{
	content: '';
	background: url("../img/facility-circle.png") no-repeat center top / auto;
	width: 582px;
	height: 606px;
	position: absolute;
	left: 20px;
	bottom: 20px;
}
.page-title-area.index .txt-box{
	position: relative;
}
.page-title-area.index .txt-box::before{
	content: '';
	background: url("../img/top-facility-mv.jpg") no-repeat center top / auto;
	width: 644px;
	height: 306px;
	position: absolute;
	right: 0px;
	top: -40px;
	border-radius: 15px;
}
.page-title-area.index .txt-box::after{
	content: '';
	background: url("../img/top-facility-ill.png") no-repeat center top / contain;
	width: 528px;
	height: 115px;
	position: absolute;
	bottom: -36px;
	right: 50px;
}
.page-title-area.index .txt-box .title .en{
	color: #FF8226; 
}
.page-title-area.index .txt-box .txt{
	width: 500px;
	padding: 40px 0 0;
}
.page-title-area.index .txt-box .basic-txt{
	margin: 20px 0 0;
}

#facility.index .h1-area h1{
	/*top: 585px;*/
}
#facility.index .breadcrumbs{
	top: 590px;
	padding: 0;
}

@media screen and (max-width: 768px){
	
	.page-title-area.index{
		padding: 55px 0 50px;
		position: relative;
		margin: 55px 0 0;
		height: 145px;
		min-height: inherit;
	}
	.page-title-area.index::before{
		content: '';
		background: url("../img/top-facility-ill.png") no-repeat center top / contain;
		width: 572px;
		height: 130px;
		position: absolute;
		top: -10px;
		left: 120px;
	}
	.page-title-area.index::after{
		content: '';
		background-size: contain;
		width: 250px;
		height: 310px;
		position: absolute;
		left: 10px;
		bottom: 0;
	}
	.page-title-area.index .txt-box{
		display: block;
	}
	.page-title-area.index .txt-box::before{
		content: '';
		background: url("../img/top-facility-mv-sp.png") no-repeat center top / contain;
		width: 136px;
		height: 136px;
		position: absolute;
		right: 20px;
		top: -52px;
		border-radius: 15px;
	}
	.page-title-area.index .txt-box::after{
		display: none;
	}
	.page-title-area.index .txt-box .txt{
		width: 100%;
		padding: 10px 0 0;
		display: none;
	}
	.page-title-area.index .txt-box .basic-txt{
		display: none;
	}
	
	#facility.index .h1-area h1{
		top: 145px;
	}
	
}


/* -----------------------------
	一覧（検索エリア:facility-search.css）
-------------------------------- */
.facility-area{
	   /*background: #FFFCF0;*/
}
.facility-area .inner{
	display: flex;
	/*flex-direction: row-reverse;*/
	padding: 100px 0 0;
	width: 1100px;
	min-width: 1100px;
	max-width: 1100px;
	min-height: 1500px;
}

.pager-area .current{
	background: #ffbf00;
    border: 1px solid #ffbf00;
}
.pager-area a:hover{
	background: #ffbf00;
    border: 1px solid #ffbf00;	
}
/* selection-wrap */
.selection-wrap{
	border-radius: 5px;
	flex: 1;
	background: #fff;
	border: solid 3px #F8E562;
	margin: 0 0 10px 0;
	padding:  0 0;
}
.selection-wrap .title{
	font-size: 1.6rem;
	font-weight: bold;
	padding: 10px 0;
	line-height: 1;
	background: #F8E562;
	color: #333;
	text-align: center;
}
.selection-list{
	display: flex;
	flex-wrap: wrap;
    line-height: 1.8;
    flex: 1;
	padding: 10px 20px;
}
.selection-list li{
	margin: 0 15px 0 0;
	font-size: 1.5rem;
	color: #6d6966;
	font-weight: 600;
}
/*
.selection-list li::after{
	content: '・';
	position: absolute;
	color: #eee;
}*/

/* list-area */
.list-area {
	padding: 0 0 50px;
}

.list-area .list{
	margin: 0 auto 0;
}

.list-area .list .com {
	margin: 0 0 20px;
	display: block;
	justify-content: space-between;
	background: #fcfdff;
	transition: .2s;
	top: 0;
	background: #fffdf6;
	background: #fffef6;
	border: #F8EB77 solid 5px;
	border-radius: 10px;
    width: 100%;
    display: inline-block;
    position: relative;
    padding: 25px 30px 18px;
	/*box-shadow: 0 10px 25px 0 rgba(255,130,38,0.15);*/
	pointer-events: none;
}
.list-area .list .com:hover {
	box-shadow: none;
}
.list-area .list .list-top{
	display: flex;
	justify-content: space-between;
	margin: 0 0 5px;
}
.list-area .list .com .cate {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0;
}
.list-area .list .com .cate ul {
	display: flex;
	flex-wrap: wrap;
}
.list-area .list .com .cate ul li {
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.7;
	margin: 0 5px 3px 0;
	padding: 1px 10px 0;
	border-radius: 20px;
	/*background: #fff;*/
	color: #8f8f8f;
	border: solid 1px #8f8f8f;
}
.list-area .list .com .cate ul.category li{
	margin: 0 0px 3px 5px;
}
.list-area .list .com .pr{
	background: #fe7979;
	color: #fff;
	padding: 0 15px 0;
    align-items: center;
    display: inline-flex;
    border-radius: 15px;
	font-size: 1.3rem;
	line-height: 1;
	margin: 0 0 3px;
}
.list-area .list .com .address{
	font-size: 1.4rem;
	padding:0;
	position: relative;
	white-space: nowrap;
	font-weight: bold;
	letter-spacing: .1em;
}
.list-area .list .com .address::before{
	content: "\f041";
	font-family: FontAwesome;
	font-size: 1.4rem;
	position: absolute;
	left: -15px;
	color: #8f8f8f;
}

.list-area .list .com .title {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 5px;
}

.list-area .list .com .box {
	display: flex;
	flex-direction: row-reverse;
}
.list-area .list .com .image{
	margin:  0 0 0 10px;
}

.list-area .list .com img {
	width: 300px;
	height: 200px;
	line-height: 0;
	/*width: 100%;
	height: 100%;*/
	object-fit: cover;
}

.list-area .list .com .summary{
	flex: 1;
}

.list-area .list .com table th,
.list-area .list .com table td{
	line-height: 1.8;
	font-size: 1.4rem;
}
.list-area .list .com table th{
	width: 80px;
	display: block;
	font-weight: 500;
	background: #f3a164;
	background: #F8E562;
	text-align: center;
	color: #333;
	margin: 0 10px 0 0;
	border-radius: 3px;
	font-weight: bold;
	font-size: 1.3rem;
}
.list-area .list .com table td{
	font-weight: bold;
}

.list-area .list .com .hour th{
	display: revert;
	background: none;
	/*text-align: left;*/
	color: #333;
	margin: 0;
	padding: 0 2px;
	font-weight: bold;
	text-align: center;
}
.list-area .list .com .hour td{
	font-weight: normal;
	padding: 0 3px;
	font-size: 1.1rem;
}


.list-area .list .com .tag.pc-display{
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 10px;
}

.list-area .list .com .tag.sp-display{
	display: none;
}

.list-area .list .com .tag li{
	border: solid 1px #ff6c00;
	border-radius: 3px;
	font-size: 1.25rem;
	line-height: 1.4;
	background: #fff;
	padding: 3px 10px 0;
	margin: 5px 5px 0 0;
	color: #ff6c00;
	font-weight: bold;
}

.list-area .list .com .point-box{
	display: flex;
	background: #FFFCF0;
	padding: 10px 10px 10px 90px;
	margin: 20px 0 0;
	border: solid 1px #ffe111;
	border-radius: 5px;
	position: relative;
	background: #fff;
}
.list-area .list .com .point-box::before{
	content: '';
    position: absolute;
    background: url(../img/facility-point-icon.png) no-repeat center top / contain;
    width: 70px;
    height: 54px;
    top: -7px;
    left: 10px;	
}
.list-area .list .com .point-title{
	background: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	/*width: 220px;*/
	margin: 0 20px 0 0;
	color: #FF8226;
	line-height: 1.5;
	padding: 10px;
	border-radius: 5px;
	border: solid 1px #FF8226;
}
.list-area .list .com .point-box .basic-txt{
	font-size: 1.4rem;
}
.list-area .list .com .btn-more{
	margin: 12px auto 0;
	width: 220px;
	height: 50px;
	line-height: 50px;
	border: solid 2px #8f8f8f;
	background: #fff;
}
.btn-more::after{
	color: #FF8226;
}
.list-area .list .com .btn-more a{
	pointer-events: auto;
}

/*
.list-area .list .com .btn {
	width: 280px;
	height: 60px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	left: 30px;
	bottom: 30px;
	z-index: 1;
	border: solid 3px #2c8df5;
	border-radius: 30px;
	margin: 20px auto 0;
	background: #2c8df5;
	color: #fff;
}

.list-area .list .com .box .btn a {
	color: #fff;
	background: #003E7B;
	display: block;
}

.list-area .list .com .box .btn a:hover {
	opacity: 0.6;
}*/

@media screen and (max-width: 768px){
	.facility-area .inner{
		display: block;
		padding: 20px 0 0;
		width: 100%;
		min-width: 100%;
		max-width: 100%;
		min-height: 100%;
	}
	.list-area {
		padding: 20px 10px 20px;
	}

	.list-area .list .com {
		position: static;
		margin: 0 0 10px;
		display: block;
		min-height: auto;
		padding: 15px 12px;
		pointer-events: auto;
	}
	
	.list-area .list .com a{

	}
	.list-area .list .com .cate ul li{
		font-size: 1rem;
	}
	.list-area .list .com .pr{
		font-size: 1.2rem;
		padding: 2px 10px 1px;
	}
	.list-area .list .com .image {
		width: 100%;
		height: auto;
		margin: 0;
	}

	.list-area .list .com .box {
		width: 100%;
		display: block;
	}
	.list-area .list .com .address{
		font-size: 1.2rem;
	}

	.list-area .list .com .box .cate {
		padding: 20px 0 10px;
	}

	.list-area .list .com .box .cate ul li {
		font-size: 1.4rem;
		margin: 0 5px 5px 0;
		padding: 0 10px;
	}

	.list-area .list .com .title {
		font-size: 1.8rem;
		margin: 0 0 5px;
	}

	.list-area .list .com .box .data {
		font-size: 1.8rem;
		font-weight: bold;
	}

	.list-area .list .com .box .data em {
		font-size: 2.1rem;
	}

	.list-area .list .com .box .txt {
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		margin: 0 0 20px;
	}
	.list-area .list .com table th, .list-area .list .com table td{
		font-size: 1.3rem;
	}
	.list-area .list .com .box .btn-more{
		margin: 20px auto 0;
	}
	.list-area .list .com .point-box{
		display: block;
		margin: 20px 0 0;
		padding: 10px;
	}
	.list-area .list .com .point-box::before{
		width: 43px;
		height: 40px;
		top: -15px;
		left: -10px;
	}
	
	.list-area .list .com .point-title{
		width: 100%;
		padding: 8px 10px;
	}
	.list-area .list .com .point-box .basic-txt{
		margin: 0 0 0;
	}
	.selection-wrap{
		display: block;
		margin: 0 0 15px;
	}
	.selection-list{
		margin: 0 0;
	}
	.selection-list li{
		font-size: 1.3rem;
		margin: 0 8px 0 0;
	}
	.list-area .list .com table th{
		font-size: 1.2rem;
		width: 58px;
		margin: 0 3px 0 0;
	}
	
	.list-area .list .com .summary{
		margin: 5px 0 0;
	}
	
	.list-area .list .com img {
		width: 100%;
		height: 200px;
		margin: 0 0;
	}
	.list-area .list .com .btn-more{
		margin: 10px auto 0;
		width: 220px;
		height: 45px;
		line-height: 45px;
		font-size: 1.4rem;
	}
	
	.list-area .list .com .tag.pc-display{
		display: none;
	}
	.list-area .list .com .tag.sp-display{
		display: flex;
    	flex-wrap: wrap;
		margin: 0 0 10px;
	}
	
	.list-area .list .com .tag li{
		font-size: 1.2rem;
	}

}

@media screen and (max-width: 340px) {
	.list-area .list .com .summary > table > tbody > tr{
		display: block;
	}
	.list-area .list .com img{
		height: 130px;
	}
}

/* -----------------------------
	詳細
-------------------------------- */
.detail-area {
	padding: 100px 0 100px;
	background: #FFFCF0;
	background: #fff;
	position: relative;
}
.detail-area::after {
	content: '';
	/*background: url("../img/top-facility-ill.png") no-repeat center top / contain;*/
	width: 528px;
	height: 115px;
	position: absolute;
	top: -80px;
	right: 50px;
}

.detail-area .inner800{
	max-width: 1000px;
	min-width: 1000px;
}

.detail-area > div {
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
}
.detail-area .kodawari-block{
	width: 320px;
	margin: 0 30px 0 0;
}
/* kodawari-wrap */
.kodawari-wrap{
	border-radius: 5px;
	flex: 1;
	border: solid 3px #F8E562;
	margin: 0 0 10px 0;
	padding:  0 0;
}
.kodawari-wrap .title{
	font-size: 1.8rem;
	font-weight: bold;
	padding: 15px 0;
	line-height: 1;
	background: #F8E562;
	color: #333;
	text-align: center;
}
.kodawari-wrap .sub-title{
	font-size: 1.6rem;
	font-weight: 600;
    background: #676767;
    padding: 7px 14px 4px;
	display: inline-block;
	border-radius: 30px;
	color: #fff;
}
.kodawari-wrap .box{
	padding: 15px 15px 0;
    border-top: dotted 3px #F8E562;
}
.kodawari-wrap .box:first-of-type{
	margin: 0 0 0;
	border-top: none;
}
.kodawari-list{
    flex: 1;
	padding: 10px 0;
}
.kodawari-list li{
	margin: 0 0 3px 0;
	font-size: 1.5rem;
	color: #6d6966;
	font-weight: 600;
	position: relative;
	padding: 0 0 0 15px;
	    line-height: 1.5;

}
.kodawari-list li::before{
	content: '#';
	position: absolute;
	color: #6d6966;
	left: 0;
	font-size: 1.25rem;
	top: 4px;
}
.kodawari-list li a{
	text-decoration: underline;
	color: #167ac6;
    font-size: 1.25rem;
    margin: 10px 8px 0 0;
    font-weight: bold;
}

.detail-area .detail-block{
	width: 850px;
}
.detail-area .info-area {
}
.detail-area .info-area .box {
	background: #fffef6;
	padding: 30px;
	border: solid 5px #F8EB77;
	border-radius: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.detail-area .info-area .box img{
	    width: 100%;
    max-height: 180px;
    object-fit: contain;
}

.detail-area .info-area .box .cate {
	display: flex;
	flex-wrap: wrap;
}

.detail-area .info-area .box .cate ul {
	display: flex;
	flex-wrap: wrap;
}

.detail-area .info-area .box .cate ul li {
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.7;
	border-style: solid;
	border-width: 1px;
	border-radius: 20px;
	margin: 0 5px 5px 0;
	padding: 0 10px;
	color: #8f8f8f ;
	border: solid 1px #8f8f8f;
}
.detail-area .info-area .box .cate ul.category li{
	margin: 0 0px 5px 5px;
	line-height: 2;
}

.detail-area .info-area .box .cate ul.area li{
	border-radius: 15px;
}
.detail-area .info-area .box .pr{
	background: #fe7979;
    color: #fff;
    padding: 2px 15px 1px;
    align-items: center;
    display: inline-flex;
    border-radius: 15px;
    font-size: 1.6rem;
	line-height: 1.3;
	vertical-align: middle;
	margin: 0 0px 5px 0px;
}
.detail-area .info-area .box .name {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .05em;
	margin: 10px 0 0;
}

.detail-area .info-area .box .tag{
	display: flex;
	margin: 0 0;
	flex-wrap: wrap;
}
.detail-area .info-area .box .tag li{
    border-radius: 3px;
    font-size: 1.25rem;
    color: #9b9b9b;
    margin: 10px 8px 0 0;
    font-weight: bold;
}
.detail-area .info-area .box .access-box{
	margin: 20px 0 0;
}
.detail-area .info-area .box .access-box .access{
	line-height: 1.6;
	position: relative;
	padding: 0 0 0 18px;
}
.detail-area .info-area .box .access-box .access::before{
	content: "\f041";
    font-family: FontAwesome;
    font-size: 1.4rem;
    position: absolute;
    left: 0;
	color: #8f8f8f;
}
.detail-area .info-area .box .access-box .tel{
	line-height: 1.6;
	position: relative;
	padding: 0 0 0 18px;
}
.detail-area .info-area .box .access-box .tel::before{
	content: "\f095";
    font-family: FontAwesome;
    font-size: 1.4rem;
    position: absolute;
    left: 0;
	color: #8f8f8f;
}

@media screen and (max-width: 768px){
	.u-area.detail #footer {
		padding: 30px 0 90px;
	}
	.u-area.detail #page-top{
		bottom: 80px;
	}
	.detail-area {
		padding: 0 0 0;
	}
	.detail-area::after {
		width: 260px;
		height: 80px;
		top: -40px;
		right: 0;
	}
	.detail-area .inner800{
		max-width: inherit;
		min-width: inherit;
	}
	
	.detail-area > div {
		display: block;
	}
	.detail-area .kodawari-block{
		width: 100%;
		margin: 0;
	}
	/* kodawari-wrap */
	.kodawari-wrap{
	}
	.kodawari-wrap .title{
		padding: 10px 0;
		font-size: 1.6rem;
	}
	.kodawari-wrap .sub-title{

	}
	.kodawari-wrap .box{
	}
	.kodawari-wrap .box:first-of-type{
	}
	.kodawari-list{
	}
	.kodawari-list li{

	}
	.kodawari-list li::before{
	}
	.kodawari-list li a{
	}	
	
	.detail-area .detail-block{
		padding: 20px 0;
		border-radius: 10px;
		border: none;
		width: 100%;
	}

	.detail-area .info-area {
		display: block;
		padding: 20px 10px 0;
	}

	.detail-area .info-area .box {
		width: 100%;
		padding: 15px;
		border: solid 3px #F8EB77;
		display: block;
	}

	.detail-area .info-area .box .cate {
	}

	.detail-area .info-area .box .cate ul li {
		font-size: 1.2rem;
		margin: 0 5px 5px 0;
		padding: 0 10px;
	}
	.detail-area .info-area .box img{
		margin: 10px auto 0;
		width: 100%;
		max-height: 220px;
	}
	.detail-area .info-area .box .name {
		font-size: 2.2rem;
		margin: 5px 0 0;
		line-height: 1.3;
	}
	.detail-area .info-area .box .access-box{
		margin: 5px 0 0;
	}

	.detail-area .info-area .box .table {
		width: 100%;
	}

	.detail-area .info-area .box .table .com .txt {
		font-size: 2.0rem;
		padding: 0 0 0;
		display: block;
		width: 100%;
	}

	.detail-area .info-area .box .list .com {
		display: block;
		margin: 0;
	}

	.detail-area .info-area .box .list .com .txt {
		font-size: 1.8rem;
		font-weight: bold;
	}
	/*
	.detail-area .txt-block{
		padding: 30px 20px 0;
	}
	.detail-area .txt-block .inner800{
		padding:0;
	}
	*/
	.detail-area .relation-area {
		padding: 30px 0 0;
		margin: 0;
	}
	
	.detail-area .relation-area .title {
		font-size: 1.8rem;
		margin: 0 0 10px;
	}
	.detail-area .relation-area .en{
		font-size: 3.2rem;
	}

	.detail-area .relation-area .list {
		display: block;
		margin: 0;
	}

	.detail-area .relation-area .list .com {
		width: 100%;
		margin: 0 0 20px;
	}

	.detail-area .relation-area .list .com:nth-child(4n) {
		margin: 0 0 20px;
	}

	.detail-area .relation-area .list .com .image {
		width: 100%;
		height: 100%;
	}
	
	.detail-area .application-area div:nth-child(n + 2){
		margin: 0;
	}
	
}

/* -----------------------------
	slick
-------------------------------- */

.detail-area .mv-area {
	width: 650px;
	margin: 30px auto 0;
}

.detail-area .mv-area .slick-slide {
	width: 100%;
	height: 300px;
	background: rgba(255,255,255,0.7);
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
	background: #f7f7f7;
	/*border: solid 1px #ddd;*/
}

.detail-area .mv-area .slick-slide img {
	width: auto;
	height: auto;
	max-height: 300px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	max-width: 100%;
	object-fit: contain;
}

.detail-area .mv-area .slick-dots {
	position: static;
	justify-content: flex-end;
	margin: 20px 0 0;
	text-align: left;
}

.detail-area .mv-area .slick-dots li {
	width: 70px;
	margin: 0 12.5px 10px 0 ;
	background: #fff;
	height: 70px;
	position: relative;
}

.detail-area .mv-area .slick-dots li:nth-child(5n) {
	margin: 0 0 10px;
}

.detail-area .mv-area .slick-dots li img {
	width: 100%;
	cursor: pointer;
	transition: .2s ease-in-out;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	max-height: 100%;
	max-width: 100%;
	object-fit: cover;
	height: 100%;
	overflow: hidden;
}

.detail-area .mv-area .slick-dots .slick-active img,
.detail-area .mv-area .slick-dots li:hover img {
	opacity: .6;
}

@media screen and (max-width: 768px){
	
	.detail-area .mv-area {
		width: 100%;
		margin: 30px auto 0;
		padding: 0 20px;
	}

	.detail-area .mv-area .slick-slide {
		width: 100%;
		height: 260px;
		background: none;
	}

	.detail-area .mv-area .slick-slide img {
		height: 100%;
		max-height: 100%;
		object-fit: cover;
		max-width: auto;
	}
	
	.detail-area .mv-area .slick-dots{
		margin: 10px 0 0;
	}

	.detail-area .mv-area .slick-dots li {
		width: 50px;
		margin: 0 5px 10px 5px;
		height: 50px;
	}
	
	.detail-area .mv-area .slick-dots li:nth-child(5n) {
		margin: 0 5px 10px 5px;

	}
	
}

/* -----------------------------
	chart-area
-------------------------------- */

.rader-left{
	position: relative;
	margin: 50px auto;
}
.rader-left::before {
  content: "";
  display: inline-block;
  width: 90px;
  height: 90px;
  background-size: 90px 90px;
  position: absolute;
  top: 20px;
  left: 0;
}

.rader-left > div{
	background: #fffef6;
	padding: 0;
	border: solid 5px #F8EB77;
	border-radius: 15px;
}

#myChart{
	width: auto!important;
	height: 600px!important;
	margin: 0 auto;
}

@media screen and (max-width: 768px){
	.rader-left{
		margin: 20px auto 0;
		padding: 0 10px;
	}
	.rader-left > div{
		padding: 0 0;
		border: solid 3px #F8EB77;
	}
	
	#myChart{
		width: 100%!important;
		height: auto!important;
		padding: 0 20px;
	}
}

/* -----------------------------
	point-area
-------------------------------- */
.point-area{
	margin: 50px auto 0;
}
.point-area > div{
	background: #fff;
	padding: 30px 40px;
	border-radius: 15px;
	background: #fff;
	border: solid 5px #F8EB77;
}
.point-area .point-title{
	font-size: 2.4rem;
	font-weight: bold;
	color: #ffbf00;
	position: relative;
	padding: 0 0 0 50px;
	font-family: 'Zen Maru Gothic', sans-serif;
}
.point-area .point-title::before{
	content: '';
	position: absolute;
	background: url("../img/facility-point-icon.png") no-repeat center top / contain;
	width: 70px;
	height: 54px;
	top: -10px;
	left: -20px;
}
.point-area .basic-txt{
	margin: 15px 0 0;
}

@media screen and (max-width: 768px){
	.point-area{
		margin: 20px auto 0;
		padding: 0 10px;
	}
	.point-area > div{
		padding: 20px 15px 15px;
		border: solid 3px #F8EB77;
	}
	.point-area .point-title{
		font-size: 2.3rem;
	}
}
/* -----------------------------
	treatment-area
-------------------------------- */
.treatment-area{
	margin: 50px auto 0;
}
.treatment-title{
	font-size: 2.3rem;
	font-weight: bold;
}
.treatment-title span{
	margin: 0 0 0 20px;
	position: relative;
    top: -3px;
}
.treatment-title span a{
font-size: 1.4rem;
    font-weight: 600;
    border: solid 1px #1dc18e;
    color: #1dc18e;
    padding: 3px 10px;
    line-height: 1.2;
    border-radius: 20px;
}
.treatment-title span a:hover{
	color: #fff;
	background: #1dc18e;
}

/* table */
.treatment-wrap{
	margin: 40px 0 0;
}
.treatment-area table{
	margin: 10px 0 0;
}
.treatment-area table ,
.treatment-area td,
.treatment-area th {
	border: 1px solid #ebda92;
	border-collapse: collapse;
	text-align: center;
	width: 100%;
	background: #fff0b3;
	table-layout: fixed;
    width: 100%!important;
}

.treatment-area table tr:nth-of-type(odd) th,
.treatment-area table tr:nth-of-type(odd) td{
	background: #fff0b3!important;
}
.treatment-area td,
.treatment-area th {
	padding: 10px;
	width: calc(100% / 4);
	height: 50px;
	font-size: 1.6rem;
	color: #333;
	line-height: 1.5;
}
.treatment-area td {
	background: #fff;
}
.treatment-area .table02 td,
.treatment-area .table02 th {
	width: calc(100% / 5);
}
.treatment-area .table04 td,
.treatment-area .table04 th {
	width: calc(100% / 6);
}
.treatment-area .table05 td,
.treatment-area .table05 th {
	width: calc(100% / 6);
}
.treatment-area .table07 td,
.treatment-area .table07 th {
	width: calc(100% / 6);
}
.treatment-area .table08 td,
.treatment-area .table08 th {
	width: calc(100% / 5);
}
.treatment-area .title {
	background: #595959;
	color: #fff;
}
.treatment-area .table-txt{
	margin: 20px 0 0;
}

.treatment-area .pdf-box{
	background: #fff9c8;
	padding: 50px;
	margin: 50px 0 0;
	border-radius: 15px;
}
.treatment-area .pdf-box .pdf-btn{
	display: block;
	text-align: center;
}
.treatment-area .pdf-box .pdf-btn a{
	background: #fff;
    color: #ffbf00;
    border-radius: 50px;
    border: solid 3px #ffbf00;
    width: 350px;
    height: 70px;
    line-height: 68px;
    text-align: center;
    display: inline-block;
    font-weight: bold;
    font-size: 1.8rem;
}
.treatment-area .pdf-box .pdf-btn a i{
	padding: 0 0 0 10px;
}
.treatment-area .pdf-box .pdf-btn a:hover{
	border: solid 3px #ffbf00;
	background: #ffbf00;
	color: #fff;
}

.treatment-area .treatment-wrap h2{
	border-bottom: 3px #ffbf00 solid;
    font-size: 2.4rem;
    margin: 20px 0 20px 0;
    padding: 0 0 10px;
	font-weight: bold;
    line-height: 1.5;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    background: none;
}

.treatment-area .treatment-wrap p{
	padding: 5px 0;
}
.treatment-area .treatment-wrap p{
	padding: 5px 0;
}

@media screen and (max-width: 768px){
	.treatment-area{
		margin: 30px auto 0;
		padding: 0 20px;
	}
	.treatment-wrap{
		margin: 20px 0 0;
		padding: 0 0;
	}
	.treatment-area td, .treatment-area th{
		font-size: 1.4rem;
	}
	.treatment-area table{
		margin: 5px 0 0;
		width: 100%!important;
	}
	.treatment-title{
		font-size: 1.8rem;
		line-height: 1.5;
	}
	
	.treatment-area .pdf-box{
		margin: 30px 0 0;
		padding: 30px 20px;
	}
	.treatment-area .pdf-box .pdf-btn a{
		width: 100%;
		font-size: 1.7rem;
	}
	
	.treatment-area .treatment-wrap h2{
        margin: 0px 0 20px 0;
        padding: 0 0 8px;
        font-size: 2rem;
    }
}

/* -----------------------------
	txt-block
-------------------------------- */

/*  txt-block*/
.detail-area .txt-block{
	padding: 50px 0 0;
}
.detail-area .txt-block > div{
	border: solid 5px #F8EB77;
	padding: 30px 50px 30px;
	background: #fffef6;
	border-radius: 15px;
}

@media screen and (max-width: 768px){
	.detail-area .txt-block{
		padding: 30px 10px 0;
	}
	.detail-area .txt-block > div{
		padding: 15px 0 15px;
	}
	.detail-area .txt-block iframe{
		width: 100%;
		height: auto;
	}
}
/* -----------------------------
	フルリッチテキスト
-------------------------------- */

.detail-contents {
  line-height: 1.8;
  /*padding: 0 0 50px !important;*/
}

.detail-contents strong{
	background: linear-gradient(transparent 65%, transparent 65%)!important;
}
/* pタグ */
.detail-contents p {
  /*margin-bottom: 1.5em;*/
  font-size: 1.6rem!important;
	line-height: 1.8!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
	width: 100%!important;
}

.detail-contents p span{
	  font-size: 1.6rem;
	line-height: 1.8!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
	background: linear-gradient(transparent 65%, transparent 65%);
}


.detail-contents blockquote{
	margin: 0 auto 20px;
	text-align: left;
}

/* 見出し系 */
.detail-contents h1,
.detail-contents h2,
.detail-contents h3,
.detail-contents h4 {
	font-weight: bold!important;
	line-height: 1.5!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
	background: none!important;
}

.detail-contents h1 {
	/*
  background: #333;
	*/
  color: #ffbf00!important;
  font-size: 2.6rem!important;
  margin: 40px 0 20px 0!important;
	/*
  padding: 15px 30px;
	*/
}

.detail-contents h2 {
  border-bottom: 3px #ffbf00 solid!important;
  font-size: 2.4rem!important;
  margin: 40px 0 30px 0!important;
  padding: 0 0 10px!important;
}
.detail-contents h2 span{
	font-size: 2.4rem!important;
	margin: 40px 0 30px 0!important;
	padding: 0 0 10px!important;
	font-weight: bold!important;
	line-height: 1.5!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
}

.detail-contents h3 {
	background: #ffbf00!important;
	color: #fff!important;
	font-size: 2.2rem!important;
	margin: 40px 0 30px 0!important;
	padding: 15px 30px!important;
	border-radius: 5px!important;
}
.detail-contents h3 span{
	background: #ffbf00!important;
	color: #fff!important;
	font-size: 2.2rem!important;
	margin: 40px 0 30px 0!important;
	padding: 15px 30px!important;
	border-radius: 5px!important;
	font-weight: bold!important;
	line-height: 1.5!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
}

.detail-contents h4 {
  font-size: 2rem!important;
  margin: 30px 0 20px 0!important;
  padding: 0 0 0 16px!important;
  position: relative!important;
}
.detail-contents h4 span{
	font-size: 2rem!important;
	margin: 30px 0 20px 0!important;
	padding: 0 0 0 16px!important;
	position: relative!important;
	font-weight: bold!important;
	line-height: 1.5!important;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif!important;
}

.detail-contents h4::before {
  background: #ffbf00!important;
  border-radius: 3px!important;
  content: ""!important;
  display: block!important;
  height: calc(100% - 10px)!important;
  left: 0!important;
  position: absolute!important;
  top: 5px!important;
  width: 4px!important;
}

.detail-contents img {
  display: block;
  height: auto;
  max-width: 700px;
}

.detail-contents a:link {
  /*color: red;*/
  display: inline-block;
	color: #167ac6!important;
	opacity: 1!important;
}
.detail-contents a:visited {
	color: #167ac6!important;
	opacity: 1!important;
}

.detail-contents .reservation-btn{
	display: block;
	text-align: center;
	margin: 10px 0 0;
	cursor: pointer;
}
.detail-contents .reservation-btn a{
	background: #1DC18E;
	color: #fff!important;
	font-size: 1.8rem;
	border-radius: 5px;
	padding: 10px 30px;
	width: 200px;
	    display: block;
    margin: 0 auto;
}
.detail-contents .reservation-btn a:hover{
	opacity: .8;
}
.detail-contents .site-btn{
	display: block;
	text-align: center;
	margin: 10px 0 0;
	cursor: pointer;
}
.detail-contents .site-btn a{
	background: #FF8226;
	color: #fff!important;
	font-size: 1.8rem;
	border-radius: 5px;
	padding: 10px 30px;
	width: 200px;
	    display: block;
    margin: 0 auto;
}
.detail-contents .site-btn a:hover{
	opacity: .8;
}

.detail-contents table td{
	border: 1px solid #333;
	padding: 5px 10px;
}

@media screen and (max-width: 768px) {
	
  .detail-contents {
    padding: 0 20px 0 !important;
  }

  .detail-contents h1 {
    font-size: 2.2rem!important;
    margin: 20px 0 10px 0!important;
	  /*
    padding: 10px 15px;
	  */
  }

  .detail-contents h2 {
    margin: 30px 0 20px 0!important;
    padding: 0 0 8px!important;
    font-size: 2rem!important;
  }
  .detail-contents h2 span{
    margin: 30px 0 20px 0!important;
    padding: 0 0 8px!important;
    font-size: 2rem!important;
  }

  .detail-contents h3 {
    margin: 30px 0 20px 0!important;
    padding: 15px 15px!important;
    font-size: 1.8rem!important;
  }
  .detail-contents h3 span{
    margin: 30px 0 20px 0!important;
    padding: 15px 15px!important;
    font-size: 1.8rem!important;
  }

  .detail-contents h4 {
    margin: 20px 0 10px 0!important;
    padding: 0 0 0 18px!important;
    font-size: 1.6rem!important;
  }
  .detail-contents h4 span{
    margin: 20px 0 10px 0!important;
    padding: 0 0 0 18px!important;
    font-size: 1.6rem!important;
  }

  .detail-contents h4::before {
    top: 5px!important;
    height: calc(100% - 10px)!important;
  }

  .detail-contents img {
    float: none;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    text-align: center;
    height: auto;
    display: block;
  }
	
	.detail-contents table td{
		padding: 0px 3px;
	}
}

/* -----------------------------
	voice-area
-------------------------------- */

.voice-area{
	margin: 50px 0 0;
}
.voice-area > div{
	max-height: 350px;
	overflow: hidden;
	overflow-y: scroll;
	padding: 50px;
	background: #fff;
	border: solid 1px #eee;
}
.voice-area table{
	background: #fff;
	width: 100%;
}

.voice-area table , 
.voice-area td, 
.voice-area th {
	border: 1px solid #F8EB77;
	border-collapse: separate;
}
.voice-area td{
	padding: 20px;
	margin: 10px 0 0;
}
.voice-area .wrap{
	/*display: flex;
	justify-content: space-between;*/
}

.voice-area .basic-txt{
	margin: 10px 0 0;
}
.voice-area .wrap .name{
	font-size: 1.8rem;
	font-weight: bold;
}
.voice-area .wrap .date{
	font-size: 1.8rem;
	font-weight: bold;
	margin: 10px 0 0 auto;
}

@media screen and (max-width: 768px) {
	.voice-area{
		margin: 30px 0 0;
		padding: 0 20px;
	}
	.voice-area > div{
		padding: 20px;
	}
}

/* -----------------------------
	summary-area
-------------------------------- */
.summary-area{
	margin: 50px auto 0;
}

.summary-area table , 
.summary-area td, 
.summary-area th {
	border: 1px solid #fff;
	border-collapse: collapse;
	background: #f5f5f5;
		table-layout: fixed;
}
.summary-area td, 
.summary-area th {
	padding: 20px;
}
.summary-area th {
	width: 200px;
	/*background: #f3a164;
	color: #fff;*/
	font-size: 1.6rem;
	line-height: 1.4;
}
.summary-area td {
	width: 800px;
	line-height: 1.65;
}

.summary-area iframe{
	width: 100%;
	margin: 20px 0 0;
	height: 200px;
}

.summary-area a{
	text-decoration: underline;
}


.hour {
	display: block;
  border-collapse: collapse;
	width: 50%;
	table-layout: fixed;
    width: 100%!important;
	height: auto!important;
}

.hour .time{
	width: 150px!important;
	white-space: nowrap;
}
.hour th, .hour td {
	padding: 0;
	text-align: center;
	/* 枠線。色を変えたい時は#ff6680というところをお好みで */
	border: 1px solid #bdbdbd;

}

.hour td {
	width: 90px!important;
}

/* 最上段の表の見出し。background-colorを書き換えれば背景色が変わります。 */
.hour th {
  font-weight: bold;
	width: 90px!important;
}

/* 「土」の文字色 */
.hour th.sat {
  color: #3db2da;
}

/* 「日」の文字色 */
.hour th.sun {
  color: #e66a6a;
}

@media screen and (max-width: 768px) {
	.summary-area{
		margin: 30px auto 0;
		padding:  0 10px 20px;
	}
	.summary-area table, .summary-area td, .summary-area th{
		width: inherit!important;
		table-layout: inherit!important;
	}
	.summary-area th{
		font-size: 1.4rem;
		width: 30%!important;
		padding: 0;
	}
	.summary-area td{
		padding: 10px;
	}
	.summary-area table.hour {
		width: 100%!important;
		border: none;
	}
	.summary-area table.hour th{
		width: 100%!important;
		font-size: 1.2rem;
	}
	.summary-area table.hour td{
		padding: 1px 3px!important;
		font-size: 1.2rem;
	}
}

/* -----------------------------
	publish-area
-------------------------------- */
.publish-area{
	margin: 50px 0 0;
}
.publish-area > div{
	border: solid 8px #f9f4c3;
	padding: 30px 30px;
    background: #fffdea;
	display: block;
	align-items: flex-end;
	justify-content: space-between;
	font-weight: bold;
}

.publish-area .btn-wrap{
	display: flex;
	justify-content: right;
}

.publish-area .btn{
	margin: 0 0 0 10px;
	display: block;
	text-align: right;
}

.publish-area .btn a{
	border: solid 1px #333;
	border-radius: 40px;
	padding: 12px 25px 11px;
	color: #333;
	font-weight: 600;
	display: block;
	background: #fff;
}
.publish-area .btn a:hover{
	color: #fff;
	background: #FF8226;
	border: solid 1px #FF8226;
}

.back-link a:hover{
	color: #FF8226;
}

@media screen and (max-width: 768px) {
	.publish-area{
		margin: 10px 0 0;
	}
	
	.publish-area > div{
		display: block;
		padding: 30px 20px;
	}
	.publish-area .btn-wrap{
		display: block;
	}
	
	.publish-area .btn{
		margin: 10px 0 0;
		text-align: center;
		display: grid;
	}
	.publish-area .btn a{
		padding: 15px 25px 14px;
	}
}



/* -----------------------------
	relation-area
-------------------------------- */
.relation-area{
	margin: 50px auto 0;
}

.relation-area .list {
	display: flex;
	margin: 20px 0 0;
}

.relation-area .list .com {
	width: 285px;
	margin: 0 20px 0 0;
	position: relative;
	top: 0;
	transition: .3s;
	border: #F8EB77 solid 2px;
	border-radius: 10px;
	background:#fffef6;
}
.relation-area .list .com:hover{
	top: -5px;	
}
.relation-area .list .com:nth-child(4n) {
	margin: 0 0 0 0;
}

.relation-area .list .com .image {
	width: 100%;
	height: 180px;
	border-radius: 15px 15px 0 0;
}
.relation-area .list .com .image img {
	width: 100%;
	height: 100%;
	border-radius: 15px 15px 0 0;
}
.relation-area .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.relation-area .list .txt-box{
	padding: 15px 15px;
	border-radius: 0 0 15px 15px;
}

.relation-area .cate{
	/*display: flex;*/
}
.relation-area .cate ul{
	display: flex;
	flex-wrap: wrap;
}
.relation-area .cate ul li {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.7;
    border-style: solid;
    border-width: 1px;
    margin: 0 5px 5px 0;
    padding: 0 10px;
    color: #8f8f8f;
    border: solid 1px #8f8f8f;
	border-radius: 15px;
}

.relation-area .name{
  	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}
.relation-area .tag {
	display: flex;
	flex-wrap: wrap;
}
.relation-area .tag li{
    font-size: 1rem;
    margin: 5px 5px 0 0;
    color: #9b9b9b;
    font-weight: bold;
}
.relation-area .tag li:nth-child(n + 7){
	display: none;
}

.relation-area .list .address{
	font-size: 1.4rem;
	padding: 10px 0 0 15px;
	position: relative;
}
.relation-area .list .address::before{
	content: "\f041";
	font-family: FontAwesome;
	font-size: 1.4rem;
	position: absolute;
	left: 0;
	color: #8f8f8f;
}

.fa-chevron-left::before{
	color: #FF8226;
}

@media screen and (max-width: 768px) {
	.back-link{
		padding: 30px 20px 30px;
		margin: 0 0;
	}	
}


/* -----------------------------
	ページパーツ（　contents-left　）
-------------------------------- */
/*リスト*/
.article-index-area{
	margin: 50px 0 0;
}
.article-index-area ul.flex-box {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	margin: 20px 0 0;
}
.article-index-area .subtitle{
	    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: .05em;
}
.article-index-area .subtitle span{
	    font-size: 1.8rem;
    color: #1DC18E;
    font-family: 'Montserrat', sans-serif;
    display: block;
    font-weight: bold;
    padding: 0 0 8px;
}

.article-index-area ul.flex-box li {
	width: calc((100% - (20px * 2)) / 3);
	background: #fff;
	margin: 0 12px 30px 0;
	position: relative;
}
/*.article-index-area ul.flex-box li:nth-of-type(4n){
	margin: 0 0 30px;
}*/

.article-index-area ul.flex-box li a {
	display: block;
}
.article-index-area ul.flex-box .member-icon{
	position: absolute;
	z-index: 2;
	top: -10px;
	left: -10px;
}

.article-index-area ul.flex-box .thumb {
	width: 100%;
	height: 170px;
	text-align: center;
	overflow: hidden;
	border-radius: 5px;
}
.article-index-area ul.flex-box .thumb img {
	object-fit: cover;
	width: 100%;
	height: 175px;
	transition:.5s all;
}

.article-index-area ul.flex-box li a:hover .thumb img {
	transform:scale(1.1,1.1);
	transition:.5s all;
}

.article-index-area ul.flex-box .txt-area {
	padding: 10px 0 0;
}

.article-index-area ul.flex-box .txt-area .cate {
	margin: 0 5px 0 0;
	display: inline-block;
    font-weight: bold;
    font-size: 1.3rem;
    text-align: center;
    border: 1px solid currentColor;
    padding: 6px 10px 4px;
	color: #7E7E7E;
	border-radius: 15px;
}

.article-index-area ul.flex-box .txt-area .date {
	font-size: 1.3rem;
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
}

.article-index-area ul.flex-box .txt-area .pr {
	background: #fe7979;
	color: #fff;
	display: inline-block;
	padding: 3px 12px 3px;
	border-radius: 15px;
	text-align: right;
	margin: 0 0 0 5px;
	font-size: 1.3rem;
}

.article-index-area ul.flex-box .txt-area .title {
	line-height: 1.75;
	font-size: 1.6rem;
    margin: 10px 0 0;
}

@media screen and (max-width: 768px) {
	/*リスト*/
	.article-index-area ul.flex-box{
		margin: 0;
	}
	.article-index-area ul.flex-box li {
		display: block;
		width: 100%;
        border: none;
        padding: 20px 0 15px;
        margin: 0;
	}
	
	.article-index-area ul.flex-box li  {
		padding: 20px 0 0;
	}
   	.article-index-area ul.flex-box li:nth-of-type(n + 3){
       /*display: none;*/
    }
	.article-index-area ul.flex-box li:nth-of-type(2n){
		margin: 0 0 0;
	}
	.article-index-area ul.flex-box li a {
		display: block;
	}
	.article-index-area ul.flex-box li .thumb{
		width: 100%;
		height: 185px;
	}
	.article-index-area ul.flex-box li .thumb img {
		width: 100%;
		height: 185px;
	}
	.article-index-area ul.flex-box li .txt-area {
		padding: 10px 0 0;
	}
	
	.article-index-area ul.flex-box.new{
		margin: 0;
		justify-content: space-between;
	}
	.article-index-area ul.flex-box.new li {
		width: calc((100% / 2) - 5px);
		padding: 0;
		margin: 15px 0 10px;
		background: none;
	}
	.article-index-area ul.flex-box.new li a {
	}
	.article-index-area ul.flex-box.new li .thumb{
		width: 100%;
		height: 100px;
	}
	.article-index-area ul.flex-box.new li .thumb img {
		width: 100%;
		height: 100px;
	}
	.article-index-area ul.flex-box.new li .txt-area {
		padding: 5px 0 0;
	}
	.article-index-area ul.flex-box.new .txt-area .cate {
		padding: 5px 6px 3px;
		margin: 0 ;
		font-size: 1rem;
	}
	.article-index-area ul.flex-box.new .txt-area .title {
		font-size: 1.4rem;
		padding: 0;
		margin: 2px 0 0;
	}

	.article-index-area ul.flex-box li a {
		display: block;
		height: 100%;
        position: relative;
	}
	
    .article-index-area ul.flex-box li a::before{
        display: none;
    }

	.article-index-area ul.flex-box .txt-area .cate {
		font-size: 1.2rem;
		margin: 0 5px 0 0;
	}
        
    .article-index-area ul.flex-box .txt-area .title {
        width: 100%;
        font-size: 1.6rem;
        line-height: 1.6;
        padding: 0 1em 0 0;
        margin: 10px 0 0;
    }
	
	.sp-new{
		margin: 30px 0 0;
	}

}

/* モーダル */
.modal-overlay {
  align-items: center;
  background: rgba(0,0,0,.3);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
}

.modal-container {
  background-color: #fff;
  max-height: 90vh;
  overflow-y: auto;
  width: 100%;
	
    max-width: 900px;
    margin: 0;
    padding: 50px 50px 50px 50px;
    text-align: center;
    background: #fff;
    box-sizing: border-box;
	line-height: 1.6;
	position: fixed;
	z-index: 9999;
	height: 90vh;
}

.modal-close {
  border: 0;
	display: block;
    width: 40px;
    line-height: 40px;
    background: #707070;
    color: #FFF;
    font-size: 2.0rem;
    text-align: center;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
}

.modal-content {
  line-height: 1.5;
}

.modal-open {
  display: inline-block;
	cursor: pointer;
	font-size: 1.4rem;
    font-weight: 600;
    border: solid 1px #1dc18e;
    color: #1dc18e;
    padding: 3px 10px;
    line-height: 1.2;
    border-radius: 20px;
	background: #fff;
	font-family: 'Noto Sans JP', serif;
	transition: .3s all;
}
.modal-open:hover{
	background: #1dc18e;
	color: #fff;
}

/* モーダルアニメーション */
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal-overlay {
  animation: mmfadeIn .3s cubic-bezier(.0, .0, .2, 1);
}

.micromodal-slide[aria-hidden="false"] .modal-container {
  animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal-overlay {
  animation: mmfadeOut .3s cubic-bezier(.0, .0, .2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal-container {
  animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
}

.micromodal-slide .modal-container,
.micromodal-slide .modal-overlay {
  will-change: transform;
}

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

		width: 90%;
		max-width: inherit;
		padding: 30px 20px 30px 20px;
		height: 80vh;
		margin: 20px 0 0;
	}
	.modal-close{
		padding: 0;
		height: 40px;
	}
	.modal-content{
		    overflow-y: scroll;
	}

}

/* -----------------------------
	表の見方
-------------------------------- */
.modal-scroll{
	overflow-y: scroll;
	height: 100%;
	padding: 0 15px 0 0;
}

/*
.modal_box {
    width: 80%;
    max-width: 840px;
    margin: 0;
    padding: 50px 35px 50px 50px;
    text-align: center;
    background: #fff;
    box-sizing: border-box;
	line-height: 1.6;
	position: fixed;
	z-index: 9999;
	height: 90vh;
}*/
.modal_close {
	display: block;
	width: 40px;
    line-height: 40px;
    background: #707070;
    color: #FFF;
    font-size: 2.0rem;
    text-align: center;
	cursor: pointer;
	position: absolute;
    top: 0;
    right: 0;
}
.modal_close:hover {
    color: #FFF;
}
.modal_close i {
    line-height: 44px;
    vertical-align: bottom;
}
.modal_bg {
    display: none;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.3);
	position: fixed;
    top: 0;
    left: 0;
	z-index: 1000;
}
.modal_box .modal_ill {
	text-align: center;
	margin: 20px 0;
}
.modal_box .modal_ill img {
	width: 100%;
}
.modal_box .modal_title {
	font-size: 2.4rem;
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
	color: #1DC18E;
	padding: 0;
	margin: 0 auto;
	align-items: center; /* 横線を上下中央 */
 display: flex; /* 文字と横線を横並び */
 justify-content: center; /* 文字を中央寄せ */
	margin: 0 0 10px;
}
.modal_box .modal_title::before,
.modal_box .modal_title::after {
  background-color: #1DC18E; 
  content: "";
  height: 5px; 
  width: 60px; 
	flex-grow: 1;
}
.modal_box .modal_title::before {
  margin-right: 15px; 
}
.modal_box .modal_title::after {
  margin-left: 15px; 
}

.modal_box .modal_txt {
	line-height: 1.8;
	text-align: center;
	padding: 0 0;
	margin: 0 auto;
	font-weight: 600;
}
.modal_box .modal_txt.intro {
	text-align: center;
	font-size: 1.8rem;
}

.modal_box .modal_txt.last{
	text-align: left;
	margin: 20px 0 0;
}
.modal-point{
	border: solid 5px #F8EB77;
	background: #fffef6;
	padding: 30px 20px 15px 40px;
	margin: 40px 0 0;
	position: relative;
	border-radius: 15px;
}
.modal-point-title{
	font-size: 1.8rem;
	font-weight: bold;
	color: #333;
	position: absolute;
	top: -15px;
	left: 30px;
	background: #F8EB77;
	padding: 3px 20px 2px;
	border: solid 1px #F8EB77;
	border-radius: 5px;
}

/* テーブル */
.modal_box .table06{
	margin: 40px 0 0;
}
.modal_box td, 
.modal_box th{
	font-size: 1.4rem;
	height: 45px;
}

.modal_box .table06 .table-title{
	text-decoration: underline;
}

/*
.modal-point-title span{
	font-size: 2.5rem;
}*/
.modal-point-list{
	text-align: left;
	counter-reset: number 0;
}
.modal-point-list li{
	line-height: 2;
	padding: 0 0 0 30px;
	position: relative;
}
.modal-point-list li span{
	font-weight: bold;
	font-size: 1.8rem;
}
.modal-point-list li::before{
	color: #fff;	
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	left: -10px;
	background: #8f8f8f;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
	border-radius: 30px;
	    align-items: center;
    line-height: 1;
}
.modal-value{
	margin: 0 0 0;
}
.modal-value-list{
		text-align: left;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.modal-value-list li{
	font-size: 1.6rem;
	    border: solid 3px #F8EB77;
    background: #fffef6;
    padding:22px 20px 12px;
	margin: 15px 0 0;
    position: relative;
    border-radius: 10px;
	width: calc((100% / 2) - 5px);
}
.modal-value-list li span{
	width: 35px;
	height: 35px;
	border-radius: 30px;
	position: absolute;
	background: #F8EB77;
	text-align: center;
    top: -15px;
    left: 15px;
	line-height: 2.2;
}

/* modal-disc-list */
.modal-disc-list li{
	background: #fffdf6;
	padding: 15px;
	margin: 5px 0 0;
}
.modal-disc-title{
	font-size: 1.8rem;
	font-weight: bold;
	text-align: left;
	position: relative;
}
/*
.modal-disc-title::before{
	content: '';
	width: 7px;
	height: 2px;
	background: #fff;
	position: absolute;
	    top: 9px;
    left: 0;
}*/
.disc-list-txt{
	text-align: left;
	font-size: 1.5rem;
	padding: 3px 0 0;
}

@media screen and (max-width: 768px){
	.modal-scroll{
		padding: 0 10px 0 0;
	}
	.modal_content {
		padding: 50px 20px 40px;
	}
	/*
	.modal_box {
		width: 90%;
		max-width: inherit;
		padding: 30px 10px 30px 20px;
		height: 85vh;
		margin: 20px 0 0;
	}*/
	.modal_close {
		width: 40px;
		line-height: 40px;
	}
	.modal_close i {
		line-height: 44px;
	}

	.modal_box .modal_ill img {
		width: 100%;
	}
	.modal_box .modal_title {
		font-size: 1.8rem;
		padding: 10px 0 0 0;
	}
	.modal_box .modal_txt {
		text-align: left;
		font-size: 1.5rem;
	}
	.modal_box .modal_txt.intro{
		text-align: left;
		font-size: 1.6rem;
	}
	.modal_box .modal_txt.s {
		font-size: 1.3rem;
	}
	.modal_box .modal_txt.bg {
		padding: 7px 7px;
		margin: 5px 0 0;
	}
	.modal-point{
		margin: 30px 0 10px;
		padding: 30px 10px 20px 20px;
		border-width: 3px;
		border-radius: 10px;
	}
	.modal-point-title{
		font-size: 1.5rem;
		left: 10px;
		right: 10px;
	}
	.modal-point-list li{
		font-size: 1.5rem;
		line-height: 1.5;
	}
	.modal-point-list li:nth-child(2){
		margin: 10px 0 0;
	}
	.modal-point-list li span{
		font-size: 1.6rem;
	}
	
	.modal-value{
		padding: 0;
	}
	.modal-value-list li{
		font-size: 1.5rem;
		padding: 22px 10px 10px;
	}
	.modal-value-list li span{
		left: 10px;	
	}
	.modal_box .table06{
		margin: 30px 0 0;
	}
	
	.modal_box td, 
	.modal_box th{
		font-size: 1.3rem;
		padding: 5px;
	}
	
}

.tooltip{
    position: relative;
    cursor: pointer;
}
.description {
    display: none;
    position: absolute;
    padding: 15px 15px 10px;
    font-size: 12px;
    line-height: 1.6em;
    border-radius: 5px;
    background: #ffbf00;
    width: 300px;
	box-shadow: 0px 0px 15px -5px #777777;
}
.description:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    border: 15px solid transparent;
    border-top: 15px solid #ffbf00;
    margin-left: -15px;
	
}
.tooltip:hover .description{
    display: inline-block;
    top: -250px;
    left: 0px;
}
.tooltip.tooltip02:hover .description{
    top: -204px;
	left: -40px;
	width: 380px;
}
.tooltip.tooltip03:hover .description{
	top: -226px;
    left: auto;
    width: 390px;
    right: -40px;
}
.tooltip.tooltip04:hover .description{
	top: -249px;
	left: auto;
	right: 0;
}
.tooltip.tooltip05:hover .description{
	top: -203px;
}
.tooltip.tooltip06 .table-title{
	font-size: 1.3rem;
}
.tooltip.tooltip06:hover .description{
	top: -182px;
}
.tooltip.tooltip07:hover .description{
	top: -316px;
}
.tooltip.tooltip08:hover .description{
	left: auto;
	right: 0;
	top: -227px;
}
.tooltip.tooltip09:hover .description{
	top: -226px;
}
.tooltip.tooltip10:hover .description{
	top: -293px;
}
.tooltip.tooltip11:hover .description{
	top: -293px;
}
.tooltip.tooltip12:hover .description{
	left: auto;
    right: 0;
    top: -316px;
}
.tooltip .disc-list-txt{
	

    font-size: 1.4rem;
    line-height: 1.6;
	margin: 7px 0 0;
	padding: 0;
}

@media screen and (max-width: 768px){
	.modal-scroll .table06{
		position: relative;
	}
	.tooltip{
		position: inherit;
	}
	.description{
		font-size: 1.3rem;	
	}
	.tooltip:hover .description{
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		width: 300px;
		z-index: 1;
		top: auto;
		bottom: 270px;
	}
	.tooltip.tooltip01:hover .description{
		margin: 0 0 0 ;
		top: auto;
	}
	.tooltip.tooltip02:hover .description{
		left: 50%;
		width: 300px;
		margin: 0;
		top: auto;
	}
	.tooltip.tooltip02 .description:before{
		margin: 0 0 0 -50px;
	}
	.tooltip.tooltip03:hover .description{
		left: 50%;
		width: 300px;
		right: auto;
		top: auto;
	}
	.tooltip.tooltip03 .description:before{
		margin: 0 0 0 50px;
	}
	.tooltip.tooltip04:hover .description{
		left: 50%;
		right: auto;
		top: auto;
	}
	.tooltip.tooltip05:hover .description{
		top: auto;
	}
	.tooltip.tooltip06:hover .description{
		top: auto;
	}
	.tooltip.tooltip07:hover .description{
		top: auto;
        bottom: 186px;
	}
	.tooltip.tooltip08:hover .description{
		left: 50%;
		right: auto;
		top: auto;
	}
	.tooltip.tooltip09:hover .description{
		top: auto;
	}
	.tooltip.tooltip10:hover .description{
		top: auto;
        bottom: 212px;
	}
	.tooltip.tooltip11:hover .description{
		top: auto;
        bottom: 212px;
	}
	.tooltip.tooltip12:hover .description{
		left: 50%;
		right: auto;
		top: auto;
        bottom: 192px;
	}
	
	.description:before{
		display: none;
}
}

/*レーダーチャート項目説明*/
.chart-explanation-area{
    padding: 0 20px 80px;
}
.chart-explanation-area .chart-explanation-box {
	text-align: center;
}

/*アコーディオン形式*/
.chart-explanation-area .chart-explanation-box .chart-title {
    font-size: 1.2em;
    font-weight: bold;
    background-color: #ffbf00;
    color: #fff;
    padding: 20px 220px;
    border-radius: 5px;
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    cursor: pointer;
    position: relative;
    left: 0;
    right: 0;
    z-index: 2;
	transition: .2s;
}

.chart-explanation-area .chart-explanation-box .chart-title:hover{
    background-color: #ffa700;
}

.chart-explanation-area .chart-explanation-box .chart-title .toggle-icon {
	position: absolute;
    right: 20px;
    line-height: 1;
    background: #fffef6;
    border-radius: 50px;
    padding: 5px;
    color: #ffbf00;
    top: 15px;
    font-weight: inherit;
	transition: .2s;
}

.chart-explanation-area .chart-explanation-box .chart-title:hover .toggle-icon{
     color: #ffa700;
}


/* アコーディオンのコンテンツ */
.chart-explanation-area .chart-explanation-box .chart-box {
    display: none;
    padding: 10px 5px 20px 20px;
    border: 1px solid #ebda92;
    background-color: #fff;
    text-align: left;
    margin: -5px 60px;
	border-radius: 0 0 5px 5px;
}

/* アニメーションを追加 */
.chart-explanation-area .chart-explanation-box .chart-box.open {
    display: block;
    animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
.chart-explanation-area .chart-title {
    font-size: 2.4rem;
    font-weight: bold;
    color: #ffbf00;
    position: relative;
    font-family: 'Zen Maru Gothic', sans-serif;
}
.chart-explanation-area .chart-box{
    position: relative;
}
.chart-explanation-area .chart-labels{
    font-weight: bold;
	font-size: 1.4rem;
    color: #8f8f8f;
	padding: 0 10px 0 0;
}
.chart-explanation-area .basic-txt {
	font-size: 1.3rem;
    margin: 15px 0 0;
}

@media screen and (max-width: 768px){
	
	.chart-explanation-area{
		padding: 0 5px 35px;
	}
	.chart-explanation-area .chart-explanation-box {
	}
	
	.chart-explanation-area .chart-explanation-box .chart-title{
		padding: 15px 0 15px 30px;
        width: 90%;
        font-size: 1.6rem;
        text-align: left;
	}
	
	.chart-explanation-area .chart-title {
		font-size: 2.0rem;
	}

	.chart-explanation-area .chart-explanation-box .chart-title .toggle-icon {
		font-size: 1.2rem;
		right: 10px;
		padding: 5px;
		top: 12px;
	}
	
	.chart-explanation-area .chart-explanation-box .chart-box {
		padding: 10px 5px 20px 20px;
		margin: -6px auto;
		width: 90%;
	}

	.chart-explanation-area .chart-box{
		position: relative;
	}
	.chart-explanation-area .chart-labels{
		display: block;
		padding: 0 0;
	}
	.chart-explanation-area .basic-txt {
		margin: 10px 0 0;
		font-size: 1.5rem;
	}
	
}

/* 配置人員 PC表示 */
.staff-table th {
	font-size: 1.4rem;
	padding: 10px 0;
}
.staff-table th a{
	text-decoration: underline;
}
.staff-table th.s-txt {
	font-size: 1.2rem;
}

.staff-table td.s-txt {
	font-size: 1.4rem;
}

.staff-table .protocol{  
	font-size: 1.2rem;
    line-height: 1;
    padding: 5px 12px 4px;
    white-space: nowrap;
    border-radius: 20px;
    border: solid 1px  #FF8226;
    background: #fff;
    color:  #FF8226;
    display: block;
    margin: 0 auto 5px;
    max-width: 60px; 
}
.staff-table .protocol-01{
	font-size: 1.2rem;
    line-height: 1;
    padding: 5px 12px 4px;
    white-space: nowrap;
    border-radius: 20px;
    border: solid 1px #1EBBD1;
    background: #fff;
    color: #1EBBD1;
    display: block;
    margin: 0 auto 5px;
    max-width: 60px;
}

/* 配置人員 スマホで2列×12行表示 */
@media screen and (max-width: 768px) {
	
	.staff-table tbody {
		display: flex;
		flex-wrap: wrap;
	}

	.staff-table tr {
		display: flex;
		flex-direction: column;
		width: 50%;  
		box-sizing: border-box;
	}

	.staff-table th,
	.staff-table td {        
		border: none;
		border-bottom: 1px solid #ebda92;
		padding: 0 20px;
		display:grid; 
		align-content:center;
	}
	
	.staff-table th{   
		border-right: 1px solid #ebda92;
	}
	
	.staff-table th.last,
	.staff-table td.last { 
		border-bottom: none;
	}
	
	.staff-table th.sp-txt {
		font-size: 1.2rem;
	}
	
	.treatment-area table.protocol th{
		font-size: 1.3rem;
	}
	
	.staff-table .protocol,.staff-table .protocol-01{
		font-size: 1.0rem;
		margin: 0 auto;
		padding: 3px 12px 2px;
	}
	
}

/*フリーエリア3*/

.jisram-area table, .jisram-area td, .jisram-area th {
    border: 1px solid #ebda92;
    border-collapse: collapse;
    text-align: center;
    width: 100%;
    table-layout: fixed;
    background: #fff;
}

.detail-contents .jisram-area table tr:nth-of-type(odd) th, .detail-contents .jisram-area table tr:nth-of-type(odd) td {
    background: #fff0b3;
}

.detail-contents .jisram-area table td{
	border: 1px solid #ebda92;
}

.jisram-area table tr td.t-td {
    background: #fff0b3 !important;
}

.jisram-area table tr td.wh {
    background: #fff !important;
}

p.img-jisram {
	width: 300px!important;
}
.img-jisram img{
	width: 100%;
}

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

	.detail-contents .jisram-area table td{
		font-size: 1.4rem;
	}
	.jisram-area table td {
        padding: 5px 3px;
    }

	p.img-jisram {
		width: 100%!important;
		margin: 0 0 5px;
	}
}
