header{
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    padding: 15px 20px 0 20px;
    width: 100%;
    margin: 0 auto;
    background: rgba(255,255,255,.85);
    backdrop-filter: blur(10px);
}

/************グローバルナビ****************/
ul,li{
 list-style: none
}

.menu{
    display: flex;
    margin-top: 22px
}

.menu > li{
    position: relative;
    margin: 0 25px
}
.menu li a{
    transition: ease-in-out .3s
}
.menu li a:hover{
    opacity: .5
}
.menu .sub-menu{
    display: none;
    top: 30px;
    left: -23px;
    position: absolute;
    font-size: 14px;
    background:rgba(255,255,255,.9);
    border-radius: 8px;
    width: max-content;
    margin: 0;
    padding: 15px 30px 3px 10px
}
.menu .sub-menu li{
    margin-bottom: 12px;
    position: relative
}
.menu .sub-menu li:after{
    content: '';
    position: absolute;
    top: 5px;
    right: -45px;
    background: url("icon/arrow.svg") no-repeat;
    width: 40px;
    height: 4px;
    display: inline-block;
    transition: ease-in-out .3s
}
.menu .sub-menu li:hover:after{
    opacity: .5;
}
    
.menu > li{ position: relative}

/**メニューアイコン****/
#menu_about:before{
    content: '';
    background: url("icon/logo.png") no-repeat;
    position: absolute;
    top: 3px;
    left: -24px;
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    transition: ease-in-out .3s;
    cursor:pointer
}

#menu_interview:before{
    content: '';
    background: url("icon/interview.svg") no-repeat;
    position: absolute;
    top: 2px;
    left: -24px;
    width: 19px;
    height: 19px;
    display: inline-block;
    background-size: contain;
    transition: ease-in-out .3s;
    cursor:pointer
}
#menu_company:before{
    content: '';
    background: url("icon/company.svg") no-repeat;
    position: absolute;
    top: 3px;
    left: -22px;
    width: 19px;
    height: 19px;
    display: inline-block;
    background-size: contain;
    transition: ease-in-out .3s;
    cursor:pointer
}
#menu_message:before{
    content: '';
    background: url("icon/message.svg") no-repeat;
    position: absolute;
    top: 3px;
    left: -21px;
    width: 18px;
    height: 18px;
    display: inline-block;
    background-size: contain;
    transition: ease-in-out .3s;
    cursor:pointer
}
#menu_requirements:before{
    content: '';
    background: url("icon/requirements.svg") no-repeat;
    position: absolute;
    top: 1px;
    left: -18px;
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    transition: ease-in-out .3s;
    cursor:pointer
}
#menu_about:hover:before,
#menu_interview:hover:before,
#menu_company:hover:before,
#menu_message:hover:before,
#menu_requirements:hover:before{
    opacity: .6
}

#header_entry{
margin: 0 !important
}

#header_entry a{
    background: var(--red);
    color: #fff;
    padding: 7px 20px 7px 40px;
    border-radius: 20px;
    position: relative;
    transition: ease-in-out .3s;
    border: 1px var(--red) solid;
}
#header_entry a:before{
    content: '';
    display: inline;
    position: absolute;
    top: 8px;
    left: 20px;
    background: url(icon/entry_white.svg) no-repeat;
    width: 17px;
    height: 14px;
    background-size: contain;
}
#header_entry a:hover{
    opacity: .6
}



/************CTA****************/
#cta{
	background: var( --bg2);
	margin:120px calc(50% - 50vw) 0  calc(50% - 50vw);
    width: 100vw;
}
#cta_box{
	display: flex;
	align-items: center;
	width: 850px;
	margin: 0 auto;
	padding: 60px 0;
	column-gap: 30px
}

.cta_btn{
    background: var(--red);
    width: 355px;
    height:85px;
    color: #fff;
    font-size: 20px;
    border-radius: 10px;
    position: relative;
    text-align: center;
    transition: ease-in-out .5s
}

.cta_btn:hover{
    opacity: .7
}

.cta_btn a{
    color: #fff;
    font-weight: bold;
    line-height: 1.4em;
   	display: flex;
    align-items: center;
    justify-content: center;
}

.cta_btn:before{
    content: '';
    background: url(" icon/entry_footer.svg") no-repeat;
    display: inline-block;
    width: 27px;
    height: 25px;
    position: absolute;
	top: 31px;
    left: 73px;
}
.file.cta_btn:before{
	background: url(" icon/requirements_white.svg") no-repeat;
	top: 29px;
	left: 113px;
}

.cta_btn:after{
    content: '';
    background: url("icon/arrow_white.svg") no-repeat;
    display: inline-block;
    width: 25px;
    height: 10px;
    position: absolute;
    top: 45%;
    right: 10px
}


#entry_box{
	text-align: center;
}
#entry_btn{
	display: flex;
	flex-direction: column;
	grid-row-gap:  15px
}
#entry_box h4{
	font-family: "helvetica-neue-lt-pro", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: var(--red);
	font-size: 80px;
	line-height: 0.9;
    margin-bottom: 14px;
}
#entry_box h5{
	font-size: 20px;
	font-weight: bold
}
#entry_box p{
	margin: 10px 0 0 0;
	line-height: 1.6em
}



/**********************footer*******************/
footer{
	font-size: 16px;
	display: flex;
	justify-content: space-between;
	margin-top: 50px
}
#footer_contents{
	display: flex;
	column-gap: 20px
}
#footer_contents ul{
	width: 210px;
}
#footer_contents li{
	margin-bottom: 10px;
	position: relative;
	transition: ease-in-out, .5s
}
#footer_contents li:hover{
	opacity: .5
}
#footer_contents li:after{
	content: '';
	background: url("icon/arrow.svg") no-repeat;
	width: 16px;
	height: 4px;
	display: inline-block;
	position: absolute;
	right: 0;
	top: 10px;
}
#copy{
	font-size: 14px;
	text-align: right;
	margin: 20px 0 30px 0
}

.icon_menu{
	font-weight: bold;
	position: relative;
	padding-left:24px
}
.fm_about:before{
	content:'';
	background:  url("icon/logo.png") no-repeat;
	width: 18px;
	height: 18px;
	position: absolute;
	top: 0;
	left: 0;
	background-size: cover;
	display: inline-block
}
