@media screen and (min-width:768px){
	.sp_only{
		display: none!important;
	}
}/*@media screen and (min-width:768px){*/

@media screen and (max-width:767px){
	.pc_only{
		display: none!important;
	}


	/*
	------------------------------------
	共通パーツ
	------------------------------------
	*/

	.container{
		width: calc(305 / 375 * 100vw);
        max-width: 450px;
        padding-right: 0;
        margin: 0 auto;
		padding-inline: 0;
	}


	/*2カラムの時の1つ分*/
	.c_column_size{
		width:100%;
		max-width: 100%;
	}

	/*セクションタイトル*/

	.c_sec_title_set{

	}

	.c_sec_title_set .en_title{
		font-size: 24px;
		line-height: 0.95;
		letter-spacing: 0.02em;
	}

	.c_sec_title_set .ja_title{
		font-size: 10px;
		line-height:1.4;
		letter-spacing: 0.07em;
	}

	.c_sec_title_set .en_title + .ja_title{
		margin-top: 11px;
	}

	.c_sec_title_set::before{
		width: 6px;
		height: 6px;

		margin-bottom: 11px;
	}


	/*ページタイトル*/
	.c_page_title_set{

	}

	.c_page_title_set .en_title{
		font-size: 24px;
		line-height: 1.1;
		letter-spacing: 0.02em;
	}

	.c_page_title_set .ja_title{
		font-size: 10px;
		line-height:1.4;
		letter-spacing: 0.02em;
	}

	.c_page_title_set .en_title + .ja_title{
		margin-top: 8px;
	}

	.c_page_title_set::before{
		width: 7px;
		height: 7px;
		margin-bottom: 12px;
	}

	/*採用ページのページタイトル*/
	.c_recruit_page_title_set{

	}

	.c_recruit_page_title_set .en_title{
		font-size: 32px;
		font-weight: 500;
		line-height: 0.88;
		letter-spacing: 0.02em;
	}

	.c_recruit_page_title_set .ja_title{
		font-size: 10px;
		font-weight: 600;
		line-height:1.4;
		letter-spacing: 0.03em;
	}

	.c_recruit_page_title_set .en_title + .ja_title{
		margin-top: 16px;
	}

	.c_recruit_page_title_set::before{
		width: 8px;
		height: 8px;
		margin-bottom: 12px;
	}


	/*下線リンク*/
	.c_border_link{

		min-width: 207px;
		padding-bottom:7px;
		padding-left: 12px;
		font-size: 12px;
	}


	/*アンカーリンク一覧*/
	.c_anchor_list{
		display: flex;
		align-items: center;
		flex-direction: column;
		gap:0;
	}

	.c_anchor_list li{
		width: 100%;
		border-bottom: 1px solid #DADADA;
	}

	.c_anchor_list .anchor_link{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap:15px;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.3; 
		letter-spacing: 0.08em;
		padding:16px 0 10px;
	}

	.c_anchor_list .anchor_link::after{
		flex-shrink: 0;
		width:clamp(calc(10 / 1440 * 1440px) , calc(10 / 1440 * 100vw) , calc(10 / 1440 * 1800px));
		height:clamp(calc(9 / 1440 * 1440px) , calc(9 / 1440 * 100vw) , calc(9 / 1440 * 1800px));
	}


	/*
	------------------------------------
	ヘッダー
	------------------------------------
	*/

	.header{

	}

	.header .header_inner{
		z-index: 38;
		padding:0 25px;

	}


	.header .header_flex{
		min-height:60px;
		padding:8px 0;
		z-index: 40;
	}

	.header .header_logo{
		width:157px;
	}

	.header .header_parent_menu{
		display: none;
	}

	.header .drawer_open{
		cursor: pointer;
		padding:8px;
		transform: translateX(8px);
	}

	.header .drawer_open_inner{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		width:30px;
		height:22px;
	}
	
	.header .drawer_open .bar{
		width:30px;
		height:2px;
		background-color: var(--black);
		transition-duration: 0.5s;
	}

	.header .drawer_open .bar02{
		margin:8px 0;
	}
	
	.header .drawer_open.active .bar01 {
		transform: translateY(1px) rotate(-30deg);
	}
	.header .drawer_open.active .bar02 {
		display: none;
	}
	.header .drawer_open.active .bar03 {
		transform: translateY(-1px) rotate(30deg);
	}


	.drawer_menu{
		position: fixed;
		top:0;
		right:0;
		z-index:35;
		width:100%;

		background-color: var(--white);
		transition-duration: 0.7s;
		opacity: 0;
		pointer-events: none;
	}

	.drawer_menu.show{
		opacity: 1;
		pointer-events: auto;
	}

	.drawer_menu .drawer_menu_inner{
		padding-top: 60px;
		height: 100vh;
		height: var(--vh03);
	}

	.drawer_menu .drawer_menu_scroll{
		height:100%;
		overflow-y: auto;
	}

	.drawer_menu .drawer_menu_contents_frame{
		width: calc(315 / 375 * 100vw);
        max-width: 450px;
        margin: 0 auto;
		padding-top: 33px;
		padding-bottom: 40px;
	}

	.drawer_menu .drawer_parent_list{

	}

	.drawer_menu .drawer_parent_item + .drawer_parent_item{
		margin-top: 24px;
	}

	.drawer_menu .drawer_parent_link{
		display: block;
		width: fit-content;
		font-size: 16px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0.07em;
	}

	.drawer_menu .drawer_parent_link.active{
		color:var(--orange);
	}

	.drawer_menu .drawer_child_frame{
		padding-top: 20px;
	}

	.drawer_menu .drawer_child_list{
		padding-left: 18px;
		border-left:1px solid var(--black);
	}

	.drawer_menu .drawer_child_item + .drawer_child_item{
		margin-top: 17px;
	}

	.drawer_menu .drawer_child_link{
		display: block;
		width: fit-content;
		font-size: 13px;
		font-weight: 600;
		line-height: 1.1;
		letter-spacing: 0.08em;
		/* color:var(--gray); */
		position: relative;
	}

	.drawer_menu .drawer_child_link.active{
		color:var(--orange);
	}

	/* .drawer_menu .drawer_child_link.active::after{
		content:'';
		width:5px;
		height:5px;
		border-radius: 50%;
		background-color: var(--orange);
		position: absolute;
		top: 50%;
		left: calc(100% + 10px);
		transform: translateY(-50%);

	} */
	/*
	------------------------------------
	ページ下部のお問い合わせセクション
	------------------------------------
	*/

	.c_contact_section{
		padding-top: 88px;
	}

	.c_contact_section .flex{
		display: block;
	}

	.c_contact_section .left{
		padding-right: 0;
	}

	.c_contact_section .contact_text{
		font-size: 18px;
		line-height: 2.11;
		letter-spacing: 0.08em;
		position: relative;
	}

	.c_contact_section .contact_text::before{
		content:'';
		width:6px;
		height:6px;
		background-image: url('../img/common/radi_green.png');
		position: absolute;
		left:0;
		top:-28px;
	}

	.c_contact_section .contact_text.orange::before{
		background-image: url('../img/common/radi_orange.png');
	}

	.c_contact_section .right{
		flex-shrink: 0;
		margin-top: 40px;
	}

	.c_contact_section .contact_button{
		height: 45px;
		font-size: 14px;
	}

	/*
	------------------------------------
	リクルートセクション
	------------------------------------
	*/

	.c_recruit_section{
		padding:60px 0 0;
	}

	.c_recruit_section::before,
	.c_recruit_section::after{
		content:'';
		width:1440px;
		min-width: 100vw;
		height:50px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		z-index:-1;
		background-size: cover;
	}

	.c_recruit_section::before{
		top:0;
		background-image: url('../img/common/recruit_bg_top.png');
		background-position: top;
	}

	.c_recruit_section::after{
		content: none;
	}
	.c_recruit_section .bg{
		width:100%;
		height:calc(100% - 15px);
		top: auto;
		bottom:4px;
		left: 50%;
		transform: translate(-50%, 0);
	}


	.c_recruit_section .flex{
		display: block;

	}

	.c_recruit_section .left{
		padding-top: 0;
	}

	.c_recruit_section .recruit_catch{
		margin-top: 28px;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.c_recruit_section .recruit_text{
		margin-top: 16px;
		font-size: 14px;
		line-height: 2;	
		letter-spacing: 0.09em;
	}

	.c_recruit_section .recruit_button_frame{
		margin-top: 25px;
	}

	.c_recruit_section .c_border_link{
		min-width: 161px;
		font-size: 12px;
		letter-spacing: 0.03em;
	}

	.c_recruit_section .recruit_button{
		height: 45px;
		font-size: 14px;
		letter-spacing: 0.08em;
	}

	.c_recruit_section .recruit_img{
		width:100%;
		min-width: auto;
		display: flex;
		justify-content: center;
		margin-top: 40px;
		aspect-ratio: auto;
		margin-left: 0;
	}

	.c_recruit_section .recruit_img img{
		flex-shrink: 0;
		width:100vw;
		aspect-ratio: 1 / 0.626;
		object-fit: cover;
		
	}
	/*
	------------------------------------
	フッター
	------------------------------------
	*/

	.footer{
		padding-top: 52px;
		padding-bottom: 36px;
	}

	.footer .footer_logo{
		width:229px;
	}

	.footer .footer_flex{
		margin-top: 34px;
		display: block;
	}

	.footer .footer_left{
		padding-right: 0;
	}

	.footer .footer_name{
		font-size: 12px;
		line-height:1.4;
		letter-spacing: 0.1em;
		margin-top: 28px;
	}

	.footer .footer_address{
		margin-top: 14px;
		font-size: 12px;
		font-weight: 400;
		line-height:2;
		letter-spacing: 0.09em;
	}



	.footer .footer_right{
		display: none;
	}


	.footer .footer_copy{
		margin-top: 34px;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0;
	}
	/*
	------------------------------------
	トップ
	------------------------------------
	*/

	body.top_body{
		
	}

	main.top_main{

	}

	.top_section{

	}

	.top_fv_section{
		height:auto;
		min-height: auto;
		padding-top: 0;
	}

	.top_fv_section .fv_area{
		width: calc(305 / 375 * 100vw);
        max-width: 450px;
        padding-right: 0;
        margin: 0 auto;
		position: relative;
		height:100vh;
		height:var(--vh02);
		display: flex;
		flex-direction:column ;
		align-items: flex-end;
		padding-top: 84px;
	}

	.top_fv_section .fv_text{
		flex-shrink: 0;
		position: static;
		font-size: 20px;
		line-height: 1.46;
		letter-spacing: 0.46em;
		margin-bottom: 30px;
	}

	.top_fv_section .fv_text p + p{
		margin-right: 8px;
	}


	.top_fv_section .fv_frame{
		height:100%;
		width:100%;
		max-width: 100%;
	}

	.top_fv_section .fv_frame::before{
		width:45px;
		height:47px;
		bottom:auto;
		top:-28px;
		right:auto;
		left:-4px;
	}

	.top_fv_section .fv_img{
		height:100%;
		display: flex;
		justify-content: center;
	}

	.top_fv_section .fv_img img{
		flex-shrink: 0;
		width: 100vw;
		height:100%;
		object-fit: cover;
	}

	.top_about_section{
		padding-top: 60px;
	}

	.top_about_section .about_bg01{
		display: none;
	}

	.top_about_section .about_flex{
		display: block;
	}

	.top_about_section .about_left{
		width: 100%;
        max-width: 100%;
	}

	.top_about_section .about_right{
		width:100%;
		max-width: 100%;
		margin-top: 60px;
	}

	.top_about_section .about_catch{
		margin-top: 26px;
		font-size: 22px;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.top_about_section .about_text{
		margin-top:24px;
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.top_about_section .about_link_frame{
		margin-top: 28px;
	}

	.top_about_section .about_img01{
		display: flex;
		justify-content: center;
	}

	.top_about_section .about_img01 img{
		flex-shrink: 0;
		width:100vw;
		aspect-ratio: 1 / 0.68;
		object-fit: cover;
		object-position: center 30%;
	}

	.top_about_section .about_img_area{
		display: none;

	}


	.top_service_section{
		margin-top: 0;
		padding-top: 60px;
		padding-bottom: 60px;
	} 

	.top_service_section .service_head_area{
		max-width: 100%;
	}

	.top_service_section .service_catch{
		margin-top: 28px;
		font-size: 22px;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.top_service_section .service_guide{
		/* font-weight: 500; */
		line-height: 2;
		margin-top: 22px;
		letter-spacing: 0.1em;
		font-size: 14px;
		font-feature-settings: 'palt' on, 'liga' off;
	}

	.top_service_section .service_bg01{
		width: 460px;
        top: -233px;
        right: calc(50% - 96px);
	}

	.top_service_section .service_bg02{
		width: 481px;
        top: -62px;
        left: calc(50% - 57px);
	}

	.top_service_section .service_bg03{
		width: 536px;
        top: -208px;
        right: calc(50% - 151px);
	}

	.top_service_section .service_bg04{
		position: absolute;
		z-index: -1;
		width: 619px;
        top: -40px;
        left: calc(50% - 209px);
	}

	.top_service_section .service_list{
		margin-top: 54px;
	}

	.top_service_section .service_block{
		position: relative;
		display: block;
		justify-content: space-between;
		align-items: flex-start;
	}

	.top_service_section .service_block + .service_block{
		margin-top: 70px;
	}


	.top_service_section .service_img_area{
		
	}

	.top_service_section .service_img{
		aspect-ratio: 1 / 0.688;
	}



	.top_service_section .service_text_area{

		padding-top: 30px;
	}


	.top_service_section .service_title_en{
		font-size: 10px;
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: 0.02em;
	}

	.top_service_section .service_title_ja{
		margin-top: 10px;
		font-size: 20px;
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.1em;
	}

	.top_service_section .service_text{
		margin-top: 20px;
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.top_service_section .service_link_frame{
		margin-top: 25px;
		display: flex;
		justify-content: flex-end;
	}

	.top_service_section .service_link_frame .c_border_link{
		min-width: 164px;
	}


	/*
	------------------------------------
	私たちについて
	------------------------------------
	*/

	body.about_body{
		
	}

	main.about_main{

	}

	.about_section{
		
	}

	.about_section .about_flex{
		flex-direction: column;
	}

	.about_section01{
		padding-top: 100px;
	}

	.about_section01 .about_bg01{
		width: 498px;
        left: calc(50% - 137px);
        top: -37px;
	}

	.about_section01 .about_flex{
		
	}

	.about_section01 .about_catch{
		margin-top: 48px;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63; 
		letter-spacing: 0.08em;
	}

	.about_section01 .about_text{
		margin-top: 22px;
		font-size: 14px;
		font-weight: 400;
		line-height: 2; 
		letter-spacing: 0.09em;
	}

	.about_section01 .about_right{
		display: none;
	}

	.about_section01 .about_img{
		margin-top: 50px;
		min-width: auto;
		width:clamp(calc(340 / 375 * 300px) , calc(340 / 375 * 100vw) , calc(340 / 375 * 1800px));
		aspect-ratio: 1 / calc(234 / 340);
	}

	.about_section02{
		padding-top: 52px;
	}

	.about_section02 .about_bg02{
		width: 559px;
        right: calc(50% - 182px);
        top: -209px;
	}

	.about_section02 .about_flex{
		
	}

	.about_section02 .about_en_head{
		font-size: 12px;
		margin-bottom: 6px;
	}

	.about_section02 .about_catch{
		font-size: 20px;
		font-weight: 500;
		line-height: 1.95;
		letter-spacing: 0.1em;
	}

	.about_section02 .about_text{
		font-size: 14px;
		margin-top: 22px;
		line-height: 2; 
		letter-spacing: 0.09em;
	}

	.about_section02 .about_right{
		padding-top: 48px;
	}

	.about_section02 .about_img{
		max-width:100%;
		aspect-ratio: 1 / calc(205 / 305);
	}

	.about_section03{
		padding-top: 52px;
		padding-bottom: 72px;
	}

	.about_section03 .about_bg03{
		width: 412px;
        left: calc(50% - 88px);
        top: -167px;
	}

	.about_section03 .about_bg04{
		position: absolute;
        z-index: -2;
        width: 575px;
        top: 430px;
        right: calc(50% - 146px);
	}

	.about_section03 .about_flex{
		flex-direction: column-reverse;

	}

	.about_section03 .about_flex:nth-child(even){
		flex-direction: column-reverse;
	}

	.about_section03 .about_flex + .about_flex{
		margin-top: 70px;
	}

	.about_section03 .about_en_head{
		margin-bottom: 8px;
	}

	.about_section03 .about_catch{
		font-size: 20px;
		font-weight: 500;
		line-height: 1.95;
		letter-spacing: 0.1em;
	}

	.about_section03 .about_text{
		font-size: 14px;
		margin-top: 22px;
		line-height: 2; 
		letter-spacing: 0.09em;
	}

	.about_section03 .about_left{
		margin-top: 0;
		margin-top: 48px;
	}

	.about_section03 .about_right{
		padding-right: 0;
	}

	.about_section03 .about_img{
		max-width:100%;
		aspect-ratio: 1 / calc(205 / 305);
		margin-left: 0;
	}


	/*
	------------------------------------
	事業紹介
	------------------------------------
	*/

	body.service_body{
		
	}

	main.service_main{

	}

	.service_section{
		
	}

	.service_section .service_bg01{
		width: 395px;
        top: -5px;
        left: calc(50% - 258px);
	}

	.service_section .service_bg02{
		width: 392px;
        top: 0;
        left: calc(50% - 85px);
        right: auto;
	}

	.service_section .service_bg03{
		width:460px;
		top:0;
		left:auto;
		right:calc(50% - 80px);
	}

	.service_section .service_bg05{
		width: 460px;
        top: 131px;
        left: calc(50% - 54px);
	}

	.service_section .service_bg04{
		width: 480px;
        left: auto;
        right: calc(50% - 66px);
        top: 334px;
	}

	.service_section .service_bg06{
		width: 623px;
        top: 349px;
        left: calc(50% - 191px);
	}

	.service_guide_section{
		padding-top: 100px;
	}

	.service_guide_section .service_guide_frame{
		max-width: 100%;
	}

	.service_guide_section .service_catch{
		margin-top: 36px;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.service_guide_section .service_text{
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
		margin-top: 24px;
	}

	.service_guide_section .service_anchor_list{
		margin-top: 52px;
	}

	.service_list_section{
		padding-top: 60px;
		padding-bottom: 72px;
		margin-top: 0;
	}

	.service_list_section .service_list{
		margin-top: 0;
	}

	.service_list_section .service_text_area {
		padding-top: 36px;
	}

	.service_list_section .service_title_ja {
        font-size: 22px;
        line-height: 1.63;
        letter-spacing: 0.08em;
		margin-top: 6px;
    }

	.service_list_section .service_text {
		line-height: 2;
		margin-top: 23px;
	}

	.service_list_section .service_link_frame {
		margin-top: 29px;
	}

	.service_list_section .service_link_frame .c_border_link{
		padding-left: 22px;
		font-size: 12px;
	}


	/*
	------------------------------------
	事業紹介詳細　共通部分
	------------------------------------
	*/

	.c_service_mv_section{
		padding-top: 100px;
	}

	.c_service_mv_section .service_detail_bg01{
		width: 485px;
        top: -6px;
        left: auto;
        right: calc(50% - 90px);
	}
	.c_service_mv_section .service_detail_bg02{
		width: 460px;
        top: 652px;
        right: auto;
        left: calc(50% - 86px);
	}
	.c_service_mv_section .service_detail_bg03{
		width: 507px;
        top: 1206px;
        left: auto;
        right: calc(50% - 119px);
	}
	.c_service_mv_section .service_detail_bg04{
		width: 481px;
        top: 1816px;
        left: calc(50% - 76px);
	}
	.c_service_mv_section .service_detail_bg05{
		width: 460px;
        top: 2652px;
        right: calc(50% - 67px);
	}
	.c_service_mv_section .service_detail_bg06{
		width: 559px;
        top: 3258px;
        left: calc(50% - 127px);
	}

	.c_service_mv_section .c_page_title_set .en_title{
		font-size: 18px;
	}

	.c_service_mv_section .c_page_title_set::before {
		width: 4px;
		height:4px;
		margin-bottom: 16px;
	}

	.c_service_mv_section .c_page_title_set .en_title + .ja_title {
		margin-top: 8px;
	}

	.c_service_mv_section .service_flex{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.c_service_mv_section .service_title{
		margin-top: 46px;
	}

	.c_service_mv_section .service_title .ja_title{
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
		
	}

	.c_service_mv_section .service_title .en_title{
		margin-top: 2px;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.02em;
	}

	.c_service_mv_section .service_catch{
		font-size: 20px;
		line-height: 1.95;
		letter-spacing: 0.1em;
		margin-top: 27px;
	}

	.c_service_mv_section .service_text{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 14px;
		margin-top: 21px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.c_service_mv_section .service_right{
		display: none;
	}

	.c_service_mv_section .service_img{
		min-width: auto;
		width: clamp(calc(340 / 375 * 300px), calc(340 / 375 * 100vw), calc(340 / 375 * 1800px));
        aspect-ratio: 1 / calc(225 / 340);
		margin-top: 36px;
	}

	.c_service_info_list_section{
		padding-top: 64px;
	}

	.c_service_info_list_section .service_info_block{
		display: block;
	}

	.c_service_info_list_section .service_info_block + .service_info_block{
		margin-top: 64px;
	}

	.c_service_info_list_section .service_img{
		aspect-ratio: 1 / calc(205 / 305);
	}

	.c_service_info_list_section .service_img img{
		width:100%;
		height:100%;
		object-fit: cover;
	}

	.c_service_info_list_section .service_text_area{
		padding-top: 26px;
	}

	.c_service_info_list_section .service_catch{
		font-size: 20px;
		line-height: 1.95;
		letter-spacing: 0.1em;
	}

	.c_service_info_list_section .service_text{
		margin-top: 21px;
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.c_service_info_list_section .service_link_frame{
		margin-top: 48px;
	}

	.c_service_info_list_section .service_link{
		min-width: 240px;
		max-width: 100%;
	}


	.c_service_link_section{
		padding-top: 90px;
		padding-bottom: 64px;
	}

	.c_service_link_section .sec_title::before{
		width:4px;
		height:4px;
		margin-bottom: 15px;
		margin-left: 0;
	}

	.c_service_link_section .sec_title .ja_title{
		font-size: 22px;
		font-weight: 400;
        line-height: 1.5;
        letter-spacing: 0.08em;
	}
	.c_service_link_section .sec_title .en_title{
		margin-top: 4px;
        font-feature-settings: 'palt' on, 'liga' off;
        font-size: 10px;
        font-weight: 600;
        line-height: 1.5;
        letter-spacing: 0.02em;
	}

	.c_service_link_section .service_link_list{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap:34px 0;
		flex-wrap: wrap;
		margin-top: 54px;
	}

	.c_service_link_section .service_link_item{
		width:calc(145 / 305 * 100%);
	}

	.c_service_link_section .servive_link_block{
		padding-top: 11px;
	}

	.c_service_link_section .servive_link_block::after{
		content:none;
		width:12px;
		height:14px;
		background-color: var(--orange);
		clip-path: polygon(100% 50%, 0 0, 0 100%);
		flex-shrink: 0;
		margin-left: 12px;

	}

	.c_service_link_section .service_link_text{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.c_service_link_section .service_link_en{
		font-size: 8px;
		line-height: 1.7;
		letter-spacing: 0.02em;
		
	}

	.c_service_link_section .service_link_en .num{
		/* display: block; */
	}

	.c_service_link_section .service_link_ja{
		margin-top: 5px;
		font-size: 16px;
		line-height: 1.5; 
		letter-spacing: 0.08em;
	}


	/*
	------------------------------------
	プレカット事業
	------------------------------------
	*/

	.precut_facility_section{
		padding-top: 78px;
	}

	.precut_facility_section .sec_title{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.precut_facility_section .sec_title::before{
		width:4px;
		height:4px;
		margin-bottom: 16px;
		margin-left: 0;
	}

	.precut_facility_section .sec_title .ja_title{
		font-size: 22px;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}
	.precut_facility_section .sec_title .en_title{
		margin-top: 4px;
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.5; 
		letter-spacing: 0.02em;
	}

	.precut_facility_section .facility_guide{
		margin-top: 28px;
		font-size: 14px;
		font-feature-settings: 'palt' on, 'liga' off;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.precut_facility_section .facility_list{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
		margin-top: 62px;
		gap: 62px 0;
	}

	.precut_facility_section .facility_item{
		width: 100%;
		max-width: 100%
	}

	.precut_facility_section .facility_thumb{
		aspect-ratio: 1 / calc(150 / 305);
	}


	.precut_facility_section .facility_text_area{
		margin-top: 32px;
	}

	.precut_facility_section .facility_name{
		font-size: 20px;
		line-height: 1.5;
		letter-spacing: 0.1em;
	}

	.precut_facility_section .facility_text{
		margin-top: 26px;
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
		max-width: calc(282 / 305 * 100%);
	}


	.precut_facility_section .group_list{
		display: block;
		margin-top: 72px;
	}

	.precut_facility_section .group_block{
		border-top:1px solid var(--orange);
		width:100%;
		border-left:none;
		padding-left: 0;
		padding-top: 36px;
		padding-bottom: 48px;
	}


	.precut_facility_section .group_block_contents{
		max-width: 100%;
	}

	.precut_facility_section .group_block_name{
		font-size: 18px;
		font-style: normal;
		font-weight: 400;
		line-height: 1.5; 
		letter-spacing: 0.08em;
	}

	.precut_facility_section .group_block_name span{
		font-size: 10px;
	}

	.precut_facility_section .group_block_text{
		line-height: 2.14;
		letter-spacing: 0.07em;
		font-feature-settings: 'palt' on, 'liga' off;
		margin-top: 18px;
		font-size: 14px;
	}


	/*
	------------------------------------
	住宅設備事業
	------------------------------------
	*/

	.equipment_maker_section{
		padding-top: 78px;
	}

	.equipment_maker_section .sec_title{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.equipment_maker_section .sec_title::before{
		width:4px;
		height:4px;
		margin-bottom: 16px;
		margin-left: 0;
	}

	.equipment_maker_section .sec_title .ja_title{
		font-size: 22px;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}
	.equipment_maker_section .sec_title .en_title{
		margin-top: 4px;
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.5; 
		letter-spacing: 0.02em;
	}

	.equipment_maker_section .maker_guide{
		margin-top: 28px;
		font-size: 14px;
		font-feature-settings: 'palt' on, 'liga' off;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.equipment_maker_section .maker_box{
		padding:34px 24px 40px;
		margin-top: 36px;
	}

	.equipment_maker_section .maker_inner{
		max-width: clamp(calc(868 / 1440 * 1440px) , calc(868 / 1440 * 100vw) , calc(868 / 1440 * 1800px));
		margin-inline: auto;
	}

	.equipment_maker_section .maker_list:last-child{
		padding-bottom: 35px;
	}
	.equipment_maker_section .maker_list_flex{
		display: flex;
		flex-direction: column;
		gap:8px 0;
	}

	.equipment_maker_section .maker_list{
		position: relative;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}

	.equipment_maker_section .maker_list .add{
		position: absolute;
		left:auto;
		right:12px;
		bottom:0;
		font-size: 12px;
		
	}

	.equipment_maker_section .maker_list li{
		padding-left: 26px;
		position: relative;
	}

	.equipment_maker_section .maker_list li::before{
		font-size: 12px;
		left:1px;
		top:0;
	}

	.equipment_maker_section .maker_list li + li{
		margin-top: 8px;
	}

	.equipment_maker_section .maker_remark{
		margin-top: 32px;
		font-size: 12px;
		font-feature-settings: 'palt' on, 'liga' off;
		font-weight: 400;
		line-height: 2;
		letter-spacing: 0.09em;
	}


	/*
	------------------------------------
	木への想い
	------------------------------------
	*/

	body.thoughts_body{
		
	}

	main.thoughts_main{

	}

	.thoughts_section{
		
	}

	.thoughts_section .thoughts_flex{
		display: block;
	}

	.thoughts_section01{
		padding-top: 100px;
	}


	.thoughts_section01 .thoughts_bg01{
		width: 485px;
		left: auto;
		right: calc(50% - 88px);
		top:0;
	}

	.thoughts_section01 .thoughts_flex{
		
	}

	.thoughts_section01 .thoughts_catch{
		margin-top: 27px;
		font-size: 22px;
		font-weight: 400;
		line-height: 1.81;
		letter-spacing: 0.08em;
	}

	.thoughts_section01 .thoughts_text{
		font-feature-settings: 'palt' on, 'liga' off;
		margin-top: 18px;
		font-size: 14px;
		/* font-weight: 500; */
		line-height: 2.14; 
		letter-spacing: 0.07em;
	}

	.thoughts_section01 .thoughts_right{
		display: none;
	}

	.thoughts_section01 .thoughts_img_frame{
		margin-top: 48px;
	}

	.thoughts_section01 .thoughts_img{
		min-width: auto;
		width: clamp(calc(340 / 375 * 300px), calc(340 / 375 * 100vw), calc(340 / 375 * 1800px));
        aspect-ratio: 1 / calc(225 / 340);
	}


	.thoughts_list_section{
		padding-top: 50px;
		padding-bottom: 88px;
	}

	.thoughts_list_section .thoughts_bg02{
		width: 460px;
        right: auto;
        left: calc(50% - 96px);
        top: -160px;
	}

	.thoughts_list_section .thoughts_bg03{
		width: 507px;
        top: 344px;
        left: auto;
        right: calc(50% - 150px);
	}

	.thoughts_list_section .thoughts_bg04{
		width: 481px;
		top: 900px;
		right:auto;
		left: calc(50% - 32px);
	}

	.thoughts_list_section .thoughts_bg05{
		width: 583px;
		top: 1760px;
		left: calc(50% - 235px);
	}

	.thoughts_list_section .thoughts_info_list{
		
	}

	.thoughts_list_section .thoughts_info_block{
		display: block;
	}

	.thoughts_list_section .thoughts_info_block + .thoughts_info_block{
		margin-top: 52px;
	}

	.thoughts_list_section .thoughts_img{
		width:100%;

		aspect-ratio: 1 / calc(206 / 305);
	}


	.thoughts_list_section .thoughts_info_catch{
		font-size: 22px;
		font-weight: 400;
		line-height: 1.81;
		letter-spacing: 0.08em;
		margin-top: 28px;
		white-space: nowrap;
	}

	.thoughts_list_section .thoughts_info_text{
		font-feature-settings: 'palt' on, 'liga' off;
		line-height: 2.14;
		letter-spacing: 0.07em;
		margin-top: 18px;
		width: calc(100% + 10px);
	}


	/*
	------------------------------------
	よくあるご質問
	------------------------------------
	*/

	body.faq_body{
		
	}

	main.faq_main{

	}

	.faq_section{
		
	}

	.faq_section .faq_bg{
	}

	.faq_section .faq_bg01{
		width: 456px;
        top: 40px;
        left: calc(50% - 59px);
	}
	.faq_section .faq_bg02{
		width: 376px;
        top: 368px;
        right: calc(50% + 19px);
	}
	.faq_section .faq_bg03{
		width: 288px;
        top: 556px;
        left: calc(50% + 66px);
	}
	.faq_section .faq_bg04{
		width: 515px;
        top: 903px;
        right: calc(50% - 45px);
	}
	.faq_section .faq_bg05{
		width: 376px;
        top: 1369px;
        left: calc(50% + 28px);
	}

	.faq_guide_section{
		padding-top: 100px;
	}

	.faq_guide_section .faq_text{
		margin-top: 40px;
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.faq_guide_section .faq_anchor_list{
		margin-top: 44px;
		gap: 0;
	}

	.faq_guide_section .faq_anchor_list .anchor_link{
		font-size: 14px;
		line-height:1.35;
		font-weight: 500;
		letter-spacing: 0.08em;
	}

	.faq_list_section{
		padding-top: 64px;
		padding-bottom: 70px;
	} 

	.faq_list_section .faq_area + .faq_area{
		margin-top: 70px;
	}

	.faq_list_section .faq_head{
		padding-bottom: 19px;
		font-size: 14px;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}

	.faq_list_section .faq_list{
		margin-top: 3px;
	}

	.faq_list_section .faq_question{
		font-size: 14px;
		line-height: 1.72;
		letter-spacing: 0.08em;
		padding:20px 40px 19px 38px;
	}

	.faq_list_section .faq_question::before{
		font-size: 24px;
		line-height: 0.95;
		letter-spacing: 0.02em;
		left: 0px;
        top: 22px;
	}

	.faq_list_section .faq_question::after{
		width:17px;
		height:17px;
		right:0;
		top:25px;
	}

	.faq_list_section .faq_answer{
		font-size: 12px;
		padding:0px 40px 18px 38px;
		line-height: 2; 
		letter-spacing: 0.09em;
		transform: translateY(-5px);
	}

	.faq_list_section .faq_answer::before{
		font-size: 24px;
		line-height: 0.76;
		line-height: 0.95;
		left: 0;
		top: 3px;
	}


	/*
	------------------------------------
	会社概要
	------------------------------------
	*/

	body.info_body{
		
	}

	main.info_main{

	}

	.info_section{
		
	}


	.info_section .c_page_title_set::before {
		width:4px;
		height:4px;
		margin-bottom: 16px;
	}

	.info_section .c_page_title_set .en_title {
		font-size: 18px;
		line-height: 1;
	}

	.info_section .c_page_title_set .en_title + .ja_title {
		margin-top: 9px;
	}


	.info_section .sec_title{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}


	.info_section .sec_title .en_title{
		font-size: 22px;
		font-weight: 500;
		line-height: 1.4; 
		letter-spacing: 0.08em;
	}

	.info_section .sec_title .ja_title{
		font-size: 10px;
	}

	.info_section .sec_title .en_title + .ja_title{
		margin-top: 4px;
	}

	.info_section .sec_title.radi::before{
		width: 6px;
		height: 6px;
		margin-bottom: 18px;
	}

	.info_section .sec_title.radi .en_title{
		font-size: 20px;
	}

	.info_guide_section{
		padding-top: 100px;
	}

	.info_guide_section .info_bg01{
		width: 376px;
        top: -136px;
        left: calc(50% - 50px);
	}

	.info_guide_section .info_bg02{
		width: 514px;
        top: 259px;
        right: calc(50% - 144px);
	}

	.info_guide_section .table_area{
		margin-top: 50px;
	}

	.info_guide_section .table_frame{
		margin-top: 28px;
	}

	.c_company_table{

	}

	.c_company_table th,
	.c_company_table td{
		font-size: 12px;
		line-height: 2;
		letter-spacing: 0.09em;
		padding-top: 10px;
		padding-bottom: 11px;
		/* height:50px; */
	}


	.c_company_table th{
		white-space: normal;
		padding-right: 8px;
		width:80px;
		font-size: 14px;
		letter-spacing: 0.08em;
		font-weight: 500;
		font-family: var(--mincho);
	}

	.c_company_table td{
		width: auto;
		max-width: calc(100% - 80px);
		font-weight: 400;
		line-height: 2.2;
	}

	.info_guide_section .map_area{
		margin-top:32px;
	}

	.info_guide_section .map_frame{
		aspect-ratio:auto;
		display: flex;
		justify-content: center;
	}

	.info_guide_section .map_frame iframe{
		flex-shrink: 0;
		width:calc(100% + 20px);
		height:auto;
		aspect-ratio: 1 / calc(157 / 325);
	}

	.info_guide_section .map_link{
		font-weight: 500;
		font-size: 12px;
		line-height: 1.5;
		letter-spacing: 0.09em;
		margin-top: 10px;
		transform: translateX(-10px);
	}

	.info_office_section{
		padding-top: 85px;
		padding-bottom: 65px;
	}

	.info_office_section .office_bg01{
		width: 460px;
        top: -160px;
        left: calc(50% - 80px);
	}
	.info_office_section .office_bg02{
		width: 403px;
        top: 422px;
        right: calc(50% - 46px);
	}

	.info_office_section .office_list{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
		flex-direction: column;
		gap:34px 0;
		margin-top: 42px;
	}

	.info_office_section .office_item{
		padding-bottom: 32px;
		border-bottom: 1px solid #DADADA;
	}

	.info_office_section .office_item:last-child{
		padding-bottom: 0;
		border-bottom: none;
	}

	.info_office_section .office_block{
		padding-left:0;
		border-left:none;
		margin-top: 24px;
	}

	.info_office_section .office_thumb{
		max-width: 100%;
	}


	.info_office_section .office_name{
	
		font-size: 16px;
		font-weight: 500;
		line-height: 1.4;
		letter-spacing: 0.08em;
	}

	.info_office_section .office_info{
		margin-top: 18px;
		line-height: 2;
		letter-spacing: 0.09em;
		font-size: 12px;
	}


	.info_business_section{
		padding-top: 82px;
		padding-bottom: 65px;
	}

	.info_business_section .business_bg01{
		width: 531px;
        top: -8px;
        left: calc(50% - 112px);
	}


	.info_business_section .business_list{
		margin-top: 48px;
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
		gap:12px;
	}

	.info_business_section .business_item01{
		width:69px;
	} 
	.info_business_section .business_item02{
		width:120px;
	} 
	.info_business_section .business_item03{
		width:93px;
	} 


	/*
	------------------------------------
	グループ会社
	------------------------------------
	*/

	body.group_body{
		
	}

	main.group_main{

	}

	.group_section{
		
	}

	.group_section .group_img img{
		width:100%;
		height:100%;
		object-fit: cover;
	}

	.group_section .group_flex{
		display: block;

	}

	.group_section01{
		padding-top: 100px;
	}

	.group_section01 .group_bg01{
		width: 485px;
		left: auto;
		right:calc(50% - 90px);
		top: -8px;
	}

	.group_section01 .group_flex{
		
	}

	.group_section01 .group_catch{
		margin-top: 27px;
        font-size: 22px;
        font-weight: 400;
        line-height: 1.81;
        letter-spacing: 0.08em;
		white-space: nowrap;
	}

	.group_section01 .group_text{
		font-feature-settings: 'palt' on, 'liga' off;
        margin-top: 18px;
        font-size: 14px;
        line-height: 2.14;
        letter-spacing: 0.07em;
	}

	.group_section01 .group_right{
		/* padding-top: 42px; */
		display: none;
	}

	.group_section01 .group_img_frame {
        margin-top: 48px;
    }

	.group_section01 .group_img{
		min-width: auto;
		width: clamp(calc(340 / 375 * 300px), calc(340 / 375 * 100vw), calc(340 / 375 * 1800px));
        aspect-ratio: 1 / calc(225 / 340);
	}


	.group_list_section{
		padding-top: 72px;
		padding-bottom: 50px;
	}

	.group_list_section .group_bg02{
		width: 460px;
		right: auto;
		left: calc(50% - 90px);
		top: -200px;
	}

	.group_list_section .group_bg03{
		width: 507px;
        right: calc(50% - 60px);
        top: 356px;
	}		

	.group_list_section .group_bg04{
		width: 628px;
        left: calc(50% - 188px);
        top: 955px;
	}		

	.group_list_section .group_list{
		display: block;
	}

	.group_list_section .group_block{
		border-top:1px solid var(--green);
		border-left:none;
		padding-left: 0;
		padding-top: 36px;
		padding-bottom: 49px;
	}

	.group_list_section .group_block:nth-child(odd){
		width:100%;
	}
	.group_list_section .group_block:nth-child(even){
		width:100%;
	}

	.group_list_section .group_block_contents{
		max-width: 100%;
	}

	.group_list_section .group_block_name{
		font-size: 18px;
		font-style: normal;
		font-weight: 400;
		line-height: 1.5; 
		letter-spacing: 0.08em;
	}

	.group_list_section .group_block_text{
		line-height: 2.14;
		letter-spacing: 0.07em;
		font-feature-settings: 'palt' on, 'liga' off;
		margin-top: 18px;
	}

	.group_list_section .group_block_address{
		margin-top: 26px;
		line-height: 1.85;
		letter-spacing: 0.07em;
		font-feature-settings: 'palt' on, 'liga' off;
		text-box: trim-both cap alphabetic;
	}


	/*
	------------------------------------
	お問い合わせ
	------------------------------------
	*/

	body.contact_body{
		
	}

	main.contact_main{

	}


	.c_form_frame{

	}

	.c_form_frame .err_text{
		font-size: 14px;
		line-height: 1.78; 
		letter-spacing: 0.07em;
	}


	.c_form_frame .form_line{
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap:17px 0;
	}

	.c_form_frame .form_line + .form_line{
		margin-top: 34px;
	}

	.c_form_frame .form_left{
		width:100%;
		flex-shrink: 0;
		min-width: 100%;
		padding-right: 0;
		padding-top: 0;
		display: flex;
		align-items: center;
		flex-wrap: wrap;

	}

	.c_form_frame .form_left.no_p{
		padding-top: 0;
	}

	.c_form_frame .form_label{
		font-size: 14px;
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.08em;
		gap:0 6px;
	}

	.c_form_frame .form_label::after{
		font-size: 14px;
		font-weight: 400;
		line-height: 1.5;
		letter-spacing: 0.07em;
	}


	.c_form_frame .form_right{
		width:100%;
	}

	.c_form_frame .input_frame{
		position: relative;
	}

	.c_form_frame .input_frame .err_text{
		position: absolute;
		left:0;
		top:calc(100% + 10px);
	}

	.c_form_frame .text_input{
		height: 35px;
		padding-inline: 15px;
		font-size: 12px;
		letter-spacing: 0.09em;
	}

	.c_form_frame .select_frame select{
		height: 35px;
		padding-inline: 15px;
		font-size: 12px;
		letter-spacing: 0.09em;
	}


	.c_form_frame textarea{
		height: 100px;
		padding:7px 12px;
		font-weight: 400;
		line-height: 2;
		font-size: 12px;
		letter-spacing: 0.09em;
	}

	.c_form_frame .agree_flex{
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap:12px 20px;
		margin-top: 4px;
	}

	.c_form_frame label.agree_label{
		cursor: pointer;

	}

	.c_form_frame .agree_label{
		gap:0 20px;
		font-size: 14px;
		line-height: 1.5;
		letter-spacing: 0.07em;
	}

	.c_form_frame .agree_label input{
		display: none;
	}

	.c_form_frame .agree_label .box{
		width: 20px;
		height: 20px;
	}


	.c_form_frame .agree_label input:checked + .box:before {
		top: 2px;
		left: 6px;
		transform: rotate(50deg);
		width: 7px;
		height: 13px;
		border-right: 2px solid var(--white);
		border-bottom: 2px solid var(--white);
	}


	.c_form_frame .privacy_box{
		margin-top: 24px;
		height: 218px;
		padding:12px 18px;

	}

	.c_form_frame .privacy_text{
		font-size: 12px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.c_form_frame .submit_area{
		margin-top: 40px;
	}


	.c_form_frame .submit_frame{

	}

	.c_form_frame .submit_frame + .submit_frame{
		margin-top: 20px;
	}

	.c_form_frame .return_button,
	.c_form_frame .submit_button{

		height:40px;
		font-size: 14px;
		letter-spacing: 0.08em;
	}


	.contact_section{
		padding-top: 100px;
		padding-bottom: 102px;
	}

	.contact_section .contact_bg01{
		width: 575px;
        top: -34px;
        left: calc(50% - 119px);
	}

	.contact_section .contact_bg02{
		width: 371px;
        top: 300px;
        right: calc(50% - -16px);
	}

	.contact_section .contact_bg03{
		width: 615px;
        top: 737px;
        left: calc(50% - 95px);
	}


	.contact_section .contact_text{
		margin-top: 43px;
		font-size: 14px;
		line-height: 2; 
		letter-spacing: 0.09em;
	}

	.contact_section .contact_text p + p{
		margin-top: 24px;
	}

	.contact_section .must_guide{
		margin-top: 24px;
		font-size: 12px;
		line-height: 2; 
		letter-spacing: 0.09em;
	}


	.contact_section .form_frame{
		margin-top: 57px;
	}


	/*エラー画面*/
	.contact_section .err_head{
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
		margin-top:40px;
	}

	.contact_section .err_guide{
		margin-top: 33px;
        font-weight: 400;
        line-height: 2;
        letter-spacing: 0.09em;
        font-size: 12px;
	}

	.contact_section .form_err_frame{
		margin-top: 56px;
	}

	.contact_section .form_err_frame .form_line {
        gap: 15px 0;
	}

	.contact_section .form_err_frame .form_line + .form_line{
		margin-top: 32px;
	}

	.contact_section .form_err_frame .err_text + .agree_flex{
		margin-top: 24px;
	}

	/*確認画面*/
	.contact_section .confirm_text{
		margin-top: 44px;
		font-size: 14px;
		font-weight: 400;
		line-height: 2;
		letter-spacing: 0.09em;
	}


	.contact_section .form_confirm_frame{
		margin-top: 55px;
	}


	.form_confirm_frame .form_left{
		padding-top: 0;
	}

	.form_confirm_frame .input_frame{
		font-size: 12px;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.form_confirm_frame .form_line{
		gap:10px;
	}

	.form_confirm_frame .form_line + .form_line{
		margin-top: 26px;
	}

	.form_confirm_frame .submit_area{
		margin-top: 50px;
	}

	.form_confirm_frame .submit_button,
	.form_confirm_frame .return_button{
		height:40px;
	}

	/*完了画面*/
	.contact_section .complete_head{
		margin-top: 40px;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.contact_section .complete_text{
		margin-top: 34px;
		font-size: 14px;
		font-weight: 400;
		line-height: 2;
		letter-spacing: 0.09em;
	}

	.contact_section .complete_text p + p{
		margin-top: 23px;
	}

	.contact_section .top_link{
		font-family: var(--mincho);
		height:40px;
		font-size: 14px;
		font-weight: 600;
		letter-spacing: 0.08em;
		margin:64px auto 0;
	}

	/*
	------------------------------------
	採用関係ページ 共通パーツ
	------------------------------------
	*/


	/*
	------------------------------------
	採用関係ページ ヘッダー
	------------------------------------
	*/

	.r_header{

	}

	.r_header .r_header_innder{
		max-width:100%;
		margin:0 auto;
		padding:0 25px;
	}

	.r_header .r_header_bg{

		width:940px;
	}

	.r_header .r_header_flex{
		min-height:60px;
		padding:4px 0;		
	}

	.r_header .r_header_logo{
		display: flex;
		
		gap:8px 20px;
	}

	.r_header .r_header_logo_img{
		width: 157px;
	}
	.r_header .r_header_logo_text{
		font-size: 14px;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0.05em;
	}

	.r_header .r_header_right{
		display: flex;
		align-items: center;
	}

	.r_header .r_header_entry{
		display: none;
	}


	.r_header .drawer_open{
		cursor: pointer;
		margin-left: 0;
		padding:8px;
		transform: translateX(8px);
	}

	.r_header .drawer_open_inner{
		width:30px;
		height:23px;
	}

	.r_header .drawer_open .bar{
		width:30px;
		height:2px;
	}

	.r_header .drawer_open .bar02{
		margin:8px 0;
	}



	#r_drawer_menu .drawer_menu_contents_frame{
		min-height: 100%;
		display: block;
	}

	#r_drawer_menu .drawer_menu_contents_inner{
		width:100%;
		max-width: 100%;
		padding-inline: 35px;
		/* padding-top: 142px; */
		padding-top: 100px;
		padding-bottom: 40px;
	}



	#r_drawer_menu .drawer_menu_contents::after{
		content:none;
	}

	#r_drawer_menu .drawer_parent_list{
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;

	}

	#r_drawer_menu .drawer_parent_item{
		border-bottom: 1px solid #fff;
	}

	#r_drawer_menu .drawer_parent_item_message{
		order:0;
	}
	#r_drawer_menu .drawer_parent_item_people{
		order:3;
	}
	#r_drawer_menu .drawer_parent_item_about{
		order:1;
	}
	#r_drawer_menu .drawer_parent_item_recruit{
		order:4;
	}
	#r_drawer_menu .drawer_parent_item_environment{
		margin-left: 0;
		order:2;
	}
	#r_drawer_menu .drawer_parent_item_faq{
		margin-left: 0;
		order:5;
	}

	#r_drawer_menu .drawer_parent_link{
		display: flex;
		width:100%;
		justify-content: space-between;
		align-items: center;
		padding:16px 0;
	}


	#r_drawer_menu .drawer_parent_en{
		font-size: 28px;
		font-weight: 600;
		line-height: 1.1;
		letter-spacing: 0.02em;
	}

	#r_drawer_menu .drawer_parent_ja{
		margin-top: 0;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.3; /* 141.667% */
		letter-spacing: 0.1em;
	}

	#r_drawer_menu .drawer_corpo_link{
		/* display: none; */
		margin-top: 60px;
		font-size: 14px;
		align-items: flex-start;
	}

	#r_drawer_menu .drawer_corpo_link::before {
		margin-right: 10px;
		border-width: 4.5px 0 4.5px 10px;
		margin-top: 4px;
	}

	#r_drawer_menu .drawer_corpo_link span{
		font-size: 10px;
		margin-left: 0;
		margin-top: 9px;
		display: block;
	}

	#r_drawer_menu .entry_frame{
		/* margin-top: 36px; */
		margin-top: 25px;
		display: flex;
		justify-content: flex-end;
		
	}

	#r_drawer_menu .entry_link{
		display: flex;
		align-items: flex-start;
		font-size: 22px;
		font-weight: 600;
		line-height:1;
		letter-spacing: 0.06em;
		color:var(--white);
	}

	#r_drawer_menu .entry_link::before{
		content:'';
		width:8px;
		height:8px;
		background-image: url('../img/common/radi_white.png');
		margin-right: 12px;
		margin-top: 6px;
	}

	#r_drawer_menu .drawer_item_fade_show{
		opacity: 0;
		transform: translateY(20px);
		transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
		transition-property: opacity , transform;
	}

	#r_drawer_menu.show .drawer_item_fade_show {
		opacity: 1;
		transform: translateY(0);
	}

	#r_drawer_menu.show .drawer_parent_item_message{
		transition-delay: 0.5s;
	}
	#r_drawer_menu.show .drawer_parent_item_people{
		transition-delay: 0.8s;
	}
	#r_drawer_menu.show .drawer_parent_item_about{
		transition-delay: 0.6s;
	}
	#r_drawer_menu.show .drawer_parent_item_recruit{
		transition-delay: 0.9s;
	}
	#r_drawer_menu.show .drawer_parent_item_environment{
		transition-delay: 0.7s;
	}
	#r_drawer_menu.show .drawer_parent_item_faq{
		transition-delay: 1s;
	}
	#r_drawer_menu.show .entry_frame{
		transition-delay: 1.1s;
	}


	/*
	------------------------------------
	採用関係ページ フッター
	------------------------------------
	*/

	.r_footer{
		margin-top: 80px;
		padding-top: 56px;
		padding-bottom: 32px;
	}

	.r_footer::before{
		width:940px;
	}

	.r_footer .footer_text{
		font-size: 24px;
		font-weight: 500;
		line-height: 1.75;
		letter-spacing: 0.09em;
		margin-bottom: 38px;
	}

	.r_footer .button_flex{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
		gap:30px;
		margin-bottom: 95px;
	}

	.r_footer .button{
		width:100%;
		max-width: 100%;

		height: 55px;
		padding-left:28px;
		padding-right: 30px;
		gap:0 16px;
	}

	.r_footer .button_text_en{
		font-size: 18px;
		font-weight: 600;
		line-height: 1.27;
		letter-spacing: 0.02em;
	}

	.r_footer .button_text_ja{
		font-size: 10px;
		font-weight: 600;
		line-height: 1.2;
		letter-spacing: 0.09em;
		font-feature-settings: 'palt' on, 'liga' off;
	}


	.r_footer .footer_flex{
		display: block;
	}

	.r_footer .footer_left{
		flex-shrink: 0;
	}

	.r_footer .footer_right{
		padding-left: 0;
		transform: translateY(0);
		margin-top: 46px;
	}

	.r_footer .footer_logo{
		display: flex;
		flex-direction: row;
		align-items: center;
		flex-wrap: wrap;
	}

	.r_footer .footer_logo::before{
		width:29px;
		height:29px;
		margin-bottom: 0;
		margin-right: 16px;
	}

	.r_footer .footer_logo_img{
		margin-left: 0;
		width:205px;
	}

	.r_footer .footer_logo_text{
		margin-top: 15px;
		display: flex;
		align-items: center;
		gap:0 13px;
	}

	.r_footer .footer_logo_text01{
		font-size: 14px;

		letter-spacing: 0.02em;
	}

	.r_footer .footer_logo_text02{
		font-size: 10px;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0.07em;
	}

	.r_footer .footer_parent_list{
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 14px 0;

	}

	.r_footer .footer_parent_item_message{
		width: 53.4%;
		order: 0;
	}
	.r_footer .footer_parent_item_people{
		order: 1;
	}
	.r_footer .footer_parent_item_about{
		order: 2;
		width: 53.4%;
	}
	.r_footer .footer_parent_item_faq{
		order: 3;
	}
	.r_footer .footer_parent_item_environment{
		order: 4;
		width: 53.4%;
	}
	.r_footer .footer_parent_item_recruit{
		order: 5;
	}


	.r_footer .footer_parent_link{
		display: block;
		width:fit-content;
		transition-duration: var(--c_duration);
	}


	.r_footer .footer_parent_en{
		font-size: 20px;
		letter-spacing: 0.02em;
	}

	.r_footer .footer_parent_ja{
		margin-top: 8px;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0.07em;
	}

	.r_footer .footer_copy_flex{
		margin-top: 54px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column-reverse;
	}

	.r_footer .footer_copy{
		font-weight: 600;
		font-size: 10px;
		line-height: 1.3; /* 164.286% */
		letter-spacing: 0.02em;
		padding-right: 0;
		margin-top: 42px;
	}

	.r_footer .footer_link{
		flex-shrink: 0;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		font-size: 14px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0.02em;
		gap:12px 5px;
		max-width: 150px;
	}

	.r_footer .footer_link::before{
		order:1;
		border-width: 3.5px 0 3.5px 6px;
		margin-right: 0;
	}

	.r_footer .footer_link span{
		order:2;
		margin-left: 0;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0.07em;
	}
	/*
	------------------------------------
	採用関係ページ TOP
	------------------------------------
	*/

	body.rectuit_body{
		
	}

	main.rectuit_main{

	}

	.recruit_section{

	}

	.recruit_fv_section{
		position: relative;
	}

	.recruit_fv_section .fv_deco{
		width: 671px;
		right: calc(50% - 260px);
		top:135px;
		bottom: auto;
	}


	body.recruit_body .fv_bg_wrap::after{
		width:940px;
		height:30px;
	}

	.recruit_fv_section .fv_area{
		min-height: 500px;
		height:100vh;
		height: calc(var(--vh2, 1vh) * 100);
		max-width: 1920px;
		margin:0 auto;
		display: block;
		padding-top: 206px;
		padding-bottom: 0;
	}

	.recruit_fv_section .fv_inner{
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		margin-top: 0;
		height:100%;
	}


	.recruit_fv_section .fv_contents{
		width:100vw;
		max-width: 100%;
		height:100%;
		aspect-ratio:auto;
		max-height:100%;
	}

	.recruit_fv_section .fv_text{
		position: absolute;
		font-size: 28px;
		/* font-size: 26px; */
		white-space: nowrap;
		font-weight: 500;
		line-height: 1.92;
		letter-spacing: 0.3em;
		width: calc(305 / 375 * 100vw);
		margin:0 auto;
		left:0;
		right:0;
		top:-85px;
		z-index: 5;
	}

	.recruit_fv_section .fv_frame{
		width:100%;
		height:inherit;
		position: relative;
	}

	.recruit_fv_section .fv_frame img{
		position: absolute;
		width:100%;
		height:100%;
		object-fit: cover;
		top:0;
		left:0;
	}

	.recruit_fv_section .fv_frame::after{

		width:63px;
		height:67px;
		right:44px;
		bottom:-33px;
	}

	.c_fv_scroll{
		left: 38px;
        bottom: 80px;
        gap: 10px 0;
	}

	.c_fv_scroll .fv_scroll_text{
		width:9px;
	}

	.c_fv_scroll .fv_scroll_bar_frame{
		position: relative;
	}


	.c_fv_scroll .fv_scroll_bar_inner{
		height:149px;
		
	}


	.recruit_section .c_sec_title_set::before {
		width: 6px;
		height: 6px;
		margin-bottom: 12px;
	}

	.recruit_section .c_sec_title_set .en_title {
		font-size: 32px;
		line-height: 1.2;
		letter-spacing: 0.02em;
	}


	.recruit_message_section{
		padding-top: 80px;
		padding-bottom: 72px;
	}

	.recruit_message_section .message_deco{
		width: 841px;
        left: calc(50% - 498px);
        top: -48px;
	}

	.recruit_message_section .flex{
		display: block;
	}

	.recruit_message_section .left{
		padding-top: 0;
		display: none;
	}	

	.recruit_message_section .message_catch{
		font-size: 26px;
		line-height: 1.73;
		letter-spacing: 0.08em;
		margin-top: 30px;
		white-space: nowrap;
	}

	.recruit_message_section .message_text{
		margin-top: 29px;
		font-size: 14px;
		line-height: 2.14;
	}

	.recruit_message_section .message_link_frame{
		display: flex;
		justify-content: flex-end;
		margin-top: 36px;
	}


	.recruit_info_section{
		
	}

	.recruit_info_section .recruit_info_text{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size:14px;
		font-weight: 400;
		line-height: 2.14;
		letter-spacing: 0.07em;
	}

	.recruit_info_section .c_border_link{
		line-height: 1.15;
		letter-spacing: 0;
		min-width: 152px;
		font-size: 18px;
		padding-bottom: 12px;
	}


	.recruit_info_section .recruit_info_img_frame{
		width:100%;
		max-width:100%;
		display: flex;
		justify-content: center;
		margin-top: 70px;
	}

	.recruit_info_section .recruit_info_img{
		width:100vw;
		flex-shrink: 0;
		aspect-ratio: 1 / calc(260 / 375);
	}

	.recruit_info_section .recruit_info_img img{
		width:100%;
		height:100%;
		object-fit: cover;
	}

	.recruit_about_section{
		padding-top: 70px;
	}

	.recruit_about_section .about_deco{
		width: 735px;
        right: auto;
        left: calc(50% - 312px);
        top: 112px;
	}

	.recruit_about_section .flex{
		flex-direction: column;
	}

	.recruit_about_section .left{
		
	}	

	.recruit_about_section .right{
		padding:0;
	}


	.recruit_about_section .about_catch{
		font-size: 26px;

		line-height: 1.73;
		letter-spacing: 0.08em;
		margin-top: 30px;
	}

	.recruit_about_section .about_text{
		margin-top: 28px;
		
	}

	.recruit_about_section .about_link_frame{
		margin-top: 36px;
		margin-right: 0;
	}

	.recruit_about_section .about_img_frame{
		display: flex;
		justify-content: center;
	}


	.recruit_environment_section{
		padding-top: 80px;
		padding-bottom: 80px;
	}

	.recruit_environment_section .environment_deco{
		width: 677px;
        left: calc(50% - 232px);
        top: 350px;
	}


	.recruit_environment_section .flex{
		flex-direction: column-reverse;
	}

	.recruit_environment_section .left{
		
		padding: 0;
	}	

	.recruit_environment_section .right{

	}


	.recruit_environment_section .environment_catch{
		font-size: 26px;
		line-height: 1.73;
		letter-spacing: 0.08em;
		margin-top: 30px;
	}

	.recruit_environment_section .environment_text{
		margin-top: 28px;
		
	}

	.recruit_environment_section .environment_link_frame{
		margin-top: 38px;
	}


	.recruit_slide_section{
		padding-top: 60px;
		padding-bottom: 60px;
	} 

	.recruit_slide_section::before,
	.recruit_slide_section::after{
		width:1440px;
		height:50px;
	
	}

	.recruit_slide_section .slide_flex{
		flex-shrink: 0;
		display: flex;
		align-items: flex-start;
		animation: recruit_slide 30s linear infinite;
	}

	.recruit_slide_section .slide_list{
		display: flex;
		align-items: flex-start;
	}

	.recruit_slide_section .slide_item{
		width:300px;
		padding-inline: 16px;
	}

	@keyframes recruit_slide {
		0%{
			transform: translateX(0);
		}
		100%{
			transform: translateX(calc(-50%));
		}
	}

	.recruit_people_section{
		padding-top: 80px;
	} 

	.recruit_people_section .people_deco01{
		width: 881px;
        right: calc(50% - 293px);
        top: 568px;
	}

	.recruit_people_section .people_deco02{
		width: 956px;
        left: calc(50% - 400px);
        top: 1790px;
	}

	.recruit_people_section .recruit_people_guide_catch{
		font-size: 24px;
		font-weight: 400;
		line-height: 1.75;
		letter-spacing: 0.09em;
		margin-top: 30px;
	}

	.recruit_people_section .recruit_people_guide{
		margin-top: 30px;
		font-size: 14px;
		line-height: 2.14;
		font-feature-settings: 'palt' on, 'liga' off;
		letter-spacing: 0.07em;
		max-width: 100%;
	}

	.recruit_people_section .people_list{
		margin-top: 58px;
	}

	.recruit_people_section .people_block{
		display: block;
		justify-content: space-between;
		align-items: center;
		position: relative;
	}

	.recruit_people_section .people_block + .people_block{
		margin-top: 70px;
	}

	.recruit_people_section .people_img{
		aspect-ratio: 1 / calc(211 / 305);
	}


	.recruit_people_section .people_text_area{
		/* padding-top: 36px; */
		margin-top: 32px;
	}

	.recruit_people_section .people_name_flex{
		display: flex;
		flex-wrap: wrap;
		gap:12px 16px;
		margin-top: 0;
	}

	.recruit_people_section .people_job{
		min-width: 83px;
		min-height: 25px;
		display: flex;
		justify-content: center;
		align-items: center;
		padding:3px 16px;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.3;
		letter-spacing: 0.1em;
		margin-top: 0;
	}

	.recruit_people_section .people_name{
		margin-top: 0;
		font-size:20px;
		font-weight: 500;
		line-height: 1.3;
		letter-spacing: 0.1em;
	}

	.recruit_people_section .people_career{
		font-feature-settings: 'palt' on, 'liga' off;
		margin-top: 10px;
		font-weight: 400;
		line-height: 2;
		font-size: 12px;
		letter-spacing: 0.09em;
	}

	.recruit_people_section .people_text{
		margin-top: 18px;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.63;
		letter-spacing: 0.08em;
	}

	.recruit_people_section .people_link_frame{
		display: flex;
		justify-content: flex-end;
		margin-top: 22px;
	}

	.recruit_people_section .c_border_link{
		line-height: 1.15;
		letter-spacing: 0;
		min-width: 150px;
		font-size: 16px;
		padding-bottom: 9px;
	}

	.c_recruit_section02{
		padding-top: 60px;
		padding-bottom: 0;
	}

	.c_recruit_section02 .flex{
		align-items: flex-start;
	}

	.c_recruit_section02 .c_sec_title_set::before {
		border-radius: 50%;
		margin-bottom: 16px;
	}

	.c_recruit_section02 .c_sec_title_set .en_title{
		font-size: 32px;
		font-weight: 600;
	}

	.c_recruit_section02 .c_sec_title_set .en_title + .ja_title {
		margin-top: 16px;
	}

	.c_recruit_section02 .recruit_catch{
		font-size: 26px;
	}

	.c_recruit_section02 .recruit_text {
        margin-top: 24px;
        font-size: 14px;
        line-height: 2.14;
        letter-spacing: 0.07em;
    }


	.c_recruit_section02 .recruit_button_frame{
		margin-top: 32px;
	}

	.c_recruit_section02 .c_border_link{
		min-width: 150px;
		font-size: 16px;
		letter-spacing: 0;
	}

	.c_recruit_section02 .recruit_img_frame{
		display: flex;
		justify-content: center;
		margin-top: 46px;
	}

	.c_recruit_section02 .recruit_img{
		width:100vw;
		flex-shrink: 0;
		aspect-ratio: 1 / 0.693;
		margin-top: 0;
	}


	/*
	------------------------------------
	採用ページ 下層共通
	------------------------------------
	*/

	.c_recruit_page_fv_section{
		min-height:auto;

		padding-top: 100px;
		padding-bottom: 60px;
		position: relative;
	}

	.c_recruit_page_fv_section::before{
		height: calc(100% - 10px);
	}

	.c_recruit_page_fv_section::after{
		width: 940px;
        height: 30px;
	}

	.c_recruit_page_fv_section .c_recruit_page_fv_contents{
		min-height: auto;
		display: block;
		padding-top: 0;
		padding-bottom: 0;
	}

	.c_recruit_page_fv_section .fv_flex{
		display: block;
	}


	.c_recruit_page_fv_section .c_recruit_page_title_set .ja_title{
		letter-spacing: 0.03em;
	}

	.c_recruit_page_fv_section .fv_catch{
		margin-top: 28px;
		font-size: 26px;
		font-weight: 500;
		line-height: 1.73;
		letter-spacing: 0.08em;
	}

	.c_recruit_page_fv_section .fv_text{
		font-size: 14px;
		line-height: 2.14;
		letter-spacing: 0.07em;
		margin-top: 18px;
		max-width:100%;
	}

	.c_recruit_page_fv_section .fv_img_area{
		display: none;
	}

	.c_recruit_page_fv_section .fv_img_frame_sp{
		margin-top: 50px;
	}

	.c_recruit_page_fv_section .fv_img{
		min-width: auto;
		width:clamp(calc(340 / 375 * 300px), calc(340 / 375 * 100vw), calc(340 / 375 * 1800px));
		aspect-ratio: 1 / calc(260 / 340);
	}

	.c_recruit_page_fv_section .c_fv_scroll{
		display: none;
	}

	.c_recruit_page_fv_section .recruit_page_fv_bg01{
		width: 909px;
        top: 110px;
        left: calc(50% - 352px);
	}



	/*
	------------------------------------
	採用ページ メッセージ
	------------------------------------
	*/

	body.message_body{
		
	}
	main.message_main{

	}

	.message_fv_section .fv_catch{
		white-space: nowrap;
	}


	.message_section02{
		padding-top: 60px;
	}

	.message_section02 .message_catch {
		
		font-size: 20px;
        line-height: 1.75;
        letter-spacing: 0.1em;
	}

	.message_section02 .message_flex{
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: column;
		gap:40px;
	}

	.message_section02 .message_left{
		display: flex;
		justify-content: flex-end;
	}

	.message_section02 .message_img{
		width:100%;

		aspect-ratio: 1 / calc(205 / 305);
	}


	.message_section02 .message_text{
		font-size: 14px;
		line-height: 2.14;
		letter-spacing: 0.07em;
		margin-top: 22px;
	}

	.message_section02 .message_sign{
		font-size: 14px;
		margin-top: 28px;
	}


	/*
	------------------------------------
	採用関係ページ about
	------------------------------------
	*/

	body.recruit_about_body{
		
	}

	main.recruit_about_main{

	}

	main.recruit_about_main .about_title_set{

	}

	main.recruit_about_main .about_title_set .ja_title{
		font-size: 26px;
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}

	main.recruit_about_main .about_title_set .en_title{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.02em;
		margin-top: 8px;
	}

	main.recruit_about_main .about_title_set::before{
		width: 6px;
		height: 6px;
		margin-bottom: 12px;
	}

	main.recruit_about_main .c_float_bg{
		
	}

	main.recruit_about_main .about_bg01{
		width: 765px;
        top: -47px;
        right: calc(50% - 251px);
	}
	main.recruit_about_main .about_bg02{
		width: 435px;
        top: 594px;
        left: calc(50% - 65px);
	}
	main.recruit_about_main .about_bg03{
		width: 706px;
        top: 1504px;
        right: calc(50% - 277px);
	}
	main.recruit_about_main .about_bg04{
		width: 691px;
        top: 2326px;
        left: calc(50% - 340px);
	}

	.recruit_about_list_section{
		padding-top: 70px;
	}


	.recruit_about_list_section .about_block{
		display: flex;
		flex-direction: column;
	}

	.recruit_about_list_section .about_block + .about_block{
		margin-top: 70px;
	}


	.recruit_about_list_section .about_block:nth-child(even) .about_img_area{
		display: flex;
		justify-content: center;
		padding-left: 0;
	}

	.recruit_about_list_section .about_block:nth-child(odd) .about_img_area,
	.recruit_about_list_section .about_block.reverve .about_img_area{
		display: flex;
		justify-content: center;
		padding-right: 0;
	}


	.recruit_about_list_section .about_catch{
		font-size: 20px;
		line-height: 1.75; /* 173.077% */
		letter-spacing: 0.1em;
		margin-top: 36px;
	}

	.recruit_about_list_section .about_text_area{
		width: 100%;
		order: 0;
	}

	.recruit_about_list_section .about_img_area{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-top: 60px;
		order: 3;
	}

	.recruit_about_list_section .about_img{
		width:100vw;
		max-width: 450px;
		aspect-ratio: 1 / calc(259 / 375);
	}


	.recruit_about_list_section .about_text{
		font-size: 14px;
		line-height: 2.14; 
		letter-spacing: 0.07em;
		margin-top: 22px;
	}

	.recruit_about_list_section .about_text_link_frame{
		display: flex;
		justify-content: flex-end;
		margin-top: 34px;
	}

	.recruit_about_list_section .about_text_link{
		font-size: 14px;
		letter-spacing: 0.1em;
		min-width: 226px;
        padding-bottom: 10px;
	}

	.recruit_about_list_section .job_list{
		width: 100%;
		order: 1;
		display: flex;
		justify-content: center;
		flex-direction: column;
		flex-wrap: wrap;
		margin-top: 60px;
		padding-bottom: 10px;
		gap:30px;
		width: 100%;
	}


	.recruit_about_list_section .job_box{
		width:100%;
		padding:18px 25px 24px;
	}

	.recruit_about_list_section .job_name{
		font-size: 18px;
		line-height: 1.75; 
		letter-spacing: 0.08em;
		padding-bottom: 10px;
	}

	.recruit_about_list_section .job_text{
		margin-top: 12px;
		font-size: 14px;
		line-height: 1.85; /* 185.714% */
		letter-spacing: 0.07em;
	}



	.recruit_about_company_section{
		padding-top: 70px;
	}

	.recruit_about_company_section .table_frame{
		margin-top: 26px;
	}

	.recruit_about_company_section .company_table th,
	.recruit_about_company_section .company_table td{
		font-size: 14px;
		padding-top: 9px;
		padding-bottom: 10px;
	}

	.recruit_about_company_section .company_table tr:last-child th,
	.recruit_about_company_section .company_table tr:last-child td{
		padding-bottom: 0;
		
	}
	
	/*
	------------------------------------
	採用関係ページ 働く環境
	------------------------------------
	*/

	body.environment_body{
		
	}

	main.environment_main{

	}

	.environment_fv_section .fv_catch{
		font-size: 24px;
		white-space: nowrap;
		letter-spacing: 0.06em;
		line-height: 1.875;
	}

	.environment_section .environment_title_set{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.environment_section .environment_title_set .ja_title{
		font-size:26px;
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.08em;
	}

	.environment_section .environment_title_set .en_title{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.02em;
		margin-top: 8px;
	}

	.environment_section .environment_title_set::before{
		width: 6px;
		height: 6px;
		margin-bottom: 14px;
	}


	.environment_section .environment_flex{
		display: flex;
		flex-direction: column;
	}

	.environment_section .environment_text_area{
		/* padding-top: 12px; */
		width: 100%;
		order: 0;
	}


	.environment_section .environment_flex.reverce .environment_img_area{
		padding-right: 0;
		padding-left: 0;
		display: flex;
		justify-content: center;
	}

	.environment_section .environment_flex .environment_img_area{
		padding-left: 0;
		display: flex;
		justify-content: center;
		margin-top: 60px;
		width: 100%;
		order: 3;
	}

	.environment_section .environment_img{
		width:clamp(calc(375 / 375 * 300px) , calc(375 / 375 * 100vw) , calc(375 / 375 * 1800px));
		min-width: 100%;
		aspect-ratio: 1 / calc(260 / 375);
		flex-shrink: 0;
	}

	.environment_section .environment_img img{
		width:100%;
		height:100%;
		object-fit: cover;
	}

	.environment_section .environment_catch{
		font-size: 20px;
		line-height: 1.75;
		letter-spacing: 0.1em;
		margin-top: 34px;
	}

	.environment_section .environment_text{
		font-feature-settings: 'palt' on, 'liga' off;
		line-height: 2.14; 
		letter-spacing: 0.07em;
		margin-top: 22px;
		max-width:100%;
		font-size: 14px;
	}

	.environment_section .environment_bg01{
		width: 765px;
        top: -165px;
        left: calc(50% - 515px);
	}

	.environment_section .environment_bg02{
		width: 675px;
        top: 36px;
        right: calc(50% - 354px);
	}

	.environment_section .environment_bg03{
		display: none;
		width: 1154px;
		top: -200px;
		left: calc(50% + 200px);
	}



	.environment_system_section{
		padding-top: 70px;
	}

	.environment_system_section .system_list{
		display: flex;
		flex-direction: column;
		margin-top: 34px;
		gap: 30px;
		width: 100%;
		order: 2;
		padding-bottom: 10px;
	}

	.environment_system_section .system_box{
		width: 100%;
        padding: 18px 25px 24px;
	}

	.environment_system_section .system_name{
		font-size: 18px;
        line-height: 1.75;
        letter-spacing: 0.08em;
        padding-bottom: 10px;
		min-height: auto;
	}

	.environment_system_section .system_name.min{
		line-height: 1.5;
		font-size: 18px;
	}

	.environment_system_section .system_text{
		margin-top: 12px;
        font-size: 14px;
        line-height: 1.85;
        letter-spacing: 0.07em;
	}



	.environment_welfare_section{
		padding-top: 70px;
	}

	.environment_welfare_section .environment_catch{
		letter-spacing: 0.05em;
		white-space: nowrap;
	}


	.environment_welfare_section .welfare_list{
		display: flex;
		flex-direction: column;
		margin-top: 34px;
		gap: 30px;
		width: 100%;
		order: 2;
		padding-bottom: 10px;
	}


	.environment_welfare_section .welfare_box{
		width: 100%;
        padding: 18px 25px 24px;
	}

	.environment_welfare_section .welfare_name{
		font-size: 18px;
        line-height: 1.75;
        letter-spacing: 0.08em;
        padding-bottom: 10px;
		min-height: auto;
	}

	.environment_welfare_section .welfare_name.min{
		line-height: 1.5;
		font-size: 18px;
	}

	.environment_welfare_section .welfare_text{
		margin-top: 12px;
        font-size: 14px;
        line-height: 1.85;
        letter-spacing: 0.07em;
	}

	.environment_work_section{
		padding-top: 68px;
	} 


	.environment_work_section .slide_area{
		position: relative;
		margin-top: 28px;
		padding-left: 0;
	}

	.environment_work_section .slide_frame{
		width:clamp(calc(340 / 375 * 300px) , calc(340 / 375 * 100vw) , calc(340 / 375 * 2560px));
		min-width: auto;
		overflow: hidden;
		margin-top: 38px;
	}

	.environment_work_section .work_pagination{
		position: static;
		right:0;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap:10px;
	}

	.environment_work_section .work_pagination .swiper-pagination-bullet{
		padding:2px;
	}

	.environment_work_section .work_slide{
		width:370px;
		padding-right: 30px;
	}

	.environment_work_section .work_thumb{
		aspect-ratio: 1 / calc(220 / 340);
	}

	.environment_work_section .work_name{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 12px;
		line-height: 2;
		letter-spacing: 0.09em;
		margin-top: 14px;
	}


	/*
	------------------------------------
	採用関係ページ people
	------------------------------------
	*/


	body.people_list_body{
		
	}

	main.people_list_main{

	}

	main.people_list_main .people_list_bg01{
		width: 765px;
        top: 232px;
        right: auto;
        left: calc(50% - 458px);
	}
	main.people_list_main .people_list_bg02{
		width: 652px;
        top: 950px;
        left: calc(50% - 205px);
	}
	main.people_list_main .people_list_bg03{
		width: 718px;
        top: 1816px;
        right: calc(50% - 174px);
	}

	.people_list_section{
		padding-top: 70px;
	}

	.people_list_section .people_list{
		margin-top: 0;
	}


	/*
	------------------------------------
	採用関係ページ people詳細
	------------------------------------
	*/


	body.people_single_body{
		
	}

	main.people_single_main{

	}

	main.people_single_main .people_single_bg01{
		width: 799px;
        top: 156px;
        right: calc(50% - 128px);
	}
	main.people_single_main .people_single_bg02{
		width: 518px;
        top: 540px;
        left: calc(50% - 48px);
	}
	main.people_single_main .people_single_bg03{
		width: 562px;
        top: 1471px;
        right: calc(50% - 251px);
	}


	.people_single_fv_section .people_name_flex{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: center;
		padding-top: 0;
		margin-top: -10px;
	}


	.people_single_fv_section .people_job{
		min-height: 23px;
		padding: 2px 18px;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: 0.1em;
	}

	.people_single_fv_section .people_name{
		margin-top: 0;
		font-size: 24px;
		line-height: 1.5; 
		letter-spacing: 0.09em;
	}

	.people_single_fv_section .people_career{
		font-size: 14px;
		line-height: 1.85;
		letter-spacing: 0.07em;
		margin-top: 4px;
	}

	.people_single_fv_section .fv_img_frame_sp{
		margin-top: 24px;
	}


	.people_single_fv_section .fv_catch{
		margin-top: 32px;
		font-size: 26px;
	}



	.people_info_section{
		padding-top: 58px;
	}

	.people_info_section .info_block{
		display: block;
	}

	.people_info_section .info_text_area{

	}

	.people_info_section .info_block + .info_block{
		margin-top: 60px;
	}

	.people_info_section .info_block:nth-child(odd){
		flex-direction: row-reverse;
	}

	.people_info_section .info_img_area{
		display: flex;
		justify-content: center;
		margin-top: 60px;
	}

	.people_info_section .info_block:nth-child(odd) .info_img_area{
		display: flex;
		justify-content: center;
		padding-right: 0;
	}

	.people_info_section .info_block:nth-child(even) .info_img_area{
		padding-left: 0;
	}


	.people_info_section .info_img{
		width:100vw;
		max-width: 450px;
		aspect-ratio: 1 / calc(259 / 375);
	}


	.people_info_section .info_head{
		font-size: 20px;
		font-weight: 500;
		line-height: 1.75;
		letter-spacing: 0.08em;
	}

	.people_info_section .info_text{
		font-feature-settings: 'palt' on, 'liga' off;
		font-size: 14px;
		line-height: 2.14; 
		letter-spacing: 0.07em;
		margin-top: 25px;
	}

	.people_info_section .list_link{
		min-width: 100%;
		margin-top: 50px;
		padding-left: 27px;
		padding-right: 30px;
		height:45px;
	}

	.people_info_section .list_link .en_text{
		font-size: 18px;
		font-weight: 600;
		letter-spacing: 0.02em;
	}
	.people_info_section .list_link .ja_text{
		font-feature-settings: 'palt' on, 'liga' off;
		font-weight: 600;
		line-height: 1;
		font-size: 10px;
		letter-spacing: 0.09em;
	}

	/*
	------------------------------------
	際用ページ よくあるご質問
	------------------------------------
	*/



	.recruit_faq_section .recruit_faq_bg01{
		width: 564px;
        top: -150px;
        left: calc(50% - 88px);
	}
	.recruit_faq_section .recruit_faq_bg02{
		width: 704px;
        top: 542px;
        right: calc(50% - 230px);
	}
	.recruit_faq_section .recruit_faq_bg03{
		width: 564px;
        top: 1235px;
        left: calc(50% - 5px);
	}


	.recruit_faq_guide_section .faq_text{
		margin-top: 38px;
		font-size: 14px;
		line-height: 2.14;
		letter-spacing: 0.07em;
	}

	.recruit_faq_guide_section .faq_anchor_list{
		margin-top: 48px;
		gap: 0;
	}

	.recruit_faq_guide_section .faq_anchor_list .anchor_link{
		font-size: 14px;
		font-weight: 500;
		letter-spacing: 0.08em;
	}

	.recruit_faq_list_section{
		padding-top: 70px;
		padding-bottom: 0;
	} 



	/*
	------------------------------------
	採用ページ 募集要項一覧
	------------------------------------
	*/

	body.application_body{
		
	}

	main.application_main{

	}

	main.application_main .appli_bg01{
		width: 564px;
        top: -151px;
        left: calc(50% - 88px);
	}
	main.application_main .appli_bg02{
		width: 704px;
        top: 540px;
        right: calc(50% - 228px);
	}
	main.application_main .appli_bg03{
		width: 564px;
        top: 1234px;
        left: calc(50% - 5px);
	}
	main.application_main .appli_bg04{
		display: none;
	}

	main.application_main .sec_title_set{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	main.application_main .sec_title_set .ja_title{
		font-size: 26px;
		font-weight: 600;
		line-height: 1.73;
		letter-spacing: 0.08em;
	}

	main.application_main .sec_title_set .en_title{
		font-size: 10px;
		font-weight: 600;
		line-height: 1.43; 
		margin-top: 4px;
	}

	.application_link_section{
		padding-top: 105px;
	}


	.application_link_section .link_area{
		margin-top: 53px;
	}

	.application_link_section .link_list{
		margin-top: 40px;
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 35px 0;
		
	}

	.application_link_section .link_block{
		font-size: 18px;
		font-weight: 500;
		line-height: 1.3;
		letter-spacing: 0.08em;
		padding-bottom:14px;
		padding-right: 5px;
	}

	.application_link_section .link_block::after{
		width:9px;
		height:10px;
		margin-left: 8px;
	}

	.application_flow_section{
		padding-top: 66px;
	}

	.application_flow_section .flow_area{
		margin-top: 48px;
	}

	.application_flow_section .flow_list{
		border:1px solid var(--green);
		padding-top: 8px;
		background-color: #fff;
	}

	.application_flow_section .flow_block{
		padding:24px 34px 20px;
		min-height: auto;
		border:none;
	}


	.application_flow_section .flow_step{
		font-size: 14px;
		font-weight: 600;
		line-height: 1.43;
	}

	.application_flow_section .flow_head{
		margin-top: 2px;
		font-size: 24px;
		font-weight: 400;
		line-height: 1.83; /* 183.333% */
		letter-spacing: 0.08em;
	}

	.application_flow_section .flow_text{
		font-feature-settings: 'palt' on, 'liga' off;
		line-height: 2.14;
		letter-spacing: 0.07em;
		margin-top: 9px;
	}

	.application_flow_section .flow_angle{
		width:19px;
		height:16px;
		margin-top: 0;
		margin-bottom: 0;
	}

	.application_flow_section .flow_block.finish{
		margin-top: 20px;
	}

	.application_detail_section{
		padding-top: 105px;
	}

	.application_detail_section .detail_area{
		margin-top: 54px;
	}

	.application_detail_section .appli_name{
		font-size: 26px;
		font-weight: 600;
		line-height: 1.73;
		letter-spacing: 0.08em;
	}

	.application_detail_section .detail_box{
		margin-top: 38px;
		padding:10px 36px 40px;
	}

	.application_detail_section .detail_inner{
		max-width: 100%;
	}


	.application_detail_section .detail_table tr{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.application_detail_section .detail_table th,
	.application_detail_section .detail_table td{
		border-top:none;
		border-bottom: none;
		vertical-align: top;
		text-align: left;
		padding-top: 0;
		padding-bottom: 0;
	}

	.application_detail_section .detail_table th{
		border-top:none;
		font-size: 14px;
		width:100%;
		padding-right: 0;
		font-weight: 500;
		line-height: 2.14;
		letter-spacing: 0.08em;
		padding-top: 20px;
	}

	.application_detail_section .detail_table td{
		width:100%;
		font-feature-settings: 'palt' on, 'liga' off;
		font-weight: 400;
		line-height: 2.14;
		font-size: 14px;
		letter-spacing: 0.09em;
		padding-top: 9px;
        padding-bottom: 20px;
		border-top: none;
		border-bottom: 1px solid #DADADA;

	}

	.application_detail_section .detail_table tr:first-child th,
	.application_detail_section .detail_table tr:first-child td{
		border-top:none;
	}


	.application_detail_section .entry_link{
		gap:12px;
		margin-top: 40px;
		font-weight: 400;
		font-size: 14px;
		line-height: 1.3; 
		letter-spacing: 0.09em;
		
	}

	.application_detail_section .entry_link::before{
		content:'＞';
		font-size: 14px;
		font-weight: 500;
		line-height: 1.3;
		letter-spacing: 0.09em;
	}


	.application_detail_section .list_link{
		max-width: 100%;
		margin-inline: auto;
		margin-top: 70px;
		padding-left: 30px;
		padding-right: 30px;
		height:45px;
	}

	.application_detail_section .list_link .en_text{
		font-size: 18px;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0.02em;
	}
	.application_detail_section .list_link .ja_text{
		font-feature-settings: 'palt' on, 'liga' off;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0.09em;
		font-size: 10px;
	}

	/*
	------------------------------------
	採用ページ エントリー
	------------------------------------
	*/

	.entry_section{
		padding-top: 100px;
		padding-bottom: 0;
	}

	.entry_section .entry_bg01{
		width: 564px;
        top: -150px;
        left: calc(50% - 88px);
	}
	.entry_section .entry_bg02{
		width: 704px;
        top: 542px;
        right: calc(50% - 230px);
	}
	.entry_section .entry_bg03{
		width: 564px;
        top: 1235px;
        left: calc(50% - 5px);
	}



	/*入力画面*/

	.entry_section .entry_text{
		margin-top: 38px;
		font-size: 14px;
		line-height: 2.14; 
		letter-spacing: 0.07em;
	}


	.entry_section .entry_form{
		margin-top: 53px;
	}

	.entry_section .entry_form .form_line{
		gap:15px;
	}
	.entry_section .entry_form .form_line + .form_line{
		margin-top: 32px;
	}


	.entry_section .entry_form .form_label {
        font-size: 16px;
        font-weight: 500;
        line-height: 1.5;
        letter-spacing: 0.08em;
        gap: 0 6px;
    }


	.entry_section .entry_form textarea.job_history{
		height: 100px;
	}
	.entry_section .entry_form textarea.pr{
		height: 100px;
	}

	.entry_section .entry_form .submit_area {
		margin-top: 50px;
	}

	.entry_section .entry_form .submit_button{
		height:40px;
		font-size: 12px;
	}


	/*エラー画面*/

	.entry_section .err_head{
		font-size: 26px;
		margin-top: 35px;
	}


	/*確認画面*/

	.entry_section .confirm_text{
		font-size: 14px;
		line-height: 2.14;
		font-weight: 500;
		margin-top: 36px;
	}

	.entry_section .entry_confirm_frame .form_line + .form_line {
		margin-top: 36px;
	}

}/*@media screen and (max-width:767px){*/