@charset "UTF-8";



	
/* matching-list
------------------------------  */
#matching-list .explanation {
	margin-bottom: 4vw;
}

#matching-list .sort .cell {
	margin-bottom: 3vw;
}
#matching-list .sort .cell:nth-last-child(1) {
	margin-bottom: 0;
}
	#matching-list .sort .cell h2 {
		font-weight: 700;
		line-height: 1.3em;
		padding-bottom: 1vw;
		margin-bottom: 1vw;
		border-bottom: solid 1px rgba(255,255,255,0.3);
	}

	#matching-list .sort .cell .sort-list {
		padding: 0 3vw;
	}
		#matching-list .sort .cell .sort-list li {
			margin-top: 1vw;
			margin-right: 0.8vw;
		}
		#matching-list .sort .cell .sort-list li:nth-last-child(1) {
			margin-right: 0;
		}
			#matching-list .sort .cell .sort-list li input {
				clip: rect(1px, 1px, 1px, 1px);
				position: absolute;
			}

			#matching-list .sort .cell .sort-list li label {
				display: flex;
				justify-content: center;
				align-items: center;
				box-sizing: border-box;
				padding: 0 1.5vw;
				height: 2.4vw;
				border-radius: 1.2vw;
				line-height: 2.4vw;
				font-weight: 500;
				text-align: center;
				background: #fff;
				color: #22201E;
				border: none;
				transition: all .2s;
				cursor: pointer;
			}
			#matching-list .sort .cell .sort-list li input[type="checkbox"]:checked + label {
				background: #EBFF00;
			}

#matching-list .list {
	width: 103.5%;
	margin-top: 6vw;
	margin-left: -1.75%;
}
	#matching-list .list a.linkbox {
		display: block;
		width: 29.8%;
		margin-right: 1.75%;
		margin-left: 1.75%;
		margin-bottom: 6vw;
	}
		#matching-list .list a.linkbox .pht {
			border-radius: 1vw;
			width: 100%;
			aspect-ratio: 16 / 10;
		}
			#matching-list .list a.linkbox .pht img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}

		#matching-list .list a.linkbox .text {
			padding-top: 1.5vw;
			position: relative;
		}
		#matching-list .list a.linkbox .text:before {
			content: "";
			width: 2vw;
			height: 2vw;
			background: url("../img/common/btn_arrow_yellow.svg") no-repeat center / 100%;
			position: absolute;
			top: -1vw;
			right: 2vw;
		}
			#matching-list .list a.linkbox .text h4 {
				font-size: 1.6vw;
				font-weight: 700;
				line-height: 1.3em;
				margin-bottom: 1vw;
			}

			#matching-list .list a.linkbox .text .txt-14 {
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
				margin-bottom: 1.2vw;
			}

			#matching-list .list a.linkbox .text .info {
				display: flex;
				justify-content: flex-start;
				align-items: center;
			}
				#matching-list .list a.linkbox .text .info time {
					display: block;
					font-weight: 500;
					margin-right: 1.5vw;
				}

				#matching-list .list a.linkbox .text .info ul.tag li {
					height: 1.5vw;
					margin-top: 0.3vw;
					margin-bottom: 0.3vw;
					margin-right: 0.5vw;
					border-radius: 0.75vw;
					background: #fff;
					color: #3D3D3D;
					font-weight: 500;
					padding: 0 0.5vw;
					line-height: 1.5vw;
				}
@media screen and (max-width: 767px) {
	#matching-list .explanation {
		margin-bottom: 10vw;
	}

	#matching-list .sort .cell {
		margin-bottom: 9vw;
	}
		#matching-list .sort .cell h2 {
			padding-bottom: 3vw;
			margin-bottom: 3vw;
		}

		#matching-list .sort .cell .sort-list {
			padding: 0;
		}
			#matching-list .sort .cell .sort-list li {
				margin-top: 2.5vw;
				margin-right: 2.5vw;
			}
				#matching-list .sort .cell .sort-list li label {
					padding: 0 2vw;
					height: 6vw;
					border-radius: 3vw;
					line-height: 6vw;
				}
	
	#matching-list .list {
		width: 100%;
		margin-top: 14vw;
		margin-left: 0;
	}
		#matching-list .list a.linkbox {
			display: block;
			width: 100%;
			margin-right: 0;
			margin-left: 0;
			margin-bottom: 10vw;
		}
			#matching-list .list a.linkbox .pht {
				border-radius: 2vw;
			}

			#matching-list .list a.linkbox .text {
				padding-top: 5vw;
			}
			#matching-list .list a.linkbox .text:before {
				width: 7vw;
				height: 7vw;
				top: -3.5vw;
				right: 4vw;
			}
				#matching-list .list a.linkbox .text h4 {
					font-size: 4.4vw;
					margin-bottom: 3vw;
				}

				#matching-list .list a.linkbox .text .txt-14 {
					margin-bottom: 4vw;
				}

				#matching-list .list a.linkbox .text .info time {
					margin-right: 3.5vw;
				}

				#matching-list .list a.linkbox .text .info ul.tag li {
					height: 5vw;
					margin-top: 0.8vw;
					margin-bottom: 0.8vw;
					margin-right: 1.5vw;
					border-radius: 2.5vw;
					padding: 0 2vw;
					line-height: 5vw;
				}
}



	
/* news-detail
------------------------------  */
#matching-detail time.en {
	display: block;
	line-height: 1;
	margin-bottom: 1.5vw;
}

