@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap');

sup{
	font-size: 0.7em;
	vertical-align: top;
}
.serif,.sec01,.sec02,.sec03,.sec04,.sec05{
	color: #000;
	font-family: "kozuka-mincho-pro", serif;
}
p{
	color: #000;
	line-height: 1.7;
}
.tab{
	display: none;
}
@media(max-width:992px){
	.tab{
		display: block;
	}
}
.img-cap{
	bottom: 0;
	right: 0;
	position: absolute;
	padding: 3px 5px;
    color: #fff;
    font-size: 11px;

}
.c-heading{
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 30px;
	color: #008ca5;	
	margin: 0 auto 40px;
	max-width: 1200px;
	@media(max-width:992px){
		font-size: 22px;
	}
	@media(max-width:644px){
		font-size: 18px;
		margin: 0 auto 25px;
		line-height: 1.4;
	}
	
}
.c-heading::before,.c-heading::after{
	content:"";
	background: #008ca5;
	height: 1px;
	width: 90%;
}	
.c-heading::before {
	margin-right: 25px; 
	@media(max-width:644px){
		margin-right: 8px;
	}
}
.c-heading::after {
  	margin-left: 25px;
  	@media(max-width:644px){
		margin-left: 8px;
	}
}
.sec01{
background: #E6E7E7;
background: linear-gradient(180deg, rgba(230, 231, 231, 1) 0%, rgba(255, 255, 255, 1) 100%);
	.heading{
		text-align: center;
		font-family: "Cinzel", serif;
		font-weight: 500;
		line-height: 1;
		font-size: 90px;
		padding: 100px 0 0;
		@media(max-width:644px){
			font-size: 55px;
			padding: 50px 0 0;
		}
	}
	.tit_com03{
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		font-size: 22px;
		@media(max-width:644px){
			font-size: 18px;
		}
	}
	.tit_com03::before,.tit_com03::after{
		content:"";
		background: #000;
		height: 1px;
		width: 150px;
		@media(max-width:644px){
			width: 60px;
		}
	}	
	.tit_com03::before {
	margin-right: 15px; 
	@media(max-width:644px){
		margin-right: 8px;
	}
	}
	.tit_com03::after {
	  margin-left: 15px;
	  	@media(max-width:644px){
		margin-left: 8px;
	}
	}
	.lead{
		font-size: 22px;
		text-align: center;
		line-height: 1.7;
		margin: 50px 0 110px;
		@media(max-width:644px){
			margin: 20px 0px 45px 0px;
			font-size: 17px;
			line-height: 1.8;
		}
	}
	.subheading{
		text-align: center;
		color: #b81a35;
		
		.sub{
			display: block;
			font-size: 22px;
			line-height: 1;
			margin: 0 0 10px;
	@media(max-width:644px){
		font-size: 18px;
	}
		}
		.main{
			font-weight: 600;
			line-height: 1;
			font-size: 100px;
			@media(max-width:992px){
				font-size: 80px;
			}
				@media(max-width:644px){
		font-size: 49px;
	}
			.num{
				font-weight: 500;
				font-family: "Cinzel", serif;
				font-size: 125%;
			}
			small{
				font-weight: 600;
				display: inline-block;
				font-size: 70%;
			}
		}
	}
	.point-nav{
		margin: 40px 0 80px;
		@media(max-width:644px){
			margin: 20px 0 40px;
		}
		.list{
			display: flex;
			justify-content: center;
		}
	}
}
.sec02{
	background: #E6E7E7;
	background: linear-gradient(0deg, rgba(230, 231, 231, 1) 0%, rgba(255, 255, 255, 1) 60%);
	padding: 0 0 100px;
	@media(max-width:644px){
		padding: 0 0 50px;
	}
	.sec-mv{
		position: relative;
		.img-cap{
			color: #000;
		}
	}
	.sec-heading{
		color: #aa8534;
		text-align: center;
		max-width: 1000px;
		margin: -70px auto 60px;
        position: relative;
        @media(max-width:992px){
	        margin: 0 auto 30px;
        }
		.p01{
			font-weight: 500;
			border-bottom:1px solid #aa8534;
			display: flex;
			align-items: flex-end;
			justify-content: center;
			line-height: 1;
			font-family: "Cinzel", serif;
			font-size: 70px;
			margin: 0 0 10px;
			padding: 0 0 10px;
			@media(max-width:992px){
				font-size: 50px;
			}
			@media(max-width:644px){
				display: block;
				text-align: center;
				font-size: 34px;
			}
			.num{
				font-weight: 500;
			line-height: 1;
			position: relative;
            bottom: -10px;
			font-size: 170%;
			@media(max-width:644px){
				bottom: 0;
			}
			}
		}
		.p02{
		font-weight: 600;
		position: relative;
		font-family: "kozuka-mincho-pro", serif;
		padding-left: 35px;
		top: -10px;
		@media(max-width:644px){
			padding-left: 0;
			top: 0;
			display: block;
			margin: 4px 0 0;
		}
		}
		.p03{
			color: #aa8534;
			font-size: 33px;
			@media(max-width:992px){
				font-size: 25px;
			}
			@media(max-width:644px){
				font-size: 18px;
				width: 90%;
				margin: auto;
				line-height: 1.4;
			}
		}
	}
	.sec-lead{
		text-align: center;
		font-size: 20px;
		@media(max-width:644px){
			width: 90%;
			margin: auto;
			font-size: 15px;
		}
	}
	.sec-voice{
		max-width: 1200px;
		margin:70px auto;
		@media(max-width:992px){
			width: 90%;
			margin:35px auto;
		}
		.list{
			display: flex;
			justify-content: center;
			@media(max-width:644px){
				flex-wrap: wrap;
			}
			.item{
				background: #f7f3ea;
				border-radius: 10px;
				position: relative;
				padding: 20px;
				width: 33.3333%;
				@media(max-width:644px){
					width: 100%;
				}
				.item-icon{
					position: absolute;
					top: 30px;
					right: 20px;
					width: 70px;
					@media(max-width:992px){
						width: 62px;
						top: 15px;
						right: 15px;
					}
				}
				.item-title{
					color: #aa8534;
					font-size: 27px;
					margin: 0 0 5px;
					@media(max-width:644px){
						font-size: 20px;
					}
				}
				.item-desc{
					font-size: 15px;
					margin: 0 0 30px;
				}
				.name{
					font-size: 15px;
					position: absolute;
				    right: 30px;
				    bottom: 20px;
				}
			}
			.item:nth-child(2){
				margin: 0 20px;
				@media(max-width:644px){
					margin: 20px 0;
				}
			}
		}
	}
	
	.title-main{
		text-align: center;
		margin: 0 0 80px;
		@media(max-width:644px){
			width: 90%;
			margin: 0 auto 30px;
		}
		.sub{
			display: block;
			font-size: 21px;
			@media(max-width:644px){
				font-size: 16px;
			}
		}
		.main{
			display: block;
			color: #aa8534;
			font-size: 50px;
			@media(max-width:644px){
				font-size: 25px;
			}
			.num{
				color: #b81a35;
				font-family: "Cinzel", serif;
				font-weight: 500;
				line-height: 1;
				font-size: 150%;
			}
		}
		.note{
			line-height: 1.5;
			font-size: 12px;
			@media(max-width:644px){
				font-size: 11px;
			}
		}
	}
	.thumb-group{
		@media(max-width:992px){
			margin: auto;
			width: 90%;
		}
		.thumb-heading{
			text-align: center;
			color: #aa8534;
			font-size: 36px;
			margin: 0 0 22px;
			@media(max-width:644px){
				font-size: 18px;
			}
		}
		.list{
			display: flex;
			justify-content: center;
			max-width: 1200px;
			margin: auto;
			@media(max-width:644px){
				flex-wrap: wrap;
			}
			.item{
				width: 33.33333%;
				@media(max-width:644px){
					width: 100%;
				}
				.item-img{
					position: relative;
				}
			}
			.item:nth-child(2){
				margin: 0 20px;
				@media(max-width:644px){
					margin: 20px 0;
				}
			}
			.item-text{
				text-align: center;
				margin: 15px 0 0;
				@media(max-width:644px){
					margin: 8px 0 0;
				}
				.t01{
					display: block;
					font-size: 16px;

				}
				.item-wrap{
					width: fit-content;
					margin: auto;
				}
				.t02{
					display: block;
					color: #aa8534;
					font-size: 25px;
					@media(max-width:644px){
						font-size: 22px;
					}
					.red{
						color: #b81a35;
						font-family: "Cinzel", serif;
						font-weight: 500;
						line-height: 1;
						font-size: 150%;						
					}
				}
				.t03{
					display: block;
					text-align: right;
					font-size: 12px;
					margin: 0 0 5px;

				}
				.t04{
					display: block;
					font-size: 11px;

				}
			}
		}
	}
	.map{
		max-width: 760px;
		margin: 40px auto 20px;
		@media(max-width:992px){
			margin:20px auto 10px;
			width: 96%;
		}
		@media(max-width:644px){
			margin: 40px auto 20px;
		}		
	}
	.time-group{
		@media(max-width:992px){
			margin:auto;
			width: 90%;
		}		
		.list{
			display: flex;
			justify-content: center;
			@media(max-width:644px){
				flex-wrap: wrap;
				margin: 0 -5%;
			}
			.item{
				text-align: center;
				margin: 20px 10px 0;
				@media(max-width:644px){
					width: 100%;
				}
				.t01{
					display: block;
					font-size: 16px;
					@media(max-width:644px){
						font-size: 15px;
					}
				}
				.item-wrap{
					width: fit-content;
					margin: auto;
				}
				.t02{
					display: block;
					color: #aa8534;
					font-size: 25px;
					@media(max-width:644px){
						font-size: 20px;
					}
					.red{
						color: #b81a35;
						font-family: "Cinzel", serif;
						font-weight: 500;
						line-height: 1;
						font-size: 150%;						
					}
				}
				.t03{
					display: block;
					text-align: right;
					font-size: 12px;

				}
				.t04{
					display: block;
					font-size: 11px;
				}				
			}
		}
	}
}


