/* ====================================
	facility
==================================== */


/* --------------------
	floor
-------------------- */
.floor__area {
	background-image: url("../facility/floor__sub.svg");
	background-repeat: no-repeat;
	background-position: 30px 0px;
	background-size: 18px 360px;
	padding: 0 20px 50px 20px;
}

.floor__wrap {
	max-width: 1120px;
	margin: 0 auto 30px auto;
}

@media only screen and (max-width: 1279px) {
	.floor__area {
		background-image: none;
		padding: 100px 20px 50px 20px;
	}
}

/* --------------------
	facility
-------------------- */
.facility__area {
	margin: 0 0 100px 0;
	position: relative;
	padding: 0 20px;
}

.facility__area::before {
	content: "";
	position: absolute;
	top: -100px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 100px 100vw;
}

.facility__area::after {
	content: "";
	position: absolute;
	bottom: -100px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 100px 100vw 0 0;
}

.facility__wrap {
	max-width: 800px;
	margin: 100px auto 100px auto;
}

.facility__list {
	padding: 50px 0;
}

.facility__list > li {
	margin: 0 0 0 0;
	padding: 20px 20px;
	background-color: #ffffff;
	border-radius: 10px;
}

.facility__list ol {
	margin: 10px 0 0 0;
}

.facility__list ol > li {
	display: block;
	padding: 0 0 10px 1em;
	line-height: 1.5;

	text-indent: -1em;
}

.facility__list ol > li::before {
	content: "\25AA";
}

.facility__list h2 {
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0 0 10px 0;
	line-height: 30px;
}

.facility__list h2 span {
	display: inline-block;
	line-height: 30px;
	width: 30px;
	text-align: center;
	font-weight: bold;
	margin: 0 5px 0 0;
	color: #ffffff;
}

.facility__list li > div:nth-of-type(1) {
	border-radius: 10px 10px 0 0;
}

.facility__list li > div:nth-child(1) {
	padding: 10px 0;
}

.facility__list li > div:nth-child(2) {
	padding: 10px 10px;
}

/* num-1 */
.num-1 {
	background-color: rgba(0, 147, 204, 1.0);
}

.num-1::before {
	border-color: transparent transparent rgba(0, 147, 204, 1.0) transparent;
}

.num-1::after {
	border-color: rgba(0, 147, 204, 1.0) transparent transparent transparent;
}

.num-1 .facility__list li > div:nth-of-type(1),
.num-1 .facility__flex {
	background-color: rgba(0, 147, 204, 0.1);
}

.num-1 .facility__list span {
	background-color: rgba(0, 147, 204, 1.0);
}

.num-1 .facility__list ol > li::before {
	color: rgba(0, 147, 204, 1.0);
}

/* num-2 */
.num-2 {
	background-color: rgba(93, 78, 158, 1.0);
}

.num-2::before {
	border-color: transparent transparent rgba(93, 78, 158, 1.0) transparent;
}

.num-2::after {
	border-color: rgba(93, 78, 158, 1.0) transparent transparent transparent;
}

.num-2 .facility__list li > div:nth-of-type(1),
.num-2 .facility__flex {
	background-color: rgba(93, 78, 158, 0.1);
}

.num-2 .facility__list span {
	background-color: rgba(93, 78, 158, 1.0);
}

.num-2 .facility__list ol > li::before {
	color: rgba(93, 78, 158, 1.0);
}

/* num-3 */
.num-3 {
	background-color: rgba(218, 71, 58, 1.0);
}

.num-3::before {
	border-color: transparent transparent rgba(218, 71, 58, 1.0) transparent;
}

.num-3::after {
	border-color: rgba(218, 71, 58, 1.0) transparent transparent transparent;
}

.num-3 .facility__list li > div:nth-of-type(1),
.num-3 .facility__flex {
	background-color: rgba(218, 71, 58, 0.1);
}

.num-3 .facility__list span {
	background-color: rgba(218, 71, 58, 1.0);
}

.num-3 .facility__list ol > li::before {
	color: rgba(218, 71, 58, 1.0);
}

/* num-4 */
.num-4 {
	background-color: rgba(69, 176, 53, 1.0);
}

.num-4::before {
	border-color: transparent transparent rgba(69, 176, 53, 1.0) transparent;
}

.num-4::after {
	border-color: rgba(69, 176, 53, 1.0) transparent transparent transparent;
}

.num-4 .facility__list li > div:nth-of-type(1),
.num-4 .facility__flex {
	background-color: rgba(69, 176, 53, 0.1);
}

.num-4 .facility__list span {
	background-color: rgba(69, 176, 53, 1.0);
}

.num-4 .facility__list ol > li::before {
	color: rgba(69, 176, 53, 1.0);
}

/* num-5 */
.num-5 {
	background-color: rgba(235, 97, 0, 1.0);
}

.num-5::before {
	border-color: transparent transparent rgba(235, 97, 0, 1.0) transparent;
}

.num-5::after {
	border-color: rgba(235, 97, 0, 1.0) transparent transparent transparent;
}

.num-5 .facility__list li > div:nth-of-type(1),
.num-5 .facility__flex {
	background-color: rgba(235, 97, 0, 0.1);
}

.num-5 .facility__list span {
	background-color: rgba(235, 97, 0, 1.0);
}

