#wrapper{
	padding:110px 0 0;
}
#mainimage{
	position:relative;
	width:100%;
	height:calc(100dvh - 130px);
	max-height:1370px;
	overflow:hidden;
	position:relative;
	margin-bottom:90px;
}
#mainimage #slide{
	width:100%;
	height:100%;
	flex:none;
	position:relative;
	list-style:none;
}
.slick-list,.slick-track,slick-slide{
	height:100%;
}
#mainimage #slide img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:10px 0 0 10px;
}
#mainimage_catch{
	position:absolute;
	z-index:3;
	width:100%;
	font-size:120px;
	box-sizing:border-box;
	color:#fff;
	left:50%;
	top:40%;
	transform:translate(-50%,-50%);
	text-align:center;
	font-family: "kozuka-gothic-pr6n", sans-serif;
	font-weight: 900;
	font-style: normal;
	text-shadow:0 0 15px rgba(0,0,0,1),0 0 10px rgba(0,0,0,1),0 0 5px rgba(0,0,0,1);
}
#mainimage_nav{
	position:absolute;
	bottom:20px;
	text-align:center;
	color:#fff;
	left:0;
	width:100%;
}
#mainimage_nav h3{
	font-size:36px;
	text-shadow:0 0 15px rgba(0,0,0,1),0 0 10px rgba(0,0,0,1),0 0 5px rgba(0,0,0,1);
	margin-bottom:40px;
}
#mainimage_nav ul{
	display:flex;
	justify-content:center;
	gap:40px;
	list-style:none;
	padding:0;
}
#mainimage_nav ul li{
	width:290px;
	line-height:80px;
	font-size:30px;
}
#mainimage_nav ul li a{
	color:#fff;
	text-decoration:none;
	display:block;
	border-radius:40px;
}
#mainimage_nav ul li:nth-child(1) a{
	background:#ff8720;
}
#mainimage_nav ul li:nth-child(2) a{
	background:#72bb82;
}
#mainimage_nav ul li:nth-child(3) a{
	background:#74cfc3;
}
#mainimage_nav ul li:nth-child(4) a{
	background:#f58052;
}
main{
}
main section{
	margin:0 auto 80px;
}
main h2{
	text-align:center;
	margin-bottom:50px;
	font-size:36px;
	font-weight:700;
}
main h2 span{
	position:relative;
	z-index:2;
}
#top_workshop{
	padding:0 5%;
	margin-bottom:150px;
	background:url('../images/common/bg_green.svg') no-repeat center center;
}
#top_workshop article{
	display:flex;
	max-width:1480px;
	gap:18px;
	margin:0 auto;
}
#top_workshop article dl{
	width:calc((100% - 36px) / 3);
	box-sizing:border-box;
	padding:19px 0px 0 0px;
	border:1px solid #cecdcb;
	border-radius:10px;
	background:#fff url('../images/common/arrow1.png') no-repeat bottom right;
}
#top_workshop article dt{
	background:#448aca;
	line-height:30px;
	border-radius:15px;
	text-align:center;
	color:#fff;
	margin:0 19px 15px;
}
#top_workshop article .cat38 dt,
#top_workshop article .cat46 dt{
	background:#f48185 !important;
}
#top_workshop article dd a{
	display:flex;
	height:100%;
	box-sizing:border-box;
	padding:0 19px 19px 19px;
	color: #211715;
	text-decoration:none;
	gap:20px;
}
#top_workshop article dd time{
	display:block;
	border-bottom:2px solid #e2e1df;
	padding-bottom:10px;
	margin-bottom:10px;
}
#top_workshop article dd time strong{
	display:block;
	font-size:26px;
	font-weight:normal;
}
.event_info{
	width:calc(100% - 140px);
	flex:none;
}
#top_workshop article dd a figure{
	width:120px;
	height:170px;
	box-sizing:border-box;
	border:1px solid #cecdcb;
	flex:none;
}
#top_workshop article dd a figure img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.more{
	padding:40px 0 0;
}
.more a{
	display:block;
	max-width:400px;
	margin:0 auto;
	border:1px solid #c4c3c1;
	line-height:70px;
	border-radius:36px;
	color: #211715;
	text-decoration:none;
	padding:0 30px;
	font-weight:700;
	background:#fff url('../images/common/arrow2.svg') no-repeat right center;
}
.more a:hover{
	color:#fff;
	background:#f48185 url('../images/common/arrow2.svg') no-repeat right center;
}
#top_report{
	padding:0 5%;
	margin-bottom:150px;
	background:url('../images/common/bg_orange.svg') no-repeat center center;
}
#top_report ul{
	list-style:none;
	padding:40px 0 0;
	max-width:1480px;
	margin:0 auto;
}
#top_report li{
	margin-bottom:20px;
}
#top_report li a{
	display:flex;
	border-radius:10px;
	border:1px solid #c4c3c1;
	color: #211715;
	text-decoration:none;
	padding:19px 3.125dvw;
	box-sizing:border-box;
	gap:40px;
	align-items:center;
	background:#fff url('../images/common/arrow3.png') no-repeat right center;
}
#top_report li a figure{
	width:160px;
	height:120px;
	border:1px solid #c4c3c1;
}
#top_report li a figure img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
#top_report h3{
	font-size:30px;
	color:#ff8720;
	text-align:center;
	margin-bottom:30px;
}
#top_report p{
	text-align:center;
}
.report_info{
	display:block;
	width:calc(100% - 200px);
}
.report_info strong{
	display:block;
	font-size:30px;
}
#top_general_wrap{
	background: radial-gradient(
	ellipse at 85% center,
	rgba(255,249,230,1) 0%,
	rgba(255,249,230,1) 35%,
	#ffffff 60%,
	#ffffff 100%
);
	margin-bottom:150px;
}
#top_general{
	padding:0 5%;
	background:url('../images/common/bg_yellow.svg') no-repeat center center;
}
#top_general h3{
	color:#ff8720;
	font-size:30px;
	text-align:center;
	margin-bottom:40px;
}
#top_general .comment{
	text-align:center;
}
#top_general article{
	max-width:1340px;
	display:flex;
	flex-wrap:wrap;
	margin:0 auto;
	padding:50px 0 0;
	gap:40px;
}
#top_general article dl{
	width:calc((100% - 40px) / 2);
	box-sizing:border-box;
	background:#fff;
	border:1px solid #ccc7b8;
	box-shadow:0 10px 0px #ccc7b8;
	border-radius:10px;
	position:relative;
	display:flex;
	gap:10px;
	align-items:center;
	overflow:hidden;
}
#top_general article dt{
	width:150px;
	flex:none;
}
#top_general article dt img{
	display:block;
	margin:0 auto;
	max-width:90%;
}
#top_general article dd{
	width:calc(100% - 160px);
	padding:30px 30px 70px 0;
	box-sizing:border-box;
	flex:none;
}
#top_general article dd h4{
	font-size:32px;
	margin-bottom:10px;
}
#top_general article dd a{
	display:block;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	background:#ff8720;
	width:100%;
	max-width:400px;
	position:absolute;
	bottom:0;
	right:0;
	text-align:center;
	border-radius:10px 0 0 0;
}
.kokoro{
	width:calc((100% - 40px) / 2);
	display:flex;
	gap:20px;
	font-size:18px;
	align-items:flex-end;
}
.kokoro img{
	width:88px;
	flex:none;
}
.kokoro .fukidashi{
	width:calc(100% - 108px);
	box-sizing:border-box;
	padding:20px;
	background:#ffe8bc;
	border-radius:20px;
	color:#804500;
	position:relative;
}
.kokoro .fukidashi::after{
	content:"";
	position:absolute;
	right:-18px;
	bottom:24px;
	width:0;
	height:0;
	border-style:solid;
	border-width:14px 0 14px 18px;
	border-color:transparent transparent transparent #ffe8bc;
}
#top_professionals_wrap{
	background: radial-gradient(
	ellipse at 25% center,
	#ebf9ef 0%,
	#ebf9ef 35%,
	#ffffff 60%,
	#ffffff 100%
);
	margin-bottom:150px;

}
#top_professionals{
	padding:0 5%;
	background:url('../images/common/bg_blue.svg') no-repeat center center;
}
#top_professionals h3{
	color:#19a927;
	font-size:30px;
	text-align:center;
	margin-bottom:40px;
}
#top_professionals .comment{
	text-align:center;
}
#top_professionals article{
	max-width:1340px;
	display:flex;
	flex-wrap:wrap;
	margin:0 auto;
	padding:50px 0 0;
	gap:40px;
}
#top_professionals article dl{
	width:calc((100% - 40px) / 2);
	box-sizing:border-box;
	background:#fff;
	border:1px solid #ccc7b8;
	box-shadow:0 10px 0px #ccc7b8;
	border-radius:10px;
	position:relative;
	display:flex;
	gap:10px;
	align-items:center;
	overflow:hidden;
}
#top_professionals article dt{
	width:150px;
	flex:none;
}
#top_professionals article dt img{
	display:block;
	margin:0 auto;
	max-width:90%;
}
#top_professionals article dd{
	width:calc(100% - 160px);
	padding:30px 30px 70px 0;
	box-sizing:border-box;
	flex:none;
}
#top_professionals article dd h4{
	font-size:32px;
	margin-bottom:10px;
}
#top_professionals article dd a{
	display:block;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	background:#69b070;
	width:100%;
	max-width:400px;
	position:absolute;
	bottom:0;
	right:0;
	text-align:center;
	border-radius:10px 0 0 0;
}
#top_service{
	background: radial-gradient(
	ellipse at 45% center,
	#ebf6f9 0%,
	#ebf6f9 35%,
	#ffffff 60%,
	#ffffff 100%
);

}
#top_service .comment{
	text-align:center;
}
#top_service1_h2{
	margin-bottom:40px;
}
#top_service1{
	padding:100px 0 130px;
}
#top_service article{
	max-width:1480px;
	margin:0 auto;
}
#top_service article h3{
	font-size:30px;
	color:#8f82bc;
	margin-bottom:20px;
}
#top_service1 ul{
	list-style:none;
	margin-bottom:40px;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}
