/** Single ***/
.cate-detail .detail-content {
	width: 67%;
	margin: auto;
	padding-top: 50px;
	padding-bottom: 30px;
}

.detail-sub-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 24px;
	line-height: 1;
}

.detail-time-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 22px;
	line-height: 1;
	display: none;
}

.detail-time-title.hide {
	display: none !important;
}

.detail-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 48px;
	line-height: 1;
	margin-top: 12px !important;
	font-weight: 300 !important;
}

.detail-content article {
	padding-top: 50px;
	margin-bottom: 110px;
}

.detail-content article p {
	margin-bottom: 30px;
}

.cate-detail .detail-content article {
	margin-bottom: 0;
	padding-top: 40px;
}

.detail-content .gallery {
	margin-top: 80px;
	margin-bottom: 30px;
}

.detail-content .gallery li + li {
	margin-top: 24px;
}

.info-more {
	padding-top: 20px;
	padding-bottom: 40px;
}

.info-more dl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 5px 0;
}

.info-more dl dt {
	padding-right: 20px;
	min-width: 135px;
	font-family: 'Montserrat', sans-serif;
}

.info-more dl a:hover {
	text-decoration: underline;
}

.table-style {
	border-bottom: 1px solid #999999;
	padding-bottom: 50px;
	margin-top: 110px;
}

.table-style dl {
	border-top: 1px solid #999999;
	padding: 30px 0 20px;
}

.table-style dl:after {
	content: "." !important;
	clear: both !important;
	display: block !important;
	height: 0 !important;
	visibility: hidden !important;
}

.table-style dl dt {
	width: 10em;
	float: left;
}

.table-style dl dd {
	width: calc(100% - 12em);
	float: right;
}

.work-more {
	padding-bottom: 100px;
}

.work-more h4.tt-1 {
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
	border-bottom: 1px solid #333333;
	padding-bottom: 20px;
}

.work-group {
	padding-top: 50px;
}

.work-group .item {
	display: table;
	width: 100%;
	padding-bottom: 40px;
}

.work-group .item:last-child {
	padding-bottom: 0;
}

.work-group .item .photo {
	width: 50%;
	display: table-cell;
}

.work-group .item .photo a {
	display: block;
}

.work-group .item .photo img {
	width: 100%;
}

.work-group .item dl {
	padding-left: 5%;
	width: 42%;
	display: table-cell;
	vertical-align: middle;
	font-family: 'Montserrat', sans-serif;
}

.work-group .item dl dt {
	font-size: 12px;
	padding-bottom: 10px;
}

.work-group .item dl dd {
	font-size: 15px;
	line-height: 18px;
}

.controls-page {
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding-bottom: 40px;
}

.controls-page .loadmore {
	width: 100%;
}

.controls-page p:first-child a, .controls-page p:last-child a {
	top: 20px;
	text-transform: uppercase;
}

.controls-page p:first-child a {
	position: absolute;
	left: 0;
	padding-left: 40px;
	z-index: 4;
}

.controls-page p:first-child a::before {
	content: "";
	background: url(../img/index/prev.svg) no-repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 32px;
	height: 48px;
	position: absolute;
	top: 0;
	left: 0;
}
.controls-page p.loadmore a {
	position: relative!important;
	right: 0!important;
	left: 0!important;
	top: 0!important;
	padding-right: 0!important;
	padding-left: 0!important;
	z-index: 4;
}
.controls-page p.loadmore a::before {
	display: none;
}
.controls-page p:last-child a {
	position: absolute;
	right: 0;
	padding-right: 40px;
	z-index: 4;
}

.controls-page p:last-child a::before {
	content: "";
	background: url(../img/index/next.svg) no-repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 32px;
	height: 48px;
	position: absolute;
	top: 0;
	right: 0;
}

body.single-about .controls-page {
	padding: 22px 0;
	margin-bottom: 80px;
}

body.single-about .controls-page p {
	text-transform: uppercase;
}

.other-detail {
	margin-top: 80px;
}

.other-detail .other-title {
	font-family: 'Montserrat', sans-serif;
	border-bottom: 1px solid #999;
	text-transform: uppercase;
	text-align: center;
	font-size: 20px;
	line-height: 1;
	padding: 25px 0;
	font-weight: 200;
}

.other-detail .tab-ajax {
	border-bottom: none;
	margin-top: 3%;
	padding-bottom: 0px;
}

.sub-page .controls-page {
	padding-bottom: 0;
}

.sub-page .loadmore:before {
	display: none;
}

