@charset "UTF-8";

.pos_rel {
	position: relative;
}

.lnktxt {
	position: absolute;
	width: 50%;
	left: 25%;
	bottom: 35%;
}

@media screen and (max-width: 740px) {
	.lnktxt {
		position: absolute;
		width: 40%;
		left: 55%;
		bottom: 42%;
	}
}

.p1080 {
	display: block;
}

@media screen and (max-width: 1080px) {
	.p1080 {
		display: none;
	}
}

@media screen and (max-width: 979px) {
	.p1080 {
		display: block;
	}
}

sup {
	font-size: 70%;
	vertical-align: super;
}

/*warning list*/
.c_list_warning_text {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.8;
}

@media screen and (max-width: 979px) {
	.c_list_warning_text {
		font-size: 1.1rem;
		font-size: 10px;
	}
}


/* 更新履歴 */
.update {
	max-width: 600px;
	max-width: 620px;
	margin: 120px auto 120px;
}

.update ul {
	max-height: 250px;
	overflow-y: scroll;
}

@media screen and (max-width: 740px) {
	.update {
		max-width: 90%;
	}

	.update ul {
		max-height: 230px;
	}
}

.update ul li {
	border-bottom: 1px solid #000;
	padding: 20px;
	overflow: hidden;
}

.update ul li span {
	display: block;
}

.update ul li span.date {
	float: left;
	margin-right: 20px;
}

.update ul li span.txt {
	float: left;
}

@media screen and (max-width: 740px) {
	.update ul li {
		padding: 10px;
	}

	.update ul li span.date {
		float: none;
		margin-right: 0px;
	}

	.update ul li span.txt {
		float: none;
	}
}


/* 予備認定バナー */
.bnr_yobinintei {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto 40px;
}

.bnr_yobinintei img {
	margin: 50px auto 10px;
}

.bnr_yobinintei p {
	font-size: 85%;
	line-height: 1.7;
}

@media screen and (max-width: 640px) {
	.bnr_yobinintei {
		width: 92%;
		margin: 70px auto 0;
	}

	.bnr_yobinintei img {
		margin: 30px auto 20px;
	}

	.bnr_yobinintei p {
		font-size: 70%;
		line-height: 1.6;
	}
}


/*新予備認定バナー*/
#yobinintei {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	z-index: 1000;
	background-color: rgba(0, 0, 0, 0.7);
	transition: 0.3s;
	transform: translateY(100%);
}

#yobinintei.show {
	transform: translateY(0%);
}

#yobinintei .modal_inner {
	max-width: 700px;
	margin: 100px auto;
	position: relative;
}

#yobinintei .modal_inner #close_modal {
	width: 30px;
	height: 30px;
	position: absolute;
	top: 0;
	right: 0;
}

@media screen and (max-width: 979px) {
	#yobinintei .modal_inner {
		max-width: 90%;
	}
}


/* 注釈　支払い例 */
.shiharai {
	width: 95%;
	border: solid 1px #222;
	padding: 15px 2%;
}

.shiharai .top {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
	text-align: left;
}

.shiharai .txt {
	font-size: 13px;
	line-height: 1.6;
	text-align: left;
}

.shiharai .txt span {
	font-weight: bold;
}

@media screen and (max-width: 640px) {
	.shiharai .top {
		font-size: 14px;
	}

	.shiharai .txt {
		font-size: 11px;
		line-height: 1.5;
	}
}


/* フローティングバナー */
#floating {
	z-index: 1001;
	max-width: 500px;
	background-color: #fff;
	box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.3);
}

#floating .banner .floating_img img {
	box-shadow: none;
}

.banner {

	border: 1px solid #1eb09d;
	padding: 15px;
}

.floating_in {
	display: flex;
	/* フレックスボックスにする */
	align-items: center;
	/* 縦の位置指定 */
	justify-content: space-between;
	/* 横の位置指定 */
	flex-direction: row;
	/* 直下の要素を縦積みに */
	flex-wrap: wrap;
	/* 折り返し指定 */
}

.floating_in>div.floating_img {
	width: 40%;
}

.floating_in>div.floating_img img {
	max-width: 100%;
	margin: 0 auto;
	display: block;
}