#matching-detail h1 {
	font-size: 2.6vw;
	font-weight: 500;
	line-height: 1.5em;
	margin-bottom: 5vw;
}

#matching-detail .thumbnail {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
	border-radius: 1.5vw;
	overflow: hidden;
	margin-bottom: 3vw;
}
	#matching-detail .thumbnail img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

#matching-detail .info {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
	#matching-detail .info .head {
		font-size: 1.6vw;
		font-weight: 700;
		line-height: 1.3em;
		margin-right: 2vw;
	}

	#matching-detail .info .cat a {
		display: inline-block;
		background: #fff;
		color: #3D3D3D;
		padding: 0 1vw;
		height: 1.6vw;
		line-height: 1.6vw;
		border-radius: 0.8vw;
		font-weight: 500;
		margin-top: 0.2vw;
		margin-right: 0.7vw;
	}
	#matching-detail .info .cat a:nth-last-child(1) {
		margin-right: 0;
	}
	#matching-detail .info .cat a:hover {
		background: #EAFF01;
	}

#matching-detail .member-area {
	padding-top: 10vw;
}
	#matching-detail .member-area .row {
		margin-bottom: 7vw;
	}
	#matching-detail .member-area .row:nth-last-child(1) {
		margin-bottom: 0;
	}
		#matching-detail .member-area .row .pht {
			width: 22%;
			order: 1;
		}
			#matching-detail .member-area .row .pht img {
				border-radius: 1vw;
				overflow: hidden;
			}

		#matching-detail .member-area .row .text {
			width: 78%;
			padding-left: 3vw;
			order: 2;
		}
			#matching-detail .member-area .row .text .label {
				display: inline-block;
				border: solid 1px rgba(255,255,255,0.3);
				border-radius: 0.5vw;
				padding: 0.6vw 1.5vw;
				font-weight: 500;
				line-height: 1;
				margin-bottom: 2vw;
			}

			#matching-detail .member-area .row .text .name {
				font-weight: 500;
				line-height: 1.5em;
				border-bottom: solid 1px rgba(255,255,255,0.3);
				padding-bottom: 1.2vw;
				margin-bottom: 1.5vw;
			}

#matching-detail .free-area {
	padding-top: 12vw;
}
	#matching-detail .free-area h2 {
		font-size: 2.2vw;
		font-weight: 700;
		line-height: 1.3em;
		margin-bottom: 3vw;
	}

	#matching-detail .free-area img {
		border-radius: 1vw;
		margin-top: 4vw;
	}

#matching-detail .content-area {
	padding-top: 12vw;
}
	#matching-detail .content-area .text-pht {
		margin-bottom: 10vw;
	}
	#matching-detail .content-area .text-pht.pht-none {
		display: block;
	}
	#matching-detail .content-area .text-pht:nth-last-child(1) {
		margin-bottom: 0;
	}
		#matching-detail .content-area .text-pht .text {
			width: 46%;
			padding-top: 2vw;
		}
		#matching-detail .content-area .text-pht:nth-child(2n) .text {
			order: 2;
		}
		#matching-detail .content-area .text-pht.pht-none .text {
			width: 100%;
			padding-top: 0;
		}
			#matching-detail .content-area .text-pht .text h2 {
				font-size: 2.2vw;
				font-weight: 700;
				line-height: 1.3em;
				margin-bottom: 3vw;
			}

		#matching-detail .content-area .text-pht .pht {
			width: 46%;
		}
		#matching-detail .content-area .text-pht:nth-child(2n) .pht {
			order: 1;
		}
		#matching-detail .content-area .text-pht.pht-none .pht {
			display: none;
		}
			#matching-detail .content-area .text-pht .pht img {
				border-radius: 1vw;
			}