.sub-page .controls-page p:first-child a::before {
	width: 25px;
	height: 38px;
	top: -5px;
	left: 0;
}

.sub-page .controls-page p:last-child a::before {
	width: 25px;
	height: 38px;
	top: -5px;
	right: 0;
}

@media screen and (max-width:767px) {
	.controls-page p:first-child a, .controls-page p:last-child a {
		top: 10px;
	}

	.controls-page p:last-child a {
		padding-right: 25px;
	}

	.controls-page p:first-child a {
		padding-left: 25px;
	}

	.sub-page .controls-page p:last-child a::before, .sub-page .controls-page p:first-child a::before {
		width: 17px;
		height: 24px;
		top: 0px;
	}

}

@media screen and (max-width:500px) {
	.controls-page p:last-child a {
		padding-right: 18px;
	}

	.controls-page p:first-child a {
		padding-left: 18px;
	}

	.controls-page p:first-child a, .controls-page p:last-child a {
		top: 14px;
		font-size: 12px;
	}

	.controls-page p.loadmore a {
		position: relative!important;
		top: 0!important;
		right: 0!important;
		left: 0!important;
		padding-right: 0!important;
		padding-left: 0!important;
		z-index: 4;
	}
	
	.sub-page .controls-page p:last-child a::before, .sub-page .controls-page p:first-child a::before {
		width: 12px;
		height: 20px;
		top: 1px;
	}

	.work-group .item {
		display: table;
		width: 100%;
		padding-bottom: 20px;
	}

	.work-group .item dl, .work-group .item .photo {
		width: 100%;
		display: block;
	}

	.work-group .item dl {
		padding-top: 10px;
		padding-left: 0;
	}

	.work-group .item dl dt {
		padding-bottom: 5px;
	}

}

/*=============================================
 * ABOUT PAGE
 *=============================================*/
.cate-title {
	font-family: PFRegalFinessePro;
	font-size: 50px;
	line-height: 1;
	position: relative;
	z-index: 2;
}

.ab-page .cate-title {
	color: #768DAF;
	text-transform: none;
	padding: 50px 0 30px;
}

.ab-des dl {
	padding: 40px 0 50px;
}

.ab-des dl dt {
	font-size: 23px;
	padding-bottom: 20px;
}

.ab-info {
	display: table;
	font-size: 17px;
}

.ab-info .author {
	max-width: 225px;
	width: 25%;
	display: table-cell;
}

.ab-info dl {
	display: table-cell;
	vertical-align: top;
	padding-left: 20px;
	max-width: 550px;
	font-size: 15px;
}

.ab-info dl dt {
	font-size: 16px;
	padding-bottom: 10px;
	font-weight: 400;
}
.ab-info dl dd span,
.ab-info dl dd p {
	display: block;
	padding-bottom: 10px;
}

.ab-table-1 {
	padding-top: 100px;
	padding-bottom: 100px;
}

.ab-table-1 dl {
	border-bottom: 1px solid #333333;
	padding: 30px 0;
	display: table;
	width: 100%;
}

.ab-table-1 dl:first-child {
	border-top: 1px solid #333333;
}

.ab-table-1 dt, .ab-table-1 dd {
	display: table-cell;
	vertical-align: middle;
}

.ab-table-1 dd {
	padding-right: 5%;
	width: 65%;
	font-size: 13px;
}

.ab-table-1 dt {
	width: 30%;
}

.ab-table-1 dt.cl-1 {
	color: #768DAF;
	font-size: 22px;
}

.ab-table-2 h4.tt-3 {
	font-size: 22px;
	padding-bottom: 40px;
}

.ab-table-2 {
	align-items: normal;
}

.ab-table-2 .col {
	width: 60%;
}

.ab-table-2 .col + .col {
	width: 35%;
	padding-left: 5%;
}

.ab-table-2 dl {
	padding-bottom: 20px;
}

.ab-table-2 dl:last-child {
	padding-bottom: 0;
}

.ab-table-2 dt, .ab-table-2 dd {
	display: table-cell;
}

.ab-table-2 dt {
	width: 150px;
}

.ab-table-2 ul {
	padding-bottom: 30px;
}

@media screen and (max-width:1200px) {
	.cate-title {
		font-size: 46px;
	}

	.ab-table-2 dt {
		width: 105px;
	}

}

@media screen and (max-width:992px) {
	.ab-page .cate-title {
		padding: 20px 0 10px;
	}

}