#top_service1 ul li{
	width:calc((100% - 40px) / 3);
	flex:none;
}
#top_service1 ul li a{
	display:flex;
	align-items:center;
	text-decoration:none;
	color: #211715;
	padding:0 100px 0 30px;
	background:#fff url('../images/common/arrow4.png') no-repeat right center;
	height:70px;
	border:1px solid #c2c2c2;
	box-sizing:border-box;
	border-radius:10px;
}
#top_service1 ul li a:hover{
	background:#c1ebff url('../images/common/arrow4.png') no-repeat right center;
}
#top_service2{
	position:relative;
}
#top_service2 h2{
	text-align:left;
}
#map_wrap{
	max-width:1480px;
	margin:0 auto;
	position:relative;
	display:flex;
	justify-content:center;
	gap:10%;
}
#map_wrap figure{
	width:45%;
	flex:none;
}
#map_wrap img{
	display:block;
	position:relative;
	z-index:1;
}
#map_r{
	width:45%;
}
#map_wrap ul{
	list-style:none;
	padding:0;
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	flex:none;
	gap:20px;
}
#map_wrap ul li{
	width:calc((100% - 20px) / 2);
	line-height:60px;
}
#map_wrap li a{
	display:flex;
	width:100%;
	padding:0 15px;
	gap:15px;
	box-sizing:border-box;
	align-items:center;
	background:#fff;
	text-decoration:none;
	color: #211715;
	height:70px;
	border:1px solid #c2c2c2;
	box-sizing:border-box;
	border-radius:10px;
}
#map_wrap li a:hover{
	background:#c1ebff;
}
#top_banner1{
	max-width:1480px;
	margin:0 auto 100px;
}
#top_banner1 a{
	display:flex;
	gap:40px;
	font-size:clamp(24px,2.5dvw,48px);
	text-decoration:none;
	align-items:center;
	color:#211715;
	background:#fff url('../images/common/arrow3.png') no-repeat right center;
	border-radius:20px;
	box-shadow:0 0 10px rgba(0,0,0,0.2);
}
#top_banner1 a figure{
	width:58.1%;
	position:relative;
	flex:none;
}
#top_banner1 a figure img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	position:relative;
	z-index:1;
}
#top_banner1 a figure figcaption{
	position:absolute;
	writing-mode: vertical-rl;
	z-index:2;
	top:20px;
	left:40px;
	color:#ffffff;
	font-size:24px;
	text-shadow:0 0 5px rgba(0,0,0,0.4);
}
#top_banner2{
	max-width:1200px;
	margin:0 auto;
}
#top_banner2 ul{
	list-style:none;
	display:flex;
	gap:80px;
	width:100%;
}
#top_banner2 ul li{
	width:calc((100% - 80px) / 2);
}
#top_banner2 ul li a{
	display:flex;
	height:400px;
	box-sizing:border-box;
	text-align:center;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	border-radius:10px;
	color:#211715;
	font-size:30px;
	text-decoration:none;
	line-height:1.8em;
	box-shadow:0 0 10px rgba(0,0,0,0.3);
}
#top_banner2 ul li a strong{
	font-size:48px;
}
#top_banner2 ul li:nth-child(1) a{
	border:20px solid #ffb6b9;
	background:#fff url('../images/common/bg_banner1.png') no-repeat center right -171px;
}
#top_banner2 ul li:nth-child(1) a:hover{
	background:#c1ebff url('../images/common/bg_banner1.png') no-repeat center right -171px;
}
#top_banner2 ul li:nth-child(2) a{
	border:20px solid #c1ebff;
	background:#fff url('../images/common/bg_banner2.png') no-repeat center left -171px;
}
#top_banner2 ul li:nth-child(2) a:hover{
	background:#ffb6b9 url('../images/common/bg_banner2.png') no-repeat center left -171px;
}
#news{
	max-width:1480px;
	margin:0 auto 90px;
	display:flex;
	gap:80px;
}
#news h2{
	width:400px;
	flex:none;
}
#news article{
	width:calc(100% - 480px);
	flex:none;
}
#news article dl{
	padding:20px 2.6dvw;
	border-top:1px solid #898989;
}
#news article dl:last-child{
	border-bottom:1px solid #898989;
}
#news article dt{
	font-size:18px;
	color:#626262;
}