@charset "utf-8";

/* カスタム投稿、投稿共通 ====================================== */

/*ページネーション（PageNavi）
-----------------------------------*/
#pagerlist {
	clear: both;
	width: 100%;
	font-size: 14px;
	display: block;
	text-align: center;
	margin-top: 42px;
	margin-bottom: 30px;
}
.wp-pagenavi a, .wp-pagenavi span{
	display: inline-block;
	width: 50px;
	height: 50px;
	color:#000;
	font-size: 1.4rem;
	line-height: 50px;
	font-weight: 600;
	border:1px solid #dfdfdf !important;
	padding: 0 3px !important;
}
.wp-pagenavi span.current{
	color: #fff;
	background-color: var(--main-color);
	border: 1px solid var(--main-color) !important;
}
.wp-pagenavi a:hover, 
.wp-pagenavi span:hover{
	opacity: 0.6;
}
.not_post {
	padding: 15px 10px !important;
}

@media screen and (max-width: 768px) {
	.wp-pagenavi a, .wp-pagenavi span{
		width: 35px;
		height: 35px;
		line-height: 35px;
	}
}


/*現在記事はありません
-----------------------------------*/
.no-data{
	text-align: center;
	width: 100%;
}


/*シングルページャー
-----------------------------------*/
.page_btn {
	width: 100%;
	font-size: 1.6rem;
	text-align: center;
	padding-top: 10px;
	margin-top: 80px;
	border-top: 1px dotted #000;
	margin-bottom: 30px;
}
.page_btn a {
	color: #000;
	transition: all .4s;
}
.page_btn a:hover{
	opacity: 0.6;
}
.page_btn .left a {
	float: left;
}
.page_btn .right a {
	float: right;
}

@media screen and (max-width: 768px) {
	.page_btn {
		width: 100%;
		font-size: 14px;
		margin-top: 40px;
		text-align: center;
		padding-top: 10px;
		margin-top: 60px;
		border-top: 1px dotted #000;
	}
	.page_btn .left a {
		float: left;
	}
	.page_btn .right a {
		float: right;
	}
}

/*シングル エディター基本設定
-----------------------------------*/
.single .editor h2{
	position: relative;
	font-size: 2.4rem;
	border-bottom: 2px solid #D3D3D3;
	padding: 1rem 0;
	margin-bottom: 26px;
	margin-top: 2em;
	z-index: 0;
}
.single .editor h2:before{
	position: absolute;
	content: '';
	width: 10%;
	height: 2px;
	background: var(--main-color);
	bottom: -2px;
	left: 0;
	z-index: 1;
}
.single .editor h3{
	position: relative;
	font-size: 2.0rem;
	font-weight: 700;
	padding: 1rem 0;
	margin-bottom: 26px;
	margin-top: 2em;
	z-index: 0;
}
.single .editor h3:before{
	position: absolute;
	content: '';
	width: 80px;
	height: 2px;
	background: #D3D3D3;
	bottom: -2px;
	left: 0;
	z-index: 1;
}
.single .editor li{
	list-style: disc;
	margin-left: 2em;
}

#atc_single a{
	color: #4183c4 !important;
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.single .editor h2{
		position: relative;
		font-size: 2.0rem;
		border-bottom: 2px solid #D3D3D3;
		padding: 1rem 0;
		margin-bottom: 26px;
	}
	.single .editor h2:before{
		width: 20%;
		height: 2px;
		background: var(--main-color);
		bottom: -2px;
	}
	.single .editor h3{
		font-size: 1.6rem;
		padding: 1rem 0;
		margin-bottom: 26px;
	}
	.single .editor h3:before{
		position: absolute;
		content: '';
		width: 60px;
		height: 2px;
		bottom: -2px;
	}
}




/*カスタム投稿*/
/* construction ====================================== */

