@charset "UTF-8";

/*--------------------------------------------
COMMON
---------------------------------------------*/

@media screen and (max-width: 768px){
	#title{
		height : calc( 304 * 100vw / 768 );
		padding-bottom : calc( 46 * 100vw / 768 );
	}
	#title:after{
		height : calc( 274 * 100vw / 768 );
	}
	#title span:after{
		padding-top : calc( 6 * 100vw / 768 );
	}
}

@media print,screen and (min-width: 769px){
	#title{
		height : 200px;
	}
	#title:after{
		width : 831px;
	}
	#title span{
		padding-bottom : 11px;
	}
	#title span:before{
		top : 148px;
	}
}

#news , #contract{
	background-color : #bbc6c8;
	background-position : center top;
	background-repeat : no-repeat;
	background-size : 100% auto;
	background-position : 0 0;
}

@media screen and (max-width: 768px){
	#news , #contract{
		background-image : url("../images/ui/bg/pattern02_sp.png");
	}
}

@media print,screen and (min-width: 769px){
	#news , #contract{
		background-image : url("../images/ui/bg/pattern02_pc.png");
	}
}

#editor{
	overflow : hidden;
}

#editor h1 , #editor h2 , #editor h3 , #editor h4 , #editor h5 , #editor h6{
	font-weight : 700;
}

#editor img{
	max-width : 100%;
	height : auto;
}

#editor p{
	overflow : hidden;
}

#editor ul li:not(.gallery-item):before{
	content : "";
	flex-shrink : 0;
}

#editor ol li{
	counter-increment : ol;
}

#editor ol li:before{
	content : counter(ol);
	flex-shrink : 0;
	width : 1em;
}

#editor li{
	line-height : 1.6;
	display : flex;
}

#editor ul , #editor ol , #editor .gallery , #editor hr{
	margin-bottom : 1em;
}

#editor .wp-caption{
	text-align : center;
}

#editor .aligncenter{
	clear : both;
	display : block;
	margin-left : auto;
	margin-right : auto;
}

#editor .size-full{
	max-width : 100%;
	height : auto;
}

#editor strong{
	font-weight : 700;
}

#editor ul li{
	list-style-type : disc;
}

#editor .gallery ul{
	display : flex;
}

#editor table th , #editor table td{
	border-style : solid;
	border-width : 1px;
	padding : .75em;
	line-height : 1.6;
}

#editor img.alignright{
	float : right;
	margin-left : 1em;
}

#editor img.alignleft{
	float : left;
	margin-right : 1em;
}

#editor img.aligncenter{
	display : block;
}

#editor img.float-left{
	float : left;
}

#editor img.float-right{
	float : right;
}

#editor{
	font-style : normal;
}

#editor p{
	font-weight : 500;
	letter-spacing : .1em;
}

@media screen and (max-width: 768px){
	#editor img{
		width : auto;
		max-width : 100%;
	}
	#editor .wp-block-columns{
		display : block;
	}
	#editor .wp-block-columns .wp-block-column:not(:first-child){
		margin-left : 0;
	}
	#editor .gallery{
		flex-wrap : wrap;
	}
	#editor p{
		font-size : 2.6rem;
		line-height : 1.53;
	}
}

@media print,screen and (min-width: 769px){
	#editor p{
		font-size : 1.6rem;
		line-height : 1.5;
	}
	#editor p + p{
		margin-top : 10px;
	}
}

#pagination{
	position : relative;
	text-align : center;
}

#pagination a{
	font-weight : 500;
	border-bottom-style : solid;
	border-bottom-color : currentColor;
	display : block;
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
}

#pagination .prev , #pagination .next{
	position : absolute;
	top : 0;
}

#pagination .archive{
	margin-left : auto;
	margin-right : auto;
}

@media screen and (max-width: 768px){
	#pagination a{
		font-size : 2.8rem;
		border-bottom-width : calc( 3 * 100vw / 768 );
		width : calc( 200 * 100% / 720 );
		padding-bottom : calc( ( 21 - 3.5 ) * 100vw / 768 );
	}
	#pagination .prev{
		left : calc( 12 * 100% / 720 );
	}
	#pagination .next{
		right : calc( 12 * 100% / 720 );
	}
}

@media print,screen and (min-width: 769px){
	#pagination a{
		font-size : 1.6rem;
		border-bottom-width : 2px;
		width : 150px;
		padding-bottom : calc( 11px - 2px );
	}
	#pagination .prev{
		right : calc( 50% + 88px );
	}
	#pagination .next{
		left : calc( 50% + 88px );
	}
}

/*--------------------------------------------
NEWS
---------------------------------------------*/

@media screen and (max-width: 768px){
	.title-news:after{
		background-image : url("../images/news/single/bg_title_sp.jpg");
	}
}

@media print,screen and (min-width: 769px){
	.title-news:after{
		background-image : url("../images/news/single/bg_title_pc.jpg");
	}
}