@media screen and (max-width:767px) {
	.ab-info .author, .ab-info dl {
		display: block;
		padding-left: 0;
		max-width: auto;
		width: 100%;
	}

	.ab-info dl {
		padding-top: 10px;
	}

	.ab-page .cate-title {
		font-size: 35px;
		line-height: 1.3;
	}

	.ab-des dl dt {
		font-size: 20px;
		padding-bottom: 10px;
	}

	.ab-table-1 {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.ab-table-1 dl {
		padding: 20px 0;
	}

	.ab-table-2 h4.tt-3, .ab-table-1 dt.cl-1 {
		font-size: 22px;
	}

	.ab-table-2 h4.tt-3 {
		padding-bottom: 30px;
	}

	.ab-info dl dt {
		font-size: 18px;
	}

	.ab-table-2 .col {
		width: auto;
	}

	.ab-table-2 .col + .col {
		padding-top: 50px;
		padding-left: 0;
		width: auto;
	}

	.ab-table-1 dl dd br {
		display: none;
	}

}

@media screen and (max-width:640px) {
	.ab-page .cate-title {
		font-size: 30px;
	}

	.ab-des dl {
		padding-top: 20px;
	}

	.ab-table-2 dt {
		width: 100px;
	}

	.ab-table-1 dt, .ab-table-1 dd, .ab-table-1 dl {
		display: block;
		width: auto;
	}

	.ab-table-1 dl {
		padding: 20px 0;
	}

	.ab-table-1 dt {
		padding-bottom: 10px;
	}

	.ab-table-2 dl {
		padding-bottom: 10px;
	}

}

@media screen and (max-width:375px) {
	.ab-table-2 dt, .ab-table-2 dt, .ab-table-2 dd {
		display: block;
		width: auto;
	}

}

/*=============================================
 * RECRUIT PAGE
 *=============================================*/
.recruit-page h2.cate-title {
	font-size: 50px;
	line-height: 1;
	font-family: 'Montserrat', sans-serif;
	padding: 50px 0 10px;
}

.recruit-page .note {
	padding: 30px 0 50px;
}

.recruit-table-1 {
	padding-bottom: 64px;
}

.recruit-table-1 dl {
	padding: 20px 0 20px;
	border-top: 1px solid #333333;
}

.recruit-table-1 dl dt, .recruit-table-1 dl dd {
	display: table-cell;
	vertical-align: top;
}

.recruit-table-1 dl dd a {
	text-decoration: underline;
}

.recruit-table-1 dl dd a:hover {
	text-decoration: none;
}

.recruit-table-1 dl dd a.telhref {
	text-decoration: none;
}

.recruit-table-1 dl dd span {
	padding-top: 30px;
	display: block;
}

.recruit-table-1 dl dt {
	width: 240px;
}

.btn-entry a {
	font-family: 'Montserrat', sans-serif;
	transition: all .3s ease;
	border: 1px solid #333333;
	background-color: #E8E8E8;
	cursor: pointer;
	display: block;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	padding: 20px 75px;
	width: 100%;
	box-sizing: border-box;
	color: inherit;
}

.btn-entry a:hover {
	background: #768DAF;
	color: #fff;
}

.thanks-contact p + p {
	padding-top: 30px;
}

@media screen and (max-width:1200px) {
	.recruit-table-1 dl dt {
		width: 120px;
	}

}

@media screen and (max-width:992px) {
	.recruit-page h2.cate-title {
		padding: 30px 0 0px !important;
	}

}

@media screen and (max-width:767px) {
	.recruit-page h2.cate-title {
		font-size: 35px;
		padding: 30px 0 0px !important;
	}

	.recruit-page .note {
		padding: 20px 0 30px;
	}

}

@media screen and (max-width:640px) {
	.recruit-page h2.cate-title {
		font-size: 30px;
		padding: 20px 0 0px !important;
	}

	.recruit-table-1 {
		padding-bottom: 25px;
	}

	.recruit-table-1 dl {
		padding: 15px 0;
	}

	.recruit-table-1 dl dt {
		width: 100px;
	}

	.recruit-table-1 dl dd span {
		padding-top: 15px;
	}

	.btn-entry a {
		padding: 10px 40px;
	}

}

@media screen and (max-width:375px) {
	.recruit-table-1 dl dt, .recruit-table-1 dl dd {
		width: auto;
		display: block;
	}

}

/*=============================================
 * PRIVACY POLICY PAGE
 *=============================================*/
.policy-head {
	font-size: 56px;
	font-family: 'Montserrat', sans-serif;
	padding-bottom: 30px;
	color: #333333;
}

.article-policy {
	max-width: 1280px;
}

.article-policy dl {
	padding-bottom: 40px;
}

.article-policy dl:last-child {
	padding-bottom: 0;
}

.article-policy dl dt {
	padding-bottom: 20px;
}

.article-policy dl dd {
}

.article-policy p {
	margin-bottom: 40px;
}

.article-policy p span {
	display: block;
	padding-top: 40px;
}

@media screen and (max-width:1300px) {
	.policy-head {
		font-size: 50px;
		line-height: 1;
	}

	.policy-page #nav-head {
		padding: 50px 0 45px;
	}

}