/*lp_mv
--------------------------------------------*/
body.post-type-archive-construction .lp_mv-img,
body.tax-construction_class .lp_mv-img,
body.single-construction .lp_mv-img{
    background-image: url(../img/cmn/lp_mv_construction.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body.post-type-archive-construction .lp_pagettl.sec_ttl01.sec_ttl01_left:before,
body.tax-construction_class .lp_pagettl.sec_ttl01.sec_ttl01_left:before,
body.single-construction .lp_pagettl.sec_ttl01.sec_ttl01_left:before{
    content: "CONSTRUCTION";
}

body.post-type-archive-construction .lp_message .sec_ttl01:before{
	width: 100%;
	color: var(--light-gray-color);
}

body.post-type-archive-construction .lp_message_cont .sec_ttl01{
	font-size: 3.3rem;
	color: var(--main-color);
}

@media screen and (max-width: 768px){
	body.post-type-archive-construction .lp_pagettl.sec_ttl01.sec_ttl01_left:before,
	body.tax-construction_class .lp_pagettl.sec_ttl01.sec_ttl01_left:before,
	body.single-construction .lp_pagettl.sec_ttl01.sec_ttl01_left:before{
		content: "CONSTRUCTION";
		font-size: min(9.2vw,4.2rem);
	}

	body.post-type-archive-construction .lp_pagettl_wrapper .white,
	body.tax-construction_class .lp_pagettl_wrapper .white,
	body.single-construction .lp_pagettl_wrapper .white{
		font-size: min(9.2vw,4.2rem);
	}
}

/*カテゴリー切り替えリスト
-----------------------------------*/
.ctg_list {
	margin: 100px 0 80px;
}
.ctg_list.f_ctg_list {
	margin-top: 0;
	margin-bottom: 110px;
}
.ctg_list>ul {
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
	gap: 14px;
}
.ctg_list>ul>li {
	text-align: center;
	min-width: 120px;
}
.ctg_list>ul>li a {
	color: #000;
	background-color: var(--light-gray-color);
	display: block;
	padding: 15px 10px;
	transition: all .4s;
}
.ctg_list ul li.current-cat>a,
.ctg_list ul li a:hover {
	background-color: var(--main-color);
	color: #fff;
}

@media screen and (max-width: 550px) {
	.ctg_list{
		margin: 10px 0 50px;
	}
	.ctg_list>ul{
		justify-content: space-between;
		gap: 7px;
	}
	.ctg_list>ul>li{
		width: calc((100% - 7px*2)/3);
		min-width: auto;
	}
	.ctg_list>ul>li:first-child {
		width: 100%;
	} 
	.ctg_list>ul>li a {
		padding: 6px;
	}
	.ctg_list ul li a:hover{
		background-color: var(--light-gray-color);
		color: #000;
	}
}

/*カスタム投稿記事一覧
--------------------------------------------*/
#sec_arch_construction{
	padding: 70px 0 30px;
}
#sec_arch_construction_inner {
	width: 100%;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#sec_arch_construction_inner .post {
	width: calc((100% / 3) - (30px * 2 / 3));
	margin-bottom: 20px;
}
#sec_arch_construction_inner .post a{
	transition: all .4s;
}
#sec_arch_construction_inner .post a:hover {
	opacity: 0.6;
}
#sec_arch_construction_inner .img_wrapper{
	position: relative;
}
#sec_arch_construction_inner .ctg_icon{
	position: absolute;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 3px;
	top: 0;
	left: 0;
}
#sec_arch_construction_inner .ctg_icon li{
	background-color: var(--main-color);
	font-size: 1.5rem;
	color: #fff;
	text-align: center;
	min-width: 80px;
	padding: 4px 12px;
}
#sec_arch_construction_inner .post .thumb {
	position: relative;
	width: 100%;
	padding-top: 75%;
	margin-bottom: 10px;
}
#sec_arch_construction_inner .post .thumb img {
	position:absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.construction_post .post .title {
	font-size: 1.7rem;
	font-weight: 700;
	transition: all .4s;
}

@media screen and (max-width: 768px) {
	#sec_arch_construction{
		padding: 50px 0 30px;
	}
	#sec_arch_construction_inner .ctg_icon li{
		font-size: 1.3rem;
		min-width: 70px;
		padding: 1px 6px;
	}
	#sec_arch_construction_inner.construction_post {
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 20px 10px;
	}
	#sec_arch_construction_inner .post {
		width: calc( (100% - 10px)/2 );
	}
	#sec_arch_construction_inner .post .thumb {
		margin-bottom: 8px;
	}
	#sec_arch_construction_inner .post .title {
		font-size: 1.6rem;
	}
}

/*カスタム投稿シングル
--------------------------------------------*/
#single_cont{
	padding-top: 110px;
	padding-bottom: 70px;
}
#single_cont{
	padding-top: 110px;
	padding-bottom: 70px;
}
#single_cont .single_header{
	margin-bottom: 30px;
}
#single_cont .single_header .post_ttl {
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 20px;
}
#single_cont .single_header .cat{
	padding: 2px 30px;
	background-color: var(--main-color);
	color: #fff;
}
#single_cont .post-thumbnail{
	text-align: center;
	margin-bottom: 30px;
}
#single_cont .table_wrapper{
	margin-bottom: 30px;
}
#single_cont .detail_txt{
	margin-bottom: 30px;
}
#single_cont .gallery_list{
	flex-wrap: wrap;
}
#single_cont .gallery_list li{
	width: calc((100% - 20px*2)/3);
}

@media screen and (max-width: 768px) {
	#single_cont{
		padding-bottom: 40px;
	}
	#single_cont .single_header .post_ttl {
		font-size:2.2rem;
		font-weight: 700;
		line-height: 1.5;
		margin-bottom: 20px;
	}
	#single_cont .single_header{
		margin-bottom: 15px;
	}
	#single_cont .single_header .cat{
		font-size: 1.4rem;
		padding: 0 10px;
	}
	#single_cont .post-thumbnail{
		margin-bottom: 15px;	
	}
	.ctg_list.f_ctg_list{
		margin-bottom: 60px;
	}
}