.sec03{
	background: #E6E7E7;
	background: linear-gradient(0deg, rgba(230, 231, 231, 1) 0%, rgba(255, 255, 255, 1) 60%);
	padding: 0 0 1px;
	.sec-mv{
		position: relative;
		display: flex;
		.mv-left{
			position: relative;
			width: 50%;
			.img-cap{
				right: auto;
				left: 0;
			}
		}
		.mv-right{
			position: relative;
			width: 50%;
		}
		.img-cap{
			color: #000;
		}
	}
	.sec-heading{
		position: relative;
		color: #008ca5;
		text-align: center;
		max-width: 1000px;
		margin:-60px auto 60px;
		@media(max-width:992px){
			margin:0 auto 30px;
		}
		.p01{
			font-weight: 500;
			border-bottom:1px solid #008ca5;
			display: flex;
			align-items: flex-end;
			justify-content: center;
			line-height: 1;
			font-family: "Cinzel", serif;
			font-size: 70px;
			margin: 0 0 10px;
			padding: 0 0 10px;
			@media(max-width:992px){
				font-size: 50px;
			}
			@media(max-width:644px){
				display: block;
				text-align: center;
				font-size: 34px;
			}
			.num{
			font-weight: 500;	
			line-height: 1;
			position: relative;
            bottom: -10px;
			font-size: 170%;
			@media(max-width:644px){
				bottom: 0;
			}
			}
		}
		.p02{
		font-weight: 600;	
		position: relative;
		font-family: "kozuka-mincho-pro", serif;
		padding-left: 35px;
		top: -10px;
				@media(max-width:644px){
			padding-left: 0;
			top: 0;
			display: block;
			margin: 4px 0 0;
		}
		}
		.p03{
			color: #008ca5;
			font-size: 33px;
			@media(max-width:992px){
				font-size: 25px;
			}
			@media(max-width:644px){
				font-size: 18px;
				width: 90%;
				margin: auto;
				line-height: 1.4;
			}
		}
	}
	.sec-lead{
		text-align: center;
	}
	.sec-voice{
		max-width: 1200px;
		margin:70px auto;
				@media(max-width:992px){
			width: 90%;
			margin:35px auto;
		}
		.list{
			display: flex;
			justify-content: center;
			@media(max-width:644px){
				flex-wrap: wrap;
			}			
			.item{
				background: #eef4f7;
				border-radius: 10px;
				position: relative;
				padding: 20px;
				width: 33.3333%;
				@media(max-width:644px){
					width: 100%;
				}				
				.item-icon{
					position: absolute;
					top: 30px;
					right: 20px;
					width: 70px;
					@media(max-width:992px){
						width: 62px;
						top: 15px;
						right: 15px;
					}
				}
				.item-title{
					color: #008ca5;
					font-size: 27px;
					margin: 0 0 5px;
					@media(max-width:644px){
						font-size: 20px;
					}
				}
				.item-desc{
					font-size: 15px;
					margin: 0 0 30px;
				}
				.name{
					font-size: 15px;
					position: absolute;
				    right: 30px;
				    bottom: 20px;
				}
			}
			.item:nth-child(2){
				margin: 0 20px;
				@media(max-width:644px){
					margin: 20px 0;
				}				
			}
		}
	}
	.sec-img01{
		overflow: hidden;
		border-radius: 11px;
		max-width: 1200px;
		margin: auto;
		@media(max-width:644px){
			width: 90%;
		}
	}
	.sec-circle-group{
		text-align: center;
		max-width: 1200px;
		margin:0 auto 100px;
		@media(max-width:992px){
			margin:0 auto 50px;
			width: 90%;
		}
		.heading{
			display: flex;
			align-items: center;
			justify-content: center;
			color: #008ca5;
			line-height: 1.4;
			font-size: 36px;
			margin: 60px 0;
			@media(max-width:644px){
				font-size: 22px;
				margin: 30px 0;
			}
		}
		.heading:before{
			content:"";
			position: relative;
			display: inline-block;
			background: url(../images/voice/icon_circle-left.png) no-repeat center left;
			background-size:100% auto;
			aspect-ratio:84/56;
			width: 35px;
			left: -20px;
			@media(max-width:644px){
				width: 22px;
				left: -10px;
			}
		}
		.heading:after{
			content:"";
			position: relative;
			display: inline-block;
			background: url(../images/voice/icon_circle-right.png) no-repeat center right;
			background-size:100% auto;
			aspect-ratio:84/56;
			width: 35px;
			right: -20px;
			@media(max-width:644px){
				width: 22px;
				right: -10px;
			}
		}		
		.list{
			display: flex;
			justify-content: center;
			flex-wrap: wrap;
			.item{
				margin:0 20px 40px;
				max-width: 210px;
				@media(max-width:992px){
					width: 20%;
					margin: 0 2% 40px;
				}
				@media(max-width:644px){
					width: 46%;
					margin: 2%;
				}
			}
		}
		.note{
			text-align: right;
			font-size: 11px;
			@media(max-width:644px){
				font-size: 10px;
			}
		}
	}

	.sec-thumb-group{
		margin: 0 0 100px;
		@media(max-width:992px){
			margin:0 auto 50px;
			width: 90%;
		}
		.list{
			display: flex;
			justify-content: center;
			max-width: 1200px;
			margin: auto;
			@media(max-width:644px){
				flex-wrap: wrap;
			}
		.item{
			text-align: center;
			width: 33.33333%;
			@media(max-width:644px){
				width: 100%;
			}
			.item-heading{
				font-size: 17px;
				@media(max-width:644px){
					font-size: 14px;
				}
			}
			.item-img{
				overflow: hidden;
				border-radius: 11px;
				margin: 10px 0;
				@media(max-width:644px){
					margin: 7px 0;
				}
			}
			.item-cap{
				font-size: 17px;
				@media(max-width:644px){
					font-size: 14px;
				}
			}
		}
		.item:nth-child(2){
			margin: 0 20px;
			@media(max-width:644px){
				margin: 30px 0;
			}
		}
	}

	}
	.sec-thumb-group.last{
		margin: 0 0 80px;
		@media(max-width:992px){
			margin: 0 auto 50px;
		}
	}
}	


