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

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



	.container{
		max-width: 720px;
		margin:0 auto;
	}



	/*セクションタイトルセット*/
	.common_sec_title_set{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.common_sec_title_set::after{
		width: 19px;
		height: 6px;
		border-radius: 3px;
		margin-top: 8px;
		
	}

	.common_sec_title_set .ja_title{
		font-size: 32px;
		line-height: 1.2;
	}

	.common_sec_title_set .en_title{
		line-height: 1.2;
		font-size: 12px;
		margin-top: 8px;
	}

	.common_sec_title_set .ja_title + .en_title{
	}


	/*共通ボタン*/
	.common_link_button{
		min-width: 236px;
		min-height: 36px;
		padding:4px 16px 4px 40px;
		font-size: 12px;
		
	}

	.common_link_button::after{
		width:13px;
		height:9px;
		margin-left: 8px;
	}



	/*ニュース一覧*/
	.common_news_list{

	}

	.common_news_list .news_block{
		padding:32px 0;
		padding-left: 160px;
		position: relative;
	}

	.common_news_list .news_thumb_area{
		flex-shrink: 0;
		width:200px;
		margin-right: 40px;
	}



	.common_news_list .news_right{

	}

	.common_news_list .news_title{
		font-size: 20px;
		font-weight: 400;
		line-height: 1.4;
	}

	.common_news_list .news_date_area{

		top:32px;
		gap:8px 0;
	}

	.common_news_list .news_author{
		position: absolute;
		left:0;
		bottom:32px;
		line-height: 1;
	}

	.common_news_list .news_date{
		font-size: 20px;
		line-height: 1.2;
	}
	.common_news_list .news_date{
		font-size: 20px;
		line-height: 1.2;
	}
	.common_news_list .news_week{
		font-size: 20px;
		line-height: 1.2;
	}

	.common_news_list .news_cat_list{
		position: absolute;
		left:0;
		bottom:0;
		gap:8px 0;
		line-height: 1.3;
	}

	.common_news_list .news_cat_item::after{
		line-height: 1.3;
		margin:0 8px;
	}


	/*ページネーション*/
	.common_page_nation{

		gap:8px;

	}

	.common_page_nation span.current{/*現在のページボタン*/
		width: 24px;
		height: 24px;
		padding-bottom: 2px;
	}

	.common_page_nation a.page-numbers{/*指定のページ移動ボタン*/
		width: 24px;
		height: 24px;
		padding-bottom: 2px;
	}


	.common_page_nation a.page-numbers.next::after,
	.common_page_nation a.page-numbers.prev::after{
		content:'';
		width:8px;
		height:10px;
	}

	/*
	------------------------------------
	ヘッダー
	------------------------------------
	*/
	header{

		z-index: 30;
	}

	header .header_inner{
		padding:5px;
	}

	header .header_frame{
		border-radius: 5px;
		padding:3px 20px;
		position: relative;
	}

	header .header_page_title{

		font-size: 12px;
	}

	header .header_logo{
		width:269px;
	}

	header .header_right{
		display: flex;
		align-items: center;
	}

	header .header_appli{
		margin-left: 16px;
		width: 102px;
		height: 35px;
		border-radius: 35px;
		font-size: 13px;
	}


	header .drawer_open{
		margin-left: 16px;
		width: 35px;
		height: 35px;
	}


	header .drawer_open .bar{
		width:20px;
		height:2px;
	}

	header .drawer_open .bar02{
		margin-top: 4px;
	}

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


	#drawer_menu{
		
		top:5px;
		height: calc(100vh - 5px);
		padding-inline: 5px;
	}


	#drawer_menu .drawer_menu_inner{
		padding-top: 50px;

	}

	#drawer_menu .drawer_menu_contents_frame{
		max-width: 800px;
		padding-inline: 40px;
		padding-top: 24px;
		padding-bottom: 90px;
	}

	#drawer_menu .drawer_menu_flex{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	#drawer_menu .drawer_menu_left{
		width:100%;
		flex-shrink: 0;
		margin-right: 0;
	}

	#drawer_menu .drawer_menu_right{
		width:100%;
		max-width: 100%;
		margin-top: 60px;
	}

	#drawer_menu .drawer_parents_link{
		padding:28px 0;
		gap:0 24px;
	}

	#drawer_menu .drawer_parents_link_ja{
		font-size: 24px;
		line-height: 1.4;
	}

	#drawer_menu .drawer_parents_link_en{
		font-size: 12px;
		line-height: 1.4;
	}

	#drawer_menu .drawer_insta_link{
		margin-top: 28px;
		font-size: 12px;

		gap:0 24px;
	}

	#drawer_menu .drawer_insta_link::before{
		width:32px;
		height:34px;
	}

	#drawer_menu .drawer_child_mark{
		width:16px;
		height:16px;
		top:38px;
	}

	#drawer_menu .drawer_child_frame{
		padding-top:6px;
		padding-bottom: 28px;
	}

	#drawer_menu .drawer_child_link{
		padding-left: 14px;
		line-height: 1.3;
	}

	#drawer_menu .drawer_child_link::before{
		line-height: 1.3;
	}

	#drawer_menu .drawer_child_list{
		margin-top: 14px;
		gap:14px 0;
	}

	#drawer_menu .drawer_child_item{
		width:50%;
		padding-right: 6px;
	}


	#drawer_menu .drawer_card_list{

	}


	#drawer_menu .drawer_card + .drawer_card{
		margin-top: 16px;
	}

	#drawer_menu .drawer_card_head{
		padding-left: 17px;
	}


	#drawer_menu .drawer_card_thumb_list{
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap:5px;
	}

	#drawer_menu .drawer_card_thumb{
		margin-top: 16px;
	}


	#drawer_menu .drawer_sub_list{
		max-width: 1260px;
		margin-top: 80px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	#drawer_menu .drawer_sub_item{
		width: 32%;
		max-width: 356px;
	}

	#drawer_menu .drawer_sub_link{
		height:48px;

		font-size: 20px;

	}

	#drawer_menu .drawer_sub_link::after{
		width:15px;
		height:9px;

		right:20px;
	}


	/*
	------------------------------------
	ページ下部のリクルートセクション
	------------------------------------
	*/
	.common_recruit_section{
		padding-top: 88px;
		padding-bottom: 164px;
	}

	.common_recruit_section .link_list{
		margin-top: 64px;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap:0 28px;
	}

	.common_recruit_section .link_item{
		width:277px;
	}

	.common_recruit_section .link_card{
		aspect-ratio: 1 / 0.682;

	}


	/*
	------------------------------------
	フッター
	------------------------------------
	*/

	footer{
		position: relative;
		z-index: 20;
		padding-top: 65px;
		padding-bottom: 65px;
		background-color: var(--base_color);
	}

	footer .footer_flex{
		max-width: 1120px;
	}

	footer .footer_logo{
		display: block;
		width:480px;
	}

	footer .footer_menu{
		display: flex;
		flex-direction: column;
		align-items: flex-end
	}

	footer .footer_item + .footer_item{
		margin-top: 20px;
	} 

	footer .footer_link{

	}

	footer .footer_link[target="_blank"]::after{
	
		width: 13px;
		height: 14px;
		margin-left: 7px;
	}
	/*
	------------------------------------
	下層mv
	------------------------------------
	*/

	.page_mv_section{

	}


	/*
	------------------------------------
	トップページ
	------------------------------------
	*/

	body.top_body{
		
	}

	main.top_main{

	}

	body.top_body .top_page_guide_border_frame{
		display: none;
	}


	.top_section{
		position: relative;
		/* margin-top: -1px; */
	}

	.top_fv_section{
		padding-bottom: 24px;
		position: relative;
		z-index: 20;
		background-color:var(--base_color);
	}

	.top_fv_section .top_fv_inner{
		max-width: 1360px;
		margin:0 auto;
		padding:0 ;
		

		min-height:100vh;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		position: relative;
	}

	.top_fv_section .fv_movie_frame{
		width: 100%;

		height:calc(100vh - 250px);
		/* aspect-ratio: 1 / 0.5625; */
		aspect-ratio: auto;
	}

	.top_fv_section .recent_news_frame{
		max-width: 1200px;
		width: 100%;
		margin:18px auto 0;
		flex-shrink: 0;
	
	}

	.top_fv_section .recent_news{
		display: flex;
		align-items: flex-start;
	}

	.top_fv_section .recent_news .recent_cat{
		min-height: 20px;
		padding: 4px 16px;
		gap: 8px;
		margin-right: 8px;
		font-size: 12px;		
	}

	.top_fv_section .recent_news .recent_date{
		font-size: 12px;

		margin-right: 8px;
		padding-top: 5px;
	}

	.top_fv_section .recent_news .recent_title{
		font-size: 12px;
		padding-top: 5px;
	}

	.top_fv_section .scroll_guide{
		bottom:0;
		right:calc(100% - 20px);
	}

	.top_fv_section .scroll_guide .scroll_text{
		width:9px;
	}

	.top_fv_section .scroll_bar_frame{
		margin-top: 4px;
		height:140px;
	}

	.top_fv_message_section{
		min-height: 100vh;
		padding:100px 0;
	}

	.top_fv_message_section .top_fv_message{
		width:396px;
		aspect-ratio: 1 / 1.6;
	}


	.top_guide_section{
		padding-top: 200px;
		padding-bottom: 200px;
	}

	.top_guide_section .guide_contents_frame{
		position: relative;
		margin-left: 70px;
		width: fit-content;
	}


	.top_guide_section .guide_contents{
		position: relative;
		z-index: 2;
	}
	.top_guide_section .guide_text{
		font-weight: 700;
		line-height: 3;
	}

	.top_guide_section .common_link_button{
		margin-top: 80px;
	}

	.top_guide_section .box{
		opacity: 0;
	}

	.top_guide_section .box01{
		width: 29px;
		height: 29px;
		left:-92px;
		top:-53px;
		transform: translate3d(320px, 265px, 0) rotateZ(360deg);
	}
	.top_guide_section .box02{
		width: 20px;
		height: 20px;
		right:-65px;
		top:-10px;
		transform:translate3d(-250px, 226px, 0) rotateZ(360deg) ;
	}
	.top_guide_section .box03{
		width: 28px;
		height: 28px;
		left:-33px;
		bottom:-100px;
		transform: translate3d(262px, -263px, 0) rotateZ(360deg);
	}
	.top_guide_section .box04{
		width: 31px;
		height: 31px;
		right:-140px;
		bottom:24px;
		transform: translate3d(-319px, -138px, 0) rotateZ(360deg);
	}



	.top_guide_section .guide_head_frame{
		width:46px;
		top:72px;
		left:calc(50% + 230px);
		z-index: 6;
	}


	.top_gal_section{
		padding-bottom: 200px;
	} 

	.top_gal_section .gal_area{
		width:min(calc(1403 / 1440 * 100vw) , calc(1403 / 1440 * 1920px));
		aspect-ratio: 1 / 0.7612;
	}


	.top_gal_section .gal_block01{
		left:0;
		top:0;
		width:min(calc(709 / 1440 * 100vw) , calc(709 / 1440 * 1920px));
		height:min(calc(530 / 1440 * 100vw) , calc(530 / 1440 * 1920px));
	}

	.top_gal_section .gal_block02{
		left:0;
		bottom:0;
		width:min(calc(709 / 1440 * 100vw) , calc(709 / 1440 * 1920px));
		height:min(calc(530 / 1440 * 100vw) , calc(530 / 1440 * 1920px));
	}

	.top_gal_section .gal_block03{
		top:0;
		right:min(calc(347 / 1440 * 100vw) , calc(347 / 1440 * 1920px));
		width:min(calc(338 / 1440 * 100vw) , calc(338 / 1440 * 1920px));
		height:min(calc(345 / 1440 * 100vw) , calc(345 / 1440 * 1920px));
	}

	.top_gal_section .gal_block04{
		top:0;
		right:0;
		width:min(calc(338 / 1440 * 100vw) , calc(338 / 1440 * 1920px));
		height:min(calc(345 / 1440 * 100vw) , calc(345 / 1440 * 1920px));
	}

	.top_gal_section .gal_block05{
		bottom:0;
		right:0;
		width:min(calc(685 / 1440 * 100vw) , calc(685 / 1440 * 1920px));
		height:min(calc(715 / 1440 * 100vw) , calc(715 / 1440 * 1920px));
	}

	.top_style_section{

	}

	.top_style_section .style_area{
		width: 100vw;
		margin: 0 calc(50% - 50vw);
		position: relative;
		transition-duration: 2.5s;
		clip-path: inset(0 50% 0 50%);
		transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
	}

	.top_style_section .style_area.anime_active{
		clip-path: inset(0 0% 0 0%);
	}

	.top_style_section .style_area::before{
		content:'';
		width:100vw;
		height:100%;
		background-color: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index:0;
	}

	.top_style_section .box{
		transition-duration: 2.5s;
	}

	.top_style_section .box01{
		width: 34px;
		height: 34px;
		right:calc(50% + 200px);
		top:168px;
		transform: translate3d(226px, 359px, 0) rotateZ(360deg)
	}
	.top_style_section .box02{
		width: 60px;
		height: 60px;
		left:calc(50% + 220px);
		bottom:140px;
		transform:translate3d(-243px, -355px, 0) rotateZ(360deg)
	}

	.top_style_section .style_contents_frame{
		/* min-height:auto; */
		width: fit-content;
		margin:0 auto;
		padding:80px 0;
		transition-duration: 2.5s;
		clip-path: none;
		position: relative;
	}

	.top_style_section .anime_active .style_contents_frame {
		clip-path: none;
	}


	.top_style_section .style_list{
		width: 440px;
		margin:96px auto 0;
	}


	.top_style_section .style_link{

		min-height: 148px;
		padding:24px 44px;
	}

	.top_style_section .style_link::after{
		width:38px;
		height:36px;
		margin-left: 10px;
	}


	.top_style_section .style_title_ja{
		font-size: 24px;
	}

	.top_style_section .slide_block{
		position: static;
		top: 50%;
		transform: translateY(0);
		width:100%;
		height:auto;
		overflow: visible;
		transition-delay: 0s;
		transition-duration: 0s;
		display: flex;
	}


	.top_style_section .slide_block01{
		clip-path: inset(0 0% 0 0%);
	}
	.top_style_section .slide_block02{
		clip-path: inset(0 0% 0 0%);
	}


	.top_style_section .anime_active .slide_block01{
		clip-path: inset(0 0% 0 0%);
	}

	.top_style_section .anime_active .slide_block02{
		clip-path: inset(0 0% 0 0%);
		margin-top: 10px;
	}


	.top_style_section .slide_list{
		flex-shrink: 0;
		display: flex;
		flex-direction: row;
		gap:10px;
		animation-duration: 15s;
		animation-delay: 3s;
	}

	.top_style_section .slide_item{
		width:330px;
		flex-shrink: 0;
		aspect-ratio: 1 / 1.15;
	}



	/* アニメーション：下から上 */
	.top_style_section .anime_active .slide_block01 .slide_list {
		animation-name: slide-right;
		
	}

	/* アニメーション：上から下 */
	.top_style_section .anime_active .slide_block02 .slide_list {
		animation-name: slide-left;
	}

	@keyframes slide-right {
		0% {
			transform: translateX(calc(-50% - 5px));
			
		}
		100% {
			transform: translateX(0);
		}
	}

	@keyframes slide-left {
		0% {
			transform: translateX(0%);
		}
		100% {
			
			transform: translateX(calc(-50% - 5px));
		}
	}

	.top_staff_section{
		padding-top: 200px;
	}

	.top_staff_section .common_sec_title_set{
		margin-left: 40px;
	}

	.common_staff_area{
		margin-top: 40px;
	}

	.common_staff_area .top_staff_slide{
		width:570px;
		padding:0 8px;
	}

	.common_staff_area .top_staff_card{
		height:490px;
		display: block;
		position: relative;
	}



	.common_staff_area .top_staff_text01{
		top:32px;
		font-size: 24px;
	}

	.common_staff_area .top_staff_text01 span{
		padding:6px 0;
	}

	.common_staff_area .top_staff_text02{
		bottom:16px;
		gap:4px;
		letter-spacing: 0.05em;
	}

	.common_staff_area .top_staff_text02 .top_staff_job{
		font-size: 20px;
		padding-inline: 4px;
	}
	.common_staff_area .top_staff_text02 .top_staff_job02{
		font-size: 12px;
		padding-inline: 4px;
	}
	.common_staff_area .top_staff_text02 .top_staff_career{
		font-size: 12px;
		padding-inline: 4px;
	}

	.common_staff_area .top_staff_card .staff_normal{
		width:246px;
	}
	.common_staff_area .top_staff_card .staff_active{
		width:460px;
	}

	.top_staff_section .staff_button_frame{
		margin-top: 40px;
		padding-right: 20px;
	}

	.top_data_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.top_data_section .data_contents{
		max-width: 100%;
		position: relative;
		margin-left: 0;
	}

	.top_data_section .data_img_area{
		position: static;
		transform: translateY(0);
		width:100%;
		margin-top: 32px;

	}

	.top_data_section .data_img_frame{

		aspect-ratio: 1 / 0.5;
	}



	.top_data_section .data_text{
		margin-top: 40px;
		line-height: 1.5;
	}

	.top_data_section .data_button_frame{
		margin-top: 40px;
	}

	.top_data_section .box{
		display: none;
	}


	.top_welfare_section{

	}

	.top_welfare_section .welfare_inner{
		max-width: 1300px;
		margin:0 auto;
		position: relative;
	}

	.top_welfare_section .welfare_contents_frame{
		min-height: auto;
		padding:32px 0;
	}

	.top_welfare_section .anime_active .welfare_contents_frame{
		clip-path: inset(0 0% 0 0%);
	}



	.top_welfare_section .welfare_contents{
		width:100%;
		max-width: 720px;
		margin:0 auto;
	}
	.top_welfare_section .common_sec_title_set{
		padding-right: 0;
	}



	.top_welfare_section .wefare_list{
		margin-top: 72px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		max-width: 540px;
		margin:0 auto;
		margin-top: 60px;
		gap:40px 0;
	}

	.top_welfare_section .welfare_item{
		width:240px;
	}

	.top_welfare_section .welfare_link{
		padding-bottom: 30px;
		min-height: 100%;
	}

	.top_welfare_section .welfare_link::before{
		height:120px;
	}

	.top_welfare_section .welfare_icon{
		width:120px;
		height:120px;
	}

	@media(any-hover:hover){
		.top_welfare_section .welfare_link:hover::before{
			height:calc(100% + 24px);
		}
	}

	.top_welfare_section .welfare_icon01 img{
		width:90px;
	}
	.top_welfare_section .welfare_icon02 {
		align-items: flex-end;
	}
	.top_welfare_section .welfare_icon02 img{
		width:72px;
	}
	.top_welfare_section .welfare_icon03 img{
		width:68px;
	}
	.top_welfare_section .welfare_icon04 img{
		width:140px;
	}

	.top_welfare_section .welfare_name{
		margin-top: 24px;
		font-size: 20px;
	}

	.top_welfare_section .welfare_text{
		margin-top: 12px;
		line-height: 1.5;
	}

	.top_welfare_section .welfare_link_icon{
		width: 40px;
		height: 21px;

	}

	.top_welfare_section .welfare_link_icon::after{
		width:14px;
		height:10px;
	}

	.top_welfare_section .welfare_button_frame{
		padding-right: 0;
		margin-top: 60px;
	}

	.top_welfare_section .box{
		/* transition-delay: 0s;
		transition-duration: 0s; */
	}

	.top_welfare_section .box01{
		width: 32px;
		height: 32px;
		left:calc(50% + 352px);
		top:-16px;
		transform: translate3d(-362px, 504px, 0) rotateZ(360deg);
	}
	.top_welfare_section .box02{
		width: 80px;
		height: 80px;
		right:calc(50% + 304px);
		bottom:-40px;
		transform: translate3d(350px, -464px, 0) rotateZ(360deg);
	}




	.top_news_section{
		padding-top: 140px;
		padding-bottom: 140px;
	} 

	.top_news_section .news_frame{
		max-width: 1120px;
		margin:0 auto;
	}

	.top_news_section .news_list{
		margin-top: 72px;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap:0 24px;
	}

	.top_news_section .news_item{
		width: auto;
	}

	.top_news_section .news_info_flex{
		margin-top: 15px;
		display: flex;
		align-items: flex-start;
	}

	.top_news_section .news_date{
		margin-right: 16px;
		font-size: 12px;
		padding-top: 4px;
	}

	.top_news_section .cat_list{
		gap:12px;
	}

	.top_news_section .cat_item{
		min-width: 85px;
		min-height: 16px;
		padding:2px 4px;
		font-size: 12px;
	}

	.top_news_section .news_title{
		margin-top: 12px;
	}

	.top_news_section .news_button_frame{
		margin-top: 32px;
	}

	/*
	------------------------------------
	下層共通
	------------------------------------
	*/

	/*下層MV*/
	.page_mv_section{
		height:450px;
	}

	.page_title_section{
		padding-top: 70px;
	}



	/*ページタイトル*/

	.common_page_title_set .en_title{
		font-weight: 400;
	}

	.common_page_title_set .ja_title{
		font-size: 56px;
	}

	.common_page_title_set .ja_title span{
		font-size: 32px;
	}


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



	/*上部固定のアンカーリスト*/
	.common_top_fix_anchor_area{

		top:var(--top_sticky);
		display: flex;
		justify-content: center;
		z-index: 8;
		background-color: var(--base_color);
	}

	.common_top_fix_anchor_area .top_anchor_list{
		max-width:720px;
		gap:8px;
		padding-top: 20px;
		
	}

	.common_top_fix_anchor_area .top_anchor_list.three{
		grid-template-columns: repeat(3, 1fr);
	}
	.common_top_fix_anchor_area .top_anchor_list.four{
		grid-template-columns: repeat(4, 1fr);
	}

	.common_top_fix_anchor_area .top_anchor_link{

		padding:8px 0;
		font-size: 12px;
		gap:0 16px;

	}



	/*左側固定のタイトル*/

	.common_sticky_contents{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
		max-width: 720px;
		margin:0 auto;
	}


	.common_left_sticky_head{
		position: static;
		top:var(--top_sticky);
		left:0;
		width:100%;
		max-width: 100%;
		z-index: 0;
		margin-bottom: 40px;
	}


	/*右側のコンテンツ*/
	.common_right_contents{
		width:100%;
		max-width:100%;
	}



	/*上線がある見出し*/
	.common_top_border_title{
		font-size: 28px;
		padding-top: 12px;
	}

	/*左余白のあるテキスト*/
	.common_guide_text_frame{
		margin-top: 24px;
	}

	.common_guide_text{
		width:100%;
		line-height: 1.875;
	}



	/*
	------------------------------------
	私たちの働き方
	------------------------------------
	*/

	body.style_body{
		
	}

	main.style_main{
		
	}

	.style_section{

	}


	.style_section_list{
		margin-top: 120px;
		position: static;
		padding-bottom: 120px;
	}

	.style_section_list .style_section_list_inner{
		position: relative;
		max-width: 1200px;
		margin:0 auto;
		/* padding-bottom: 2200px; */
	}


	.style_section .style_link_frame{
		margin-top: 24px;
	}

	.style_section .style_link{
		font-size: 12px;
		line-height: 1;
		font-weight: 500;
	}

	.style_section .style_link .radi{
		width: 14px;
		height: 14px;
		margin-left: 12px;
	}

	.style_section .style_link .radi::after{
		width:10px;
		height:8px;
	}

	.style_business_section{
		
	} 

	.style_business_section .style_business_section_inner{
		padding-top: 120px;
		padding-bottom: 120px;
		
	}


	.style_business_section .style_business_text_frame{
		margin-top: 24px;

	}


	.style_business_section .style_business_text{
		line-height: 1.875;
	}

	.style_business_section .style_business_img_list{

		grid-template-columns: repeat(3, 1fr);
		gap:8px;
		margin-top: 24px;
	}


	.style_work_section{
		
	} 

	.style_work_section .style_work_section_inner{
		padding-bottom: 120px;	
	}

	.style_work_section .style_work_text_frame{
		margin-top: 24px;
	}

	.style_work_section .style_work_text{
		line-height: 1.875;
	}

	.style_work_section .work_slide_area{
		margin-top: 24px;
		padding:40px 10px;

	}


	.style_work_section .style_work_nav{
		width: 62px;
		height: 62px;
	}

	.style_work_section .style_work_nav::after{
		width:15px;
		height:30px;
	}

	.style_work_section .style_work_prev{
		left:-4px;
	}

	.style_work_section .style_work_next{
		right:12px;
	}



	.style_work_section .style_work_slide{
		width:400px!important;
		padding:0 20px;
	}


	.style_work_section .style_work_card{

		border-radius: 15px;
		padding:56px 32px 290px;
	}

	.style_work_section .style_work_card::before{
		width: 72px;
		height: 72px;
		top:-36px;
	}

	.style_work_section .style_work_number{
		top:8px;
		font-size: 12px;
	}

	.style_work_section .style_work_head{
		font-size: 24px;
		line-height: 1;
	}


	.style_work_section .style_work_text{
		margin-top: 12px;
		line-height: 1.875;
	}

	.style_work_section .style_work_bottom{
		border-top:2px dotted #E9E9DF;
		padding-top: 16px;
	}

	.style_work_section .style_work_button{
		max-width: 275px;
		height: 36px;
		font-size: 12px;
	}

	.style_work_section .style_work_button::after{

		width: 13.5px;
		height: 9px;
		right:16px;
	}

	.style_work_section .style_work_img{
		margin-top: 16px;
	}

	.style_career_section{
		
	}

	.style_career_section .style_career_frame{
		margin-top: 24px;
		display: flex;
	}

	.style_career_section .style_career_contents{
		line-height: 1.875;
	}

	.style_career_section .style_career_text{
		line-height: 1.875;
	}

	.style_career_section .style_career_tab_area{
		margin-top: 24px;
	}

	.style_career_section .style_career_tab_list{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.style_career_section .style_career_tab{
		width:32.4%;
		height:54px;
		font-size: 24px;
	}



	.style_career_section .style_career_tab_contents{
		padding-top: 24px;
	}

	.style_career_section .style_career_info_block{
		padding:16px 0;
	}

	.style_career_section .style_career_info_head{
		font-size: 20px;
	}

	.style_career_section .style_career_info_text{
		margin-top: 8px;
		line-height: 1.875;
		max-width: 100%;
	}


	/*
	------------------------------------
	明和会グループで働くひと
	------------------------------------
	*/

	body.staff_body{
		
	}


	body.staff_body #page_section_wrap{
		
	}

	main.staff_main{
		
	}

	.staff_section{

	}

	.staff_title_section{
		position: static;
		top:0;
		left:0;
		padding-bottom: 120px;
	}

	.staff_title_section .guide_text01{
		margin-top: 40px;
		white-space: normal;
		font-size: 24px;
	}

	.staff_title_section .guide_text02{
		margin-top: 32px;
		max-width: 100%;
		line-height: 1.5;
	}

	.staff_title_section .anchor_list{
		max-width: 312px;
		margin-top: 40px;
		display: none;

	}

	.staff_info_section{
		
		padding-bottom: 160px;
		position: relative;
		z-index: 5;
		pointer-events: none;
	}

	.staff_info_section .staff_info_frame{
		padding-left: 0;
	}

	.staff_info_section .staff_info_frame + .staff_info_frame{
		margin-top: 0;
	}

	.staff_info_section .staff_info_block{
		width:100%;
		padding-bottom: 40px;
	}

	.staff_info_section .staff_info_contents{
		padding-left: 310px;
		position: relative;
		min-height: auto;
	}

	.staff_info_section .staff_info_contents::after{
		width:228px;
		/* left:655px; */
		left:auto;
		right:-160px;
	}

	.staff_info_section .staff_info_contents_inner{
		max-width: 340px;
	} 

	.staff_info_section .staff_main_head{
		font-size: 24px;

	}

	.staff_info_section .staff_career{
		margin-top: 10px;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.3;
	}

	.staff_info_section .staff_career p + p{
		margin-top: 6px;
	}

	.staff_info_section .staff_sub_head{
		margin-top: 40px;
		font-weight: 700;
		line-height: 1.3;
	}

	.staff_info_section .staff_info{
		margin-top: 32px;
		line-height: 1.3;
		font-size: 14px;
	}

	.staff_info_section .staff_info p{
		padding:4px 8px;
	}	

	.staff_info_section .staff_info p + p{
		margin-top: 6px;
	}

	.staff_info_section .staff_text{
		margin-top: 32px;
		line-height: 2;
	}

	.staff_info_section .staff_info_img_area{
		width:280px;
	}

	.staff_info_section .staff_info_img_frame{
		aspect-ratio: 1 / 1.324;
	}



	/*
	------------------------------------
	スタッフ詳細
	------------------------------------
	*/

	body.staff_single_body{
		
	}


	main.staff_single_main{
		
	}

	.staff_single_section{

	}

	.staff_single_title_section{
		padding-top: 110px;
	}

	.staff_single_title_section .title_block{
		padding-left: 72px;
	}

	.staff_single_title_section .title_block::before{
		width: 47px;
		height: 47px;
		top:-8px;
	}

	.staff_single_title_section .staff_kind{
		margin-top: 40px;
		min-width: 72px;
		min-height: 20px;
		padding: 2px 8px;	
		font-size: 12px;

	}

	.staff_single_title_section .staff_job{
		margin-top: 6px;
	}

	.staff_single_title_section .staff_name{
		margin-top: 4px;
	}

	.staff_voice_section{
		padding-top: 120px;
	} 

	.staff_voice_section .staff_voice_area{
		

	}

	.staff_voice_section .staff_voice_contents{
		position: relative;
		display: block;
		max-width: 600px;
		margin-inline: auto;
	}

	.staff_voice_section .staff_img_area{
		width:100%;
		position: static;
		display: none;
		
	}

	.staff_voice_section .staff_img_frame{
		margin-bottom: 24px;
		aspect-ratio: 1 / 0.73;
	}



	.staff_voice_section .staff_voice_list{
		width:100%;
		padding-right: 0;
	}

	.staff_voice_section .staff_voice_block + .staff_voice_block{
		margin-top: 120px;
	}

	.staff_voice_section .staff_voice_kind{

		min-height: 21px;
		padding:2px 12px;
		font-size: 12px;

	}

	.staff_voice_section .staff_voice_title{
		margin-top: 16px;
		font-size: 24px;
	}

	.staff_voice_section .staff_voice_text{
		margin-top: 16px;
		line-height: 2;
	}

	.staff_faq_section{
		padding-top: 160px;
	}

	.staff_faq_section .staff_faq_area{
		padding-left: 0;
	}

	.staff_faq_section .sec_title{
		font-size: 96px;
	}

	.staff_faq_section .sec_sub_title{
		margin-top: 30px;
	}

	.staff_faq_section .staff_faq_list{
		margin-top: 95px;
	}

	.staff_faq_section .staff_faq_block{
		display: flex;
	}

	.staff_faq_section .staff_faq_block + .staff_faq_block{
		margin-top: 24px;
	}

	.staff_faq_section .staff_faq_question_frame{
		width:284px;
		flex-shrink: 0;
		padding-bottom: 20px;
	}

	.staff_faq_section .staff_faq_question{

		min-height: 100px;
		border-radius: 30px;
		padding:24px 16px 24px 95px;
	}

	.staff_faq_section .staff_faq_question::before{
		font-size: 40px;
		left:24px;
		top:24px;
	}

	.staff_faq_section .staff_faq_question::after{
		width: 24px;
		height: 21px;
		left:110px;
		top:calc(100% - 2px);
	}

	.staff_faq_section .staff_faq_answer{
		width:100%;
		min-height:208px;
		padding:40px;

	}

	.staff_faq_section .staff_faq_answer::before{
		width:1020px;
		left:-120px;
	}

	.staff_faq_section .staff_faq_answer_text{
		line-height: 2;
	}

	.staff_schedule_section{
		padding-top: 160px;
		padding-bottom: 160px;
	}

	.staff_schedule_section .staff_schedule_inner{
		position: relative;
		min-height: 772px;
		padding-top:96px;
		padding-bottom: 40px;
	}

	.staff_schedule_section .staff_schedule_inner::before{
		content:'';
		width:100vw;
		height:100%;
		background-color: #fff;
		position: absolute;
		top:0;
		left: 50%;
		right:auto;
		transform: translateX(-50%);

	}

	.staff_schedule_section .sec_title{
		white-space: nowrap;
		font-size: 32px;
		
		text-align: center;
		margin-bottom: 8px;
		right: auto;
		position: absolute;

		left: 50%;
		transform: translateX(-50%);

	}


	.staff_schedule_section .staff_schedule_ime_area{
		position: absolute;
		z-index: 2;
		width:380px;
		top:0;
		right:auto;
		left:calc(50% + 100px);
		pointer-events: none;
		
	}

	.staff_schedule_section .staff04_private{
		width:840px;
	}
	.staff_schedule_section .staff06_private{
		width:400px;
	}


	.staff_schedule_section .staff_schedule_frame{
		max-width: 520px;
	
	}

	.staff_schedule_section .staff_schedule_tab_list{
		padding-left: 0;
		display: flex;
		gap:0 8px;
	}

	.staff_schedule_section .staff_schedule_tab{
		width: 240px;
		height: 54px;
	
		font-size: 24px;
	}


	.staff_schedule_section .staff_schedule_contents{
		padding-left: 0;
		padding-top: 36px;
		padding-bottom: 36px;
		margin-top: 12px;
		position: relative;
		z-index: 5;
		/* transform: translate3d(0 , 0 , 0); */
	}


	.staff_schedule_section .staff_schedule_list::before{
		top: 6px;
		left: 91px;
	}

	.staff_schedule_section .staff_schedule_line{
		padding-bottom: 24px;
	}

	.staff_schedule_section .staff_schedule_time{
		width:84px;
		padding-right: 6px;
		font-size: 20px;
	}

	.staff_schedule_section .staff_schedule_center{
		width:15px;
		margin-right: 24px;
		padding-top: 4px;
	}

	.staff_schedule_section .staff_schedule_radi{

		border:3px solid var(--black);
	}

	.staff_schedule_section .staff_schedule_title{
		font-weight: 700;
		line-height: 1.3;
	}

	.staff_schedule_section .staff_schedule_title + .staff_schedule_text{
		margin-top: 6px;
	}

	.staff_schedule_section .staff_schedule_text{
		line-height: 2;
	}



	.staff_schedule_section .staff_schedule_line:last-child::after{

		width:5px;
		top: 12px;
		left: 90px;
	}

	.staff_schedule_section .staff_schedule_week{
		width: 32px;
		height: 32px;
		top:-32px;
		left:-24px;
		padding-bottom: 2px;
	}


	.staff_schedule_section .staff_schedule_line + .staff_schedule_line:has(.staff_schedule_week){
		margin-top: 32px;
	}

	.staff_message_section{
		
	}


	.staff_message_section .message_area{
		min-height: 574px;
		padding:80px 0;
		
		position: relative;
	}


	.staff_message_section .message_contents{
		max-width: 100%;
		margin-left: 0;
	}

	.staff_message_section .sec_title{
		min-width: 168px;
		min-height: 29px;
		padding: 2px 12px;
		
		font-size: 12px;
		position: relative;
		z-index: 4;
	}

	.staff_message_section .message_head{
		margin-top: 8px;
		display: flex;
		justify-content: flex-start;
		position: relative;
		z-index: 4;
	}

	.staff_message_section .message_head img{
		height:138px;
		width:auto;
	}

	.staff_message_section .message_text{
		margin-top: 16px;
		line-height: 2;
		position: relative;
		z-index: 4;
	}

	.staff_message_section .message_img{
		position: absolute;
		width:370px;
		bottom:0;
		right:-30px;
		opacity: 0.8;
	}

	.staff_link_section{
		padding-top: 160px;
		padding-bottom: 160px;
	}

	.staff_link_section .staff_link_list{
		padding-top: 100px;
		padding-inline: 0;
		gap:64px 48px;
		justify-content: center;
	}

	.staff_link_section .staff_link_list::before{
		width: 830px;
	}

	.staff_link_section .staff_link_item{
		min-width: 290px;
		display: flex;
		justify-content: flex-end;
	}

	.staff_link_section .staff_link_card{
		display: flex;
		justify-content: flex-end;
		align-items: flex-end;
		width: fit-content;
	}

	.staff_link_section .staff_link_thumb{
		margin-left: 12px;
		width: 208px;
	}

	.staff_link_section .staff_link_text{
		
		font-size: 20px;
		line-height: 1.75;
	
	}

	/*
	------------------------------------
	充実した福利厚生
	------------------------------------
	*/

	body.welfare_body{
		
	}

	main.welfare_main{
		
	}

	.welfare_section{

	}


	.welfare_section_list{
		margin-top: 160px;
		position: static;
		padding-bottom: 160px;
	}

	.welfare_section_list .welfare_section_list_inner{

	}

	.welfare_dormitory_section{
		padding-top: 88px;
	}

	.welfare_dormitory_section .info_area{
		padding-left: 0;
		margin-top: 64px;
	}


	.welfare_dormitory_section .room_area{
		margin-top: 180px;
	}

	.welfare_dormitory_section .room_frame{
		position: relative;
	}

	.welfare_dormitory_section .room_img{
		position: absolute;
		width:430px;
		top: 50%;
		left: 420px;
		transform: translateY(-50%);
		
	}

	.welfare_dormitory_section .room_box{
		width: 469px;
		min-height: 458px;
	
		display: flex;
		align-items: center;
		padding:24px 72px 24px 24px;
	}

	.welfare_dormitory_section .room_box .box{

	}

	.welfare_dormitory_section .room_box .box01{
		width: 26px;
		height: 26px;
		top:30px;
		left:-13px;
	}
	.welfare_dormitory_section .room_box .box02{
		width: 40px;
		height: 40px;
		bottom:-20px;
		right:30px;
	}

	.welfare_dormitory_section .room_head{
		font-size: 24px;

	}

	.welfare_dormitory_section .room_contents_list{
		margin-top: 32px;
	}

	.welfare_dormitory_section .room_contents + .room_contents{
		margin-top: 24px;
	}

	.welfare_dormitory_section .room_sub_head{
		font-weight: 700;
		line-height: 1.3;
	}

	.welfare_dormitory_section .room_info_list{
		margin-top: 16px;
		padding-left: 24px;
	}

	.welfare_dormitory_section .room_info_list li{
		display: flex;
		align-items: flex-start;
		line-height: 1.3;
	}

	.welfare_dormitory_section .room_info_list li + li{
		margin-top: 16px;
	}

	.welfare_dormitory_section .room_info_list .room_info_head{
		flex-shrink: 0;
	}

	.welfare_dormitory_section .room_gal_area{
		margin-top: 95px;
	}

	.welfare_dormitory_section .room_gal01{
		width:358px;
	}
	.welfare_dormitory_section .room_gal02{
		width:334px;
		margin-top: -75px;
		margin-left: auto;
	}

	.welfare_dormitory_section .access_area{
		margin-top: 135px;
		padding-left: 0;
	}

	.welfare_dormitory_section .acaccess_head{
		font-size: 24px;
	}

	.welfare_dormitory_section .access_map{
		margin-top: 40px;
		aspect-ratio: 1 / 0.54;
	}

	.welfare_dormitory_section .access_flex{
		margin-top: 48px;
		display: flex;
		justify-content: space-between;
	}

	.welfare_dormitory_section .access_box{
		padding:44px 16px 56px;
		width:48%;
	}

	.welfare_dormitory_section .access_box_head{
		font-size: 20px;
	}

	.welfare_dormitory_section .access_info_list{
		margin-top: 14px;
	}

	.welfare_dormitory_section .access_info_list li{
		display: flex;
		align-items: flex-start;
		line-height: 1.3;
	}

	.welfare_dormitory_section .access_info_list li + li{
		margin-top: 12px;
	}

	.welfare_dormitory_section .access_info_list .access_info_head{
		flex-shrink: 0;
	}

	.welfare_nursery_section{
		padding-top: 160px;
	}

	.welfare_nursery_section .nursery_area{
		padding-left: 0;
		margin-top: 80px;
	}

	.welfare_nursery_section .nursery_flex{
		display: flex;
		
	}

	.welfare_nursery_section .nursery_img{
		width:383px;
		aspect-ratio: 1 / 1.23;
		margin-right: 20px;
	}


	.welfare_nursery_section .nursery_list{
		width: 100%;
		max-width: 376px;
	}

	.welfare_nursery_section .nursery_item{
		min-height: 116px;

		padding:10px 24px;
		line-height: 1.75;
	}

	.welfare_nursery_section .nursery_item + .nursery_item{
		margin-top: 46px;
	}

	.welfare_nursery_section .nursery_item::after{
		width: 50px;
		height: 33px;
		left:8px;
		top:calc(100% - 1px);
	}

	.welfare_nursery_section .info_area{
		margin-top: 130px;
		
		padding:24px;
	}

	.welfare_nursery_section .info_contents + .info_contents{
		margin-top: 30px;
	}

	.welfare_nursery_section .info_head{
		font-size: 20px;
		font-weight: 500;
		line-height: 1.3;
	}

	.welfare_nursery_section .info_text{
		margin-top: 8px;
		padding-left: 32px;
		line-height: 1.875;
	}

	.welfare_nursery_section .info_img{
		width:350px;
		top:24px;
		right:24px;
	}

	.welfare_dome_section{
		padding-top: 160px;
	}

	.welfare_dome_section .dome_gal_area{
		margin-top: 35px;
		height:873px;
	}

	.welfare_dome_section .dome_gal{
		position: absolute;
	}

	.welfare_dome_section .dome_gal01{
		width:100%;
		top:0;
		left:0;
	}

	.welfare_dome_section .dome_gal02{
		width:504px;
		left:0;
		top:290px;
	}

	.welfare_dome_section .dome_gal03{
		width:292px;
		bottom:0;
		left:85px;
	}

	.welfare_dome_section .dome_gal04{
		width:350px;
		left:471px;
		bottom:88px;
	}

	.welfare_other_section{
		padding-top: 160px;
	}

	.welfare_other_section .support_list{
		margin-top: 64px;
	}


	.welfare_other_section .support_frame + .support_frame{
		margin-top: 24px;
	}

	.welfare_other_section .support_block{
		max-width: 360px;
		min-height: 390px;
		padding-top:50px;
		padding-left: 24px;
		padding-right: 4px;
		padding-bottom: 24px;
	}

	.welfare_other_section .support_block::before{

		width:64px;
		top:-33px;
	}

	.welfare_other_section .support_img{
		width:554px;
		min-height: 390px;
		left:370px;
		top:0;
	}

	.welfare_other_section .support_img img{
		border-radius: 20px 0 0 20px;
	}

	.welfare_other_section .support_number{
		font-size: 12px;
		top:6px;
	}

	.welfare_other_section .support_head{
		font-size: 20px;
		font-weight: 700;
	}

	.welfare_other_section .support_info_list{
		margin-top: 22px;
	}

	.welfare_other_section .support_info{
		line-height:1.875;
		padding-left: 16px;
	}

	.welfare_other_section .support_info::before{
		content:"・";
		position: absolute;
		left:0;
		top:0;
		font-weight: 500;
		line-height:1.875;
	}

	.welfare_other_section .support_info + .support_info{
		margin-top: 16px;
	}


	/*
	------------------------------------
	ようこそ北広島町へ
	------------------------------------
	*/

	body.town_body{
		
	}

	main.town_main{
		
	}

	.town_section .sec_title{
		font-size: 32px;
	}

	.town_section .sub_title{
		margin-top: 24px;
		line-height: 2;
	}

	.town_fv_section{
		position: relative;
		height:850px;
	}

	.town_fv_section .text_contents{
		padding-top: 160px;
	}

	.town_fv_section .fv_text01{
		font-size: 30px;
		line-height: 2.1;
	}

	.town_fv_section .fv_text02{
		line-height: 2;
		margin-top: 80px;
	}

	.town_fv_section .fv_text03_frame{
		width: fit-content;
		margin-top: 280px;
	}
	.town_fv_section .fv_text03{
		display: flex;
		justify-content: center;
		flex-direction: column;
		writing-mode: vertical-rl;
		gap:0 20px;
		font-size: 32px;
		font-weight: 600;

	}

	.town_fv_section .fv_text03_02{
		padding-top: 90px;
	}

	.town_fv_section .fv_bg{
		position: sticky;
		top:260px;		
	}


	.town_fv_section .fv_bg img{
		flex-shrink: 0;
		width:1920px;
		min-width: 100vw;
		max-height: 920px;
	}

	.town_living_section{
		padding-top: 1100px;
	} 

	.town_living_section .living_flex{
		margin-top: 88px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		position: relative;
		flex-direction: column;
	}

	.town_living_section .living_img_data_pos{
		position: absolute;
		top:calc(var(--top_sticky) * -1);
	}

	.town_living_section .living_left{
		flex-shrink: 0;
		width:100%;
		margin-right: 0;
		position: static;
		left:0;
		top:var(--top_sticky);
	}

	.town_living_section .livin_img{
		overflow: hidden;
		aspect-ratio: 1 / 0.71;

	}

	.town_living_section .livin_img img{
		height:auto;
		width:100%;
	}

	.town_living_section .living_right{
		width:100%;
		padding-right: 0;
		font-feature-settings: 'palt';
	}

	.town_living_section .living_block{
		padding-left: 52px;
	}

	.town_living_section .living_block + .living_block{
		margin-top: 84px;
	}

	.town_living_section .living_head{
	
		min-height: 40px;
		padding:4px 24px;
	}

	.town_living_section .living_head .living_head_num{
		width: 72px;
		height: 72px;
		
		right:calc(100% - 20px);
		font-size: 32px;

	}

	.town_living_section .living_text{
		margin-top: 16px;
		padding-left: 24px;
		line-height: 1.5;
	}

	.town_living_section .living_sub_list{
	
		margin-top: 64px;
		gap:64px 0;
	}

	.town_living_section .living_sub_list::before{
		width:733px;
		height:455px;
		background-image: url('../img/town/living_bg.png');
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.town_living_section .living_sub_block{
		
		width:308px;
	}

	.town_living_section .living_sub_head{
	
		gap:0 8px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.33;
	}

	.town_living_section .living_sub_head_num{
		width: 72px;
		height: 72px;
		font-size: 32px;
	}

	.town_living_section .living_sub_text{
		margin-top: 16px;
		line-height: 1.5;
	}

	.town_slide_section{
		padding-top: 160px;
	}

	.town_slide_section .slide_area{
		max-width: 1920px;
	}

	.town_slide_section .slide_flex{
		gap:0 48px;
		animation: town_slide 30s linear infinite;
	}


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

	.town_slide_section .slide_list{
		gap:0 48px;
	}


	.town_slide_section .slide01{
		width:318px;
		margin-top: 133px;
	}
	.town_slide_section .slide02{
		width:318px;
	}
	.town_slide_section .slide03{
		width:512px;
		margin-top: 45px;
	}
	.town_slide_section .slide04{
		width:318px;
		margin-top: 133px;
	}
	.town_slide_section .slide05{
		width:318px;
	}
	.town_slide_section .slide06{
		width:512px;
		margin-top: 45px;
	}

	.town_play_section{
		padding-top: 240px;
	}

	.town_play_section .play_list{
		margin-top: 120px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap:50px;
	}

	.town_play_section .play_text_area{
		padding:8px;
	
	} 

	.town_play_section .play_title{
		font-size: 20px;
	}

	.town_play_section .play_info{
		margin-top: 8px;
	}



	.town_commute_section{
		padding-top: 160px;
	}

	.town_commute_section .commute_area{
		margin-top: 120px;
		position: relative;
	}

	.town_commute_section .commute_list{
		margin-top: -506px;
		display: flex;
		justify-content: space-between;
		position: relative;
		flex-direction: column;
		align-items: center;
		max-width: 600px;
		margin-inline: auto;
		gap:60px 0;
	}

	.town_commute_section .commute_list::before{
		content:none;
	}

	.town_commute_section .commute_bg{
		width:100%;
		position: sticky;
		top:var(--top_sticky);
		left: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.town_commute_section .commute_bg img{
		flex-shrink: 0;
		width: 945px;
		height:586px;
	}

	.town_commute_section .commute_block{
		width:100%;
		padding:44px 26px;
	}

	.town_commute_section .commute_block::before,
	.town_commute_section .commute_block::after{
		width:calc(100% / 2 - 70px);
	}


	.town_commute_section .commute_block_head{
		padding:0 3px;
		font-size: 24px;
		bottom:calc(100% - 12px);
	}

	.town_commute_section .commute_block_contents{
		padding:14px 18px;
		line-height: 2;
	}


	.town_commute_section .commute_remark{
		margin-top: 120px;

		font-size: 24px;
	}

	.town_commute_section .welfare_button{
		margin:32px auto 0;
		width: 343px;
		height: 60px;
		padding-inline: 30px;
	}

	.town_commute_section .welfare_button::after{

		width:13px;
		height:9px;
		margin-left: 12px;
	}


	.town_moving_section{
		padding-top: 160px;
	}

	.town_moving_section .moving_area{
		display: flex;
		justify-content: flex-end;
		flex-direction: column;
		align-items: center;
		padding-right: 0;
	}

	.town_moving_section .moving_block{
		width:100%;
		max-width: 100%;
		padding:0;
		padding-bottom: 32px;
	}

	.town_moving_section .moving_head{
		font-size: 32px;
		font-weight: 700;
		padding-inline: 24px;
		margin-top: 32px;
	}

	.town_moving_section .moving_img_area{
		position: static;
	}

	.town_moving_section .moving_img_frame{
		width:100%;
	}

	.town_moving_section .moving_text{
		margin-top: 40px;
		line-height: 2;
		padding-inline: 24px;
	}

	.town_moving_section .moving_link{
		margin-top: 48px;
		width: 240px;
		margin-left: 24px;
	
		min-height: 36px;
		padding:3px 24px;
		font-size: 12px;
	}



	.town_staff_section{
		padding-top: 160px;
		padding-bottom: 160px;
	}

	.town_staff_section .staff_button_frame{
		display: flex;
		justify-content: flex-end;
		margin-top: 40px;
		padding-right: 0;
	}


	/*
	------------------------------------
	明和会の歴史
	------------------------------------
	*/

	body.history_body{
		
	}

	main.history_main{
		
	}

	.history_section{

	}

	.history_fv_section{
		padding-top: var(--top_sticky);
		
		margin-bottom: 120px;
		
	}

	.history_fv_section .fv_trigger{
		position: absolute;
		top:1400px;
	}
	.history_fv_section .fv_area{
		position: sticky;
		top:var(--top_sticky);
		left:0;

	}

	.history_fv_section .fv_area_inner{
		max-width: 1440px;
		width:100%;
		margin:0 auto;
		padding:0 16px;
	}
	.history_fv_section .fv_list{
		height:760px;

	} 


	.history_fv_section .fv_item{
		width:calc(33.3% - 8px);
		position: absolute;
		top:0;
		height:760px;
		max-height:calc(100vh - var(--top_sticky));
		opacity: 0.9;
	}

	.history_fv_section .fv_item:nth-child(1){
		left:0;
	}

	.history_fv_section .fv_item:nth-child(2){
		left:calc(50% - calc(calc(33.3% - 8px) / 2));
	}

	.history_fv_section .fv_item:nth-child(3){
		right:0;
	}


	.history_fv_section:has(.fv_trigger.anime_active) .fv_item{
		width:934px;
		top:0;
	}

	.history_fv_section:has(.fv_trigger.anime_active) .fv_item:nth-child(1){
		left:calc(100% - 934px);
	}
	.history_fv_section:has(.fv_trigger.anime_active) .fv_item:nth-child(2){
		right:auto;
		left:calc(100% - 934px);
		margin:0;
	}

	.history_fv_section .text_contents{

		padding-top: 300px;
		padding-bottom: 200px;
	}
	.history_fv_section .page_title{
		font-size: 64px;
	
	}

	.history_fv_section .sub_title{
		margin-top: 64px;

		font-size: 36px;

	}

	.history_fv_section .fv_text{
		margin-top: 64px;
	}

	.history_list_section{
		padding-top: 100px;
		padding-bottom: 150px;

	}

	.history_list_section + .history_list_section{
		margin-top: 200px;
	}


	.history_list_section .sec_title_set .title01{
		font-weight: 300;
	}

	.history_list_section .sec_title_set .title02{
		font-size: 48px;
		margin-top: 4px;
	}

	.history_list_section .history_list{
		margin-top: 100px;
	}

	.history_list_section .history_block_frame + .history_block_frame{
		margin-top: 0;
	}

	.history_list_section .history_block_frame{
		width: 100%;
		max-width: 600px;
	}

	.history_list_section .history_block{
		width:100%;
		flex-shrink: 0;
		border-radius: 10px;
		padding:24px 24px 40px;
	}


	.history_list_section .history_block_inner{
		display: block;

		min-height: auto;
		padding:0;
		max-width: 1200px;
		margin:0 auto;
	}

	.history_list_section .history_block_contents{
		width:100%;
	}

	.history_list_section .history_img{
		position: static;
		margin-bottom: 32px;
	}


	.history_list_section .history_title{
		text-shadow: none;
		font-size: 32px;
	}

	.history_list_section .history_text{
		margin-top: 40px;
		text-shadow: none;
		line-height: 1.5;
	}

	.history_list_section .history_text li{
		position: relative;
		padding-left: 16px;
	}

	.history_list_section .history_text li::before{
		content:'・';
		line-height: 1.5;
		position: absolute;
		top:0;
		left:0;
	}

	.history_msg_section{
		padding-top: 120px;
		padding-bottom: 120px;
	} 

	.history_msg_section .sec_title{

		font-size: 32px;
	}

	.history_msg_section .sec_title::before{
		width: 52px;
		height: 54px;
		margin-bottom: 40px;
	}

	.history_msg_section .sec_title span + span{
		margin-top: 16px;
	}

	.history_msg_section .msg_list{
		margin-top: 110px;

		height:auto;
		border-radius: 10px;
		overflow: hidden;
	}

	.history_msg_section .msg_block{
		position: static;
		top:0;
		overflow: hidden;
		width:100%;
		transition-duration: 600ms;
		transition-timing-function:ease-out;
		background-position: top;
	}

	.history_msg_section .msg_block:nth-child(2){
		background-image: url('../img/history/message02_bg.jpg');
		left:240px;
	}
	.history_msg_section .msg_block:nth-child(3){
		background-image: url('../img/history/message03_bg.jpg');
		right:0;
	}

	.history_msg_section .msg_block:nth-child(2).show{
		left:0;
	}

	.history_msg_section .msg_contents{
		width: 100%;
		height:auto;
		display: flex;
		position: relative;
		flex-direction: column;
		padding-inline: 32px;
	}


	.history_msg_section .msg_left{
		width:100%;
		min-height:auto ;
		display: block;
		padding:48px 0;
	}

	.history_msg_section .msg_head_flex{
		display: flex;
		align-items: center;
		position: relative;
		gap:16px;
		padding-bottom: 0;
	}
	.history_msg_section .msg_num{
		font-size: 48px;
		line-height: 1.2;
	}

	.history_msg_section .msg_title{
		margin-top: 5px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.5;
	}

	.history_msg_section .msg_switch{
		width: 160px;
		height: 36px;
		padding:0 16px;
		font-size: 12px;
		margin-top: 24px;

	}


	.history_msg_section .msg_right{
		padding:0;
		padding-right: 0;
		display: none;
	}


	.history_msg_section .msg_text{
		color: #FFF;
		text-shadow: 0px 0px 4px #000;
		line-height: 1.75; 
		margin-top: 24px;
		display: none;
	}


	/*
	------------------------------------
	明和会を紐解く
	------------------------------------
	*/

	body.data_body{
		
	}

	main.data_main{
		
	}

	.data_section{
		position: relative;
	}


	.data_section .sec_title_area .sec_title_box{
		padding:28px 48px 20px;
	}


	.data_section .sec_title_area .sec_sub_title{
		font-size: 16px;
		top:24px;
		right:6px;
	}

	.data_section .sec_title_area .sec_title_text{
		font-size: 36px;
		letter-spacing: 0.4em;
	} 

	.data_section .sec_title_area .sec_title_text + .sec_title_text{
		margin-right: 20px;
	}

	.data_section .contents_list{
		max-width: 920px;
		margin:200px auto 0;
		gap:16px 0;
		padding-bottom: 180px;
	}

	.data_section .contents_block{
		padding:32px 24px;
		border-radius: 10px;
		background-color: var(--base_color);
		animation-duration: 0.7s;
	}

	.data_section .contents_head{
		font-size: 24px;

	}

	.data_section .contents_head::before{
		width:31px;
		height:33px;
		margin-right: 8px;
		transform: translateY(-3px);
	}

	.data_section .contents_flex{
		width:100%;
		display: flex;
		gap:0 16px;
	}

	.data_section .contents_flex .contents_block{
		padding-top: 16px;
		padding-bottom: 24px;
		padding-inline: 24px;
	}

	.data_section .contents_flex .contents_head{
		align-items: center;
		flex-direction: column;
		white-space: normal;
		text-align: center;
	}

	.data_section .contents_flex .contents_head::before{
		margin-right: 0;
		margin-bottom: 8px;
		transform: translateY(0);
	}

	.data_fv_section{

	}

	.data_fv_section .fv_text{
		margin-top: 36px;
		line-height: 2;
	}

	.data_fv_section .link_list{
		margin-top: 40px;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap:40px;
		padding-bottom: 120px;
	}

	.data_fv_section .link_list .link{
		width: 190px;
		height: 31px;

		font-size: 12px;

	}

	.data_fv_section .link_list .link::after{
		width:13px;
		height:9px;
		right:6px;
	}

	.data_staff_section{

	}

	.data_staff_section .reason_list{
		margin-top: 32px;
	}

	.data_staff_section .reason_block{
		display: flex;
		align-items: center;
	}

	.data_staff_section .reason_block + .reason_block{
		margin-top: 8px;
	}

	.data_staff_section .reason_thumb{
		flex-shrink: 0;
		width:280px;
		aspect-ratio: 1 / calc(220 / 327);
		margin-right: 24px;
	}

	.data_staff_section .reason_text_area{
		width:100%;
	}

	.data_staff_section .reason_job{

		min-height: 19px;
		padding: 2px 20px;
		font-size: 12px;

	}

	.data_staff_section .reason_title{
		margin-top: 16px;
	}

	.data_staff_section .reason_text{
		margin-top: 16px;
	}


	.data_staff_section .decide_list{
		margin-top: 24px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap:8px;
	}

	.data_staff_section .decide_block{
		width:calc(50% - 4px);
	}

	.data_staff_section .decide_card_inner{
		padding:24px 20px 0;
	} 


	.data_staff_section .decide_kind{
		min-height: 27px;
		padding: 2px 24px;		
	}

	.data_staff_section .decide_title{
		margin-top: 40px;
		font-size: 20px;
	}

	.data_staff_section .decide_text{

		margin-top: 16px;
		line-height: 1.5;
	}

	.data_staff_section .decide_switch{

		width:134px;
		height:134px;

		bottom:-67px;
	}

	.data_staff_section .decide_switch span{
		padding-top: 20px;
	}
	.data_staff_section .decide_switch span::after{
		width:30px;
		height:30px;
	}

	.data_staff_section .decide_switch span::before{
		
		font-size: 12px;
		bottom:calc(100% + 4px);
	}


	.data_staff_section .check_list{
		margin-top: 28px;
	}

	.data_staff_section .check_list li{
		display: flex;
		align-items: center;
		min-height: 96px;
		padding:16px 0;
		line-height: 1.75;
	}


	.data_staff_section .check_list li + li{
		border-top: 2px dashed #fff;
	}


	.data_staff_section .check_list li p span{
		font-weight: 700;
	}

	.data_staff_section .check_list .check{
		margin-right: 16px;
		width: 37px;
		height: 37px;
	}

	.data_staff_section .check_list .check::after{
		width:20px;
		height:13px;
	}


	.data_staff_section .staff_word{
		margin-top: 46px;
	}

	.data_staff_section .rank_list{
		margin-top: 24px;
	}

	.data_staff_section .rank_list li{
		display: flex;
		align-items: center;
		padding:16px 0;
		line-height: 1.3;
		font-size: 20px;
		
	}

	.data_staff_section .rank_list li::before{

		width:57px;
		height:67px;
		margin-right: 24px;
	}

	.data_staff_section .rank_list li:nth-child(1){
		font-size: 24px;
	}


	.data_culture_section{

	}

	.data_culture_section .culture_list .contents_block{
		padding:0;
	}

	.data_culture_section .contents_flex_three{
		display: flex;
		width: 100%;
		justify-content: space-between;
	}

	.data_culture_section .contents_flex_three .contents_block{
		width: 224px;
	}

	.data_work_section{

	}

	.data_work_section .symbol_list{
		margin-top: 48px;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		flex-wrap: wrap;
		gap:32px;

	}

	.data_work_section .symbol_box{
		width:166px;
		padding-top: 24px;
	}

	.data_work_section .symbol_box::before{
		width:40px;
		height:26px;

	}

	.data_work_section .symbol_box .symbol_text{
		margin-top: 5px;
		font-weight: 700;
		line-height: 1.3;
		min-height: 70px;
	}

	.data_work_section .charm_block{
		padding: 32px 24px;
	}

	.data_work_section .charm_block .contents_head{
		position: static;
		top: 50%;
		left: 50%;
		transform: translate(0 , 0);
		flex-direction: row;
		align-items: flex-start;
	}

	.data_work_section .charm_block .contents_head br{
		display: none;
	}

	.data_work_section .charm_block .contents_head::before{
		margin-right: 8px;
		margin-bottom: 12px;
	}

	.data_work_section .charm_flex{
		margin-top: 24px;
	}

	.data_work_section .charm_list{
		width: 48.5%;
	}

	.data_work_section .charm_item{
		position: relative;
		border-radius: 20px;
		border:1px solid;
	}

	.data_work_section .charm_item + .charm_item{
		margin-top: 26px;
	}

	.data_work_section .charm_item::after{
		content:none;
	}


	.data_work_section .charm_card{
		border-radius: 20px;
		min-height: 116px;
		padding:12px 20px 4px;
		z-index: 1.75;
	}


	.data_work_section .charm_text{
		line-height: 1.5;
	}

	.data_work_section .charm_name{
		margin-top: 3px;
		font-size: 12px;
	}

	

	.data_slide_section{
		padding-top: 80px;
		padding-bottom: 240px;
	} 

	.data_slide_section .sec_title{
		font-size: 24px;
		font-weight: 700;
	}

	.data_slide_section .slide_area{
		display: flex;
		max-width: 1920px;
		margin-top: 72px;
	}

	.data_slide_section .slide_flex{
		gap:0 40px;
		animation: data_slide 30s linear infinite;
	}


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

	.data_slide_section .slide_list{
		gap:0 40px;
	}

	.data_slide_section .slide01{
		width:292px;
		margin-top: 113px;
	}
	.data_slide_section .slide02{
		width:170px;
		margin-top: 72px;
	}
	.data_slide_section .slide03{
		width:338px;
	}
	.data_slide_section .slide04{
		width:242px;
		margin-top: 72px;
	}
	.data_slide_section .slide05{
		width:272px;
	}
	.data_slide_section .slide06{
		width:170px;
		margin-top: 72px;
	}
	.data_slide_section .slide07{
		width:322px;
		margin-top: 30px;
	}
	.data_slide_section .slide08{
		width:242px;
		margin-top: 72px;
	}

	/*
	------------------------------------
	お知らせ
	------------------------------------
	*/

	body.news_body{
		
	}

	main.news_main{
		
	}

	.news_list_section{
		padding-top: 132px;
		padding-bottom: 140px;
	}

	.news_list_section .news_area{
		padding-inline: 0;
	}


	.news_list_section .news_area{
	padding-inline: 0;
}

	.news_list_section .category_flex{
		margin-bottom: 24px;
	}

	.news_list_section .category_list{
		gap:16px;
	}

	.news_list_section .category_list label{
		
		min-width: 115px;
		min-height: 32px;
		padding: 4px 8px;
	}


	.news_list_section .search_button{
		width: 56px;
		height: 32px;
	} 

	.news_list_section .search_button::after{
		width:17px;
		height:17px;
	}



	.news_list_section .common_page_nation{
		margin-top: 60px;
	}

	.news_single_section{
		padding-top: 160px;
		padding-bottom: 120px;
	}

	.news_single_section + .news_list_section{
		padding-top: 0;
	}

	.news_single_section .news_frame{
		padding-inline: 0;
		
	}

	.news_single_section .news_flex{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		position: relative;
		flex-direction: column;
		gap:40px 0;
	}

	.news_single_section .news_info_area{
		width:100%;
		flex-shrink: 0;
		margin-right: 0;
		position: static;
		left:0;
		top:var(--top_sticky);
	}

	.news_single_section .news_single_frame{
		width:100%;
	}

	.news_single_section .news_title{
		font-size: 24px;
	}

	.news_single_section .news_date_area{
		margin-top: 24px;

		gap:8px 0;
		font-size: 24px;
		line-height: 1.5;
	}

	.news_single_section .news_author{
		display: none;
	}

	.news_single_section .archive_link{
	
		margin:80px auto 0;
		font-size: 20px;
		line-height: 1;
	}

	.news_single_section .archive_link::before{
		width:32px;
		height:30px;

		margin-right: 24px;
	}

	.common_single_block{

	}

	.common_single_block h2{
		font-size: 24px;
		margin:24px 0;
	}

	.common_single_block h3{
		font-size: 20px;
		margin:16px 0;
	}

	.common_single_block p{
		margin:24px 0;
		line-height: 2;
	}


	/*
	------------------------------------
	よくある質問
	------------------------------------
	*/
	body.faq_body{
		
	}

	main.faq_main{
		
	}

	.faq_section{

	}

	.faq_section .sec_flex{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
	}

	.faq_section .sec_left{
		flex-shrink: 0;
		width:100%;
		padding-right: 0;
		position: static;
	}

	.faq_section .sec_right{
		width:100%;
		margin-top: 24px;
		padding-top: 56px;
		border-top:none;
	}

	.faq_list_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.faq_list_section .keyword_flex{
		display: flex;
		align-items: center;
	}

	.faq_list_section .keyword_head{
		flex-shrink: 0;
		width:175px;
		padding-right: 10px;
	}

	.faq_list_section .keyword_frame{
		width:100%;
		position: relative;
	}

	.faq_list_section .faq_keyword{

		height: 55px;
		padding-right:56px;
		padding-left: 20px;
	}

	

	.faq_list_section .faq_search_button{

		right:14px;
		padding:6px;
	}

	.faq_list_section .faq_search_button:after{

		width:17px;
		height:17px;
	}

	.faq_list_section .faq_tag_list{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap:16px 24px;
		margin-top: 80px;
	}

	.faq_list_section .faq_tag{
		cursor: pointer;
		min-height:60px;
		padding:4px 30px 4px 16px;
	}
	.faq_list_section .faq_tag::after{
		border-width: 10px 5px 0 5px;

		right:16px;
		top:0;
		bottom:0;
		margin:auto;
	}


	.faq_list_section .faq_list_area{
		margin-top: 80px;
	}

	.faq_list_section .faq_block{
		padding-inline: 40px;
	}

	.faq_list_section .faq_block + .faq_block{
		margin-top: 16px;
	}

	.faq_list_section .faq_block .faq_question{

		padding:24px 40px;
	}

	.faq_list_section .faq_block .faq_question::before{
		top:24px;

	}

	.faq_list_section .faq_block .faq_question::after{
		width:14px;
		height:14px;
		top:28px;
	}


	.faq_list_section .faq_block .faq_answer{
		padding:30px 40px;
		font-size: 14px;
	}

	.faq_list_section .faq_block .faq_answer::before{
		font-size: 16px;
		top:29px;
	}

	.faq_list_section .link_button_frame{
		margin-top: 56px;
	}


	.faq_flow_section{
		padding-bottom: 160px;

	}

	.faq_flow_section .faq_flow_area{
		padding-top: 60px;
	}

	.common_flow_contents{
		max-width: 660px;
		margin:0 auto;
	}

	.common_flow_contents .flow_list{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.common_flow_contents .flow_block{
		width:135px;
		height: 506px;
		display: flex;
		justify-content: center;
		padding:24px 0;
		
	}

	.common_flow_contents .flow_block_inner{
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.common_flow_contents .flow_num{
		display: flex;
		flex-direction: column;
		align-items: center;

	}

	.common_flow_contents .flow_num span{
		font-size: 32px;

	}

	.common_flow_contents .flow_num::after{
		width:5px;
		height:5px;
		margin-top: 16px;
	}

	.common_flow_contents .flow_text{
		font-size: 20px;
		writing-mode: vertical-rl;
		margin-top: 16px;
		
	}

	.common_flow_contents .flow_text span{
		display: inline-block;
		transform: translateX(3px);
	}

	.common_flow_contents .flow_arrow{
		width:22px;
		height:15px;
	}

	.common_flow_contents .flow_remark{
		margin-top: 48px;
		line-height: 1.5;
	}

	/*
	------------------------------------
	募集要項
	------------------------------------
	*/

	body.appli_body{
		
	}

	main.appli_main{
		
	}

	.appli_section{

	}

	.appli_search_section{
		padding-top: 100px;
		padding-bottom: 150px;
	}

	.appli_search_section .page_title{
		font-size: 64px;
	}

	.appli_search_section .page_sub_title{
		font-size: 24px;
		margin-top: 16px;
	}

	.appli_search_section .search_area{
		margin-top: 120px;
	}

	.appli_search_section .search_area + .search_area{
		margin-top: 120px;
	}

	.appli_search_section .search_head{
		font-size: 24px;
		padding-bottom: 12px;
	}

	.appli_search_section .check_list{
		gap:24px 40px;
		margin-top: 32px;
	}

	.appli_search_section .check_list label{
		font-size: 20px;
		gap:0 8px;
	}

	.appli_search_section .check_list .check_mark{
		width: 21px;
		height: 21px;
	}


	.appli_search_section .search_button{
	
		height: 95px;
	
		margin:88px auto 0;
		font-size: 30px;
	}


	.appli_list_section{
		padding-bottom: 180px;
	}


	.appli_list_section .appli_list{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		margin:0 auto;
		gap:0;
	}

	.appli_list_section .appli_block{
		width:100%;
		position: relative;
		padding:80px 0;
		
	}

	.appli_list_section .appli_block:nth-child(odd){
		padding-right: 0;
		padding-inline: 60px;
	}

	.appli_list_section .appli_block:nth-child(even){
		padding-left: 0;
		padding-inline: 60px;
	}
	.appli_list_section .appli_block:nth-child(even)::before{
		content:none;
		width:100%;
		height:1px;
		background-color: var(--black);
		position: absolute;
		left:0;
		top:0;
	}	

	.appli_list_section .appli_block + .appli_block:after{
		content:'';
		width:100%;
		height:1px;
		background-color: var(--black);
		position: absolute;
		left:0;
		top:0;
	}

	.appli_list_section .appli_flex{
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap:12px;
	}

	.appli_list_section .appli_job{
		font-size: 24px;
		padding-bottom: 4px;
	}

	.appli_list_section .appli_type{
		padding:4px 8px;


		font-size: 12px;
	}

	.appli_list_section .appli_guide{
		margin-top: 32px;

	}

	.appli_list_section .appli_info_list{
		margin-top: 40px;
	}

	.appli_list_section .appli_info_line{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding:20px 0;
		font-size: 20px;
	}

	.appli_list_section .appli_info_head{
		flex-shrink: 0;
		width:120px;
		padding-right: 10px;
	}

	.appli_list_section .appli_link{
		margin-top: 40px;
		max-width: 300px;
		margin-inline: auto;
		min-height: 56px;

	}

	.appli_list_section .appli_link::after{

		width: 13px;
		height: 9px;
		right:30px;
	}

	.appli_single_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.appli_single_section .page_title{
		font-size: 32px;
	}

	.appli_single_section .appli_logo{
		width:30px;
		margin:60px auto 0;
	}

	.appli_single_section .appli_info_list{
		margin:56px auto 0;
	}

	.appli_single_section .appli_info_block{
		display: flex;
		align-items: flex-start;
		padding-bottom: 40px;
	}

	.appli_single_section	.common_flow_contents .flow_block {
		width: 108px;	
	}


	.appli_single_section .appli_info_title{
		width:190px;
		margin-right: 8px;
		padding-top: 40px;
		line-height: 1.75;
	}

	.appli_single_section .appli_info_contents{
		padding-top: 40px;
		line-height: 1.75;
	}

	.appli_single_section .entry_button{
		max-width: 527px;
		
		margin:56px auto 0;
	}

	.appli_single_section .entry_button::after{
		
		width: 13px;
		height: 9px;

		right:24px;

	}


	.appli_single_section .list_link{
		margin:40px auto 0;
		display: block;
		width: fit-content;
	}
	/*
	------------------------------------
	お問い合わせ
	------------------------------------
	*/

	body.contact_body{
		
	}

	main.contact_main{
		
	}

	.contact_section{

	}

	.contact_section .sec_title_set{

	}

	.contact_section .sec_title_set .sec_title_ja{
		font-size: 24px;
	}

	.contact_section .sec_title_set .sec_title_en{
		font-size: 12px;
		margin-top: 5px;
	}

	.contact_guide_section{
		padding-top: 120px;
	}

	.contact_guide_section .guide_contents{
		position: relative;
		padding-inline: 0;
		
	}

	.contact_guide_section .guide_flex{
		display: flex;
		align-items: flex-start;
		flex-direction: column;
	}

	.contact_guide_section .guide_contents .guide_text{
		width:100%;
		padding-right: 0;

		font-size: 32px;

	}

	.contact_guide_section .guide_contents .guide_img_frame{
		width:100%;
		height:auto;
		aspect-ratio: 1 / 0.6;
		overflow: hidden;
		margin-top: 40px;
	}

	.contact_guide_section .tel_area{
		margin-top: 80px;
		padding-bottom: 80px;
		flex-direction: column;
	}

	.contact_guide_section .tel_head{
		width:100%;
		margin-bottom: 32px;
	}

	.contact_guide_section .tel_number{
		font-size: 64px;

		gap:0 8px;
	}
	.contact_guide_section .tel_number::before{
		width:50px;
		height:50px;
	}

	.contact_guide_section .tel_time{
		margin-top: 16px;
		line-height: 1.3;
	}
	.contact_guide_section .tel_remark{
		margin-top: 8px;
		line-height: 1.3;
	}

	.contact_form_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}


	.entry_form_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}


	/*
	------------------------------------
	フォーム共通
	------------------------------------
	*/

	.form_section{

	}

	.form_section .form_flex{
		position: relative;
		max-width: 1120px;
		flex-direction: column;
	}

	.form_section .form_left{
		width:100%;
		position: static;

	}

	.form_section .form_nav_header{
		display: none;

	}


	.form_section .form_nav_text{
		margin-top: 32px;
		line-height: 2;
	}

	.form_section .form_right{
		width:100%;
		margin-top: 40px;
	}

	.form_section .form_line{

	}

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

	.form_section .form_head{
		gap:0 8px;
		font-weight: 500;
		line-height: 1.3;
	}

	.form_section .form_head::before{

		width: 40px;
		height: 19px;
		border-radius: 20px;

		font-size: 12px;
	}


	.form_section .form_head span{
		font-size: 12px;
		line-height: 1.2;
	}

	.form_section .form_contents{
		margin-top: 16px;
	}

	.form_section .text_input{

		height: 66px;
		padding-inline: 24px;

	}

	.form_section textarea{
		height: 327px;
		border-radius: 10px;
		padding: 24px;
		line-height: 1.4;
	}


	.form_section .label_list .wpcf7-form-control{
		/* display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap:16px 24px; */
	}

	.form_section .label_list label{

		/* width: 134px; */
		min-height: 35px;
		padding:4px 12px;
	}


	.form_section .privacy_area{
		margin-top: 40px;
	}


	.form_section .agree_label{
		margin-top: 40px;
	}


	.form_section .agree_label input{
		width:20px;
		height:20px;
	}

	.form_section .submit_frame{
		margin-top: 40px;
	}

	.form_section .submit_frame::after{

		right:24px;
		top:21px;
	}

	.form_section .submit_frame input{

		width:260px;
		height:50px;
	
	}

	.form_section .recaptcha_text{
		margin-top: 56px;
		line-height: 1.5;
	}

	.form_section .recaptcha_text a{
		text-decoration: underline;
	}

	/*
	------------------------------------
	完了ページ
	------------------------------------
	*/

	body.complete_body{
		
	}

	main.complete_main{
		
	}

	.complete_section{
		padding-top: 220px;
		padding-bottom: 120px;
		min-height: calc(100vh - 240px);
	}

	.complete_section .finish_text01{
		font-size: 24px;
		text-align: center;
		font-weight: bold;
	}

	.complete_section .finish_text02{
		margin-top: 32px;
		text-align: center;
		line-height: 1.75;
	}

	.complete_section .top_link{
		margin:32px auto 0;
	}


	/*
	------------------------------------
	404
	------------------------------------
	*/

	.page404_section{
		padding-top: 160px;
		padding-bottom: 120px;
		min-height: calc(100vh - 240px);
	}


	.page404_section .p01{
		font-size:40px;
		font-weight: bold;
		text-align: center;
	}

	.page404_section .p02{
		width: fit-content;
		margin:32px auto 0;
		list-style: 1.5;
		font-size: 18px;
	}

	.page404_section .top_button{
		margin:32px auto 0;
	}

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