@charset "utf-8";
/* =============================================
	不動産キャリアパーソン　資格講座紹介
============================================= */
:root{
	--main_red: #d93448;
	--main_green: #2a9c7a;
}

.font_red{
	color: var(--main_red);
}
.font_green{
	color: var(--main_green);
}
.bg_red{
	background-color: var(--main_red);
}
.bg_green{
	background-color: var(--main_green);
}

.bg_apply{
	background-image: linear-gradient(to right,#009DA0 0,#82C478 100%);
}
.bg_nikg{
	background-image: linear-gradient(to right,#ED8133 0,#FFF57A 100%);
}
.bg_login{
	background-image: linear-gradient(to right,#E72C42 0,#D75F3B 100%);
}

/*---------------------------------------------
header
---------------------------------------------*/
#page_header{
	background-image: url("../img/header_bg.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#page_header::before,
#page_header::after{
	content: '';
	display: block;
	width: 100%;
	height: 10px;
}
#page_header::before{
	background-image: linear-gradient(to right,var(--main_red) 0,#fff 50%,var(--main_green) 100%);
}
#page_header::after{
	background-image: linear-gradient(to left,var(--main_red) 0,#fff 50%,var(--main_green) 100%);
}

.page_header{
	text-align: center;
	width: 94%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 4em 0;
}
.page_header h1{
	margin-bottom: 4em;
}
.page_header .header_cap{}
.header_text01{
	opacity: 0;
	transform: translateY(50%);
	animation-name: anim_fadein;
	animation-delay: 0.5s;
	animation-duration: 1s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
.header_text02{
	margin-top: clamp(1.4rem,2.9vw,4rem);
	opacity: 0;
	transform: translateY(50%);
	animation-name: anim_fadein;
	animation-delay: 1s;
	animation-duration: 1s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
.header_text03{
	margin-top: clamp(1.4rem,2.9vw,4rem);
	opacity: 0;
	transform: translateY(50%);
	animation-name: anim_fadein;
	animation-delay: 1.5s;
	animation-duration: 1s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}

/*****
タイトルアニメーション設定
*****/
@keyframes anim_fadein{
	0%{
		opacity: 0;
		transform: translateY(50%);
	}
	100%{
		opacity: 1;
		transform: translateY(0);
	}
}

/*---------------------------------------------
article
---------------------------------------------*/
.article_bg{
	background-color: #fffbeb;
	background-image: repeating-linear-gradient(-60deg,
		transparent 0,
		transparent 60px,
		#ecb3ba 61px,
		#ecb3ba 63px,
		transparent 64px,
		transparent 90px,
		#aad8ca 91px,
		#aad8ca 93px,
		transparent 94px,
		transparent 150px);
}
.section_wrap{
	padding: 4em 0;
}
.normal_section{
	font-size: clamp(1.4rem,1.8vw,1.8rem);
	line-height: 1.8;
	width: 94%;
	max-width: calc(1000px + 4em);
	margin: 2em auto 0 auto;
	padding: 2em;
	background-color: #fff;
}
.section_wrap .normal_section:first-of-type{
	margin: 0 auto 0 auto;
}

.ttl_type01{
	display: flex;
	align-items: center;
	font-size: clamp(1.8rem,3.2vw,3.2rem);
	padding: 0.5em;
	position: relative;
}
.ttl_type01::before{
	flex-shrink: 0;
	content: '';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	margin-right: 0.5em;
	background-image: url("../img/ttl_type01_icon.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
.ttl_type01::after{
	content: '';
	display: block;
	width: 100%;
	height: 4px;
	background-image: linear-gradient(to left,var(--main_red) 0,#fff 50%,var(--main_green) 100%);
	position: absolute;
	top: 100%;
	left: 0;
}

.btn_standard{
	font-size: 1.125em;
	font-weight: bold;
	text-align: center;
	width: 90%;
	max-width: 520px;
	margin: 1em auto 0.5em auto;
	border-radius: 0.25em;
	transition: all 0.25s;
}
.btn_standard:hover{
	transform: scale(1.05);
}
.btn_standard a{
	display: block;
	color: #fff;
	padding: 0.5em 2.5em 0.5em 1em;
	border-radius: 0.25em;
	background-image: url("../img/btn_arrow.png");
	background-repeat: no-repeat;
	background-position: right 0.5em center;
	background-size: 1.5em auto;
	box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
}
.btn_standard a:hover{
	text-decoration: none;
}


/*****
リード
*****/
.ttl_lead{
	font-size: clamp(1.6rem,3.2vw,3.2rem);
	text-align: center;
	margin-bottom: 1em;
}
.ttl_lead .ttl_border_btm{
	border-bottom: solid 0.125em var(--main_red);
}

.lead_area{
	margin: 2em 0 0 0;
	padding: 1em;
	border-radius: 1em;
	border: solid 2px var(--main_green);
}

.lead_box{
	text-align: center;
}
.lead_cap{
	display: inline-block;
	font-size: 1.15em;
	line-height: 1;
	color: #fff;
	margin: 1em;
	padding: 0.5em 1em;
	border-radius: 1em;
}

/*****
受講の流れ
*****/
.step_area{
	margin-top: 2em;
	box-shadow: 4px 4px 4px 0 rgba(0,0,0,0.25);
}

.ttl_type02{
	display: flex;
	flex-wrap: wrap;
	font-size: clamp(1.6rem,2.6vw,2.6rem);
	color: #fff;
	margin-bottom: 1em;
	background-color: var(--main_green);
	position: relative;
}
.ttl_type02::after{
	content: '';
	display: block;
	width: 2.5em;
	height: 1.5em;
	background-color: var(--main_green);
	clip-path: polygon(0 0,100% 0,50% 100%);
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%,-1px);
}
.step_num{
	flex-shrink: 0;
	color: #fff;
	padding: 0.5em 1.5em 0.5em 0.5em;
	background-color: #007e58;
	clip-path: polygon(0 0,100% 0,calc(100% - 1em) 100%,0 100%);
}
.step_ttl{
	flex-grow: 1;
	color: #fff;
	padding: 0.5em;
	position: relative;
}
.step_ttl::after{
	content: '';
	display: block;
	width: 1em;
	height: 50%;
	background-color: #007e58;
	clip-path: polygon(100% 0,100% 100%,0 100%);
	position: absolute;
	bottom: 0;
	right: 0;
}

.step_txt{
	padding: 2em;
}

.step_touroku_img{
	max-width: 254px;
}
.step_touroku_img img{
	border-radius: 0.5em;
	border: solid 1px #ccc;
}

/*****
概要
*****/
.tbl_summary{
	margin-top: 2em;
}
.tbl_summary th,
.tbl_summary td{
	padding: 0.5em;
}
.tbl_summary th{
	color: #fff;
	background-color: #6abea5;
}
.tbl_summary td{}

.tbl_summary .pdd_l1{
	margin-bottom: 0.75em;
	padding-left: 1em;
}
.tbl_summary .h_ttl{
	margin-bottom: 0;
}
.tbl_summary .kyozai_book{
	max-width: 270px;
}

/*****
バナーエリア
*****/
.pickup-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: clamp(1.3rem,1.4vw,1.4rem);
	line-height: 1.4;
}
.pickup-list li{
	display: flex;
	width: 48%;
	padding: 0 0 15px;
}
.pickup-list li a{
	color: #333;
	padding: 10px;
	border: solid 1px #d6d6d6;
	transition: all 0.2s ease;
}
.pickup-list li a:hover{
	border: solid 1px #db2b32;
}
.pickup-list .pickup__bn{}
.pickup-list .pickup__text{}

/*****
受講者の声
*****/
.voice_area{
	margin-top: 2em;
	padding: 1em;
	background-color: #E5F1D9;
}

.voice_box{
	margin-top: 1em;
	padding: 1em;
	background-color: #FFFCDB;
}

.ttl_type03{
	font-size: clamp(1.4rem,2.2vw,2.2rem);
	color: var(--main_green);
	text-align: center;
	margin-bottom: 1em;
	border-bottom: solid 2px var(--main_green);
	position: relative;
}
.ttl_type03_icon{
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
}

.voice_box ul li{
	margin-bottom: 0.5em;
}
.voice_box ul li:last-of-type{
	margin-bottom: 0;
}

/* ===========================================
	MediaQueries
=========================================== */
/* スマホ----------------------------- */
@media (max-width: 767px){
	/*---------------------------------------------
	header
	---------------------------------------------*/
	.page_header{
		padding: 2em 0;
	}
	.page_header h1{
		margin-bottom: 1.5em;
	}
	.page_header .header_cap{
		width: 80%;
		margin: 0 auto;
	}
	
	/*---------------------------------------------
	article
	---------------------------------------------*/
	.section_wrap{
		padding: 2em 0;
	}
	.normal_section{
		padding: 0.5em;
	}
	
	/*****
	リード
	*****/
	.lead_area .lead_box:last-of-type{
		margin-top: 1em;
	}
	
	/*****
	受講の流れ
	*****/
	.step_txt{
		padding: 1em 0.5em 0.5em 0.5em;
	}
	
	.step_touroku_img{
		margin: 1em auto 0 auto;
	}
	
	/*****
	概要
	*****/
	.tbl_summary{}
	.tbl_summary th,
	.tbl_summary td{
		display: block;
		width: 100%;
	}
	.tbl_summary th{}
	.tbl_summary td{
		margin-bottom: 1em;
		border-bottom: dashed 1px var(--main_green);
	}
	
	.tbl_summary .kyozai_book{
		width: 80%;
		margin: 0.5em auto;
		padding-bottom: 0.75em;
	}
	
	/*****
	バナーエリア
	*****/
	.pickup-list .pickup__bn{
		margin: -10px -10px 10px;
	}
	
	/*****
	受講者の声
	*****/
	.ttl_type03{
		padding: 0 2.5em 0.5em 2.5em;
	}
	.ttl_type03_icon{
		width: 2em;
	}
}

/* PC----------------------------- */
@media (min-width: 768px){
	/*---------------------------------------------
	header
	---------------------------------------------*/
	/*---------------------------------------------
	article
	---------------------------------------------*/
	/*****
	リード
	*****/
	.lead_box{
		width: 48%;
	}
	
	/*****
	受講の流れ
	*****/
	.step_touroku_img{
		max-width: 27.5%;
		margin-left: 1em;
	}
	
	/*****
	概要
	*****/
	.tbl_summary{
		border-top: solid 1px var(--main_green);
		border-left: solid 1px var(--main_green);
	}
	.tbl_summary th,
	.tbl_summary td{
		border-bottom: solid 1px var(--main_green);
		border-right: solid 1px var(--main_green);
	}
	.tbl_summary th{
		text-align: center;
		width: 6em;
	}
	.tbl_summary td{}
	
	.tbl_summary .kyozai_book{
		flex-shrink: 0;
		width: 31%;
		margin-left: 2em;
	}
	
	/*****
	バナーエリア
	*****/
	.pickup-list li{
		width: 49.5%;
	}
	.pickup-list li a{
		display: flex;
		align-items: center;
	}
	.pickup-list .pickup__bn{
		width: 30%;
		margin: 0 10px 0 0;
	}
	.pickup-list .pickup__text{
		flex: 1;
	}
	
	/*****
	受講者の声
	*****/
	.ttl_type03{
		padding: 0 3.5em 0.5em 3.5em;
	}
	.ttl_type03_icon{
		width: 3.2em;
	}
}