.num-5 .facility__list ol > li::before {
	color: rgba(235, 97, 0, 1.0);
}

/* num-6 */
.num-6 {
	background-color: rgba(251, 196, 0, 1.0);
}

.num-6::before {
	border-color: transparent transparent rgba(251, 196, 0, 1.0) transparent;
}

.num-6::after {
	border-color: rgba(251, 196, 0, 1.0) transparent transparent transparent;
}

.num-6 .facility__list li > div:nth-of-type(1),
.num-6 .facility__flex {
	background-color: rgba(251, 196, 0, 0.1);
}

.num-6 .facility__list span {
	background-color: rgba(251, 196, 0, 1.0);
}

.num-6 .facility__list ol > li::before {
	color: rgba(251, 196, 0, 1.0);
}

.facility__list h2 small {
	font-size: 1.2rem;
	color: #cccccc;
	margin: 0 0 0 1em;
}

.facility__list h2 small.cation {
	color: #E72334;
}

.facility__list h2 small::before {
	content: "（";
	padding: 0 0.5em 0 0.5em;
}

.facility__list h2 small::after {
	content: ")";
	padding: 0 0.5em 0 0.5em;
}

.facility__list p {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #333333;
	padding: 10px 0 0 0;
	background-color: #ffffff;
}

.facility__flex {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 0 0 0 0;
	padding: 10px;
	border-radius: 0 0 10px 10px;
}

.facility__flex > div {
	width: calc(50% - 5px);
}

.facility__flex img {
	border-radius: 10px;
}

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

	.facility__list h2 small {
		display: block;
		margin: 10px 0 0 0;
		max-width: 200px;
	}

	.facility__flex {
		display: block;
	}

	.facility__flex > div {
		width: 100%;
	}

	.facility__flex > div:nth-child(1) {
		margin: 0 0 10px 0;
	}
}

/* --------------------
	guide
-------------------- */
.guide__area {
	background-image: url("../facility/guide__sub.svg");
	background-repeat: no-repeat;
	background-position: 30px 200px;
	background-size: 18px 360px;

	max-width: 1120px;
	margin: 0 auto 30px auto;
	padding: 200px 20px 50px 20px;
}

@media only screen and (max-width: 1279px) {
	.guide__area {
		background-image: none;
	}
}

.guide__wrap {
	max-width: 800px;
	margin: 0 auto;
}

.guide__wrap h2 {
	color: #1797CA;
}

.guide__wrap h3 {
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0 0 0.5em 0;
	color: #1797CA;
}

.guide__wrap p {
	font-size: 1.6rem;
	line-height: 1.5;
	margin: 0 0 1em 0;
}

.guide__wrap p.small {
	font-size: 1.2rem;
}

.link__inner {
	display: inline-block;
	color: #E72334;
	padding: 0 0.2em;
	text-decoration: underline;
}

.guide__block {
	margin: 0 0 60px 0;
	padding: 20px;
	border: 3px solid #1797CA;
	border-radius: 10px;
	background-color: rgba(23, 151, 202, 0.05);
}

.guide__list {
	margin: 0 0 0 0;
}

.guide__list p {
	margin: 0 0 0 0;
}

.guide__list p::before {
	content: "・";
}

.guide__list > li {
	padding: 0 0 10px 0;
}

.guide__list > li > ul {
	margin: 0 0 0 1em;
}

.guide__list > li > ul > li > ul {
	margin: 0 0 0 1em;
}

.guide__list > li > ul > li > ul > li p::before {
	content: "※";
}

.guide__block table {
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0 0 30px 0;
	width: 100%;
}

.guide__block table thead td {
	background-color: #1797CA;
	color: #ffffff;
}

.guide__block table tr:nth-child(even) {
	background-color: #ffffff;
}

.guide__block table tr:nth-child(odd) {
	background-color: #f5f5f5;
}

.guide__block table tr:hover {
	background-color: #dddddd;
}

.guide__block table th,
.guide__block table td {
	font-size: 1.6rem;
	padding: 10px 10px;
	border: 1px solid #cccccc;
	vertical-align: middle;
	line-height: 1.5;
}

.guide__block table span {
	display: block;
	font-size: 1.2rem;
	color: #999999;
	padding: 5px 0 0 0;
}

.guide__block .card,
.guide__block .socks {
	max-width: 100%;
	width: auto;
}

.guide__flex {
	display: flex;
	width: 100%;
	margin: 0 0 30px 0;
}

.guide__flex div:nth-child(1) {
	width: calc(100% - 200px);
	padding: 0 10px 0 0;
}

.guide__flex div:nth-child(1) .btn__join {
	margin: 0 auto 0 0;
}

.guide__flex div:nth-child(2) {
	width: 200px;
}

@media only screen and (max-width: 767px) {
	.guide__flex {
		display: block;
	}

	.guide__flex div:nth-child(1),
	.guide__flex div:nth-child(2) {
		width: 100%;
	}

	.guide__flex div:nth-child(2) img {
		margin: 0 auto;
	}

	.guide__flex div:nth-child(1) .btn__join {
		margin: 0 auto 20px auto;
	}
}

@media only screen and (max-width: 1024px) {}

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

@media only screen and (max-width: 415px) {}
