@charset "utf-8";
/* CSS Document */
	.page_title_wrap + section > div h2:first-of-type{
		margin-top: calc(32px + 17px);
	}
	
	
section {
position: relative;
    z-index: 0;
}
	
section > div > :is(p, dl, table, blockquote, div) {
    /*width: 90.91%;
    background: red;  デバッグ用 */
    margin-inline:auto;
}
	
		
section > div p,section .box h4 {
	letter-spacing: 0.05em; 
	/*letter-spacing: 0.075em; */
	text-align: justify; 
	font-family: 'BIZ UDPGothic', sans-serif; 
	font-weight: 700;    
	line-height: 1.875;
}
	
section > div p:has(strong) {
	        line-height: 1.5;
}	
section > div p strong {
color:#754C24; font-size: 1.5rem; font-weight: 700;
}
p:has(strong) + p {
	margin-top: 1em;
}
	
section:not(.page_title_wrap)::before {
        content: '';
        position: absolute;
        top: -17px;
        left: 50%;
        width: 100vw;
        height: 34px;
        transform: translateX(-50%);
        z-index: -1;
        background-image: radial-gradient(#fffbee 70%, transparent 71%);
        background-size: 34px 34px;
        background-repeat: repeat-x;
        background-position: center top;
    }		
section:not(.page_title_wrap)::after {
        content: '';
        position: absolute;
        bottom: -17px;
        left: 50%;
        width: 100vw;
        height: 34px;
        transform: translateX(-50%);
        z-index: -1;
        background-image: radial-gradient(#fffbee 70%, transparent 71%);
        background-size: 34px 34px;
        background-repeat: repeat-x;
        background-position: center top;
    }
	
		
section:not(.page_title_wrap, #list_refer):nth-of-type(odd) {
background: #F5FDFF;
}
	section:not(.page_title_wrap, #list_refer):nth-of-type(odd)::before{
        top: -15px;
        background-image: radial-gradient(#F5FDFF 70%, transparent 71%);
		
	}	
	section:not(.page_title_wrap, #list_refer):nth-of-type(odd)::after{
        bottom: -15px;
        background-image: radial-gradient(#F5FDFF 70%, transparent 71%);
		
	}	
	section:not(.page_title_wrap, #list_refer):nth-of-type(even)::before{
        content: none;
		
	}	
	section:not(.page_title_wrap, #list_refer):nth-of-type(even)::after{
        content: none;
		
	}	
	
	section > div div.shadow{
		position: relative;
		
	}
	section > div div.shadow::after{
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;

    background-image:
      linear-gradient(
        90deg,
        rgba(95,191,173,1),
        rgba(242,142,30,1)
      );
        opacity: calc(.15 / 1.5);
	}



section > div div.shadow::after{
        filter: blur(calc(3.8rem / 4));
        width: calc(100% - 0.1rem - 3.8rem / 2);
        height: calc(100% + 1.5rem - 3.8rem / 2);
                top: 50%;
        bottom: calc(50% - 3rem);
        margin: auto;
	        transform: translateX(-50%);
        left: calc(50%);
}
	
	
section .sec-inner .box > div{
background: #FFF;
	border: 1px solid #00A498;
	border-radius: 1rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	
	
	        padding: 0.75rem 1rem 1rem;
	
    box-sizing: border-box;
	        min-height: 15rem;
	position: relative;
	
    }	
	
	


section h2 + p{
	margin-top: 2rem;
}

section .four_column > div {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.1rem;
	
    }	

section .four_column  figure {
	width: 10.2rem;
	height: 9.06rem;
    }	
section .four_column figure img{
	        width: 100%;
        height: 100%;
    }	
section .four_column p{
	  font-size: 1.3rem;
	align-items: center;
	line-height: 1.28;
    }	
section .four_column figure + p:not(:has( + p)){
        margin-top: 1rem;
    }	





section h3 + *{
	margin-top: 1.9rem;
}



section .two_column {
gap:1.1rem;	
}


section .two_column h4{
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	color: #754C24;
	
}


section .two_column h4.support{
	
	color: #1E877F;
	margin-top: 2.85rem;
}
section .two_column h4 + p{
	margin-top: 0.65rem;
}
section .two_column ul{
	margin-top: 1rem;
	
}
section .two_column ul li{
	display: flex;
	        align-items: center;
	column-gap: 0.8rem;
        line-height: 2.5;
}
section .two_column ul li::before{
content: "";
	display: block;
	width: 1.1rem;
	height: 1.1rem;
	background: #F28E1E;
	border-radius: 50%;
}


section .three_column{
	margin-top: 0.7rem;
	flex-direction: row;

}
section .three_column > div{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	align-items: baseline;
}
section .three_column > div div{
	display: flex;
	flex-direction: column;
	column-gap: 0.63em;
	align-items: center;
}
section .three_column figure{
	width: 8.5rem;
	height: 8.5rem;
}
section .three_column p{
    white-space: nowrap;
	line-height: 1.5;
}

section .three_column figure + p{
	        margin-top: 0.31em;
}