.floating_in>div.floating_txt {
	width: 60%;
	padding: 0;
}

.floating_txt p {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #a9bed9;
	color: #af272d;
	line-height: 1.6em;
}

.floating_txt_link_wrap {
	padding: 0;
	margin: 10px auto 0;
}

.floating_txt_link_wrap p.floating_txt_link {
	background-color: #af272d;
	color: #fff;
	font-size: 14px;
	padding: 10px 0;
	border-radius: 20px;
	line-height: 1em;
	max-width: 60%;
	margin: 0px auto;
	text-align: center;
}

.remodal {
	background: #1eb09d;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1eb09d+0,e3f7f5+100 */
	background: linear-gradient(to bottom, #1eb09d 0%, #e3f7f5 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	border-radius: 10px;
}

button[data-close-ex="all-close"] {
	width: 100%;
	height: 100%;
}
button[data-close-ex="all-close"]::before {
	content: unset;
}

.remodal_in {
	display: flex;
	/* フレックスボックスにする */
	align-items: center;
	/* 縦の位置指定 */
	justify-content: space-between;
	/* 横の位置指定 */
	flex-direction: column;
	/* 直下の要素を縦積みに */
	flex-wrap: wrap;
	/* 折り返し指定 */
}

.remodal_ttl {
	font-weight: bold;
	font-size: 2rem;
	margin: 0 auto 20px;
	color: #fff;
	line-height: 1.6;
}

.remodal_child {
	width: 100%;
	display: flex;
	/* フレックスボックスにする */
	align-items: center;
	/* 縦の位置指定 */
	justify-content: space-between;
	/* 横の位置指定 */
	flex-direction: row;
	/* 直下の要素を縦積みに */
	flex-wrap: wrap;
	/* 折り返し指定 */
	background: #fff;
	padding: 20px;
	border-radius: 90px;
	position: relative;
}

.remodal_arrow {
	display: inline-block;
	width: 60px;
	height: 40px;
	background: #af272d;
	margin: 10px auto;
	clip-path: polygon(0 38.7%, 31% 38.7%, 31% 0, 69% 0, 69% 38.7%, 100% 38.7%, 50% 100%);
}

.remodal_step {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	background: #af272d;
	border-radius: 50%;
	width: 100px;
	height: 100px;
	color: #fff;
	font-size: 20px;
	position: absolute;
}

.remodal_txt {
	width: 70%;
	margin: 0 auto;
}

.remodal_step .step {
	display: block;
	width: 100%;
	font-size: 12px;
	line-height: 1em;
	margin-bottom: 10px;
}

.remodal_step .num {
	display: block;
	width: 100%;
	font-size: 4rem;
}

.step_ttl {
	color: #af272d;
	text-align: center;
	font-size: 3rem;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #af272d;
	font-weight: bold;
}

.remodal_child:nth-of-type(5) .step_ttl {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.step_txt {
	text-align: center;
	font-size: 14px;
}

@media screen and (max-width: 979px) {
	#floating {
		max-width: 300px;
		bottom: 12%;
	}

	.banner {
		padding: 10px;
	}

	.floating_txt p {
		font-size: 12px;
	}

	.floating_txt_link_wrap {
		padding: 0;
		margin: 10px auto 0;
	}

	.floating_txt_link_wrap p.floating_txt_link {
		font-size: 12px;
		padding: 5px 0;
		max-width: 100%;
	}

	.remodal {
		padding: 30px 10px;
	}

	.remodal_ttl {
		font-size: 13px;
		margin: 0 auto 20px;
		letter-spacing: 0;
	}

	.remodal_child {
		padding: 10px;
		border-radius: 30px;
	}

	.remodal_step {
		width: 50px;
		height: 50px;
	}

	.remodal_step .num {
		font-size: 24px;
	}

	.remodal_step .step {
		font-size: 10px;
		margin-bottom: 0px;
	}

	.remodal_txt {
		width: 80%;
		padding: 10px 0% 10px 0;
	}

	.step_ttl {
		font-size: 16px;
	}
	.step_txt {
		font-size: 13px;
	}

	.remodal_arrow {
		width: 40px;
		height: 30px;
	}
}