@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;
}

/*--------------------------------------------
CONTENTS PARTS SP
---------------------------------------------*/

:root{
	--sp-h2-lh : 3.8;
	--sp-h4-lh : 13;
	--sp-p-lh : 13;
}

/*--------------------------------------------
CONTENTS PARTS PC
---------------------------------------------*/

:root{
	--pc-h2-lh : 3.4px;
	--pc-h4-lh : 8px;
	--pc-p-lh : 8px;
}

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

@media print,screen and (min-width: 751px){
	#column{
		margin-top : calc( 50px - 16px );
		margin-top : calc( 50px - var(--pc-breadcrumbs-pb) );
	}
}

/*--------------------------------------------
CONTENT
---------------------------------------------*/

#ez-toc-container{
	margin : 2em 0 ;
	padding : 1em;
}

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

#content h2{
	border-left-style : solid;
	border-left-color : #1ead4c;
	border-left-color : var(--green);
	font-weight : 500;
}

#content h3{
	font-weight : 600;
	border-bottom : 1px solid #ccc;
	padding-bottom : .2em;
	margin-bottom : .5em;
}

#content em{
	font-style : italic;
}

#content strong{
	font-weight : 700;
}

#content a{
	color : #1ead4c;
	color : var(--green);
	text-decoration : underline;
}

#content ul{
	margin-left : 1.5em;
}

#content ul li{
	list-style : disc;
}

#content ol{
	margin-left : 2em;
}

#content ol li{
	list-style : decimal;
}

#content figure{
	max-width : 100%;
}

@media screen and (max-width: 750px){
	#content h1{
		font-size : 3.8rem;
		line-height : 1.2;
	}
	#content h1:after{
		margin-top : calc( ( 21 - 3.8 ) * 100vw / 750 );
		margin-top : calc( ( 21 - var(--sp-h2-lh) ) * 100vw / 750 );
		width : calc( 200 * 100vw / 750 );
		height : calc( 6 * 100vw / 750 );
	}
	#content h2{
		font-size : 3rem;
		line-height : 1.2;
	}
	#content h2{
		border-left-width : calc( 6 * 100vw / 750 );
		padding-left : calc( 11 * 100vw / 750 );
		padding-top : calc( 11 * 100vw / 750 );
		padding-bottom : calc( 11 * 100vw / 750 );
	}
	#content h3{
		font-size : 2.6rem;
		line-height : 2;
	}
	#content p{
		font-size : 2.6rem;
		line-height : 2;
	}
	#content ul li{
		font-size : 2.6rem;
		line-height : 2;
	}
	#content ol li{
		font-size : 2.6rem;
		line-height : 2;
	}
	#content .content-cta{
		display : none;
	}
}

@media print,screen and (min-width: 751px){
	#content h1{
		font-size : 3.4rem;
		line-height : 1.2;
	}
	#content h1:after{
		margin-top : calc( 18px - 3.4px );
		margin-top : calc( 18px - var(--pc-h2-lh) );
		width : 150px;
		height : 3px;
	}
	#content h2{
		font-size : 2.2rem;
		line-height : 1.3;
	}
	#content h2{
		border-left-width : 5px;
		padding-left : 10px;
		padding-top : 12px;
		padding-bottom : 12px;
	}
	#content h3{
		font-size : 2rem;
		line-height : 2;
	}
	#content p{
		font-size : 1.6rem;
		line-height : 2;
	}
	#content ul li{
		font-size : 1.6rem;
		line-height : 2;
	}
	#content ol li{
		font-size : 1.6rem;
		line-height : 2;
	}
	#content .content-cta{
		display : -ms-grid;
		display :     grid;
		margin-top : 40px;
		margin-bottom : 40px;
		-ms-grid-columns : 1fr 15px 270px 90px;
		grid-template-columns : 1fr 15px 270px 90px;
		-ms-grid-rows : 80px;
		grid-template-rows : 80px;
	}
	#content .content-cta a{
		text-decoration : none;
	}
	#content .content-cta .tel{
		-ms-grid-row : 1;
		    grid-row : 1;
		-ms-grid-column : 1;
		    grid-column : 1;
		display : flex;
		align-items : center;
		justify-content : center;
		flex-direction : column;
	}
	#content .content-cta .tel a{
		font-size : 4.4rem;
	}
	#content .content-cta .tel a span{
		display : block;
		line-height : 1;
		white-space : nowrap;
		color : #333;
		font-weight : 700;
	}
	#content .content-cta .tel p{
		margin-top : calc( 12px - 6px );
		font-size : 1.6rem;
	}
	#content .content-cta .contact , #content .content-cta .line{
		display : -ms-grid;
		display :     grid;
		place-items : center;
		color : #fff;
	}
	#content .content-cta .contact{
		-ms-grid-row : 1;
		    grid-row : 1;
		-ms-grid-column : 3;
		    grid-column : 3;
		background : linear-gradient(16.504361381755deg, #d1a31a 0%, #d1a31a 50%, #c90 50%, #c90 100%);
		font-size : 2.2rem;
	}
	#content .content-cta .line{
		-ms-grid-row : 1;
		    grid-row : 1;
		-ms-grid-column : 4;
		    grid-column : 4;
		background : linear-gradient(41.63353933657deg, #419d41 0%, #419d41 50%, #2b922b 50%, #2b922b 100%);
		font-size : 2.2rem;
	}
}