.sec04{
	background: #E6E7E7;
	background: linear-gradient(0deg, rgba(230, 231, 231, 1) 0%, rgba(255, 255, 255, 1) 60%);
	padding: 0 0 100px;
	margin: 0 0 100px;
	@media(max-width:644px){
	padding: 0 0 30px;
	margin: 0 0 40px;		
	}
	.c-heading{
		color: #006a5e;
	}
	c-heading::before, .c-heading::after {
    content: "";
    background: #006a5e;
}
	.sec-mv{
		position: relative;
		display: flex;
		.mv-left,.mv-right{
			width: 50%;
		}
		.img-cap{
			color: #000;
		}
	}
	.sec-heading{
		position: relative;
		color: #006a5e;
		text-align: center;
		max-width: 1000px;
		margin:-60px auto 60px;
		@media(max-width:992px){
				margin: 0 auto 30px;
			}
			
		.p01{
			font-weight: 500;
			border-bottom:1px solid #006a5e;
			display: flex;
			align-items: flex-end;
			justify-content: center;
			line-height: 1;
			font-family: "Cinzel", serif;
			font-size: 70px;
			margin: 0 0 10px;
			padding: 0 0 10px;
			@media(max-width:992px){
				font-size: 50px;
			}
			@media(max-width:644px){
				display: block;
				text-align: center;
				font-size: 34px;
			}			
			.num{
			font-weight: 500;	
			line-height: 1;
			position: relative;
            bottom: -10px;
			font-size: 170%;
			@media(max-width:644px){
				bottom: 0;
			}			
			}
		}
		.p02{
		font-weight: 600;	
		position: relative;
		font-family: "kozuka-mincho-pro", serif;
		padding-left: 35px;
		top: -10px;
		@media(max-width:644px){
			padding-left: 0;
			top: 0;
			display: block;
			margin: 4px 0 0;
		}		
		}
		.p03{
			color: #006a5e;
			font-size: 33px;
			@media(max-width:992px){
				font-size: 25px;
			}
			@media(max-width:644px){
				font-size: 18px;
				width: 90%;
				margin: auto;
				line-height: 1.4;
			}		
		}
	}
	.sec-lead{
		text-align: center;
	}
	.sec-voice{
		max-width: 1200px;
		margin:70px auto;
		@media(max-width:992px){
			width: 90%;
			margin:35px auto;
		}
		.list{
			display: flex;
			justify-content: center;
			@media(max-width:644px){
				flex-wrap: wrap;
			}			
			.item{
				background: #e8eeed;
				border-radius: 10px;
				position: relative;
				padding: 20px;
				width: 33.3333%;
				@media(max-width:644px){
					width: 100%;
				}				
				.item-icon{
					position: absolute;
					top: 30px;
					right: 20px;
					width: 70px;
					@media(max-width:992px){
						width: 62px;
						top: 15px;
						right: 15px;
					}
				}
				.item-title{
					color: #006a5e;
					font-size: 27px;
					margin: 0 0 5px;
					@media(max-width:644px){
						font-size: 20px;
					}
				}
				.item-desc{
					font-size: 15px;
					margin: 0 0 30px;
				}
				.name{
					font-size: 15px;
					position: absolute;
				    right: 30px;
				    bottom: 20px;
				}
			}
			.item:nth-child(2){
				margin: 0 20px;
				@media(max-width:644px){
					margin: 20px 0;
				}				
			}
		}
	}
	.zeh-group{
		max-width: 1200px;
		margin:0 auto 100px;
		@media(max-width:992px){
			width: 90%;
			margin:0 auto 60px;
		}
		@media(max-width:644px){
			margin:0 auto 40px;
		}
		.logo{
			width: 115px;
			margin:-20px auto 30px;
			@media(max-width:644px){
				width: 80px;
				margin: -10px auto 20px;
			}
		}
		.lead{
			text-align: center;
			font-size: 20px;
			margin: 0 0 90px;
			@media(max-width:644px){
				text-align: left;
				font-size: 14px;
				margin: 0 0 20px;
			}

		}
		.img{
			margin: 0 0 40px;
			@media(max-width:644px){
				margin: 0 0 20px;
			}
		}
		.note{
			text-align: center;
			font-size: 10px;
		}
	}
	.eo-group{
		max-width: 1200px;
		margin:0 auto 100px;
		@media(max-width:992px){
			width: 90%;
			margin:0 auto 60px;
		}
		@media(max-width:644px){
			margin:0 auto 40px;
		}		
		.logo{
			width: 200px;
			margin:-30px auto -10px;
			@media(max-width:644px){
				width: 100px;
				margin: -15px auto 10px;
			}
		}
		.lead{
			text-align: center;
			font-size: 20px;
			margin: 20px 0 10px;
			@media(max-width:644px){
				text-align: left;
				font-size: 14px;
				margin: 0 0 4px;
			}			
		}
		.img{
			position: relative;
			margin: 0 auto 40px;
			max-width: 860px;
			@media(max-width:644px){
				margin: 0 auto 20px;
			}
			.img-cap{
				color: #000;
			}
		}
		.note{
			text-align: center;
			font-size: 10px;
			@media(max-width:644px){
				text-align: left;
			}
		}		
	}
	.gd-group{
		max-width: 1200px;
		margin:0 auto 0;
		@media(max-width:992px){
			width: 90%;
			margin:0 auto 60px;
		}
		@media(max-width:644px){
			margin:0 auto 40px;
		}		
		.content{
			display: flex;
			justify-content: center;
			overflow: hidden;
			background: #fff;
			border-radius: 11px;
			@media(max-width:644px){
				display: block;
				padding: 0 0 10px;
			}
			.left{
				margin: 0 10px 0 0;
				@media(max-width:644px){
					margin: 0;
				}
			}
			.right{
				padding: 5px 0 0;
				@media(max-width:644px){
					margin: 0 5px;
				}
			}
		}
	}
}	