#news .head{
	display : flex;
	align-items : flex-start;
	flex-wrap : wrap;
}

#news .head time{
	letter-spacing : .1em;
	flex-shrink : 0;
}

#news .head .category{
	display : flex;
	align-items : center;
	justify-content : center;
	color : #fff;
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
}

#news .head .category.topics{
	background-color : #900;
}

#news .head h2{
	letter-spacing : .1em;
	flex-shrink : 0;
	width : 100%;
	font-weight : 700;
}

#news #editor{
	background-color : #e6e6e6;
}

@media screen and (max-width: 768px){
	#news{
		padding-top : calc( 46 * 100vw / 768 );
		padding-bottom : calc( 53 * 100vw / 768 );
	}
	#news .head time{
		font-size : 2.6rem;
		width : calc( 197 * 100% / 720 );
		margin-top : calc( 9.5 * 100vw / 768 );
	}
	#news .head .category{
		width : calc( 240 * 100% / 720 );
		height : calc( 45 * 100vw / 768 );
		font-size : 2.6rem;
	}
	#news .head h2{
		margin-top : calc( ( 28 - 5 ) * 100vw / 768 );
	}
	#news .head h2{
		font-size : 3.6rem;
		line-height : 1.27;
	}
	#news #editor{
		margin-top : calc( ( 42 - 5 ) * 100vw / 768 );
		padding-top : calc( ( 38 - 7 ) * 100vw / 768 );
		padding-bottom : calc( ( 30 - 7 ) * 100vw / 768 );
		padding-left : calc( 24 * 100% / 720 );
		padding-right : calc( 24 * 100% / 720 );
	}
	#news #pagination{
		margin-top : calc( ( 53 - 3.5 ) * 100vw / 768 );
	}
}

@media print,screen and (min-width: 769px){
	#news{
		padding-top : 70px;
		padding-bottom : 45px;
	}
	#news .head{
		padding-left : 30px;
		padding-right : 30px;
	}
	#news .head time{
		font-size : 1.8rem;
		width : 137px;
		margin-top : 11px;
	}
	#news .head .category{
		width : 183px;
		height : 40px;
		font-size : 1.8rem;
	}
	#news .head h2{
		font-size : 3rem;
		line-height : 1.3;
	}
	#news .head h2{
		margin-top : calc( 26px - 4.5px );
	}
	#news #editor{
		margin-top : calc( 31px - 4.5px );
		margin-left : auto;
		margin-right : auto;
		width : 1000px;
		padding-left : 50px;
		padding-right : 50px;
		padding-top : calc( 51px - 4px );
		padding-bottom : calc( 55px - 4px );
	}
	#news #pagination{
		margin-top : calc( 38px - 2px );
	}
}

/*--------------------------------------------
CONTRACT
---------------------------------------------*/

@media screen and (max-width: 768px){
	.title-contract:after{
		background-image : url("../images/contract/single/bg_title_sp.jpg");
	}
}

@media print,screen and (min-width: 769px){
	.title-contract:after{
		background-image : url("../images/contract/single/bg_title_pc.jpg");
	}
	.title-contract:after:after{
		left : calc( 50% + 14px );
		width : 833px;
	}
}

#contract > h2{
	font-weight : 700;
	letter-spacing : .1em;
}

#contract .box{
	background-color : #e6e6e6;
}

#contract .thumbnail{
	width : 100%;
}

@media screen and (max-width: 768px){
	#contract{
		padding-top : calc( ( 119 - 5 ) * 100vw / 768 );
		padding-bottom : calc( 53 * 100vw / 768 );
	}
	#contract > h2{
		font-size : 3.6rem;
		line-height : 1.27;
	}
	#contract .box{
		margin-top : calc( ( 30 - 5 ) * 100vw / 768 );
		padding-top : calc( 27 * 100vw / 768 );
		padding-left : calc( 24 * 100% / 720 );
		padding-right : calc( 24 * 100% / 720 );
		padding-bottom : calc( ( 34 - 7 ) * 100vw / 768 );
	}
	#contract #editor{
		margin-top : calc( ( 22 - 7 ) * 100vw / 768 );
	}
	#contract #pagination{
		margin-top : calc( ( 53 - 3.5 ) * 100vw / 768 );
	}
}

@media print,screen and (min-width: 769px){
	#contract{
		padding-top : calc( 65px - 4.5px );
		padding-bottom : 65px;
	}
	#contract > h2{
		font-size : 3rem;
		line-height : 1.3;
	}
	#contract .box{
		margin-top : calc( 17px - 4.5px );
		padding-top : 40px;
		padding-left : 50px;
		padding-right : 50px;
		padding-bottom : calc( 33px - 4px );
	}
	#contract #editor{
		margin-top : calc( 36px - 4px );
	}
	#contract #pagination{
		margin-top : calc( 46px - 2px );
	}
}