@charset "utf-8";
/* CSS Document */

@media screen and (max-width:640px){
.visible-sp{
	display:block;
}
.hidden-sp{
	display:none !important;
}
body{
	font-size: 14px;
	line-height: 1.7;
}
.header{
	padding: 7px 0 9px;
}
.header_inner{
	width: 100%;
	grid-template-columns: 58px minmax(0, 1fr);
	column-gap: 4px;
	row-gap: 4px;
	align-items: center;
	padding: 0 4px;
}
.header_media{
	grid-area: logo;
}
.header_media img{
	width: 58px;
}
.header_brand{
	font-size: clamp(13px, 3.9vw, 16px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: anywhere;
}
.header_copy{
	margin-top: 2px;
	font-size: clamp(12px, 3.5vw, 15px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: anywhere;
}
.page_modal_in{
	padding: 20px;
	border-radius: 10px;
}
.page_modal_close{
	right: 10px;
	top: 10px;
}
.page_modal table th,
.page_modal table td{
	width: 100%;
	display: block;
}
.page_01_fv{
	padding: 8px 0 24px;
}
.fv_badge{
	margin-bottom: 14px;
	padding: 6px 12px;
	font-size: 11px;
}
.fv_intro{
	margin-top: 0;
	min-height: 178px;
	align-items: flex-start;
}
.fv_intro_copy{
	max-width: 66%;
	padding: 4px 0 0;
}
.fv_date{
	gap: 4px;
}
.fv_date_md{
	font-size: 50px;
	filter: drop-shadow(0 3px 8px rgba(0,0,0,0.08));
}
.fv_date_label{
	font-size: 30px;
	padding-bottom: 5px;
	filter: drop-shadow(0 3px 8px rgba(0,0,0,0.08));
}
.fv_intro_title{
	margin-top: 6px;
	font-size: 22px;
	line-height: 1.5;
}
.fv_condition_bar{
	margin-top: 8px;
	padding: 10px 12px;
}
.fv_condition_bar p{
	font-size: 16px;
	line-height: 1.5;
}
.box{
	margin-top: 20px;
	padding: 20px;
}
.fv_entry_box{
	margin-top: 10px;
	padding: 38px 14px 16px;
	border-radius: 18px;
	max-width: 100%;
}
.box_eyebrow{
	padding: 8px 14px;
	font-size: 10px;
	top: -16px;
}
.box_ttl{
	font-size: 20px;
	line-height: 1.4;
}
.type_list label{
	margin-top: 10px;
	padding: 16px 12px;
	border-radius: 12px;
}
.btn{
	font-size: 16px;
	border-radius: 12px;
	padding: 12px;
}
.fv_entry_box .type_list{
	margin-top: 16px;
}
.fv_entry_box .type_list label{
	min-height: 110px;
	border-radius: 16px;
}
.fv_entry_box .type_list label + label{
	margin-top: 14px;
}
.fv_entry_box .type_list label .type_label_text{
	font-size: 18px;
	line-height: 1.45;
}
.type_label_icon{
	flex-basis: 48px;
	width: 48px;
	height: 48px;
	margin-right: 10px;
}
.type_label_icon img{
	width: 48px;
	height: 48px;
}
.footer_info{
	padding: 20px 0;
}
.copyright{
	margin-top: 20px;
}
.footer_txt{
	margin-top: 20px;
}
.footer{
	padding-bottom: 20px;
}
.top_ttl{
	padding: 10px 0;
	font-size: 18px;
}
.main_content{
	padding: 20px 0;
}
.main_box{
	padding: 20px 15px;
}
.sec_ttl::before{
	width: 10px;
	height: 10px;
}
.sec_ttl {
	font-size: 16px;
	padding-left: 15px;
	position: relative;
	margin-bottom: 10px;
}
.check_list{
	gap: 10px;
}
.checkbox{
	width: calc(50% - 5px);
	height: 60px;
	border-radius: 5px;
}
.checkbox p{
	font-size: 14px;
	border-radius: 5px;
}
.next_btn{
	width: 67%;
}
.main_box_footer{
	padding: 10px 15px;
}
.radiobox div>img{
	height: 60px;
}
.radiobox{
	width: calc(50% - 5px);
	padding: 10px;
	border-radius: 5px;
}
.radiobox p{
	font-size: 14px;
}
.radiobox>span{
	border-radius: 5px;
}
.flex_radiobox{
	margin-top: 10px;
}
.back_btn{
	width: 30%;
}
.recruit_count {
	padding: 5px 0;
	font-size: 16px;
	margin-top: 10px;
}
.no_publish{
	margin-top: 10px;
	font-size: 12px;
}
.sec_sub_txt{
	font-size: 12px;
	margin-top: -10px;
	margin-bottom: 10px;
}
.input_wrap input, .input_wrap select{
	height: 50px;
	padding: 10px;
	border-radius: 5px;
	font-size: 16px;
}
.input_wrap select{
	background-size: 16px 16px;
}
.thanks_content{
	padding: 20px 0;
}
.thanks_ttl{
	font-size: 18px;
	margin-bottom: 10px;
}
.page_modal_content h2{
	font-size: 18px;
}
.page_modal_content h3{
	font-size: 16px;
}
}
