@charset "UTF-8";


.title {
	line-height: 1.6;
}

body {
	background: url("../common/img/bg.svg") no-repeat top center;
	background-size: 100%;
}


/* mainTitle
--------------------- */
#mainTitle {
	padding-top: 150px;
	height: calc((50vw / 16 * 10) + 150px);
	margin-bottom: 100px;
}

	#mainTitle {
		position: relative;
	}
	#mainTitle .title {
		margin-bottom: 50px;
	}
	#mainTitle .title h1 {
		font-size: 5rem;
		font-weight: 700;
		letter-spacing: 0.2em;
	}
	#mainTitle .title p {
		font-size: 3.8rem;
		font-weight: 500;
	}

	#mainTitle .text {
		width: 40%;
		position: absolute;
		top: 200px;
		left: 100px;
	}
	#mainTitle .pht {
		width: 50%;
		position: absolute;
		top: 100px;
		right: 0;
		z-index: -100;
	}
	#mainTitle .ill {
		width: 380px;
		position: absolute;
		bottom: -50px;
		left: 40%;
		z-index: -50;
	}



.article .set dl {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 8%;
}
	.article .set dl:nth-child(2n) {
		margin-right: 0%;
	}

.article .set dl img {
	width: 100%;
	height: auto;
}
.article .set dl dt {
	margin-bottom: 30px;
}
.article .set dl dd {
	position: relative;
}
.article .set dl .data span {
	background: #B90101;
	color: #FFF;
	padding: 5px 20px;
	margin-right: 10px;
}
.article .set dl h3 {
	font-size: 5rem;
}

.article .set dl dd .end {
	position: absolute;
	top: 0px;
	right: 0;
	background: #B90101;
	color: #FFF;
	padding: 5px 20px;
	font-weight: 700;
}



.tab{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
}
.tab li {
	margin-right: 2%;
}
.tab li a{
	padding: 0 30px;
	font-size: 2rem;
	font-weight: 700;
	color: #b90101;
	display: block;
	border: solid 1px #000000;
}
.tab li.active a{
	font-size: 2rem;
	font-weight: 700;
	color: #FFF;
	display: block;
	border: solid 1px #b90101;
	background: #b90101;
}





/*エリアの表示非表示と形状*/
.area {
	display: none;/*はじめは非表示*/
	opacity: 0;/*透過0*/
	background: #fff;
}

/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
    display: block;/*表示*/
    animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards;
}

@keyframes displayAnime{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}



/* 1200px */
@media screen and (max-width: 1200px) {



}





/* max 1023px */
@media screen and (max-width: 1023px) {





/* mainTitle
--------------------- */
#mainTitle {
	padding-top: 100px;
	height: auto;
	margin-bottom: 10%;
}

	#mainTitle {
		position: relative;
	}
	#mainTitle .title {
		margin-bottom: 5%;
	}
	#mainTitle .title h1 {
		font-size: 3rem;
		font-weight: 700;
		letter-spacing: 0.2em;
	}
	#mainTitle .title p {
		font-size: 1.6rem;
		font-weight: 500;
	}

	#mainTitle .text {
		width: 90%;
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto;
	}
	#mainTitle .pht {
		width: 100%;
		position: relative;
		top: 0;
		right: 0;
		z-index: -100;
		margin-top: 5%;
	}


	#mainTitle .ill {
		width: 40%;
		position: absolute;
		bottom: -50px;
		left: auto;
		right: 5%;
		z-index: -50;
	}
	
	
.article .set dl {
	width: 100%;
	margin-right: 0%;
	margin-bottom: 12%;
}
	.article .set dl:nth-child(2n) {
		margin-right: 0%;
	}

.article .set dl img {
	width: 100%;
	height: auto;
}
.article .set dl dt {
	margin-bottom: 30px;
}
.article .set dl .data {
}
.article .set dl .data span {
	background: #B90101;
	color: #FFF;
	padding: 5px 20px;
	margin-right: 10px;
}
.article .set dl h3 {
	font-size: 3rem;
}

	
	
.tab{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 5%;
}
.tab li {
	width: 49%;
	margin-right: 2%;
	text-align: center;
}
.tab li:last-child {
	margin-right: 0%;
}
.tab li a{
	padding: 0 30px;
	font-size: 1.4rem;
	font-weight: 700;
	color: #b90101;
	display: block;
	border: solid 1px #000000;
}
.tab li.active a{
	font-size: 1.4rem;
	font-weight: 700;
	color: #FFF;
	display: block;
	border: solid 1px #b90101;
	background: #b90101;
}

	

}