@charset "utf-8";
/* ===========================================================
	Title: portfolio.css
	Created:	2016-10-20
=========================================================== */
/*　
	portfolio-category
	list
	details
	map
	
=========================================================== */
/* ===========================================================
	portfolio-category
=========================================================== */
/* portfolio-list
----------------------------------------------------------- */
.portfolio__type1 .area {
	background-color: #5e87b7;
}
.portfolio__type2 .area {
	background-color: #7f9a6c;
}
.portfolio__type3 .area {
	background-color: #d6bd5f;
}
.portfolio__type4 .area {
	background-color: #E2917F;
}
.portfolio__type5 .area {
	background-color: #b5b6b6;
}
.portfolio__type1 td {
	background-color: #e8eef5;
}
.portfolio__type2 td {
	background-color: #edf1ea;
}
.portfolio__type3 td {
	background-color: #f9f6e8;
}
.portfolio__type4 td {
	background-color: #fbefed;
}
.portfolio__type5 td {
	background-color: #f5f5f5;
}
/* portfolio-title
----------------------------------------------------------- */
.portfolio__type1 h1 {
	border-top-color: #5e87b7;
}
.portfolio__type1 h1 em {
	background-color: #5e87b7;
}
.portfolio__type1 h1 em.cat {
	color: #5e87b7;
}
.portfolio__type2 h1 {
	border-top-color: #7f9a6c;
}
.portfolio__type2 h1 em {
	background-color: #7f9a6c;
}
.portfolio__type2 h1 em.cat {
	color: #7f9a6c;
}
.portfolio__type3 h1 {
	border-top-color: #d6bd5f;
}
.portfolio__type3 h1 em {
	background-color: #d6bd5f;
}
.portfolio__type3 h1 em.cat {
	color: #d6bd5f;
}
.portfolio__type4 h1 {
	border-top-color: #E2917F;
}
.portfolio__type4 h1 em {
	background-color: #E2917F;
}
.portfolio__type4 h1 em.cat {
	color: #E2917F;
}
.portfolio__type5 h1 {
	border-top-color: #b5b6b6;
}
.portfolio__type5 h1 em {
	background-color: #b5b6b6;
}
.portfolio__type5 h1 em.cat {
	color: #b5b6b6;
}
/* portfolio-map
----------------------------------------------------------- */
p.portfolio__type1 em,  p.portfolio-type1 em {
	background-color: #5e87b7;
}
p.portfolio__type2 em,  p.portfolio-type2 em {
	background-color: #7f9a6c;
}
p.portfolio__type3 em,  p.portfolio-type3 em {
	background-color: #d6bd5f;
}
p.portfolio__type4 em,  p.portfolio-type4 em {
	background-color: #E2917F;
}
p.portfolio__type5 em,  p.portfolio-type5 em {
	background-color: #b5b6b6;
}
/* ===========================================================
	list
=========================================================== */
/* select-search
----------------------------------------------------------- */
.select-search {
	background-color: #f0f0f0;
	padding: 10px 10px;
	margin: 0 0 20px;
}
/*reset*/
.select-search input, .select-search button, .select-search select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.select-search input, .select-search button, .select-search select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
/*firefox*/
.select-search select {
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: '';
}
/*IE10*/
.select-search select::-ms-expand {
 display: none;
}
.select-search .select-warp {
	float: left;
	overflow: hidden; /* 伸ばした分を隠す */
	background-color: #fff;
	margin: 0 10px 0 0;
	position: relative;
}
/* select-warp */
.select-search .select-warp > select {
	width: 130%; /* UI分を伸ばす */
}
.select-search .select-warp:after {
	position: absolute;
	content: " ";
	top: 50%;
	right: 15px;
	width: 6px;
	height: 6px;
	border-right: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	margin: -6px 0 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(45deg);
}
.select-search select {
	height: 35px;
	line-height: 35px;
	padding: 0 60px 0 15px;
	font-size: 13px;
}
.select-search select:hover {
	cursor: pointer;
}
.select-search #purpose li span {
	display: inline-block;
	height: 32px;
	vertical-align: top;
	padding-top: 5px;
	padding-left: 10px;
}
/* input-warp */
.input-warp {
	display: inline-block;
	float: left;
	height: 35px;
	line-height: 35px;
}
.input-warp span {
	margin: 0 5px 0 0;
}
.input-warp input[type="text"] {
	height: 35px;
	line-height: 35px;
	padding: 0 10px;
	font-size: 13px;
	background-color: #fff;
	margin: 0 10px 0 0;
}
/* btn-warp */
.btn-warp {
	display: inline-block;
	float: right;
	height: 35px;
	line-height: 35px;
}
.select-search input[type="submit"], .select-search input[type="button"] {
	color: #fff;
	height: 35px;
	line-height: 35px;
	padding: 0 15px;
	font-size: 13px;
	transition: .3s ease-in-out;
	border-color: transparent;
	background-color: #E60012;
}
.select-search input[type="submit"]:hover, .select-search input[type="button"]:hover {
	opacity: 0.6;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.select-search p.margin-right-20{
		display: none;
	}
	
	.select-warp, .input-warp{
		margin-bottom: 15px !important;
	}
}
@media screen and (max-width: 480px) {
	.select-search .btn-warp{
		float: left;
	}
}
/* portfolio-list
----------------------------------------------------------- */
table.portfolio-list {
	border: none;
}
table.portfolio-list th {
	text-align: center;
	vertical-align: middle;
	padding: 6px 5px !important;
	border-color: #fff;
	background-color: #005BAC;
	line-height: 1.4;
	color: #fff;
	font-weight: normal;
}
table.portfolio-list td {
	padding: 6px 5px !important;
	text-align: right;
	vertical-align: middle;
	border-color: #ccc !important;
}
table.portfolio-list td.area {
	color: #fff;
}
table.portfolio-list .sort-btn th {
	background: #fff !important;
	border-right-color: #ccc !important;
	border-bottom-color: #ccc !important;
	padding: 5px 0 !important;
	text-align: center;
	line-height: 1;
	white-space: nowrap !important;
}
.sort-up, .sort-down {
	width: 20px;
	height: 20px;
	margin: 0 1px;
	display: inline-block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	border: solid 1px #ccc;
	position: relative;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all .3s ease;
}
.sort-up:before, .sort-down:before {
	position: absolute;
	content: " ";
	top: 50%;
	right: 50%;
	width: 6px;
	height: 6px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(45deg);
}
.sort-down:before {
	margin: -5px -4px 0 0;
	border-right: 1px solid #E60012;
	border-bottom: 1px solid #E60012;
}
.sort-up:before {
	margin: -2px -4px 0 0;
	border-top: 1px solid #E60012;
	border-left: 1px solid #E60012;
}
.sort-up:hover, .sort-down:hover {
	border-color: transparent;
	background-color: #E60012;
}
.sort-down:hover:before {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.sort-up:hover:before {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
}
/* ===========================================================
	details
=========================================================== */
/* portfolio-title
----------------------------------------------------------- */
.portfolio-title {
}
.portfolio-title h1 {
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: 1px;
	line-height: 25px;
	padding: 16px 180px 15px 80px;
	margin: 0 0 20px;
	position: relative;
	border-top-style: solid;
	border-top-width: 2px;
	border-bottom: solid 1px #ccc;
}
.portfolio-title em {
	position: absolute;
	left: 0;
	top: 15px;
	height: 25px;
	line-height: 27px;
	width: 70px;
	text-align: center;
	color: #fff;
	font-size: 15px;
	font-size: 1.5rem;
	display: block;
	background-color: #555;
}
.portfolio-title em.cat {
	position: absolute;
	top: 20px;
	right: 20px;
	left: inherit;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.4;
	background-color: transparent;
	text-align: right;
	width: auto;
	max-width: 180px;
	height: auto;
}
.portfolio-title h1 span.sub {
	display: inline-block;
	font-size: 11px;
	font-size: 1.1rem;
}
@media screen and (max-width: 767px) {
.portfolio-title h1 {
	padding: 45px 0 5px 0;
}
.portfolio-title em {
	top: 10px;
	width: 100px;
}
}
/* pagenation
----------------------------------------------------------- */
.pagenation {
	position: relative;
	width: 100%;
	height: 40px;
}
.pagenation, .pagenation li a, .pagenation li.next a:after, .pagenation li.prev a:before {
	height: 40px;
	line-height: 40px;
}
.pagenation li {
	position: absolute;
	top: 0;
	width: 280px;
}
.pagenation li.next {
	right: 0;
}
.pagenation li.prev {
	left: 0;
}
.pagenation li.back {
	left: 50%;
	margin-left: -170px;
	width: 340px;
}
.pagenation li a {
	text-align: center;
	display: block;
	border: solid 1px #ccc;
	position: relative;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all .3s ease;
}
.pagenation li a:hover {
	color: #fff;
	text-decoration: none;
	border-color: transparent;
	background-color: #E60012;
}
.pagenation li.next a:after,  .pagenation li.prev a:before {
	position: absolute;
	content: " ";
	top: 50%;
	width: 6px;
	height: 6px;
	margin: -3px 0 0;
	border-top: 1px solid #E60012;
	border-right: 1px solid #E60012;
}
.pagenation li.next a:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 20px;
}
.pagenation li.prev a:before {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	left: 20px;
}
.pagenation li.next a:hover:after,  .pagenation li.prev a:hover:before {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
@media screen and (max-width: 1024px) {
.pagenation {
	width: 100%;
	height: auto;
	margin: 0;
}
.pagenation li a, .pagenation li.next a:after, .pagenation li.prev a:before {
	height: 40px;
	line-height: 40px;
}
.pagenation li {
	position: relative;
	top: inherit;
	left: inherit;
	right: inherit;
	width: 100%;
	text-align: left;
	margin: 0 0 5px;
}
.pagenation li.back {
	left: inherit;
	margin-left: 0;
	width: 100%;
}
.pagenation li a:after {
	position: absolute;
	content: " ";
	top: 50%;
	width: 6px !important;
	height: 6px !important;
	margin: -3px 0 0;
	border-top: 1px solid #E60012;
	border-right: 1px solid #E60012;
}
.pagenation li a:after {
	-webkit-transform: rotate(45deg) !important;
	transform: rotate(45deg) !important;
	right: 20px !important;
	left: inherit !important;
}
.pagenation li a:hover:after {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.pagenation li a:before {
	display: none;
}
}
/* detail
----------------------------------------------------------- */
/* bxslider-detail-warp */
.bxslider-detail-warp {
	float: left;
	width: 444px;
	margin: 0 0 10px;
}
/* bx-wrapper  */
.bx-wrapper {
	margin: 0 0 10px;
	background-color: #f5f5f5;
}
/* bxslider-detail */
.bxslider-detail {
/*height: 400px;*/
}
.bxslider-detail li {
	/*line-height: 400px;*/
	text-align: center;
	height: auto;
	margin: 0;
}
.bxslider-detail li img {
	margin: 0 auto;
	/*width: 100%;
	height: auto;*/
	vertical-align: middle;
	/*min-height: 328px;*/
}
/* bx-pager  */
.bx-pager-wrapper {
	/*width: 540px;*/
	background-color: #f0f0f0;
}
#bx-pager {
	margin: 0 auto;
	text-align: center;
	width: 100%;
}
#bx-pager li {
	float: left;
	display: inline-block;
	margin: 0 3px;
	padding: 0;
	text-align: center;
	line-height: 1;
	overflow: hidden;
	width: 68px;
	height: 68px;
	background-color: #000;
}
#bx-pager li:last-child {
	margin: 0;
}
#bx-pager li a {
	background-size: cover;
	background-position: 50% 50%;
	margin: 0;
	position: relative;
	overflow: hidden;
	width: 68px;
	height: 68px;
	display: block;
}
#bx-pager li a img {
	opacity: 1.0;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all .3s ease;
	cursor: pointer;
}
#bx-pager li a.active img,  #bx-pager li a:hover img {
	opacity: 0.5;
}
@media screen and (max-width: 1024px) {
/* bxslider-detail */
.bxslider-detail-warp {
	float: none;
	width: 100%;
}
.bxslider-detail {
	float: none;
	width: 100%;
	height: auto;
}
.bxslider-detail li img {
	width: 100%;
	max-width: 500px;
	height: auto;
}
/* bx-pager  */
.bx-pager-wrapper {
	width: 100%;
}
#bx-pager {
	display: table;
	table-layout: fixed;
	width: 100% !important;
	height: auto;
}
#bx-pager li {
	float: none;
	display: table-cell;
	width: auto;
	height: inherit;
	vertical-align: middle;
}
#bx-pager li a {
	width: 100%;
}
#bx-pager li a img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
}
/* portfolio-table-warp
----------------------------------------------------------- */
.portfolio-table-warp {
	width: 444px;
	float: right;
}
.portfolio-table-warp table {
	width: 100%;
}
.portfolio-table-warp table th, .portfolio-table-warp table td {
	padding: 9px 10px 8px;
}
main #portList.txt-ss {
	line-height: 1.4;
}
main #portList.txt-s {
	line-height: 1.4;
}
@media screen and (max-width: 1024px) {
.portfolio-table-warp {
	width: 100%;
	float: none;
}
.portfolio-table-warp table {
	width: 100%;
}
}
/* portfolio-detail-map
----------------------------------------------------------- */
.portfolio-detail-map {
	position: relative;
}
#gmap {
	width: 100%;
	height: 400px;
	margin-bottom: 20px;
}
/* ===========================================================
	map
=========================================================== */
/* legend
----------------------------------------------------------- */
.legend {
	margin-bottom: 0;
}
.legend dt {
	float: left;
	margin: 0 5px 0 0;
}
.legend dd {
	float: left;
	margin: 0 25px 10px 0;
	font-size: 12px;
	font-size: 1.2rem;
}
@media screen and (max-width: 420px) {
.legend dt:nth-of-type(4) {
	clear: both;
}
}
/* map
----------------------------------------------------------- */
#map {
	width: 100%;
	height: 560px;
}
@media screen and (max-width: 1024px) {
#map {
	height: 350px;
	margin-bottom: 10px;
}
}
/* map-info
----------------------------------------------------------- */
.map-info-image {
	width: 100%;
	text-align: center;
	background-color: #f0f0f0;
	padding: 10px 0;
	margin: 0 0 5px;
}
.map-info-name {
	font-size: 14px;
	font-size: 1.4rem;
	margin: 0 0 5px;
}
.map-info-name em {
	font-size: 12px;
	font-size: 1.2rem;
	margin: 0 5px 0 0;
	height: 20px;
	line-height: 20px;
	text-align: center;
	padding: 0 5px;
	color: #fff;
}
.map-info-address {
	font-size: 12px;
	font-size: 1.2rem;
	margin: 0 0 5px;
}
/* ===========================================================
	rate
=========================================================== */
/* rate-legend
----------------------------------------------------------- */
.rate-legend {
	text-align: center;
}
.rate-legend dl {
	display: inline-block;
	clear: both;
	margin: 0 auto;
	padding: 10px 0 0 20px;
	border: solid 1px #ddd;
}
.rate-legend dt, .rate-legend dd, .rate-legend li {
	font-size: 10px;
	font-size: 1.0rem;
	line-height: 1.4;
}
.rate-legend dt {
	clear: both;
	float: left;
	width: 8em;
	margin: 0;
	text-align: left;
}
.rate-legend dd {
	margin: 0;
	padding: 0 0 0 8em;
}
.rate-legend ul {
	margin: 0;
}
.rate-legend li {
	float: left;
	margin: 0 20px 10px 0;
}
.rate-legend .legend-marker {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin: 0 5px;
	text-indent: -9999px;
	vertical-align: middle;
	overflow: hidden;
}
.rate-legend .legend-marker.line {
	height: 2px;
}
.rate-legend .legend-marker.portfolio__type0 {
	background-color: #E60012;
}
.rate-legend .legend-marker.portfolio__type1 {
	background-color: #5e87b7;
}
.rate-legend .legend-marker.portfolio__type2 {
	background-color: #7f9a6c;
}
.rate-legend .legend-marker.portfolio__type3 {
	background-color: #d6bd5f;
}
.rate-legend .legend-marker.portfolio__type4 {
	background-color: #E2917F;
}
.rate-legend .legend-marker.portfolio__type5 {
	background-color: #b5b6b6;
}
