@charset "utf-8";
/* CSS Document */

#wrap {
	position: relative;
	z-index: 0;
	overflow-x: hidden;
}

#wrap .box{
	position: relative;
	width: 100%;
}

#header_nav .box,
footer .box{
	width: 1200px !important;
}

.dis_pc{
	display: block;
}

.dis_sp{
	display: none;
}

#content{
	position: relative;
	background: url(../images/cmn/bg.png);
	z-index: -2;
}
#content:before{
	content: "";
	background: url(../images/cmn/mainbg.png)no-repeat top center;
	background-size: 100%;
	width: 100vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -2;
}

#secondary{
	font-family: "Noto Sans JP", sans-serif;
}

#secondary h2{
	position: relative;
	text-align: center;
	margin: 27px 0 60px;
}

#secondary h2:before{
	content: "";
	width: 108vw;
	height: 190px;
	background: rgba(255, 255, 255, 0.7);
	outline: 5px solid #E60012;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
#secondary h2:after{
	content: "";
	width: 108vw;
	height: 186px;
	border: 2px solid #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

#secondary .block-inner ul{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	width: 985px;
	margin: 0 auto;
}

#secondary .block-inner ul li{
	position: relative;
	width: 315px;
	background: #fff;
	border-radius: 8px;
	padding: 35px 20px 30px;
	border: 1px solid #DCDCDC;
	box-shadow: 0 2px 0 #B8B8B8;
	margin-bottom: 10px;
}

#secondary .block-inner ul li ._label{
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	background: #000;
	clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
	width: 143px;
	padding: 10px 0 10px 12px;
	position: absolute;
	top: 13px;
	left: 0;
}

#secondary .block-inner ul li ._label::before {
	content: "";
	background: #fff;
	width: 46px;
	height: 100%;
	clip-path: polygon(75% 0, 100% 0%, 25% 100%, 0% 100%);
	position: absolute;
	right: 0;
	top: 0;
}
#secondary .block-inner ul li ._label::after {
	content: "";
	background: #E60012;
	width: 46px;
	height: 100%;
	clip-path: polygon(75% 0, 100% 0%, 25% 100%, 0% 100%);
	position: absolute;
	right: -3px;
	top: 0;
}

#secondary .block-inner ul li ._label._abroad::after {
	background: #005BAC;
}

#secondary .block-inner ul li ._images{
	margin-bottom: 20px;
}

#secondary .block-inner ul li ._images img{
	width: 100%;
}

#secondary .block-inner ul li ._texts h3{
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 23px;
}

#secondary .block-inner ul li ._texts h3:after{
	content: "";
	background: #C5101E;
	width: 30px;
	height: 3px;
	position: absolute;
	bottom: -3px;
	left: 0;
}

#secondary .block-inner ul li ._texts ._date{
	margin-bottom: 5px;
}

#secondary .block-inner ul li ._texts .js-height2{
	margin-bottom: 20px;
}

#secondary .block-inner ul li ._texts ._date,
#secondary .block-inner ul li ._texts ._place{
	display: flex;
	align-items: start;
	gap: 5px;
}

#secondary .block-inner ul li ._texts ._date img,
#secondary .block-inner ul li ._texts ._place img{
	width: 15px;
}

#secondary .block-inner ul li ._texts ._date p,
#secondary .block-inner ul li ._texts ._place a{
	color: #848484;
	font-size: 14px;
	font-weight: 700;
	
}

#secondary .block-inner ul li ._texts ._place a{
	transition: .3s;
}

#secondary .block-inner ul li ._texts ._place a:hover{
	opacity: 0.6;
}

#secondary .block-inner ul li ._texts ._desc{
	margin-bottom: 20px;
}

#secondary .block-inner ul li ._texts ._desc p{
	color: #535353;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
}

#secondary .block-inner ul li ._btns {
	background: #fff;
	border: 2px solid #E60012;
	border-radius: 4px;
	width: 100%;
	transition: .3s;
}

#secondary .block-inner ul li ._btns a{
	position: relative;
	color: #E60012;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	display: block;
	padding: 10px 31px 10px 0;
	transition: .3s;
}
#secondary .block-inner ul li ._btns a:before{
	content: "";
	background: url(../images/cmn/arrow.png)no-repeat top left;
	background-size: 100%;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	right: 39px;
	transform: translateY(-50%);
	transition: .3s;
}
#secondary .block-inner ul li ._btns:hover{
	background: #E60012;
}
#secondary .block-inner ul li ._btns a:hover{
	color: #fff;
}
#secondary .block-inner ul li ._btns a:hover:before{
	background: url(../images/cmn/arrow02.png)no-repeat top left;
	background-size: 100%;
}

@media screen and (max-width: 1039px) {
	.dis_pc{
		display: none;
	}

	.dis_sp{
		display: block;
	}

	#wrap .box{
		width: 100%;
	}
	#secondary h2 img{
		width: 90%;
	}
	#secondary h2:before{
		height: 150px;
	}
	#secondary h2:after{
		height: 146px;
	}

	#secondary .block-inner ul{
		padding: 0 4%;
		width: 100%;
	}
	#secondary .block-inner ul li{
		width: 31%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	#secondary .block-inner ul li ._btns{
		position: absolute;
		bottom: 4%;
		width: calc(100% - 40px);
	}
	#secondary .block-inner ul li ._btns a{
		width: 100%;
	}
	#secondary .block-inner ul li ._btns a:before{
		right: 2.3em;
	}
	#secondary .block-inner ul li ._texts ._desc p{
		margin-bottom: 15px;
	}
}

@media screen and (max-width: 414px) {
	#secondary h2{
		position: relative;
		text-align: center;
		margin: 0.5em 0 2.5em;
	}

	#secondary h2:before{
		height: 20vw;
	}
	#secondary h2:after{
		height: 20vw;
	}

	#secondary .block-inner ul{
		flex-direction: column;
		gap: 2%;
	}
	#secondary .block-inner ul li{
		width: 100%;
		display: block;
		padding: 35px 20px 30px;
		margin-bottom: 6%;
	}

	#secondary .block-inner ul li ._label{
		font-size: 0.7em;
		clip-path: polygon(0 0, 100% 0%, 80% 100%, 0% 100%);
		width: 112px;
		padding: 8px 0 10px 12px;
		top: 13px;
	}
	#secondary .block-inner ul li ._label::before {
		clip-path: polygon(50% 0, 100% 0%, 45% 100%, 0% 100%);
		right: -12px;
	}
	#secondary .block-inner ul li ._label::after {
		clip-path: polygon(50% 0, 100% 0%, 45% 100%, 0% 100%);
		right: -15px;
	}

	#secondary .block-inner ul li ._texts h3{
		font-size: 0.9em;
		
		margin-bottom: 1em;
	}
	#secondary .block-inner ul li ._texts ._place{
		margin-bottom: 1em;
	}
	#secondary .block-inner ul li ._texts ._date p,
	#secondary .block-inner ul li ._texts ._place a{
		font-size: 0.8em;
		line-height: 1.2;
	}
	#secondary .block-inner ul li ._texts ._desc p{
		color: #535353;
		font-size: 0.8em;
		min-height: 0;
		margin-bottom: 1.5em;
	}
	#secondary .block-inner ul li ._btns{
		width: 100%;
		position: relative;
	}
	#secondary .block-inner ul li ._btns a{
		font-size: 0.7em;
		padding: 10px 10px 10px 0;
		width: 100%;
	}
	#secondary .block-inner ul li ._btns a:before{
		right: 6em;
	}
}