@charset "UTF-8";

/*--------------------------------------------
COLORS
---------------------------------------------*/

:root{
	--body : #333;
	--link : #333;
	--primary : #725f92;
	--secondary : #e8e6eb;
	--green : #1ead4c;
	--yellow : #f2c203;
}

/*--------------------------------------------
SPACE SP
---------------------------------------------*/

:root{
	--sp-pagetitle-pb : 42;
	--sp-title01-lh : 4.2;
	--sp-title02-lh : 4.2;
	--sp-title03-lh : 9;
	--sp-title04-lh : 4.2;
	--sp-title05-lh : 9;
	--sp-title06-lh : 3.2;
	--sp-title07-lh : 3.2;
	--sp-title08-lh : 9;
	--sp-text01-lh : 13;
	--sp-text02-lh : 13;
	--sp-text03-lh : 6;
}

/*--------------------------------------------
SPACE pc
---------------------------------------------*/

:root{
	--pc-title01-lh : 4px;
	--pc-title03-lh : 1px;
	--pc-title04-lh : 1px;
	--pc-title05-lh : 3.4px;
	--pc-title06-lh : 3px;
	--pc-title07-lh : 3.4px;
	--pc-title08-lh : 3.4px;
	--pc-text01-lh : 8px;
	--pc-text02-lh : 4px;
	--pc-text03-lh : 4px;
	--pc-sublink-pt : 38px;
	--pc-breadcrumbs-pb : 16px;
	--pc-contacts-pt : 39px;
}

/*--------------------------------------------
COLUMN
---------------------------------------------*/

@media print,screen and (min-width: 751px){
	#column{
		display : flex;
		align-items : flex-start;
		justify-content : space-between;
	}
	#column > section , #column > article{
		width : 766px;
	}
}

/*--------------------------------------------
LINKS
---------------------------------------------*/

#voices .links ul , #voices .links li , #kakeizumemories .links ul , #kakeizumemories .links li , #news .links ul , #news .links li{
	display : inline-block;
}

#voices .links a , #kakeizumemories .links a , #news .links a{
	display : inline-flex;
	border-radius : 9999px;
	align-items : center;
	justify-content : center;
	color : #373737;
}

#voices .links .categories a , #kakeizumemories .links .categories a , #news .links .categories a{
	background-color : #f2c203;
}

#voices .links .tags a , #kakeizumemories .links .tags a , #news .links .tags a{
	background-color : #ecf8af;
}

@media screen and (max-width: 750px){
	#voices .links li , #kakeizumemories .links li , #news .links li{
		margin-top : calc( 11 * 100vw / 750 );
		margin-left : calc( 11 * 100vw / 750 );
	}
	#voices .links a , #kakeizumemories .links a , #news .links a{
		font-size : 2rem;
		padding-left : calc( 20 * 100vw / 750 );
		padding-right : calc( 20 * 100vw / 750 );
		height : calc( 40 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#voices .links , #kakeizumemories .links , #news .links{
		margin-left : -11px;
	}
	#voices .links li , #kakeizumemories .links li , #news .links li{
		margin-left : 11px;
		margin-top : 11px;
	}
	#voices .links a , #kakeizumemories .links a , #news .links a{
		font-size : 1.4rem;
		padding-left : 16px;
		padding-right : 16px;
		height : 30px;
	}
}

/*--------------------------------------------
PAGINATION
---------------------------------------------*/

#pagination{
	position : relative;
}

#pagination a{
	border-radius : 9999px;
	font-size : 0;
	color : transparent;
	background-color : #1ead4c;
	background-color : var(--green);
	background-position : center;
	background-repeat : no-repeat;
	height : 100%;
	display : block;
}

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

#pagination .prev{
	background-image : url("../images/ui/parts/arrow/left01.svg");
}

#pagination .next{
	background-image : url("../images/ui/parts/arrow/right01.svg");
}

@media screen and (max-width: 750px){
	#pagination{
		height : calc( 48 * 100vw / 750 );
	}
	#pagination a{
		width : calc( 48 * 100% / 710 );
		background-size : auto calc( 16 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#pagination{
		height : 48px;
	}
	#pagination a{
		width : 48px;
		background-size : auto 16px;
	}
}