/*--------------------------------------------
CONTENT MAEGIN
---------------------------------------------*/

@media screen and (max-width: 750px){
	#content p + figure{
		margin-top : calc( ( 76 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 76 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#content figure + h2{
		margin-top : calc( ( 65 - 3.8 ) * 100vw / 750 );
		margin-top : calc( ( 65 - var(--sp-h2-lh) ) * 100vw / 750 );
	}
	#content h2 + p{
		margin-top : calc( ( 21 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 21 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#content p + h3{
		margin-top : calc( ( 44 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 44 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#content h3 + p{
		margin-top : calc( ( 22 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 22 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#content p + h2{
		margin-top : calc( ( 77 - 13 - 3.8 ) * 100vw / 750 );
		margin-top : calc( ( 77 - var(--sp-p-lh) - var(--sp-h2-lh) ) * 100vw / 750 );
	}
	#content p + h4{
		margin-top : calc( ( 72 - 13 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 72 - var(--sp-p-lh) - var(--sp-h4-lh) ) * 100vw / 750 );
	}
	#content h3 + figure{
		margin-top : calc( 38 * 100vw / 750 );
	}
	#content figure + p{
		margin-top : calc( ( 24 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 24 - var(--sp-p-lh) ) * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#content p + figure{
		margin-top : calc( 30px - 8px );
		margin-top : calc( 30px - var(--pc-p-lh) );
	}
	#content figure + h2{
		margin-top : calc( 54px - 3.4px );
		margin-top : calc( 54px - var(--pc-h2-lh) );
	}
	#content h2 + p{
		margin-top : calc( 25px - 8px );
		margin-top : calc( 25px - var(--pc-p-lh) );
	}
	#content p + h3{
		margin-top : calc( 36px - 8px );
		margin-top : calc( 36px - var(--pc-p-lh) );
	}
	#content h3 + p{
		margin-top : calc( 20px - 8px );
		margin-top : calc( 20px - var(--pc-p-lh) );
	}
	#content p + h2{
		margin-top : calc( 89px - 8px - 3.4px );
		margin-top : calc( 89px - var(--pc-p-lh) - var(--pc-h2-lh) );
	}
	#content p + h4{
		margin-top : calc( 48px - 8px - 8px );
		margin-top : calc( 48px - var(--pc-p-lh) - var(--pc-h4-lh) );
	}
	#content h3 + figure{
		margin-top : 25px;
	}
	#content figure + p{
		margin-top : calc( 17px - 8px );
		margin-top : calc( 17px - var(--pc-p-lh) );
	}
}

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

#pagination{
	text-align : center;
}

#pagination .archive{
	background-image : url("../images/ui/icon/list.svg");
	margin-left : auto;
	margin-right : auto;
}

@media screen and (max-width: 750px){
	#pagination .prev{
		left : calc( 263 * 100% / 710 );
	}
	#pagination .next{
		right : calc( 263 * 100% / 710 );
	}
}

@media print,screen and (min-width: 751px){
	#pagination .prev{
		left : 297px;
	}
	#pagination .next{
		right : 297px;
	}
}

