@charset "UTF-8";
/* CSS Document */
/*========= ローディング画面のためのCSS ===============*/
#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 9999999;
	text-align:center;
	color:#fff;
}

#splash-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
/*========= 画面遷移のためのCSS ===============*/

/*画面遷移アニメーション*/
.splashbg1,
.splashbg2{
    display: block;
}

/*bodyにappearクラスがついたら出現*/
body.appear .splashbg1,
body.appear .splashbg2{
	display:block;
}

/*上に消えるエリア*/
body.appear .splashbg1{
	animation-name:PageAnime;
	animation-duration:1s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
    content: "";
    position:fixed;
	z-index: 999;
    width: 100%;
    height: 100vh;
    bottom:50%;
	left:0;
    transform: scaleY(1);
    background-color: #000;/*伸びる背景色の設定*/
}

@keyframes PageAnime{
	0% {
		transform-origin:top;
		transform:scaleY(1);
	}

	100% {
		transform-origin:top;
		transform:scaleY(0);
	}
}

/*下に消えるエリア*/
body.appear .splashbg2{
    animation-name:PageAnime2;
	animation-duration:1s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
    content: "";
    position:fixed;
	z-index: 999;
    width: 100%;
    height: 100vh;
    top: 50%;
	left:0;
    transform: scaleY(1);
    background-color: #000;/*伸びる背景色の設定*/
}

@keyframes PageAnime2{
	0% {
		transform-origin:bottom;
		transform:scaleY(1);
	}
	100% {
		transform-origin:bottom;
		transform:scaleY(0);
	}
}

/*画面遷移の後現れるコンテンツ設定*/
#container{
	opacity: 0;/*はじめは透過0に*/
}

/*bodyにappearクラスがついたら出現*/
body.appear #container{
	animation-name:PageAnimeAppear;
	animation-duration:1s;
	animation-delay:-0.2s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes PageAnimeAppear{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*サイドのtopメニューを下層ページでは表示しない*/
.top_menu {
	display: none;
}

/*.cred_wrapper {
	padding-top: 110px;
	max-width: 1020px;
	margin: 0 auto;
}
.cred_bg {
	background-image: url("../img/cred_paper.png");
	background-repeat: no-repeat;
	background-size: cover;
}*/
.cred_wrapper {
	padding-top: 100px;
	position: relative;
	max-width: 780px;
	margin: 0 auto;
}
.cred_bg {
	text-align: center;
}
.cred_bg .cred_sp {
	display: none;
}
.cred_text_wrapper {
	position: absolute;
	top: 715px;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #000;
	width: 100%;
	font-family: 'Noto Serif JP', serif;
}
.cred_text_wrapper p{
	font-size: 2.0rem;
	text-align: center;
}
.cred_text_wrapper h2{
	font-size: 3.0rem;
	font-weight: 700;
	text-align: center;
	margin-top: 10px;
}
.cred_text_wrapper ol {
	margin-top: 55px;
	padding: 0 15%;
}
.cred_text_wrapper ol li {
	font-size: 2rem;
	margin-bottom: 50px;
	font-weight: 500;
	display: flex;
	justify-content: space-between;
}
.cred_text_wrapper ol li .number{
	width: 7%;
}
.cred_text_wrapper ol li .cred_text {
	width: 93%;
}
.cred_moby {
	font-size: 2.6rem!important;
	font-weight: 700;
	text-align: end!important;
	padding: 0 15%;
}

@media screen and (max-width : 834px) {
	.cred_wrapper {
		max-width: 90%;
	}
	.cred_bg .cred_pc {
		width: 100%;
	}
	.cred_text_wrapper h2 {
		font-size: 2.6rem;
	}
	.cred_text_wrapper ol li {
		font-size: 1.6rem;
	}
	.cred_text_wrapper {
		top: 695px;
	}
	.cred_text_wrapper ol li .cred_text {
		line-height: 1.6;
	}
}
@media screen and (max-width : 768px) {
	.cred_text_wrapper {
		top: 625px;
	}
	.cred_text_wrapper ol {
		margin-top: 40px;
	}
	.cred_text_wrapper ol li {
		margin-bottom: 40px;
	}
	.cred_text_wrapper ol li .cred_text {
		line-height: 1.4;
	}
}
@media screen and (max-width : 680px) {
	.cred_text_wrapper h2 {
		margin-top: 6px;
	}
	.cred_text_wrapper {
		top: 590px;
	}
	.cred_text_wrapper ol {
		margin-top: 30px;
	}
	.cred_text_wrapper ol li {
		margin-bottom: 30px;
	}
}

@media screen and (max-width : 520px) {
	.cred_bg .cred_sp {
	display: block;
	width: 100%;
}
	.cred_bg .cred_pc {
		display: none;
	}
	.cred_wrapper {
	padding-top: 70px;
}
	.cred_text_wrapper {
		top: 585px;
	}
	.cred_text_wrapper p {
		font-size: 1.3rem;
	}
	.cred_text_wrapper h2 {
		font-size: 2.0rem;
		margin-top: 5px;
	}
	.cred_text_wrapper ol {
		padding: 0 12%;
		margin-top: 35px;
	}
	.cred_text_wrapper ol li {
		font-size: 1.4rem;
		margin-bottom: 40px;
	}
	.cred_moby {
		font-size: 1.8rem!important;
	}
}
@media screen and (max-width : 414px) {
	.cred_text_wrapper {
		top: 615px;
	}
}
@media screen and (max-width : 390px) {
	.cred_text_wrapper {
		top: 610px;
	}
}