@media screen and (max-width:900px) {
	.policy-head {
		font-size: 38px;
	}

	.policy-page #nav-head {
		padding: 0px 0 45px;
	}

}

@media screen and (max-width:767px) {
	.policy-head {
		padding-bottom: 0;
		padding-top: 76px;
	}

	.article-policy dl {
		padding-bottom: 25px;
	}

	.article-policy dl dt {
		padding-bottom: 10px;
	}

}

@media screen and (max-width:640px) {
	.policy-head {
		padding-top: 45px;
	}

	.policy-page #nav-head {
		padding: 0px 0 25px;
	}

}

@media screen and (max-width:400px) {
	.policy-page #nav-head {
		padding-bottom: 25px;
	}

	.policy-head {
		padding-top: 43px;
	}

}

/** Detail ***/
.menu-left {
	font-family: 'Montserrat', sans-serif;
	font-size: 24px;
	text-transform: uppercase;
	color: #333333;
	position: fixed;
	top: 470px;
	left: 5%;
}

.menu-left li {
	margin-bottom: 15px;
}

.menu-left li a {
	position: relative;
	padding-left: 45px;
}

.menu-left li.active a::before {
	content: "";
	background: url(../img/index/prev.svg) no-repeat top center;
	position: absolute;
	top: -10px;
	left: 0;
	width: 32px;
	height: 48px;
}

.menu-left li.active {
	color: #333333;
}

.menu-left.hide {
	display: none !important;
}

.menu-left li span {
}

@media screen and (max-width:1200px) {
	.menu-left {
		top: 52%;
	}

}

@media screen and (max-width:992px) {
	.cate-detail .detail-content {
		width: 100%;
	}

	.menu-left {
		font-size: 20px;
	}

	.menu-left li {
	}

	.menu-left li.active::before {
		background: url(../img/index/prev.svg) no-repeat top center;
		top: 0;
		width: 22px;
		height: 32px;
		background-size: 100% auto;
	}

}

@media screen and (max-width:767px) {
	.cate-detail .detail-content {
		width: auto;
		margin: auto;
	}

	.image-content {
		margin-top: 0;
		padding-left: 0;
		padding-right: 0;
	}

	.detail-content {
		padding: 0px 0 0px !important;
	}

	.detail-sub-title {
		font-size: 12px;
		line-height: 22px;
		padding-top: 30px;
	}

	.detail-time-title {
		font-size: 12px;
		line-height: 22px;
	}

	.detail-title {
		font-size: 25px;
		line-height: 1.3;
		margin-top: 8px !important;
	}

	.detail-content article {
		padding-top: 30px;
		margin-bottom: 30px;
	}

	.detail-content .gallery {
		margin-top: 40px;
	}

	.detail-content .gallery li + li {
		margin-top: 20px;
	}

	.info-more {
		padding-top: 0px;
		padding-bottom: 20px;
	}

	.info-more dl {
		padding: 2px 0;
		flex-wrap: wrap;
	}

	.info-more dl dt {

		/*	min-width: 140px;*/
	}

	.info-more dl dd {
	}

	body.single-page .controls-page p {
		font-size: 12px;
	}

	.work-group {
		padding-top: 20px;
		padding-bottom: 40px;
	}

	.work-more {
		padding-bottom: 0px;
	}

	.work-more {
		margin-top: 0px;
	}

	.other-detail {
		margin-top: 30px;
	}

	.work-more h4.tt-1, .other-detail .other-title {
		font-size: 16px;
		padding: 8px 0;
		font-weight: 300;
	}

	.other-detail .tab-ajax {
		margin-top: 20px;
		padding-bottom: 10px;
	}

}

@media screen and (max-width:375px) {
	.table-style {
		margin-top: 50px;
	}

	.table-style dl {
		padding: 15px 0;
	}

	.table-style dl dt, .table-style dl dd, .info-more dl dt, .info-more dl dd {
		width: 100%;
		float: none;
	}

	.table-style dl dd br, .info-more dl dd br {
		display: none;
	}

}