#pagination02{
	background-color : #f0eeec;
}

#pagination02 a{
	display : -ms-grid;
	display :     grid;
	align-content : start;
}

#pagination02 span:nth-of-type(1){
	-ms-grid-column : 1;
	-ms-grid-column-span : 2;
	    grid-column : 1/3;
	-ms-grid-row : 1;
	    grid-row : 1;
	display : -ms-grid;
	display :     grid;
	grid-auto-flow : column;
	align-items : center;
	font-weight : 500;
}

#pagination02 picture{
	-ms-grid-row-align : center;
	align-self : center;
	overflow : hidden;
}

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

#pagination02 picture{
	-ms-grid-row : 2;
	    grid-row : 2;
}

#pagination02 span:nth-of-type(2){
	-ms-grid-row-align : center;
	align-self : center;
	color : #5a5252;
	-ms-grid-row : 2;
	    grid-row : 2;
}

#pagination02 .prev span:nth-of-type(1){
	justify-content : start;
}

#pagination02 .prev span:nth-of-type(1):before{
	font-size : 0;
	content : "";
	display : block;
	background : url("../images/ui/parts/arrow/left01_black.svg") 0 0 / contain no-repeat;
}

#pagination02 .prev picture{
	-ms-grid-column : 1;
	    grid-column : 1;
}

#pagination02 .prev span:nth-of-type(2){
	-ms-grid-column : 2;
	    grid-column : 2;
}

#pagination02 .next span:nth-of-type(1){
	justify-content : end;
}

#pagination02 .next span:nth-of-type(1):after{
	font-size : 0;
	content : "";
	display : block;
	background : url("../images/ui/parts/arrow/right01_black.svg") 0 0 / contain no-repeat;
}

#pagination02 .next picture{
	-ms-grid-column : 2;
	    grid-column : 2;
}

#pagination02 .next span:nth-of-type(2){
	-ms-grid-column : 1;
	    grid-column : 1;
}

@media screen and (max-width: 750px){
	#pagination02{
		margin-top : calc( ( 41 - 13 ) * 100vw / 750 );
		position : relative;
		-ms-grid-columns : (50%)[2];
		grid-template-columns : repeat(2,50%);
		padding-left : calc( 20 * 100% / 710 );
		padding-right : calc( 20 * 100% / 710 );
		padding-top : calc( 38 * 100vw / 750 );
		padding-bottom : calc( 55 * 100vw / 750 );
	}
	#pagination02 a{
		row-gap : calc( 18 * 100vw / 750 );
		column-gap : calc( 12 * 100% / 670 );
	}
	#pagination02 span:nth-of-type(1){
		column-gap : calc( 6 * 100% / 670 );
		font-size : 2rem;
	}
	#pagination02 picture{
		height : calc( 108 * 100vw / 750 );
	}
	#pagination02 span:nth-of-type(2){
		font-size : 2.6rem;
		line-height : 1.2;
	}
	#pagination02 .prev{
		-ms-grid-columns : calc( 164 * 100% / 670 ) 1fr;
		grid-template-columns : calc( 164 * 100% / 670 ) 1fr;
	}
	#pagination02 .prev span:nth-of-type(1){
		-ms-grid-columns : calc( 14 * 100% / 670 ) auto;
		grid-template-columns : calc( 14 * 100% / 670 ) auto;
	}
	#pagination02 .prev span:nth-of-type(1):before{
		height : calc( 14 * 100vw / 750 );
	}
	#pagination02 .prev span:nth-of-type(2){
		padding-right : calc( 14 * 100% / 494 );
	}
	#pagination02 .next{
		-ms-grid-columns : 1fr calc( 164 * 100% / 670 );
		grid-template-columns : 1fr calc( 164 * 100% / 670 );
	}
	#pagination02 .next span:nth-of-type(1){
		-ms-grid-columns : auto calc( 14 * 100% / 670 );
		grid-template-columns : auto calc( 14 * 100% / 670 );
	}
	#pagination02 .next span:nth-of-type(1):after{
		height : calc( 14 * 100vw / 750 );
	}
	#pagination02 .next span:nth-of-type(2){
		padding-left : calc( 14 * 100% / 494 );
	}
	#pagination02 .next + .prev{
		margin-top : calc( 16 * 100vw / 750 );
		padding-top : calc( 16 * 100vw / 750 );
		border-top : calc( 2 * 100vw / 750 ) solid #999;
	}
}

