@charset "UTF-8";
/* CSS Document */

.sp_none,
.slick-slide img.sp_none{display:none!important;}

.txt50sp{font-size:50%!important;}
.txt60sp{font-size:60%!important;}
.txt70sp{font-size:70%!important;}
.txt80sp{font-size:80%!important;}
.txt90sp{font-size:90%!important;}
.txt100sp{font-size:100%!important;}
.txt110sp{font-size:110%!important;}
.txt120sp{font-size:120%!important;}
.txt130sp{font-size:130%!important;}
.txt140sp{font-size:140%!important;}
.txt150sp{font-size:150%!important;}
.txt160sp{font-size:160%!important;}
.txt170sp{font-size:170%!important;}
.txt180sp{font-size:180%!important;}
.txt190sp{font-size:190%!important;}
.txt200sp{font-size:200%!important;}
.txt240sp{font-size:240%!important;}
.txt280sp{font-size:280%!important;}

.sp_mb0{margin-bottom:0!important;}
.sp_mb05{margin-bottom:5px!important;}
.sp_mb10{margin-bottom:10px!important;}
.sp_mb20{margin-bottom:20px!important;}
.sp_mb30{margin-bottom:30px!important;}
.sp_mb40{margin-bottom:40px!important;}
.sp_mb50{margin-bottom:50px!important;}
.sp_mb60{margin-bottom:60px!important;}

.sp_mt0{margin-top:0!important;}
.sp_mt10{margin-top:10px!important;}
.sp_mt20{margin-top:20px!important;}
.sp_mt30{margin-top:30px!important;}
.sp_mt40{margin-top:40px!important;}
.sp_mt50{margin-top:50px!important;}
.sp_mt60{margin-top:60px!important;}
.sp_mt80{margin-top:80px!important;}

.sp_ml0{margin-left:0!important;}
.sp_ml10{margin-left:10px!important;}
.sp_ml20{margin-left:20px!important;}
.sp_ml30{margin-left:30px!important;}
.sp_ml40{margin-left:40px!important;}
.sp_ml50{margin-left:50px!important;}

.sp_mr0{margin-right:0!important;}

.sp_pt0{padding-top:0!important;}
.sp_pt10{padding-top:10px!important;}
.sp_pt20{padding-top:20px!important;}
.sp_pt30{padding-top:30px!important;}
.sp_pt40{padding-top:40px!important;}
.sp_pt50{padding-top:50px!important;}
.sp_pt70{padding-top:70px!important;}

.sp_pb0{padding-bottom:0!important;}
.sp_pb10{padding-bottom:10px!important;}
.sp_pb20{padding-bottom:20px!important;}
.sp_pb30{padding-bottom:30px!important;}
.sp_pb50{padding-bottom:50px!important;}
.sp_pb70{padding-bottom:70px!important;}

.sp_lh160p{
	line-height:1.6;}

.t_align_left_sp{
	text-align:left;}
.t_align_center_sp,
.sp_txt_center{
	text-align:center!important;}
	
.sp_w80{width:80%;}
.sp_w100{width:100%;}

.sp100px{
width: 100px;
}
.sp200px{
width: 200px;
}
.sp_mw300px{
    max-width: 300px;
}

.sp_mw450px{
    max-width: 450px;
}
.sp_mw_none{
    max-width: none;
}


.sp_block{
    display: block!important;
}
	
.sp_w100{
    width: 100%!important;
}

.fl_r_pic,
.fl_l_pic{
    margin-bottom: 30px;
}


.anchor_point{
    padding-top: 70px;
    margin-top: -70px;
}


/*------------------------------*/
html{
    font-size: 57.5%;
}
body{
    line-height: 1.5;
font-size:1.6rem!important;
	}



/*------------------------------*/
body{
}


.main_menu_content_body {
    padding: 30px 0 30px 0;
}
.main_menu_content_body_pic {
	display: none;
}

header{
    height: 100px;
}
body{
    padding-top: 100px;
}
.header_site_name a .img img{
    max-width: 180px;
}

.header_bot_flex > *:not(:last-child){
    display: none;
}

.footer_content_01_flex_left_txt_01 {
    font-size: 3.4em;
}

.footer_content_01_flex_right_btn a {
    font-size: 1.4em;
    padding: .65em 55px .65em 30px;
}

.footer_content_01_flex_right_btn a .footer_content_01_flex_right_btn_icon{
	height: 20px;
	margin-top: -10px;
	right: 15px;
}

.news_sidebar_body{
	padding-top: 100px;
}


.news_list_link{
	display: block;
}
.news_list_link_date{
	width: 100%;
}
.news_list_link_title{
	width: 100%;
}



.toppage_main .movie_container{
    min-height: 440px;
}

.toppage_main .catch{
    max-width: 500px;
}

.common_title {
    font-size: 2.8em;
    margin-bottom: 6px;
}
.common_sub_title {
    font-size: 1.1em;
	margin-bottom: 5px;
}

.under_intr_bl {
    flex-direction: column;
}
.under_intr_title_bl {
    width: 100%;
    padding-bottom: 30px;
}
.under_intr_cont_bl {
    width: 100%;
}
#under_intr {
    padding: 40px 0 60px;
}
.base_unchor_links {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 7%;
}
.base_unchor_links li a::after {
    width: 18px;
    height: 18px;
    right: 5px;
}
.base_anchor_cont_list li {
    padding: 0 0 60px;
    grid-template-columns: 1fr;
    gap: 30px;
}
.base_anchor_cont_list_img {
    position: relative;
    top: 0;
}
.bg_icons::before {
    background-size: 140%;
}
.locations_list_table {
    grid-template-columns: 100px 1fr;
}
.locations_list li {
    padding: 20px 0 40px;
}
.locations_list_title {
    margin: 0 auto 42px;
}
.locations_list li:last-of-type {
    padding-bottom: 80px;
}
.base_flex_title_bl {
    margin-bottom: 40px;
}
.message_interview_sec {
    padding: 80px 0;
}
.page_small_links_sec {
    padding: 80px 0;
}
.under_mv_title_bl_small .under_mv_title_en {
    padding-bottom: 30px;
}
.box_bg_gray_txt {
    height: 240px;
}
.base_detail_link_list {
    grid-template-columns: repeat(2, 1fr);
}
.base_number_list_title {
    margin-bottom: 1.5em;
    padding-bottom: 0.3em;
}
.toppage_company_section_bg_01 {
    width: 90%;
}
.toppage_company_white_box {
    padding: 40px 20px;
}

.toppage_service_list_txt_txt {
    padding: 2px 20px;
    font-size: 2rem;
    margin: 0 auto 15px;
}
.toppage_initiative_list {
    grid-template-columns: 1fr;
    width: 400px;
    max-width: 100%;
    margin: 0 auto;
}
.toppage_recruit_cont {
    width: 300px;
    margin-left: 4%;
}
.toppage_recruit_section .common_title {
    font-size: 6rem;
    margin-bottom: 0;
}
.toppage_recruit_section .common_sub_title {
    font-size: 2rem;
}
.toppage_recruit_cont_txt {
    font-size: 1.5rem;
    margin-top: 10px;
}
.toppage_recruit_link {
    padding: 5px 35px 2px;
    font-size: 1.5rem;
    margin-top: 20px;
}
.sp_br{
    display: inline;
}


.toppage_company_list li{
    width: calc(50% - 30px);
}