/*投稿(news)*/
/* news ====================================== */

/*lp_mv
--------------------------------------------*/
body.category .lp_mv-img,
body.single-post .lp_mv-img{
    background-image: url(../img/cmn/lp_mv_news.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body.category .lp_pagettl.sec_ttl01.sec_ttl01_left:before,
body.single-post .lp_pagettl.sec_ttl01.sec_ttl01_left:before{
    content: "NEWS";
}


/*カテゴリー切り替えリスト
-----------------------------------*/
.post_ctg_list {
	margin: 100px 0 100px;
}
.post_ctg_list.f_ctg_list {
	margin-top: 0;
	margin-bottom: 110px;
}
.post_ctg_list>ul {
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
	gap: 25px 14px;
}
.post_ctg_list>ul>li {
	text-align: center;
	min-width: 80px;
}
.post_ctg_list>ul>li a {
	position: relative;
	color: #000;
	display: block;
	padding: 0 10px;
	transition: all .4s;
}
.post_ctg_list ul li.current-cat>a{
	color: #63A5D7;
	transition: all .4s;
}
.post_ctg_list ul li>a:hover{
	opacity: 0.4;
}
.post_ctg_list ul li.current-cat>a:before{
	position: absolute;
	content: "";
	background-color: #63A5D7;
	width: 6px;
	height: 6px;
	border-radius: 10px;
	transform: translateX(-50%);
	top: -10px;
	left: 50%;
}

@media screen and (max-width: 550px) {
	.post_ctg_list {
		margin: 0 auto 40px;
	}
	.post_ctg_list.f_ctg_list {
		margin-top: 0;
		margin-bottom: 110px;
	}
	.post_ctg_list>ul {
		font-size: 1.4rem;
	}
	.post_ctg_list>ul>li {
		min-width: 50px;
	}
	.post_ctg_list>ul>li a {
		padding: 0 4px;
	}
}


/*投稿news記事一覧
--------------------------------------------*/
#sec_arch_news{
	padding: 50px 0 30px;
	margin-bottom: 65px;
}
.atc_box {
	position: relative;
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px dotted #ccc;
}
.atc_box a {
	display: flex;
	gap: 40px;
	justify-content: center;
	align-items: center;
	transition: all .4s;
}

.atc_box a:hover{
	opacity: 0.6;
}

.atc_box:last-child {
	margin-bottom: 0;
}
.atc_img {
	width: 240px;
	height: 180px;
}

.atc_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.atc_rt {
	flex: 1;
	margin-top: 10px;
	padding-right: 10px;
	box-sizing: border-box;
}
.atc_box .atc_header{
	margin-bottom: 14px;
}
.atc_box .atc_day{
	color: #969696;
	font-size: 1.2rem;
}

.atc_box .atc_cats{
	gap: 10px;
}

.atc_box .atc_cat{
	font-size: 1.2rem;
	padding: 1px 14px;
	background-color: var(--main-color);
	color: #fff;
}
.atc_ttl {
	font-size: 2.2rem;
	margin-bottom: 10px;
}
.atc_txt {
	font-size: 1.5rem;
	text-align: justify;
}

@media screen and (max-width: 550px) {
	#sec_arch_news{
		margin-bottom:0;
}
	.atc_box {
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.atc_box a{
		gap: 14px;
	}
	.atc_box .atc_header{
		flex-wrap: wrap;
		gap: 5px;
		margin-bottom: 8px;
	}
	.atc_box .atc_cats{
		gap: 4px;
	}
	.atc_box .atc_cat{
		padding: 0 7px;
	}
	.atc_txt {
		display: none;
	}
	.atc_img{
		width: 112px;
		height: 84px;
	}
	.atc_ttl {
		font-size: 1.6rem;
	}
}




/*投稿newsシングル
--------------------------------------------*/
#sec_single_news{
	padding-top: 110px;
	padding-bottom: 70px;
}

#atc_single .atc_header{
	flex-wrap: wrap;
	margin-bottom: 45px;
}
#atc_single .atc_day{
	/* color: #969696;
	font-size: 1.2rem; */
}
#atc_single .atc_cats{
	gap: 10px;
	flex-wrap: wrap;
}
#atc_single .atc_cat{
	font-size: 1.4rem;
	padding: 0 10px;
	text-align: center;
	min-width: 92px;
	background-color: var(--main-color);
	color: #fff;
}
#atc_single .post_ttl{
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 20px;
}
#sec_single_news .editor p img.aligncenter{
	display: block;
	margin: 0 auto;
}

#sec_single_news .editor p img.alignright{
	display: block;
	margin: 0 0 0 auto;
}
#atc_single .editor p {
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	#sec_single_news{
		padding-top: 55px;
		padding-bottom: 70px;
	}
	#atc_single .post_ttl {
		font-size: 2.2rem;
		margin-bottom: 30px;
	}
	#atc_single .atc_header{
		margin-bottom: 45px;    flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
}