@media print,screen and (min-width: 751px){
	#pagination02{
		margin-top : calc( 102px - 8px );
		display : -ms-grid;
		display :     grid;
		position : relative;
		-ms-grid-columns : (50%)[2];
		grid-template-columns : repeat(2,50%);
		padding-left : 20px;
		padding-right : 20px;
		padding-top : 18px;
		padding-bottom : 32px;
	}
	#pagination02:before{
		position : absolute;
		content : "";
		display : block;
		width : 2px;
		height : 162px;
		top : 19px;
		left : 50%;
		margin-left : -1px;
		background-color : #999;
	}
	#pagination02 a{
		row-gap : 20px;
		column-gap : 12px;
		-ms-grid-row : 1;
		    grid-row : 1;
	}
	#pagination02 span:nth-of-type(1){
		column-gap : 14px;
		font-size : 1.4rem;
	}
	#pagination02 picture{
		height : 108px;
	}
	#pagination02 span:nth-of-type(2){
		font-size : 1.6rem;
		line-height : 1.2;
	}
	#pagination02 .prev{
		-ms-grid-columns : 164px 1fr;
		grid-template-columns : 164px 1fr;
		-ms-grid-column : 1;
		    grid-column : 1;
	}
	#pagination02 .prev span:nth-of-type(1){
		-ms-grid-columns : 16px auto;
		grid-template-columns : 16px auto;
	}
	#pagination02 .prev span:nth-of-type(1):before{
		height : 16px;
	}
	#pagination02 .prev span:nth-of-type(2){
		padding-right : 16px;
	}
	#pagination02 .next{
		-ms-grid-column : 2;
		    grid-column : 2;
		-ms-grid-columns : 1fr 164px;
		grid-template-columns : 1fr 164px;
	}
	#pagination02 .next span:nth-of-type(1){
		-ms-grid-columns : auto 16px;
		grid-template-columns : auto 16px;
	}
	#pagination02 .next span:nth-of-type(1):after{
		height : 16px;
	}
	#pagination02 .next span:nth-of-type(2){
		padding-left : 16px;
	}
}

/*--------------------------------------------
VOICES
---------------------------------------------*/

#voices > h1{
	border-bottom-style : solid;
	border-bottom-color : #1ead4c;
	border-bottom-color : var(--green);
}

#voices .head{
	display : flex;
	justify-content : space-between;
	align-items : flex-start;
}

#voices .head p{
	flex-shrink : 0;
}

#voices .head p span{
	display : block;
}

@media screen and (max-width: 750px){
	#voices{
		padding-top : calc( ( 56 - 3.8 ) * 100vw / 750 );
	}
	#voices > h1{
		font-size : 3.8rem;
		line-height : 1.2;
	}
	#voices > h1{
		padding-bottom : calc( ( 26 - 3.8 ) * 100vw / 750 );
		border-bottom-width : calc( 6 * 100vw / 750 );
	}
	#voices .head{
		margin-top : calc( ( 28 - 11 ) * 100vw / 750 );
	}
	#voices .head p{
		margin-top : calc( ( 27 - 17 - 2.6 ) * 100vw / 750 );
	}
	#voices .head span{
		font-size : 2.6rem;
		line-height : 1.2;
	}
	#voices #content{
		margin-top : calc( ( 39 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 39 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#voices #pagination{
		margin-top : calc( ( 127 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 127 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#voices #sidebar{
		margin-top : calc( 89 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#voices{
		padding-bottom : calc( 64px - 39px );
		padding-bottom : calc( 64px - var(--pc-contacts-pt) );
	}
	#voices > h1{
		font-size : 3.4rem;
		line-height : 1.2;
	}
	#voices > h1{
		padding-bottom : calc( 23px - 3.4px );
		border-bottom-width : 3px;
	}
	#voices .head{
		margin-top : calc( 16px - 11px );
	}
	#voices .head p{
		margin-top : calc( 25px - 16px - 4px );
	}
	#voices .head span{
		font-size : 1.6rem;
		line-height : 1.5;
	}
	#voices #content{
		margin-top : calc( 41px - 8px );
		margin-top : calc( 41px - var(--pc-p-lh) );
	}
	#voices #pagination{
		margin-top : calc( 44px - 8px );
		margin-top : calc( 44px - var(--pc-p-lh) );
	}
}