/*--------------------------------------------
SIDEBAR
---------------------------------------------*/

#sidebar h5{
	font-weight : 500;
}

#sidebar h5:after{
	content : "";
	display : block;
	background-color : #1ead4c;
	background-color : var(--green);
}

#sidebar ul:not(.latest) a{
	display : block;
}

#sidebar .latest a{
	display : -ms-grid;
	display :     grid;
	align-items : center;
	grid-auto-flow : column;
}

#sidebar .latest picture{
	overflow : hidden;
}

#sidebar .latest picture > img{
	width : 100%;
	height : 100%;
	object-fit : cover;
}

#sidebar .latest h6{
	overflow : hidden;
	display : -webkit-box;
	-webkit-box-orient : vertical;
}

@media screen and (max-width: 750px){
	#sidebar{
		margin-top : calc( 103 * 100vw / 750 );
		padding-bottom : calc( 101 * 100vw / 750 );
	}
	#sidebar h5{
		font-size : 3.2rem;
	}
	#sidebar h5:after{
		margin-top : calc( 26 * 100vw / 750 );
		width : calc( 220 * 100% / 710 );
		height : calc( 6 * 100vw / 750 );
	}
	#sidebar ul li{
		border-bottom : calc( 2 * 100vw / 750 ) dotted #ccc;
	}
	#sidebar ul:not(.latest){
		display : flex;
		justify-content : space-between;
		flex-wrap : wrap;
		margin-top : calc( 13 * 100vw / 750 );
	}
	#sidebar ul:not(.latest) li{
		min-width : calc( 345 * 100% / 710 );
	}
	#sidebar ul:not(.latest) a{
		font-size : 2.6rem;
		line-height : 1.2;
	}
	#sidebar ul:not(.latest) a{
		padding-top : calc( ( 21 - 2.6 ) * 100vw / 750 );
		padding-bottom : calc( ( 21 - 2.6 ) * 100vw / 750 );
	}
	#sidebar .latest a{
		padding-top : calc( 21 * 100vw / 750 );
		padding-bottom : calc( 21 * 100vw / 750 );
		-ms-grid-columns : calc( 240 * 100% / 710 ) 1fr;
		grid-template-columns : calc( 240 * 100% / 710 ) 1fr;
		column-gap : calc( 40 * 100% / 710 );
	}
	#sidebar .latest picture{
		height : calc( 180 * 100vw / 750 );
	}
	#sidebar .latest h6{
		font-size : 2.6rem;
		line-height : 1.2;
	}
	#sidebar .latest h6{
		-webkit-line-clamp : 6;
	}
	#sidebar ul + h5{
		margin-top : calc( 91 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#sidebar{
		width : 240px;
	}
	#sidebar h5{
		font-size : 2.2rem;
	}
	#sidebar h5:after{
		margin-top : 6px;
		width : 150px;
		height : 3px;
	}
	#sidebar ul{
		margin-top : 5px;
	}
	#sidebar ul li + li{
		border-top : 1px dotted #ccc;
	}
	#sidebar ul:not(.latest) a{
		font-size : 1.6rem;
		line-height : 1.31;
	}
	#sidebar ul:not(.latest) a{
		padding-top : calc( 11.5px - 2.5px );
		padding-bottom : calc( 11.5px - 2.5px );
	}
	#sidebar .latest a{
		padding-top : 11.5px;
		padding-bottom : 11.5px;
		-ms-grid-columns : 100px 1fr;
		grid-template-columns : 100px 1fr;
		column-gap : 16px;
	}
	#sidebar .latest h6{
		font-size : 1.6rem;
		line-height : 1.31;
	}
	#sidebar .latest h6{
		-webkit-line-clamp : 3;
	}
	#sidebar .latest picture{
		height : 75px;
	}
	#sidebar ul + h5{
		margin-top : 53px;
	}
}

/* 20250626 add */
.date {
	display: inline-block;
	margin-top: 30px;
}
@media screen and (max-width: 750px) {
	.date {
		margin-top: 15px;
	}
}