#matching-detail .other-area {
	border-top: solid 1px rgba(255,255,255,0.3);
	padding-top: 6vw;
	margin-top: 12vw;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}
	#matching-detail .other-area .box-center {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 36%;
		order: 1;
	}
		#matching-detail .other-area .box-center .btn-back {
			width: 17vw;
			border-radius: 2vw;
			overflow: hidden;
			background: #EAFF01;
			margin: 0 auto;
		}
			#matching-detail .other-area .box-center .btn-back a {
				display: flex;
				justify-content: center;
				align-items: center;
				height: 4vw;
				font-size: 1.3vw;
				font-weight: 700;
				color: #3D3D3D;
				text-align: center;
				position: relative;
				z-index: 2;
			}
			#matching-detail .other-area .box-center .btn-back a:after {
				content: "";
				width: 2vw;
				height: 2vw;
				background: url("../img/common/icon_arrow_back.svg") no-repeat center / 100%;
				position: absolute;
				top: 50%;
				left: 1.1vw;
				margin-top: -1vw;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#matching-detail .other-area .box-center .btn-back a:before {
				content: "";
				width: 0;
				height: 100%;
				background: #fff;
				position: absolute;
				top: 0;
				left: 0;
				z-index: -1;
			}
			#matching-detail .other-area .box-center .btn-back a:hover:before {
				width: 100%;
			}

	#matching-detail .other-area a.linkbox {
		display: block;
		width: 32%;
	}
	#matching-detail .other-area a.linkbox.next {
		order: 2;
	}
		#matching-detail .other-area a.linkbox .area {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: 2vw;
		}
			#matching-detail .other-area a.linkbox .area .pht {
				width: 48%;
				aspect-ratio: 4 / 3;
				border-radius: 1vw;
			}
			#matching-detail .other-area a.linkbox.next .area .pht {
				order: 2;
			}
				#matching-detail .other-area a.linkbox .area .pht img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}

			#matching-detail .other-area a.linkbox .area .text {
				width: 52%;
			}
			#matching-detail .other-area a.linkbox.prev .area .text {
				padding-left: 4%;
			}
			#matching-detail .other-area a.linkbox.next .area .text {
				padding-right: 4%;
				order: 1;
			}
				#matching-detail .other-area a.linkbox .area .text h3 {
					line-height: 1.4em;
				}

				#matching-detail .other-area a.linkbox .area .text .cat span {
					display: inline-block;
					background: #fff;
					color: #3D3D3D;
					padding: 0 0.5vw;
					height: 1.6vw;
					line-height: 1.6vw;
					border-radius: 0.8vw;
					font-weight: 500;
					margin-top: 1vw;
					margin-right: 0.5vw;
				}

		#matching-detail .other-area a.linkbox .arrow {
			height: 2vw;
			line-height: 1.5vw;
			position: relative;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#matching-detail .other-area a.linkbox .arrow:before {
			content: "";
			width: 73%;
			height: 1px;
			background: rgba(255,255,255,0.3);
			position: absolute;
			top: 50%;
			margin-top: -0.5px;
			left: 13%;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#matching-detail .other-area a.linkbox.next .arrow:before {
			left: auto;
			right: 13%;
		}
		#matching-detail .other-area a.linkbox.prev .arrow {
			text-align: right;
			background: url("../img/common/btn_arrow_white_prev.svg") no-repeat left center / 2vw;
		}
		#matching-detail .other-area a.linkbox.next .arrow {
			background: url("../img/common/btn_arrow_white.svg") no-repeat right center / 2vw;
		}
		#matching-detail .other-area a.linkbox:hover .arrow {
			color: #EAFF01;
		}
		#matching-detail .other-area a.linkbox:hover .arrow:before {
			background: #EAFF01;
		}
		#matching-detail .other-area a.linkbox.prev:hover .arrow {
			background: url("../img/common/btn_arrow_yellow_prev.svg") no-repeat left center / 2vw;
		}
		#matching-detail .other-area a.linkbox.next:hover .arrow {
			background: url("../img/common/btn_arrow_yellow.svg") no-repeat right center / 2vw;
		}