/*--------------------------------------------
KAKEIZUME MORIES
---------------------------------------------*/

#kakeizumemories > .articletitle{
	border-bottom-style : solid;
	border-bottom-color : #1ead4c;
	border-bottom-color : var(--green);
}

#kakeizumemories .links{
	text-align : right;
}

#kakeizumemories .thumbnail img{
	width : 100%;
	height : auto;
}

#kakeizumemories .yarpp-thumbnails-horizontal{
	display : -ms-grid;
	display :     grid;
	grid-auto-flow : column;
	align-items : stretch;
	justify-content : start;
}

#kakeizumemories .yarpp-thumbnails-horizontal .yarpp-thumbnail{
	height : 100%;
}

#kakeizumemories .yarpp-thumbnails-horizontal .yarpp-thumbnail-title{
	max-height : -moz-fit-content;
	max-height :      fit-content;
	margin-bottom : 0;
}

@media screen and (max-width: 750px){
	#kakeizumemories{
		padding-top : calc( ( 35 - 3.8 ) * 100vw / 750 );
	}
	#kakeizumemories > .articletitle{
		font-size : 3.8rem;
		line-height : 1.2;
	}
	#kakeizumemories > .articletitle{
		padding-bottom : calc( ( 26 - 3.8 ) * 100vw / 750 );
		border-bottom : solid #1ead4c calc( 6 * 100vw / 750 );
		border-bottom : solid #1ead4c calc( 6 * 100vw / 750 );
		border-bottom : solid var(--green) calc( 6 * 100vw / 750 );
	}
	#kakeizumemories .links{
		margin-top : calc( ( 37 - 11 ) * 100vw / 750 );
	}
	#kakeizumemories .thumbnail{
		margin-top : calc( 37 * 100vw / 750 );
	}
	#kakeizumemories #content{
		margin-top : calc( 31 * 100vw / 750 );
	}
	#kakeizumemories #content p + h3{
		margin-top : calc( 60 * 100vw / 750 );
	}
	#kakeizumemories #pagination{
		margin-top : calc( ( 65 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 65 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#kakeizumemories .yarpp{
		margin-top : calc( 64 * 100vw / 750 );
        width: 100vw;
        overflow: scroll;
	}
	#kakeizumemories #sidebar{
		margin-top : calc( 103 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#kakeizumemories{
		padding-bottom : calc( 55px - 39px );
		padding-bottom : calc( 55px - var(--pc-contacts-pt) );
	}
	#kakeizumemories > .articletitle{
		font-size : 2.6rem;
		line-height : 1.3;
	}
	#kakeizumemories > .articletitle:after{
		content : "";
		display : block;
		background-color : #1ead4c;
		background-color : var(--green);
		width : 150px;
		height : 3px;
		margin-top : calc( 27px - 4px );
	}
	#kakeizumemories .links{
		margin-top : calc( 41px - 11px );
	}
	#kakeizumemories .thumbnail{
		margin-top : 20px;
	}
	#kakeizumemories #content{
		margin-top : calc( 30px - 8px );
		margin-top : calc( 30px - var(--pc-p-lh) );
	}
	#kakeizumemories #content p + h3{
		margin-top : 30px;
	}
	#kakeizumemories #pagination{
		margin-top : calc( 81px - 8px );
		margin-top : calc( 81px - var(--pc-p-lh) );
	}
	#kakeizumemories .yarpp{
		margin-top : 64px;
	}
}

@media print,screen and (min-width: 751px){
	.kakeizumemories .author_wrap dl{
		display : flex;
	}
	.kakeizumemories .author_wrap dl dt{
		width : 200px;
	}
	.kakeizumemories .author_wrap dl dt img{
		width : 100%;
		height : auto;
	}
	.kakeizumemories .author_wrap dl dd{
		padding-left : 10px;
		width : calc(100% - 210px);
	}
	.kakeizumemories .author_wrap dl dd h4{
		font-weight : 600;
		font-size : 2.4rem;
		margin-bottom : .3em;
	}
}

