@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#about_refer figure img{
		
	}	
	
	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.5rem - 3.8rem / 2);
        height: calc(100% + 2.5rem - 3.8rem / 2);
                top: 50%;
        bottom: calc(50% - 3rem);
        margin: auto;
	        transform: translateX(-50%);
        left: calc(50% + 2.4rem);
}
	
	
section .sec-inner .box > div{
background: #FFF;
	border: 1px solid #00A498;
	border-radius: 1rem;
	display: flex;
	flex-direction: column;
	
	
	padding: 1rem 2rem 1.5rem;
	
    box-sizing: border-box;
	/*min-height: 8.5625em;*/
	position: relative;
	
    }	
	
	
section .box h4 {
	font-size: 1.75rem;
	color: #0C7268;
	text-align: center;
width: 100%;
	        line-height: 2;
	        margin-top: 2rem;
    }	



section .box h4 p{
	font-size: 1.3rem;
	        line-height: 1.73;
	        margin-top: 0.9rem;
    }
	
section .box h4 + p{
	margin-top: 0.5rem;
    }

section .sec-inner .box + .box{margin-top:3.6rem;}

.two_column{
	gap:0.8rem;
}

	
section .box figure{
        width: 100%;
        height: 20rem;
        flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
    }

section .box figure::after{
	content: "";
	width:26rem;
	        height: 1px;
	background: #00A498;
	        flex-shrink: 0;
    }

    section .box figure img {
width: 100%;
        height: 100%;
    }