@media screen and (max-width: 767px) {
	#matching-detail time.en {
		margin-bottom: 4vw;
	}

	#matching-detail h1 {
		font-size: 5.6vw;
		margin-bottom: 8vw;
	}

	#matching-detail .thumbnail {
		border-radius: 3vw;
		margin-bottom: 6vw;
	}

	#matching-detail .info {
		display: block;
	}
		#matching-detail .info .head {
			font-size: 5.0vw;
			margin-right: 0;
			margin-bottom: 2vw;
		}

		#matching-detail .info .cat a {
			padding: 0 2vw;
			margin-right: 2vw;
			height: 5vw;
			line-height: 5vw;
			border-radius: 2.5vw;
			margin-top: 2vw;
		}

	#matching-detail .member-area {
		padding: 18vw 6vw 0 6vw;
	}
		#matching-detail .member-area .row {
			display: block;
			margin-bottom: 14vw;
		}
			#matching-detail .member-area .row .pht {
				width: 100%;
			}
				#matching-detail .member-area .row .pht img {
					border-radius: 2vw;
				}

			#matching-detail .member-area .row .text {
				width: 100%;
				padding-left: 0;
				margin-bottom: 6vw;
			}
				#matching-detail .member-area .row .text .label {
					border-radius: 1vw;
					padding: 1.5vw 3vw;
					margin-bottom: 4vw;
				}

				#matching-detail .member-area .row .text .name {
					padding-bottom: 4vw;
					margin-bottom: 4vw;
				}

	#matching-detail .free-area {
		padding-top: 15vw;
	}
		#matching-detail .free-area h2 {
			font-size: 5.2vw;
			margin-bottom: 4vw;
		}

		#matching-detail .free-area img {
			border-radius: 2vw;
			margin-top: 8vw;
		}

	#matching-detail .content-area {
		padding-top: 15vw;
	}
		#matching-detail .content-area .text-pht {
			display: block;
			margin-bottom: 15vw;
		}
		#matching-detail .content-area .text-pht:nth-last-child(1) {
			margin-bottom: 0;
		}
			#matching-detail .content-area .text-pht .text {
				width: 100%;
				padding-top: 0;
				padding-bottom: 8vw;
			}
			#matching-detail .content-area .text-pht.pht-none .text {
				padding-bottom: 0;
			}
				#matching-detail .content-area .text-pht .text h2 {
					font-size: 5.2vw;
					margin-bottom: 4vw;
				}

			#matching-detail .content-area .text-pht .pht {
				width: 100%;
			}
				#matching-detail .content-area .text-pht .pht img {
					border-radius: 2vw;
				}

	#matching-detail .other-area {
		margin-top: 15vw;
		padding-top: 12vw;
		display: -webkit-flex;
		justify-content: space-between;
		padding-bottom: 20vw;
	}
		#matching-detail .other-area .box-center {
			display: block;
			width: 100%;
			order: 3;
			position: absolute;
			bottom: 0;
			left: 0;
		}
			#matching-detail .other-area .box-center .btn-back {
				width: 50vw;
				border-radius: 6vw;
			}
				#matching-detail .other-area .box-center .btn-back a {
					height: 12vw;
					font-size: 4.0vw;
				}
				#matching-detail .other-area .box-center .btn-back a:after {
					width: 6vw;
					height: 6vw;
					left: 3vw;
					margin-top: -3vw;
				}

		#matching-detail .other-area a.linkbox {
			width: 46%;
			padding-bottom: 4vw;
			position: relative;
		}
		#matching-detail .other-area a.linkbox.prev {
			margin-right: 8%;
		}
			#matching-detail .other-area a.linkbox .area {
				display: block;
				margin-bottom: 6vw;
			}
				#matching-detail .other-area a.linkbox .area .pht {
					width: 100%;
					aspect-ratio: 16 / 9;
					border-radius: 2vw;
				}

				#matching-detail .other-area a.linkbox .area .text {
					width: 100%;
					padding-top: 4vw;
				}
				#matching-detail .other-area a.linkbox.prev .area .text {
					padding-left: 0;
				}
				#matching-detail .other-area a.linkbox.next .area .text {
					padding-right: 0;
				}
					#matching-detail .other-area a.linkbox .area .text h3 {
						line-height: 1.5em;
						margin-bottom: 1vw;
					}

					#matching-detail .other-area a.linkbox .area .text .cat span {
						padding: 0 2vw;
						margin-right: 2vw;
						height: 5vw;
						line-height: 5vw;
						border-radius: 2.5vw;
						margin-top: 2vw;
					}

			#matching-detail .other-area a.linkbox .arrow {
				width: 100%;
				height: 5vw;
				line-height: 4.5vw;
				position: absolute;
				bottom: 0;
				left: 0;
			}
			#matching-detail .other-area a.linkbox .arrow:before {
				width: 49%;
				left: 22%;
			}
			#matching-detail .other-area a.linkbox.next .arrow:before {
				right: 22%;
			}
			#matching-detail .other-area a.linkbox.prev .arrow {
				background: url("../img/common/btn_arrow_white_prev.svg") no-repeat left center / 5vw;
			}
			#matching-detail .other-area a.linkbox.next .arrow {
				background: url("../img/common/btn_arrow_white.svg") no-repeat right center / 5vw;
			}
			#matching-detail .other-area a.linkbox.prev:hover .arrow {
				background: url("../img/common/btn_arrow_yellow_prev.svg") no-repeat left center / 5vw;
			}
			#matching-detail .other-area a.linkbox.next:hover .arrow {
				background: url("../img/common/btn_arrow_yellow.svg") no-repeat right center / 5vw;
			}
}