#toc{
	background-color : #f4f2f2;
}

#toc figcaption:after{
	content : "";
	display : block;
	background-color : #1ead4c;
	background-color : var(--green);
	font-size : 0;
}

#toc ul{
	margin-left : 0;
	list-style : none;
}

#toc ul li{
	list-style : none;
}

#toc a{
	display : inline-block;
	word-break : break-all;
}

#toc a:before{
	color : #333;
	text-decoration : none;
	white-space : pre;
	display : inline-block;
}

#toc > ul > li{
	counter-increment : toc;
}

#toc > ul > li > a:before{
	content : counter(toc)". ";
}

#toc li li{
	counter-increment : toc02;
	margin-left : 2em;
}

#toc li li a:before{
	content : counter(toc)"."counter(toc02)" ";
}

@media screen and (max-width: 750px){
	#toc{
		margin-top : calc( 35 * 100vw / 750 );
		padding-top : calc( 50 * 100vw / 750 );
		padding-left : calc( 15 * 100% / 710 );
		padding-right : calc( 15 * 100% / 710 );
		padding-bottom : calc( ( 34 - 2.6 ) * 100vw / 750 );
	}
	#toc figcaption{
		font-size : 3.8rem;
	}
	#toc figcaption:after{
		margin-top : calc( 20 * 100vw / 750 );
		width : calc( 80 * 100% / 680 );
		height : calc( 5 * 100vw / 750 );
	}
	#toc > ul{
		margin-top : calc( ( 29 - 2.6 ) * 100vw / 750 );
	}
	#toc a{
		font-size : 2.6rem;
		line-height : 1.2;
	}
	#toc > ul > li + li{
		margin-top : calc( 20 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#toc{
		margin-top : 15px;
		padding-top : 30px;
		padding-left : 15px;
		padding-right : 15px;
		padding-bottom : calc( 27px - 8px );
	}
	#toc figcaption{
		font-weight : 500;
		font-size : 2rem;
	}
	#toc figcaption:after{
		margin-top : 16px;
		width : 200px;
		height : 3px;
	}
	#toc > ul{
		margin-top : calc( 20px - 8px );
	}
	#toc a{
		font-size : 1.6rem;
		line-height : 2;
	}
	#toc > ul > li + li{
		margin-top : 4px;
	}
}

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

#news > h1{
	border-bottom-style : solid;
	border-bottom-color : #1ead4c;
	border-bottom-color : var(--green);
}

#news .links{
	text-align : right;
}

#news .thumbnail img{
	width : 100%;
	height : auto;
}

@media screen and (max-width: 750px){
	#news{
		padding-top : calc( ( 35 - 3.8 ) * 100vw / 750 );
	}
	#news > h1{
		font-size : 3.8rem;
		line-height : 1.2;
	}
	#news > h1{
		padding-bottom : calc( ( 26 - 3.8 ) * 100vw / 750 );
		border-bottom : solid #1ead4c calc( 6 * 100vw / 750 );
		border-bottom : solid #1ead4c calc( 6 * 100vw / 750 );
		border-bottom : solid var(--green) calc( 6 * 100vw / 750 );
	}
	#news .links{
		margin-top : calc( ( 37 - 11 ) * 100vw / 750 );
	}
	#news .thumbnail{
		margin-top : calc( 37 * 100vw / 750 );
	}
	#news #content{
		margin-top : calc( 31 * 100vw / 750 );
	}
	#news #content p + h3{
		margin-top : calc( ( 102 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 102 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#news #pagination{
		margin-top : calc( ( 65 - 13 ) * 100vw / 750 );
		margin-top : calc( ( 65 - var(--sp-p-lh) ) * 100vw / 750 );
	}
	#news #sidebar{
		margin-top : calc( 103 * 100vw / 750 );
	}
}

@media print,screen and (min-width: 751px){
	#news{
		padding-bottom : calc( 55px - 39px );
		padding-bottom : calc( 55px - var(--pc-contacts-pt) );
	}
	#news > h1{
		font-size : 2.6rem;
		line-height : 1.3;
	}
	#news > h1:after{
		content : "";
		display : block;
		background-color : #1ead4c;
		background-color : var(--green);
		width : 150px;
		height : 3px;
		margin-top : calc( 27px - 4px );
	}
	#news .links{
		margin-top : calc( 41px - 11px );
	}
	#news .thumbnail{
		margin-top : 20px;
	}
	#news #content{
		margin-top : calc( 30px - 8px );
		margin-top : calc( 30px - var(--pc-p-lh) );
	}
	#news #content p + h3{
		margin-top : calc( 68px - 8px );
		margin-top : calc( 68px - var(--pc-p-lh) );
	}
	#news #pagination{
		margin-top : calc( 81px - 8px );
		margin-top : calc( 81px - var(--pc-p-lh) );
	}
}

.youtube{
	width : 100%;
	aspect-ratio : 16 / 9;
}

.youtube iframe{
	width : 100%;
	height : 100%;
}


/*-- SNS -------------*/



.fa-hatena:before {
    font-family: Verdana;
    font-weight: bold;
    content: 'B!';
}

.share {
    margin-top: 40px;
    margin-bottom: 40px;
    margin-right: 3em;
}

.share ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.share ul:after {
    display: block;
    clear: both;
    content: '';
}

.share li {
    float: left;
    width: 25%;
    margin: 0;
    margin-top: 15px;
}

.share li a {
    font-size: 14px;
    display: block;
    padding: 10px;
    text-align: center;
    text-decoration: none;
    color: #fff;
}

.share li a:hover {
    opacity: .8;
}

.share li a:visited {
    color: #fff;
}

.tweet a {
    background-color: #55acee;
}

.facebooklink a {
    background-color: #315096;
}

.line a {
    background-color: #00b900;
}

.hatena a {
    background-color: #008fde;
}

@media screen and (max-width:768px){
    .share li {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 3px;
    }
    
    .share li i {
        font-size: 1.3em;
        padding-top: 3px;
    }
    
    .facebooklink i, .tweet i, .hatena i {
        display: none;
    }
}

/* 20250507 */
#content .profile-box {
	background-color: #f4f2f2;
	padding: 3em 2em 2.5em 1em;
	border-radius: 8px;
	margin: 20px auto;
	position: relative;
	margin-top: 64px;
}

#content .profile-title {
	background-color: #1ead4c;
	color: #fff;
	padding: 6px 1em;
	border-radius: 5px;
	display: inline-block;
	font-size: 1.7rem;
	font-weight: 500;
	position: absolute;
	top: -20px;
	border: none;
	max-width: 220px;
	width: 100%;
	text-align: center;
}

#content .profile-content {
	display: flex;
	align-items: center;
	gap: 1em;
}

#content .profile-image {
	flex-shrink: 0;
	width: 220px;
}

#content .profile-image img {
	display: block;
	height: 220px;
	margin: auto;
}

#content .profile-details {
	flex-grow: 1;
}

#content .profile-name {
	font-weight: 500;
	font-size: 2rem;
}

#content .profile-company {
	color: #1ead4c;
	border-bottom: 1px solid;
	margin-bottom: 1em;
	padding-bottom: 1em;
}

#content .profile-description {
	font-size: 0.9em;
	line-height: 1.8;
}

@media (max-width: 600px) {
	#content .profile-content {
	flex-direction: column;
	align-items: center;
	text-align: center;
	}

	#content .profile-title {
	margin: auto;
	left: 0;
	right: 0;
	top: -15px;
	}

	#content .profile-image {
	width: 100px;
	}

	#content .profile-image img {
	height: 100px;
	}

	#content .profile-details {
	width: 100%;
	}
}

/* 20251016 「自分のルーツを調べる方法」に関するコラム作成 */
.my-table {
	margin: 20px 0 0;
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.my-table th,
.my-table td {
	padding: 12px 16px;
	text-align: left;
	border-bottom: 1px solid #ccc;
	line-height: 1.7;
}

.my-table thead th {
	font-weight: 600;
}

.my-table th:nth-child(-n+3),
.my-table td:nth-child(-n+3) {
	width: 25%;
}

.my-table th:nth-child(4),
.my-table td:nth-child(4) {
	width: 25%;
	text-align: center;
}

#content ul.content-lists {
	list-style: none;
	margin: 20px 0 0 0;
}

#content ul.content-lists li {
	list-style: none;
}

@media (max-width: 750px) {

	.my-table th,
	.my-table td {
		padding: 8px 10px;
		font-size: 14px;
	}
}

#content ol.steps-list {
	list-style: none;
	margin: 20px 0 0;
}

#content ol.steps-list li {
	margin-bottom: 8px;
	line-height: 1.6;
	list-style: none;
}

#top-faq {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 70px;

}

#top-faq .link01 {
	width: auto;
	margin-top: 40px;
	margin-left: 0;
}

#top-faq dl {
	width: 100%;
}

#top-faq dl>div {
	cursor: pointer;
}

#top-faq dt:before,
#top-faq dd:before {
	content: "";
	background-repeat: no-repeat;
	background-position: center;
	font-size: 0;
}

#top-faq dt {
	background-color: #fff;
	position: relative;
	font-weight: 500;
	border: 1px solid #e6f0bd;
}

#top-faq dt:before {
	position: absolute;
	background-image: url("/wp-content/themes/kakeizu/assets/images/ui/icon/q.svg");
	display: block;
	background-size: contain;
}

#top-faq dd {
	display: flex;
	align-items: flex-start;
	background-color: #F0F6D8;
}

#top-faq dd:before {
	background-image: url("/wp-content/themes/kakeizu/assets/images/ui/icon/a.svg");
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #1ead4c;
	background-color: var(--green);
	flex-shrink: 0;
}

@media screen and (max-width: 750px) {
	#top-faq {
		padding-top: calc((59 - 13) * 100vw / 750);
		padding-top: calc((59 - var(--sp-text01-lh)) * 100vw / 750);
		padding-bottom: calc(100 * 100vw / 750);
	}

	#top-faq dl {
		margin-top: calc((57 - 13) * 100vw / 750);
		margin-top: calc((57 - var(--sp-text01-lh)) * 100vw / 750);
	}

	#top-faq dl>div+div {
		margin-top: calc(10 * 100vw / 750);
	}

	#top-faq dt {
		font-size: 2.6rem;
		line-height: 1.29;
	}

	#top-faq dt {
		padding-top: calc((26 - 3.9) * 100vw / 750);
		padding-bottom: calc((26 - 3.9) * 100vw / 750);
		padding-left: calc(73 * 100% / 710);
	}

	#top-faq dt:before {
		width: calc(20 * 100% / 710);
		height: calc(44 * 100vw / 750);
		top: calc(17 * 100vw / 750);
		left: calc(29 * 100% / 710);
	}

	#top-faq dd {
		font-size: 2.6rem;
		line-height: 2;
	}

	#top-faq dd {
		margin-bottom: calc((40 - 13) * 100vw / 750);
	}

	#top-faq dd:before {
		margin-top: calc(13 * 100vw / 750);
		width: calc(70 * 100% / 710);
		height: calc(70 * 100vw / 750);
		background-size: auto calc(39 * 100vw / 750);
		margin-right: calc(27 * 100% / 710);
	}
}

@media print,
screen and (min-width: 751px) {
	#top-faq dl {
		margin-top: calc(42px - 8px);
		margin-top: calc(42px - var(--pc-text01-lh));
	}

	#top-faq dl>div+div {
		margin-top: 10px;
	}

	#top-faq dt,
	#top-faq dd {
		padding-right: 15px;
	}

	#top-faq dt {
		font-size: 1.8rem;
		line-height: 1.2;

	}

	#top-faq dt {
		padding-top: calc(21px - 1.8px);
		padding-bottom: calc(21px - 1.8px);
		padding-left: 75px;
		padding-right: 15px;
		padding-left: 75px;
	}

	#top-faq dt:before {
		width: 14px;
		height: 29px;
		top: 16px;
		left: 23px;
	}

	#top-faq dd {

		font-size: 1.6rem;
		line-height: 1.87;
		padding: 10px 15px;

	}

	#top-faq dd:before {
		margin-top: 3px;
		width: 50px;
		height: 50px;
		background-size: auto 26px;
		margin-right: 21px;
	}
}