/*-------------------- mobile --------------------*/
@media screen and (max-width: 768px) {
	.mobile{
		display:block;
	}

	/*-------------------- header --------------------*/
	.company_header{
		display:block;
		height:auto;
	}
	.c_header_wrap{
		padding:0;
	}
	.c_header_top{
		display:block;
		position:relative;
		margin:0;
	}
	.c_header_logo{
		flex-direction:column;
		align-items:center;
		gap:0;
	}
	.c_header_logo .img{
		display:flex;
		align-items:center;
		max-width:240px;
		height:70px;
		padding:0 70px;
	}
	.c_header_logo .page{
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		height:24px;
		margin:0;
		padding:0;
		font-size:11px;
		border-radius:0;
	}
	.c_header_menu{
		display:none;
	}
	.c_header_bottom{
		display:none;
	}
	.c_header_hamburger{
		display:block;
		position:absolute;
		top:25px;
		right:20px;
		width:30px;
		height:20px;
		margin-bottom:1px;
		cursor:pointer;
		z-index:100;
	}
	.c_header_hamburger span{
		position:absolute;
		left:0;
		width:100%;
		height:1px;
		background-color:#595757;
		animation-duration:0.3s;
		animation-iteration-count:1;
		animation-timing-function:linear;
	}
	.c_header_hamburger span.top{
		top:0;
		transform:rotate(0deg);
	}
	.c_header_hamburger span.middle{
		top:50%;
		transform:rotate(0deg);
	}
	.c_header_hamburger span.bottom{
		top:100%;
		transform:rotate(0deg);
	}
	.c_header_nav{
		display:block;
		position:fixed;
		top:94px;
		left:0;
		bottom:0;
		width:100%;
		overflow:auto;
		opacity:0;
		visibility:hidden;
		z-index:300;
	}
	.c_header_nav nav{
		display:grid;
		background-color:#ffffff;
		border-top:1px solid #dfe3e3;
	}
	.c_header_nav nav a{
		display:block;
		padding:20px;
		font-family:"ryo-gothic-plusn", sans-serif;
		font-weight:500;
		font-style:normal;
		font-size:16px;
		border-bottom:2px solid #dfe3e3;
		background-image:url('images/header_mb_cursor.png');
		background-position:center right 22px;
		background-repeat:no-repeat;
		background-size:auto 10px;
	}
	.c_header_nav nav .header_toggle_mobile{
		display:block;
		padding:20px;
		font-family:"ryo-gothic-plusn", sans-serif;
		font-weight:500;
		font-style:normal;
		font-size:16px;
		border-bottom:2px solid #dfe3e3;
		background-image:url('images/header_mb_plus.png');
		background-position:center right 20px;
		background-repeat:no-repeat;
		background-size:auto 10px;
	}
	.c_header_nav nav .header_toggle_mobile.open{
		background-image:url('images/header_mb_minus.png');
		background-size:10px;
	}
	.c_header_nav nav .menu{
		display:none;
	}
	.c_header_nav nav .menu a{
		padding:20px 20px 20px 48px;
		font-size:16px;
		background-color:#dfe3e3;
		border-bottom:2px solid #ffffff;
		background-image:url('images/header_right_cursor.png');
		background-position:center right 20px;
		background-repeat:no-repeat;
		background-size:16px;
	}

	/*---------- mobile-nav > open ----------*/
	body.nav_open{
		overflow:hidden;
	}
	body.nav_open .c_header_nav{
		opacity:1;
		visibility:visible;
	}
	body.nav_open .c_header_hamburger span.top{
		top:50%;
		transform:rotate(30deg);
	}
	body.nav_open .c_header_hamburger span.middle{
		opacity:0;
	}
	body.nav_open .c_header_hamburger span.bottom{
		top:50%;
		transform:rotate(-30deg);
	}
	body.nav_open .c_header_nav{
		display:block;
	}
	/*---------- hamburger-animation ----------*/
	@keyframes nav_open_top{
		0%{
			top:0;
			transform:rotate(0deg);
		}
		50%{
			top:50%;
			transform:rotate(0deg);
		}
		100%{
			top:50%;
			transform:rotate(30deg);
		}
	}
	@keyframes nav_open_middle{
		0%{
			opacity:1;
		}
		50%{
			opacity:0;
		}
		100%{
			opacity:0;
		}
	}
	@keyframes nav_open_bottom{
		0%{
			top:100%;
			transform:rotate(0deg);
		}
		50%{
			top:50%;
			transform:rotate(0deg);
		}
		100%{
			top:50%;
			transform:rotate(-30deg);
		}
	}
	@keyframes nav_close_top{
		0%{
			top:50%;
			transform:rotate(30deg);
		}
		50%{
			top:50%;
			transform:rotate(0deg);
		}
		100%{
			top:0;
			transform:rotate(0deg);
		}
	}
	@keyframes nav_close_middle{
		0%{
			opacity:0;
		}
		50%{
			opacity:0;
		}
		100%{
			opacity:1;
		}
	}
	@keyframes nav_close_bottom{
		0%{
			top:50%;
			transform:rotate(-30deg);
		}
		50%{
			top:50%;
			transform:rotate(0deg);
		}
		100%{
			top:100%;
			transform:rotate(0deg);
		}
	}
	
/* 	.company_header .company_header_container {
		padding: 20px 0 30px;
	}
	.company_header .company_header_container .main_navigation {
		display: none;
	}
	.company_header .company_header_container .container .header_funtion {
		display: none;
	}
	.company_header .company_header_container .container {
		justify-content: center;
		position: relative;
	}
	.company_header .company_header_container .container .logo_header img {
		width: 200px;
	}
	.company_header .company_header_container .container .menu_icon{
		width: 24px;
		height: 22px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		cursor: pointer;
		position: absolute;
		right: 20px;
		top: 4px;
	}
	.company_header .company_header_container .container .menu_icon span {
		display: block;
		height: 4px;
		background-color: #333;
		border-radius: 2px;
		}
	.company_header .company_page_sp_title p{
		font-size: 12px;
		line-height: 18px;
		text-align: center;
		font-family: 'RedHatDisplay-Bold';
		margin: 0;
		padding: 5px 0;
		letter-spacing: 1px;
		color: var(--white);
		background-color: var(--gray);
	} */
	
	/*-------------------- footer --------------------*/
	.footer_wrap{
		padding:24px 25px 15px;
		border-top:2px solid #23231e;
	}
	.footer_top{
		margin-bottom:80px;
	}
	.footer_top .return{
		margin-bottom:35px;
		padding-bottom:24px;
		text-align:center;
	}
	.footer_top .nav{
		flex-direction:column;
		justify-content:flex-start;
		gap:10px;
	}
	.footer_bottom{
		flex-direction:column-reverse;
		align-items:center;
		gap:60px;
		margin-bottom:30px;
	}
	.footer_bottom .logo img{
		width:110px;
	}
	.footer_bottom .youtube{
		flex-direction:column-reverse;
		gap:15px;
	}
	.footer_bottom .youtube img{
		width:60px;
	}
	.footer_bottom .youtube p{
		padding:0;
		font-size:16px;
		line-height:24px;
		text-align:center;
	}
	.footer_bottom .youtube p:after{
		content:none;
	}
	.footer_copy p{
		font-size:11px;
		text-align:center;
	}
	.footer_top_return{
/* 		display:none; */
		right: 10px;
		bottom: 70px;
		left: auto;
		transform: none;
		width: auto;
	}
	.footer_contact_link{
/* 		display:none; */
		right:10px;
		bottom:160px;
		left:auto;
		transform:none;
		width:auto;
	}
	.footer_contact_link img{
		width:80px;
	}
	
/* 	.company_footer .company_footer_container {
		padding: 35px 20px 20px;
	}
	.company_footer .company_footer_container .site_top_container {
		text-align: center;
	}
	.company_footer .company_footer_container .footer_funtion_container {
		flex-direction: column;
	}
	.company_footer .company_footer_container .footer_logo_container {
		flex-direction: column-reverse;
		align-items: center;
		margin-top: 85px;
		gap: 40px;
	}
	.company_footer .company_footer_container .footer_logo_container .footer_logo_side {
		align-items: center;
		gap: 15px;
		flex-direction: column-reverse;
	}
	.company_footer .company_footer_container .footer_logo_container .footer_logo_side a {
		text-align: center;
	}
	.company_footer .company_footer_container .footer_copy_right_container {
		text-align: center;
		margin-top: 40px;
		font-size: 9px;
	}
	.company_footer .company_footer_container .footer_contact_link {
		right: 10px;
		bottom: 160px;
		left: auto;
		transform: none;
		width: auto;
	}
	.company_footer .company_footer_container .footer_contact_link img {
			width: 80px;
	}
	.company_footer .company_footer_container .footer_top_return {
		right: 10px;
		bottom: 70px;
		left: auto;
		transform: none;
		width: auto;
	}
	.company_footer .company_footer_container .footer_top_return img {
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
	} */

	.mb_t_l{
		text-align:left;
	}

	/*-------------------- main --------------------*/
	.company_main {
		padding-bottom: 0px;
	}
	.pc {
		display: none;
	}
	.ps {
		display: block;
	}
	.ps_img_full_width_fix{
		width: 100vw !important;
		margin-left: -20px !important;
	}
	/*-------------------- top --------------------*/
	.company_top {
		font-size: 18px;
	}
	.company_top .company_top_content_top {
		padding: 0 7.333vw;
		padding-top: 275px;;
	}
	.company_top .company_top_content_top h5 {
		font-size: 21px;
		line-height: 32px;
		margin-bottom: 25px;
		letter-spacing: 0.5px;
	}
	.company_top .company_top_content_top .company_top_row {
		justify-content: center;
	}
	.company_top .company_top_content_top .company_top_row p {
		font-size: 10px;
		line-height: 16px;
	}
	.company_top .company_top_content_top .company_top_row .hyphen_company_top {
		width: 10px;
		height: 1px;
	}
	.company_top .company_top_content_top .scroll_indicators h1 {
		margin-top: 20px;
		font-size: 100px;
		line-height: 120px;
	}
	.company_top .company_top_content_top .company_top_content_top_detail {
		margin-top: 70px;
	}
	.company_top .company_top_content_top .company_top_content_top_detail p {
		padding: 0 10px;
	}
	.company_top .vertical_lines {
		height: 60px;
		width: 6px;
		margin: 44px auto;
	}
	.company_top .company_top_content_about .content_head h2 {
		font-size: 55px;
		letter-spacing:2px;
	}
	.company_top .company_top_content_about {
		padding: 0 7.333vw;
		padding-bottom: 180px;
		margin: 40px 0 0;
		overflow: hidden;
	}
	.company_top .company_top_content_about .container {
		flex-direction: column-reverse;
		gap: 8px;
	}
	.company_top .company_top_content_about .container .block {
		position: relative;
		display: block;
		width: 100%;
		height: 58.667vw;
		border-radius: 70px 0 70px 0;
		color: white;
		text-decoration: none;
		margin-top: 0;
	}
	.company_top .company_top_content_about .container .block .title {
		top: 50px;
		left: 50px;
		font-size: 30px;
		letter-spacing:1px;
	}
	.company_top .company_top_content_business .content_head h2 {
		font-size: 55px;
		flex-direction: column;
		line-height: 51px;
	}
	.company_top .company_top_content_business .content_head h2 .business_text::before {
		width: 40px;
		height: 40px;
		margin: 0 8px 0 0;
	}
	.company_top .company_top_content_business {
		padding: 0 7.333vw;
		padding-top: 63px;
	}
	.company_top .company_top_content_business .content_head {
		top: -78px;
	}
	.company_top .company_top_content_business .content {
		padding-top: 75px;
		margin-bottom: 80px;
	}
	.company_top .company_top_content_business .content .content_link {
		flex-direction: column;
		justify-content: space-between;
		gap: 8vw;
		padding: 7.2vw 0 4vw;
	}
	.company_top .company_top_content_business .content .content_link .content_name {
		font-size: 6.4vw;
		width: 100%;
	}
	.company_top .company_top_content_business .content .content_link .view_more {
		gap: 5.333vw;
		font-size: 3.6vw;
		width: 100%;
		justify-content: end;
	}
	.company_top .company_top_content_business .content .content_link .content_name .content_icon {
		width: 10.667vw;
		height: 10.667vw;
		margin-right: 5.333vw;
		font-size: 3vw;
	}
	.company_top .company_top_content_oficgroup_bg {
		margin-top: 21.333vw;
		padding-top: 29.3333vw;
	}
	.company_top .company_top_content_oficgroup {
		padding: 11.467vw 7.333vw 12.8vw;
	}
	.company_top .company_top_content_oficgroup .company_name_box {
		align-items: flex-end;
		flex-direction: column;
		gap: 30px;
	}
	.company_top .company_top_content_oficgroup .company_name_box .company_name {
		width: 100%;
	}
	.company_top .company_top_content_oficgroup .company_name_box .company_name h2 {
		font-size: 14.133vw;
		line-height: 13.867vw;
		letter-spacing: 0.5px;
		white-space: nowrap;
	}
	.company_top .company_top_content_oficgroup .company_name_box .all_view {
		width: 50%;
		margin: 0;
		font-size: 3.6vw;
		padding: 0 0 4vw;
	}
	.company_top .company_top_content_oficgroup .container {
		grid-template-columns: 1fr;
		padding-top: 10.4vw;
	}
	.company_top .company_top_sustainability_bg {
		padding-bottom: 16vw;
	}
	.company_top .company_top_sustainability_bg::before {
		top: 17.333vw;
		left: 40.333vw;
		width: 66.667vw;
		height: 52vw;
	}
	.company_top .company_top_sustainability .content_head h2 {
		font-size: 12vw;
		line-height: 1;
		letter-spacing: 2px;
	}
	.company_top .company_top_sustainability .container {
		gap: 10px;
		padding-top: 16.533vw;
		flex-direction: column;
	}
	.company_top .company_top_sustainability {
		padding-left: 7.333vw;
		padding-right: 7.333vw;
		overflow: hidden;
		padding-bottom: 0;
	}
	.company_top .company_top_sustainability .container .box p {
		font-size: 6.667vw;
		line-height: 12.333vw;
	}
	.company_top .company_top_sustainability .container .box::after {
		bottom: 6.667vw;
		right: 6.667vw;
		width: 7.067vw;
		height: 7.067vw;
	}
	.company_service_recruit_links .box {
		height: 200px;
	}
	.company_service_recruit_links .box .img {
		height: 100%;
		margin: 0px;
	}
	.company_service_recruit_links .box .img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.company_service_recruit_links .left .text {
		justify-content: space-between;
		align-items: flex-start;
		top: 20px;
		right: 20px;
		bottom: 20px;
		left: 20px;
		width: auto;
		gap: 0;
		grid-template-columns: 1fr 60px;
		transform: none;
	}
	.company_service_recruit_links .box .text .title {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding:0;
	}
	.company_service_recruit_links .box .text img {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 60px;
	}
	.company_service_recruit_links .box .text .title .en {
		font-size: 34px;
		line-height: 42px;
	}
	.company_service_recruit_links .right .text {
		justify-content: space-between;
		align-items: flex-start;
		top: 20px;
		right: 20px;
		bottom: 20px;
		left: 20px;
		width: auto;
		gap: 0;
		grid-template-columns: 1fr 60px;
		transform: none;
	}
	.company_service_recruit_links .right .text {
		padding-left: 0;
	}
	.company_top .company_top_content_top_bg::before {
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/company/top_page_top_bg_sp_1.png");
		height: calc(100vw*2);
	}
	.company_top .company_top_content_about_bg {
		position: relative;
	}
	.company_top .company_top_content_about_bg::before {
		content: "";
		position: absolute;
		top: -76.333vw;
		width: 100%;
		height: 200vw;
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/company/top_page_top_bg_sp_about.png");
		background-repeat: no-repeat;
		background-position: top;
		background-size: cover;
		z-index: 10;
	}
	.company_top .company_top_content_about .content_head {
		margin-top: 130px;
	}
	.company_top .company_top_content_business .content::before {
		border-radius: 20px 20px 0 0;
	}
	/* .company_top .company_top_content_about_bg {
		overflow: hidden;
	} */
	.company_top .company_top_content_about .container::after {
		content: "";
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/company/about_dotline_img.png");
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		position: absolute;
		width: 513px;
		height: 125px;
		bottom: 99px;
		left: 50%;
		z-index: 10;
	}
	.company_top .company_top_content_oficgroup_bg::before {
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/company/top_background_4_2_fix.png");
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		width: 100%;
		height: 100%;
		background-position: top;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 10;
	}
	.company_top .company_top_sustainability .content_head {
		margin-top: 36px;
	}

	.company_top .company_top_content_oficgroup .container .box {
		width: 100%;
		height: 58.667vw;
	}
	.company_top .company_top_sustainability .container .box {
		width: 100%;
		height: 58.667vw;
		padding:20px 30px;
	}
	.contact_bot_button a {
		align-items: flex-start;
		justify-content: flex-start;
		position: relative;
		font-size: 35px;
		letter-spacing: 1px;
		margin-top: 0;
		border-radius: 0;
		border: none;
		border-top: 1px solid;
		height: 200px;
		padding: 40px 20px;
		box-sizing: border-box;
	}
	.contact_bot_button a img {
		height: 60px;
		width: 60px;
		top: auto;
		left: auto;
		bottom: 20px;
		right: 20px;
	}

	/*-------------------- philosophy --------------------*/
	.philosophy-greeting-container{
		overflow:hidden;

		header img.sub{
			width:auto;
		}
		.sub_wrap{
			padding:0 20px;
		}
		.page_title{
			padding:120px 0 30px;
			background-color:#E62413;
		}
		.page_title img{
			height:100px;
		}
		.page_breadcrumb{
			padding-top:20px;
		}

		.philosophy-greeting-title {
			padding-top: 80px;
			background-position: bottom;
			background-repeat: no-repeat;
			background-size: cover;

			.mobile_none{
				display: none;
			}
			.pc_none {
				display: block;
				font-size: 35px;
				letter-spacing: 6px;
			}
			.head_philosophy-greeting-title {
				padding: 0 25px;
			}
			h2{
				font-size: 55px;
				line-height: 52px;
			}
			h3{
				font-size: 35px;
				width: fit-content;
				margin-top: 2px;
			}
			p{
				margin: 20px 0 99px;
				font-size:20px;
			}
		}

		.philosophy-box-img{
			display: flex;
			width: 100%;
			align-items: center;
			justify-content: space-between;
			position:relative;

		}
		.philosophy-box-img {
			width: 100%;
			background-position: center;
			border-bottom-right-radius: 10%;
			background-repeat: no-repeat;
	/* 		overflow: hidden; */
			background-size: cover;
			margin-top: 40px;
		}
		img.philosophy-banner{
			width:90%;
		}
		.circle-container .banner_red_blue_pc{
			display: none;
		}
		 .circle-container{
			position: absolute;
			width: 100%;
			right: -58%;
			top:0;
			 bottom:auto;
			transform: translateY(-20%);
			 margin:0;
			overflow: hidden;
			z-index: 1;

		} 
		.circle-container img{
			width: 100%;
			height: 318px;;
			display: block;
		}

		.philosophy-content-box{
			margin: 80px auto 0 auto;
			padding: 0 25px;

			p{
				font-size: 16px;
				line-height:27px;
			}
			.sign_line {
				font-size: 14px;
				margin: 0;
				margin-top: 57px;
			}
			.sign_line_name {
				font-size: 24px;
				margin-left: 21px;
			}
		}
		.p_flex{
			display: flex;
			justify-content: end;
			gap: 50px;
			margin-top: 80px;
			align-items: center;
		}

		.p_name_2{
			font-size: 35px !important;
			font-weight: bold;
		}
		.space-after{
			margin-right: 5px;
		}

	}

	.ofic_group{
		padding-top: 239px;

		header img.sub{
			width:auto;
		}
		.sub_wrap{
			padding:0 20px;
		}
		.page_title{
			padding:120px 0 30px;
			background-color:#E62413;
		}
		.page_title img{
			height:100px;
		}
		.page_breadcrumb{
			padding-top:20px;
		}

		header img.sub{
			width:auto;
		}
		.sub_wrap{
			padding:0 20px;
		}
		.page_title{
			padding:120px 0 30px;
			background-color:#E62413;
		}
		.page_title img{
			height:100px;
		}
		.page_breadcrumb{
			padding-top:20px;
		}

		h2{
			font-size: 30px;
			line-height: 45px;
			margin-top: 0;
		}

		.p_description_1{
			margin-top: 40px;
			font-size: 16px;
			line-height: 27px;
		}
		p{
			line-height: 40px;
		}
		.moderate-border{
			padding: 0 20px;
		}
		.moderate-border h3{
			padding-left: 20px;
			font-size: 27px;
			line-height: 42px;
			border-left: 6px solid #0075c1;
		}
		.moderate-border img{
			position: absolute;
			top: 0;
			width: 500px;
			left: -42%;
		}
		.moderate-border h2 br{
			display: none;
		}

		.info-box{
			padding: 0px 25px;
			margin-bottom: 80px;
		}
		.philosophy-content-box{
			margin-top: 80px;
			padding-bottom: 47px;

			h3{
				color: #0075C2;
				font-size: 40px;
				line-height: 48px;
				letter-spacing: 3px;
				text-align: center;
			}
			.phi-subtitle{
				margin-top: 10px;
				color: #0075C2;
				font-size: 23px;
				line-height:30px;
				font-family: 'ZenOldMincho-Bold', Arial, sans-serif;
			}
			.phi-description_1{
				font-size: 18px;
				line-height: 28px;
				margin-top: 37px;
			}
		}
		.purpose-value-content-box {
			margin-top: 48px;
			padding-bottom: 44px;
		}

		.purpose-value-content-box p {
			font-size: 18px;
			line-height: 28px;
		}

		.purpose-value-content-box h3 {
			font-size: 42px;
			line-height: 40px;
			letter-spacing: 3px;
		}

		.purpose-value-content-box::after {
			content: "";
			position: absolute;
			bottom: 0px; 
			left: 50%;
			transform: translateX(-50%);
			width: 0;
			height: 0;
			border-left: 10px solid transparent;
			border-right: 10px solid transparent;
			border-bottom: 15px solid #0075C2; 
		}
		.p_grid_2{
			grid-template-columns: repeat(1, 1fr);
		}
		.purpose-value-content-box .purpose-value-description{
			text-align: center;
			margin-top: 37px;
		}
		.purpose-value-content-box .purpose_value_description_t_l {
			text-align: start;
			margin: 0 auto;
			margin-top: 37px;
		}


		/* CONTACT BUTTON */
		.contact-button{
			display: none;
		}
		.contact-button-mb {
			display: flex;
			flex-direction: column;
			width: 100%;
			margin-top: 100px;
			border-top: 2px black solid;
			padding: 30px 20px;

		}

		.circle-mb {
			width: 60px;
			height: 60px;
			border-radius: 50%;
			background-color: black;
			display: flex;
			justify-content: center;
			align-self: flex-end;
			align-items: center;
		}

		.arrow-mb {
			color: white;
			font-size: 24px;
		}
		.text-container-mb {
			display: flex;
			flex-direction: column;
			gap: 10px;
		}

		.contact-mb {
			font-size: 35px;
			font-weight: bold;
			font-family: 'RedHatDisplay-Bold';
			letter-spacing: 2px;
			color: #333;
			margin: 0;
		}

		.japanese-mb {
			font-size: 17px;
			font-weight: bold;
			margin: 0;
			font-family: "ryo-gothic-plusn", sans-serif;
			letter-spacing: 3px;
		}


		/* cirle button */
		.circle-button {
			display: none;
		}


	}

	.ofic_group_title{
		margin-bottom:80px;

		h2{
			font-size:55px;
			line-height:70px;
		}
		p{
			margin-top:34px;
			font-size:34px;
			line-height:58px;
		}
	}

	/*------------------overview-----------------*/
	.overview,
	.ofic_box {
		.img_banner {
			width: 100%;
			display: flex;
			position: relative;
			flex-direction: column;
			padding-top: 80px;
			height: 530px;
			overflow-x: hidden;
			background-size: contain;
			background-position: top;

			.overview_title {
				max-width: 750px;
				width: max-content;
				font-family: 'RedHatDisplay-SemiBold';
				font-size: 126px;
				line-height: 81.9px;
				/* background-color: #FACBCC; */
				margin: 0 auto;
			}

			.overview_title h2 {
				padding: 0;
				text-align: center;
				font-size: 63px;
				line-height: 41px;
				margin-bottom: 71px;
			}

			.img_banner_content {
				width: 100%;
				margin-bottom: 125px;

				.tower_img {
					height: 292px;
					width: 80%;
					border-radius: 0 0 67px 0;
					background-position: 50% 36%;
					background-size: 150%;
				}

				h3 {
					font-family: 'ZenOldMincho-Bold';
					font-size: 35px;
					writing-mode: vertical-rl;
					letter-spacing: 15px;
					margin: 0 30px;
				}

				.red_circle {
					width: 150px;
					height: 150px;
					position: absolute;
					left: 54%;
					top: 223px;
					border-radius: 100%;
					background: linear-gradient(-45deg, #B3000F, #E60012);

				}

				.gray_circle {
					width: 55px;
					height: 55px;
					overflow: hidden;
					position: absolute;
					left: 94%;
					top: 210px;
					border-radius: 100%;
					background: linear-gradient(-45deg, #657689, #8696A6);
				}
			}
		}

		.company_info {
			margin: 0;
			padding: 0 25px;

			.company_wapper {
				margin: 0 auto;

				h3 {
					position: relative;
					align-content: center;
					font-size: 18px;
					line-height: 24px;
					padding-bottom: 19px;
					margin-bottom: 74px;

					.blue_stroke {
						position: absolute;
						width: 20px;
						top: 41px;
						border-bottom: 3pt solid #0060A0;
					}

					.red_stroke {
						position: absolute;
						width: 20px;
						top: 41px;
						left: 20px;
						border-bottom: 3pt solid #B3000F;
					}

					.gray_stroke {
						position: absolute;
						width: 20px;
						top: 41px;
						left: 40px;
						border-bottom: 3pt solid #657689;
					}
				}

				.company_document {
					margin-top: 0;

					.info_box {
						flex-wrap: nowrap;
						display: flex;
						flex-direction: column;
						font-size: 16px;
						border-bottom: 1px solid #DFE3E3;
						padding: 0 0 40px 0;
						line-height: 27px;
						gap: 32px;
						margin-top: 27px;

						h4 {
							font-weight: 400;
							font-size: 16px;
						}

						p {
							margin-top: 0;
							font-size: 16px;
						}
					}

					.map_info {
						margin: 28px 0 120px 0;

						.btn_map_link {
							padding: 10px 0;
						}

						img {
							height: 16px;
						}
					}
				}



				.ofic_title {
					max-width: 100%;
					margin-top: 30px;
					display: flex;
					flex-direction: column;
					text-align: center;
					align-items: center;
					font-size: 16pt;
					line-height: 37pt;
					letter-spacing: 2px;
					padding: 0;


					img {
						margin-top: 30px;

					}
					p{
						font-size: 16px;
						line-height: 38px;
					}
				}

				.document_box {
					font-size: 38px;
					line-height: 82px;
					margin-top: 30px;
					display: flex;
					flex-direction: column;
					gap: 20px;

					p {
						border-bottom: 2px dashed #8696A6;
						font-size: 20px;

					}

					span {
						font-size: 16px;
						line-height: 38px;
					}

				}

				.character_content {
					display: flex;
					flex-direction: column;
					gap:48px;
					max-width: 100%;
					margin-top: 40px;

					img {
						padding: 0 34px;
					}

					.character_text {
						font-size: 21px;
						line-height: 54pt;

						.character_title {
							border-bottom: 2px dashed #8696A6;
							justify-content: center;

							.character_subtitle {
								font-size: 35px;
							}
							.furigana {
								font-size: 12px;
								height: 0px;
							}
						}

						.character_document {
							font-size: 16pt;
							line-height: 2;
							font-weight: 700;
							padding: 0;
							border-bottom: 2px dashed #8696A6;

							p {
								grid-template-columns:180px 1fr;
								margin: 10px 0;
							}

							.label {
								font-weight: bold;
								color: black;
								font-size: 16px;
							}

							.value {
								color: #007acc;
								font-size: 16px;
							}
						}
					}
				}

				.btn_profile {
					background-color: #F3F7F7;
					min-height: 220px;
					display: flex;
					flex-direction: column;
					border-radius: 268px;
					justify-content: center;
					align-items: center;
					gap: 0;
					padding: 62px 40px 79px 40px;

					h4 {
						font-size: 20px;
					}

					p {
						font-size: 16px;
						line-height: 31px;
					}
				}
				.btn_tv_title {
					font-size: 20px;
				}
				.btn_page {
					flex-direction: column;
					padding-top: 0;
					margin: 50px 0;

					img{
						width: 100%;
					}
				}

				.btn_contact {
					padding: 100px 0 0 0;

					img{
						width: 100%;
					}
				}
			}
		}
		.group_companies_box {
			margin-top: 145px;

			.company_wapper{
				h3{
					margin-bottom: 30px;
				}
			}


		}
		.major_clients_box {
			margin-top: 143px;
			margin-bottom: 80px;

			.company_wapper {
				h3 {
					margin-bottom: 57px;
				}
			}
		}



		.btn_wapper {
			margin: 0px 0 10px 0;
			padding: 0;



			.btn_box {
				width: 100%;
				cursor: pointer;

				.box_title {
					justify-content: space-between;
					flex-wrap:wrap;
					padding: 20px 25px;

					span {
						font-size: 18px;
						line-height: 24px;

					}

					.icon_plus {
						width: 30px;
						height: 30px;
						color: #657689;
						line-height: 28px;

					}

				}

				.box_content {
					width: 100%;
					padding:20px 0px 40px;
					font-size: 16px;
					line-height: 27px;

					.box_subtitle {
						margin: 0 20px 2px;
						padding: 14px 20px;
						font-size: 16px;
						line-height: 26px;
						color: #fff;
						background-color: #8696A6;
					}
					a {
						padding: 0 20px;
					}
					.box_item {
						display: flex;
						flex-direction: column;
						background-color: #F8FAFA;
						margin-bottom: 0px;
						padding: 0px 25px;
						align-items: flex-start;

						.txt_underline {
							text-decoration: underline;
						}

						.box_year {
							min-width:140px;
							min-height:45px;
							padding: 0;
							flex-direction: row;
							gap: 10px;
							font-size: 14px;
						}

						.w_min_100 {
							min-width: 100%;
						}

						.bg_gray {
							flex-direction:column;
							gap:5px;
							background-color: #595757;
							font-size: 14px;
							line-height:26px;
							padding: 10px 20px;
						}

						.box_text {
							border-bottom: 1px dotted #8696A6;
							padding: 20px 0 20px 0;
							display: flex;
							flex-grow: 1;
							flex-direction: column;
							font-size: 16px;
							line-height: 27px;
							width: 100%;

							u {
								display: inline;
								color: #0075C2;
								text-decoration: underline;
								line-height: 1;
							}
						}
					}
					.container{
						padding:0 20px;

						&.col2{
							grid-template-columns:1fr;
						}
						ul{
							li{
								font-size:16px;
								line-height:30px;
							}
							&.lg{
								li{
									font-size:23px;
									line-height:46px;
								}
							}
						}
					}
				}


			}
		}
		.group_companies_btn_wapper_box{
			.btn_box {
				.box_title {
					justify-content: space-between;
					padding: 20px 25px;
					flex-direction: row;
					a {
						font-size: 18px;
						line-height: 28px;
					}

					span {
						font-size: 12px;
						line-height: 27px;
					}
				}
			}
		}
	}
	.btn_map_link {
		span {
			font-size: 12px;
			line-height: 27px;
		}
	}
	.overview .btn_wapper .btn_box .box_title .group_companies_box_note {
		margin-left:auto;
		font-size: 12px;
		line-height: 24px;
	}

	/*------------------------safety--------------------------*/
	.company_contents .company_safety_content_1 {
		margin: 0 25px;
	}
	.company_contents .company_safety_content_1 .content_head h1 {
		letter-spacing: 4px;
		font-size: 55px;
		line-height: 62px;
	}
	.company_contents .company_safety_content_1 .content_head p {
		font-size: 25px;
		letter-spacing: 6px;
	}
	.company_contents .company_safety_bg_1 {
		padding-top: 80px;
		background-position: center;
		height: auto;
	}
	.company_contents .company_safety_content_1 h2 {
		align-items: baseline;
		font-size: 22px;
		line-height: 33px;
		margin: 60px 0 40px 0;
		gap: 20px;
	}
	.company_contents .company_safety_content_1 h2 span {
		font-size: 14px;
		letter-spacing: 0px;
		line-height: 28px;
		height: 32px;
		width: 32px;
		min-width: 32px;
		margin-right: 0;
	}
	.company_contents .company_safety_content_1 .contents .content_1 h3 {
		font-size: 19px;
		padding: 10px 0;
		letter-spacing: 1px;
		margin: 41px 0 36px 0;
		line-height: 19px;
	}
	.company_contents .company_safety_content_1 .contents .content_1 p span {
		width: 27px;
		height: 27px;
		background-color: #0075c2;
		color: white;
		font-size: 16px;
		margin-right: 27px;
		padding: 0;
	}
	.company_contents .company_safety_content_1 .contents .content_1 p {
		font-size: 16px;
		line-height: 27px;
	}
	.company_contents .company_safety_content_1 .contents .content_2 p.line_1 {
		font-size: 19px;
		line-height: 31px;
		margin-bottom: 31px;
	}
	.company_contents .company_safety_content_1 .contents .content_2 p {
		margin: 0 0 23px 0;
		font-size: 16px;
		line-height: 27px;
	}
	.company_contents .company_safety_content_1 .contents .content_3 .list {
		margin: 30px 0;
		font-size: 16px;
		line-height: 40px;
	}
	.company_contents .company_safety_content_1 .contents .content_3 .list li::before {
		width: 24px;
		height: 24px;
		min-width: 24px;
		margin-right: 0;
	}
	.company_contents .company_safety_content_1 .contents .content_2 .sign_line {
		font-size: 12px;
		margin: 63px 0 120px;
	}
	.company_contents .company_safety_content_1 .contents .content_2 .sign_line_name {
		font-size: 20px;
		margin-left: 17px;
		display: block;
	}
	.company_contents .company_safety_content_1 .contents .content_1 img {
		margin-bottom: 23px;
	}
	.company_contents .company_safety_content_1 .contents .content_4 .custom-link {
		letter-spacing: 2px;
		font-size: 21px;
		padding: 22px 0;
	}
	.company_contents .company_safety_content_1 .contents .content_3 .list li {
		align-items: flex-start;
		margin: 20px 0;
		gap: 19px;
		font-size: 18px;
		line-height: 24px;
	}
	.company_safety_contents{
		font-size: 16px;
		line-height: 27px;

	}


	/*-------------------steel-----------------*/
	.company_contents .company_steel_bg_1 .company_steel_content_1 {
		padding: 80px 0 0 0;
	}
	.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head h1 {
		font-size: 48px;
		letter-spacing: 5px;
		line-height: 50px;
	}
	.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head p {
		margin: 22px 0 0 0;
		font-size: 24px;
		line-height: 30px;
	}
	.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head .contents p {
		margin-top: 72px;
		font-size: 16px;
		line-height: 27px;
		padding: 0px 25px;
	}
	.company_contents .company_steel_content_2 {
		   padding: 0 20px;
	}
	.company_contents .company_steel_content_2 .container_title_boxs {
		margin-top: 30px;
	}
	.company_contents .company_steel_content_2 .container_title_boxs .container_title_box{
		padding:10px 0;
	}
	.company_contents .company_steel_content_2 .container_title_boxs .container_title_box .title_jp {
		font-size: 16px;
	}
	.company_contents .company_steel_content_2 .container_title_boxs .container_title_box .title_en {
		margin:5px 0 0;
		font-size: 14px;
	}
	.company_contents .company_steel_content_2 .container_title_boxs_1 {
		justify-content: flex-start;
		margin-top: 40px;
		flex-direction: column;
		align-items: flex-start;
	}
	.company_contents .company_steel_content_2 .container_title_boxs_1 .title_before {
		width: 150px;
		height: 33px;
		font-size: 14px;
	}
	.company_contents .company_steel_content_2 .container_title_boxs_1 .title_behide {
		font-size: 10px;
	}
	.group_local_container{
		display: grid;
		gap: 8px;
		margin-top: 38px;
		padding: 0 25px 80px;
	}
	.group_local_container .box{
		display:grid;
		gap:18px;
		padding:20px;
		border:2px solid #8696a6;
		border-radius:8px;
	}
	.group_local_container .box dl{
		margin:0;
	}
	.group_local_container .box dl dt{
		margin: 0 0 17px;
		padding-left:21px;
		background-color:inherit;
		background-position:center left;
		background-repeat:no-repeat;
		background-size:16px;
		line-height: 15px;
	}

	.group_local_container .box dl dt.red{
		background-image:url('/wp/wp-content/themes/osakafuji/images/en/company/cursor_red_icon.png');
	}
	.group_local_container .box dl dt.yellow{
		background-image:url('/wp/wp-content/themes/osakafuji/images/en/company/cursor_yellow_icon.png');
	}
	.group_local_container .box dl dt.blue{
		background-image:url('/wp/wp-content/themes/osakafuji/images/en/company/cursor_blue_icon.png');
	}
	.group_local_container .box dl dt.green{
		background-image:url('/wp/wp-content/themes/osakafuji/images/en/company/cursor_green_icon.png');
	}
	.group_local_container .box dl dt a{
		font-family:'RedHatDisplay-SemiBold';
		font-size: 16px;
		line-height:24px;
	}
	.a_style_none {
		text-decoration: none !important;
		color: #23231e !important;
	}
	.group_local_container .box dl dd{
		margin:0;
		font-size:14px;
		line-height:23px;
		margin-bottom: 20px;
	}
	.group_local_container .box dl dd:last-child{
		margin-bottom: 0;
	}
	.group_company_container{
		gap:120px;
		margin-bottom:120px;
	}

	#map_steel map #map1{
		position: absolute;
		top: 73.7%;
		right: 20px;
		width: 19.6%;
		height: 11%;
	}
	#map_steel map #map2{
		position: absolute;
		top: 8.4%;
		left: 20px;
		width: 20%;
		height: 14.8%;
	}
	#map_steel map #map3{
		position: absolute;
		top: 43.7%;
		right: 20px;
		width: 20%;
		height: 12.8%;
	}
	#map_steel map #map4{
		position: absolute;
		top: 32.7%;
		right: 20px;
		width: 20%;
		height: 10.3%;
	}
	#map_steel map #map5{
		position: absolute;
		top: 83.5%;
		left: 20px;
		width: 20%;
		height: 14.8%;
	}
	#map_steel map #map6{
		position: absolute;
		top: 32.8%;
		left: 20px;
		width: 20%;
		height: 24%;
	}
	#map_steel map #map7{
		position: absolute;
		top: 60.4%;
		left: 20px;
		width: 20%;
		height: 11.8%;
	}
	#map_steel map #map8{
		position: absolute;
		top: 72.9%;
		left: 20px;
		width: 20%;
		height: 10%;
	}
	#map_steel map #map9{
		position: absolute;
		top: 57%;
		right: 20px;
		width: 20%;
		height: 16%;
	}
	#map_steel map #map10{
		position: absolute;
		top: 8.5%;
		left: 40.2%;
		width: 19.8%;
		height: 16%;
	}
	#map_steel map #map11{
		position: absolute;
		top: 24%;
		left: 20px;
		width: 20%;
		height: 8.3%;
	}

	/*---------- 表面改質事業 ----------*/
	#map_sm map #map1{
		position: absolute;
		top: 13.8%;
		left: 20px;
		width: 29.7%;
		height: 2%;
	}
	#map_sm map #map2{
		position: absolute;
		top: 16.5%;
		left: 20px;
		width: 29.7%;
		height: 2%;
	}
	#map_sm map #map3{
		position: absolute;
		top: 19.2%;
		left: 20px;
		width: 29.7%;
		height: 2%;
	}
	#map_sm map #map4{
		position: absolute;
		top: 21.8%;
		left: 20px;
		width: 29.7%;
		height: 2%;
	}
	#map_sm map #map5{
		position: absolute;
		top: 26.8%;
		left: 20px;
		width: 29.7%;
		height: 19.8%;	
	}
	#map_sm map #map6{
		position: absolute;
		top: 47.5%;
		left: 20px;
		width: 29.7%;
		height: 5.4%;
	}
	#map_sm map #map7{
		position: absolute;
		top: 53.6%;
		left: 20px;
		width: 29.7%;
		height: 5.2%;
	}
	#map_sm map #map8{
		position: absolute;
		top: 81%;
		left: 20px;
		width: 27.8%;
		height: 10.6%;
	}
	#map_sm map #map9{
		position: absolute;
		top: 92.4%;
		left: 20px;
		width: 27.8%;
		height: 5.4%;
	}
	#map_sm map #map10{
		position: absolute;
		top: 12.2%;
		left: 39.8%;
		width: 24.8%;
		height: 7.8%;
	}
	#map_sm map #map11{
		position: absolute;
		top: 22.6%;
		left: 39.8%;
		width: 24.8%;
		height: 2%;
	}
	#map_sm map #map12{
		position: absolute;
		top: 25.4%;
		left: 39.8%;
		width: 24.8%;
		height: 4.6%;
	}
	#map_sm map #map13{
		position: absolute;
		top: 81%;
		left: 43.8%;
		width: 24.2%;
		height: 8.5%;
	}
	#map_sm map #map14{
		position: absolute;
		top: 40.6%;
		right: 20px;
		width: 24%;
		height: 5.4%;
	}
	#map_sm map #map15{
		position: absolute;
		top: 46.8%;
		right: 20px;
		width: 24%;
		height: 10.6%;
	}
	#map_sm map #map16{
		position: absolute;
		top: 58.2%;
		right: 20px;
		width: 24%;
		height: 14.2%;
	}
	#map_sm map #map17{
		position: absolute;
		top: 73.2%;
		right: 20px;
		width: 24%;
		height: 8.2%;
	}

	/*---------- グループ会社 ----------*/
	.group_local_map map[name="ofic_group_map"] #map1 {
		position: absolute;
		top: 0;
		left: 10%;
		width: 31%;
		height: 7%;
	}
	.group_local_map map[name="ofic_group_map"] #map2 {
		position: absolute;
		top: 7.5%;
		left: 10%;
		width: 31%;
		height: 8%;
	}
	.group_local_map map[name="ofic_group_map"] #map3 {
		position: absolute;
		top: 16.5%;
		left: 10%;
		width: 31%;
		height: 7.6%;
	}
	.group_local_map map[name="ofic_group_map"] #map4 {
		position: absolute;
		top: 25%;
		left: 10%;
		width: 31%;
		height: 9%;
	}
	.group_local_map map[name="ofic_group_map"] #map5 {
		position: absolute;
		top: 52.3%;
		left: 7%;
		width: 31.2%;
		height: 6%;
	}
	.group_local_map map[name="ofic_group_map"] #map6 {
		position: absolute;
		top: 59%;
		left: 7%;
		width: 31.2%;
		height: 7.6%;
	}
	.group_local_map map[name="ofic_group_map"] #map7 {
		position: absolute;
		top: 0%;
		right: 7%;
		width: 34.8%;
		height: 7.8%;
	}
	.group_local_map map[name="ofic_group_map"] #map8 {
		position: absolute;
		top: 8.6%;
		right: 7%;
		width: 34.8%;
		height: 6%;
	}
	.group_local_map map[name="ofic_group_map"] #map9 {
		position: absolute;
		top: 31.2%;
		right: 7%;
		width: 31%;
		height: 6%;
	}
	.group_local_map map[name="ofic_group_map"] #map10 {
		position: absolute;
		top: 41.8%;
		right: 7%;
		width: 31%;
		height: 12.6%;
	}
	.group_local_map map[name="ofic_group_map"] #map11 {
		position: absolute;
		top: 59.2%;
		right: 20.4%;
		width: 35.8%;
		height: 5.8%;
	}
	.group_local_map map[name="ofic_group_map"] #map12 {
		position: absolute;
		bottom: 7.4%;
		right: 15.6%;
		width: 34%;
		height: 5.8%;
	}

	.company_contents .company_steel_content_3 {
		margin: 0 25px;
		padding-top: 145px;
	}
	.company_contents .company_steel_content_3 .section {
		margin: 0 0 35px 0;
	}
	.company_contents .tech_cen_content_3 .tech_cen_content_section {
		margin: 60px 0 40px 0;
	}
	.company_contents .company_steel_content_3 .line_container{
		margin-top:20px;
	}
	.company_contents .company_steel_content_3 .section h3 {
		font-size: 18px;
		line-height: 27px;
		letter-spacing:1px;
	}
	.company_contents .company_steel_bg_3 {
		padding-top: 18px;
		padding-bottom:25px;
	}

	/*----------------------- Construction -----------------------*/
	.company_contents .company_top_content {
			padding: 80px 0 0 0;
	}
	.company_contents .company_top_content .content_head h1 {
		font-size: 48px;
		letter-spacing: 5px;
		line-height: 50px;
	}
	.company_contents .company_top_content .content_head .content_head_detail {
		margin: 22px 0 0 0;
		font-size: 24px;
		line-height: 30px;
	}
	.company_contents .company_top_content .content_head .contents {
		margin-top: 72px;
		font-size: 16px;
		line-height: 27px;
		padding: 0px 25px;
	}
	.company_contents .company_content_box {
		padding: 0 25px;
		margin-top: 105px;
	}
	.company_contents .company_content_box .content_box_title {
		margin: 0 0 35px 0;
	}
	.company_contents .company_content_box .content_box_title h3 {
		font-size: 18px;
		line-height: 24px;
	}
	.company_contents .company_content_box .content_box_title .line_container {
		margin-top: 18px;
	}
	.company_contents .company_content_box .content_box_detail .img_grid_box {
		grid-template-columns: repeat(1, 1fr);
	}
	.company_contents .company_content_box .content_box_detail {
		margin-bottom: 80px;
	}

	/*----------------------- surface-modification -----------------------*/
	.company_surface_modif_contents .company_steel_bg_1 .company_steel_content_1 .content_2_links_box {
		gap: 10px;
		flex-direction: column;
		padding: 0 25px;
	}
	.company_surface_modif_contents .company_steel_bg_1 .company_steel_content_1 .content_head .contents {
		margin-bottom: 72px;
	}
	.company_surface_modif_contents .company_steel_bg_1 .company_steel_content_1 .content_2_links_box .content_2_link_boxs {
		padding: 36px;
		width: 100%;
		border: 2px solid;
		border-radius: 54px;
		font-size: 20px;
		box-sizing: border-box;
	}
	.company_surface_modif_contents .company_steel_bg_1 .company_steel_content_1 .content_2_links_box .content_2_link_boxs::after {
		width: 28px;
		height: 28px;
		right: 36px;
	}
	.bg-modification-partner .partner-wrapper .partner-container .flex-wrapper {
		grid-template-columns: repeat(1, 1fr);
		margin: 31px 15px 10px;
		gap: 18px;
	}
	.bg-modification-partner {
		background-color: #DFE3E3;
		padding: 14px 15px 80px;
	}
	.company_surface_modif_contents .company_steel_content_3 {
		padding-top: 103px;
	}
	.bg-modification-partner .partner-wrapper .section {
		position: relative;
		max-width: 1100px;
		margin: 0 15px;
	}
	.bg-modification-partner .partner-wrapper .section h3 {
		font-size: 18px;
		margin: 23px 0 0 0;
	}
	.bg-modification-partner .partner-wrapper .line_container {
		margin-top: 14px;
	}
	partner .partner-wrapper .partner-container .text_detail {
		font-size: 16px;
		line-height: 27px;
	}
	.company_surface_modif_contents .group_local_container .box dl dt:last-child {
		margin-bottom: 0;
	}
	.company_pb{
		padding-bottom: 0;
	}

	/*-------------------- ofic-group --------------------*/
	.company_wrap {
		font-size: 16px;
	}
	.company_wrap{
		padding-right: 25px;
		padding-left: 25px;

		.btn_map_link{
			padding:10px 30px 10px 0px;
		}
	}
	.group_mv{
		padding-top:80px;
		padding-bottom:100px;
	}
	.group_mv .title{
		margin-bottom: 28px;
	}
	.group_mv .title h1{
		flex-direction: column;
		justify-content: flex-start;
		align-items: baseline;
		font-size: 55px;
		line-height: 54px;
		letter-spacing: 1px;
	}
	.group_mv .title h1 span{
		font-size:63px;
		line-height:73px;
	}
	.group_mv .container{
		grid-template-columns:71px 1fr;
		gap:55px 28px;
	}
	.group_mv .container h2{
		grid-row:1;
		font-size: 22px;
		margin-bottom: 24px;
	}
	.group_mv .container p{
		font-size: 16px;
		line-height: 27px;
	}
	.group_mv .container .group_top_img img {
		width: 100%;
	}
	.group_mv .container .group_top_img {
		margin-top: 35px;
	}
	.group_mv .container img{
		grid-column:1/3;
		grid-row:2;
		width:100%;
	}

	.group_local{
		margin-bottom: 60px;
	}
	.group_loca .group_local_container .box dl dt a {
		color: #0075C1;
		text-decoration: underline;
	}

	.group_headline{
		margin: 0 0 36px;
	}
	.group_headline h2{
		padding:0 0 22px;
		font-size:23px;
		line-height:24px;
	}
	.group_local_map{
		padding-top:24px;
		padding-bottom:29px;
		margin-top: 36px;
	}
	.group_local_container .box dl dt a {
			font-family: 'RedHatDisplay-SemiBold';
			font-size: 16px;
			color: #0075C1;
			text-decoration: underline;
	}
	.group_company_column .profile{
		grid-template-columns:1fr;
		margin-bottom:36px;
	}
	.group_company_column .profile .box{
		height:140px;
		padding:20px;
	}
	.group_company_column .profile .box h3{
		font-size: 18px;
		line-height: 24px;
	}
	.group_company_column .profile .box a{
		bottom: 20px;
		right: 20px;
		text-align: center;
		font-size: 14px;
		line-height: 18px;
		background-size: 16px;
		padding-left: 20px;
		padding-right: 35px;
		box-sizing: border-box;
		width: auto;
		min-width: 250px;
	}
	.group_company_column .profile .box .box_note {
		margin-bottom: 12px;
		font-size: 14px;
	}
	.group_company_column .profile .img{
		height:auto;
	}
	.group_company_column .company{
		gap:80px;
	}
	.group_company_column .company .box h4{
		margin-bottom:35px;
		padding:5px 0 10px 14px;
		font-size:18px;
		line-height:28px;
		border-left:6px solid #23231e;
	}
	.group_company_column .company .box dl{
		grid-template-columns: 1fr;
		gap: 0;
	}
	.group_company_column .company .box dl dt{
		margin-bottom:10px;
		font-size:16px;
		line-height:27px;
	}
	.group_company_column .company .box dl dd{
		margin:0 0 32px;
		font-size: 16px;
		line-height: 27px;
	}
	.group_company_column .company .box dl dd:last-child{
		margin:0;
	}
	.group_company_column .company .box .access{
		margin-top:24px;
	}
	.group_company_column .company .box .access a{
		width:180px;
		padding:8px 44px 8px 24px;
		font-size:14px;
		background-size:16px;
	}
	.t_end_sp{
		text-align: end !important;
	}

	/*-------------------- katagirishoko --------------------*/
	.company_ofic_head {
		padding: 0 25px;
	}
	.company_ofic_head_bg {
		padding-top: 77px;
	}
	.company_ofic_head .group_title {
		flex-direction: column;
	}
	.company_ofic_head .group_title .title_content .title h3 {
		font-size: 24px;
		letter-spacing: 1px;
	}
	.company_ofic_head .group_title .title_content .title .blue_stroke {
		width: 20px;
		height: 20px;
	}
	.company_ofic_head .group_title .title_content .title {
		gap: 10px;
		padding-bottom: 0;
	}
	.company_ofic_head .group_title .title_content {
		gap: 46px;
		padding-bottom: 0;
	}
	.company_ofic_head .group_title .title_content h4 {
		font-size: 42px;
		line-height: 60px;
	}
	.company_ofic_head .group_title img {
		max-width: 100%;
		margin-top: 51px;
	}
	.company_ofic_contents {
		font-size: 16px;
		padding: 0 25px;
	}
	.company_ofic_contents .group_headline {
		margin-top: 95px;
		margin-bottom: 36px;
	}
	.company_ofic_contents .ofic_group_box .partner {
		width: 100%;
		line-height:27px;
	}
	.group_headline h2 {
		font-size: 18px;
		line-height: 25px;
	}
	.company_ofic_contents .ofic_group_box {
		flex-direction: column;
		gap: 32px;
		margin-top: 28px;
		padding-top: 0;
	}
	.company_ofic_contents .contact_title h3 {
		font-size: 18px;
		margin-bottom: 10px;
		padding:10px 0 10px 16px;
	}
	.company_ofic_contents .map_info {
		margin: 24px 0 24px;
	}
	.company_ofic_contents .ofic_group_box .partner .m_b {
		margin-bottom: 20px;
	}
	.company_ofic_contents .ofic_group_box .partner .desc {
		padding-top: 0;
	}
	.company_ofic_contents .ofic_group_box .partner .desc:last-of-type {
		margin-bottom: 0;
	}
	.company_ofic_contents .ofic_group_box .partner .t_inl_blo {
		padding-top: 0;
	}
	.company_ofic_contents .ofic_group_gray_bg_box {
		position: relative;
		margin-bottom: 29px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box::before {
		content: "";
		background-color: #F3F7F7;
		width: 100vw;
		height: 100%;
		position: absolute;
		top: 0;
		left: -25px;
		z-index: 10;
	}
	.company_ofic_contents .ofic_group_gray_bg_box h3 {
		font-size: 18px;
		line-height: 29px;
		padding: 15px 0;
		position: relative;
		z-index: 20;
		border: none;
	}
	.company_ofic_contents .ofic_group_box .left_box {
		line-height: 27px;
	}
	.company_ofic_contents .btn_map_link {
		margin-bottom: 52px;
		padding:10px
	}
	.company_ofic_contents .ofic_group_gray_bg_box h3::after {
		content: "";
		width: 100vw;
		height: 2px;
		position: absolute;
		left: -25px;
		bottom: 0;
		z-index: 30;
		background-color: var(--white);
	}
	.company_ofic_contents .ofic_group_gray_bg_box p {
		padding: 20px 0;
		line-height: 28px;
		position: relative;
		z-index: 20;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box {
		flex-direction: column;
		position: relative;
		z-index: 20;
		padding: 25px 0;
		gap: 30px;
	}
	.company_ofic_contents  .ofic_group_gray_bg_box_mb {
		margin-bottom: 80px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box h4{
		font-size: 18px;
		width: 100%;
		box-sizing: border-box;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents {
		width: 100%;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content {
		flex-direction: column;
		gap: 20px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail {
		width: 100%;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail p .right_box {
		width: 23%;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail p .adjust1 {
		width: 44px;
        letter-spacing: 1.1px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail p .adjust2 {
		width: 31px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail p .adjust3 {
		width: 73px;
        letter-spacing: 0.8px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content .box_content_detail p {
		line-height: 34px;
		font-size: 16px;
	}
	.company_ofic_contents .ofic_group_gray_bg_box .content_flex_box .box_contents .box_content h5 {
		max-width: 100%;
		width: 100%;
		font-size: 16px;
	}
	.company_btn_top_link {
		margin: 80px auto 120px auto;
		justify-content: center;
		align-items: center;
	}
	.company_btn_top_link a span {
		font-size: 18px;
		line-height: 24px;
		letter-spacing: 1px;
	}

	/*-------------------- sustainability_environment --------------------*/
	.company_sus_envir_head_bg {
		padding-top: 80px;
	}
	.company_contents .company_sus_envir_head_bg .sus_envir_1 .content_head h1 {
		font-size: 45px;
		letter-spacing: 2px;
		line-height: 52px;
	}
	.company_contents .company_sus_envir_head_bg .sus_envir_1 .content_head .contents {
		margin-top: 16px;
		position: relative;
		background-image: none;
		height: auto;
	}
	.company_contents .company_sus_envir_head_bg .sus_envir_1 .content_head .contents::after {
		content: "";
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/company/sus_envir_img_1.png");
		background-repeat: no-repeat; 
		background-size: contain;
		background-position: right;
		position: relative;
		width: 100%;
		height: calc(100vw/2.6);
		display: block;
	}
	.company_contents .sus_envir_1 {
		margin: 0 25px;
	}
	.company_contents .company_sus_envir_head_bg .sus_envir_1 .content_head .contents .content_head_1 {
		font-size: 35px;
		letter-spacing: 10px;
		line-height: 0px;
	}
	.company_contents .company_sus_envir_head_bg .sus_envir_1 .content_head .contents .content_head_2 {
		font-size: 28px;
		margin-top: 16px;
		margin-bottom: 36px;
	}
	.company_contents .sus_envir_1 h2 {
		flex-direction: column;
		align-items: flex-start;
		font-size: 23px;
		line-height:35px;
		letter-spacing: 1px;
		margin: 80px 0 27px 0;
		padding-left: 20px;
	}
	.company_contents .sus_envir_1 h2 .sm{
		font-size:19px;
	}
	.company_contents .sus_envir_1 .contents .content_1 p {
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 27px;
		margin: 0;
		padding: 0;
	}
	.company_contents .sus_envir_1 .contents .content_1 {
		margin-bottom: 48px;
	}
	.company_contents .sus_envir_1 .contents .content_2 p {
		font-size: 20px;
		letter-spacing: 1px;
		line-height: 20px;
		margin: 32px 0 30px 0;
		padding: 10px 0;
	}
	.company_contents .sus_envir_1 .contents .content_3 {
		margin-bottom: 120px;
	}
	.company_contents .sus_envir_1 .contents .content_3 p {
		align-items: flex-start;
		margin-bottom: 30px;
	}
	.company_contents .sus_envir_1 .contents .content_3 p span {
		min-width: 25px;
		height: 25px;
		font-size: 13px;
		margin-right: 27px;
		margin-top: 10px;
	}
	.company_contents .sus_envir_1 .contents .content_1 .dotted_separator {
		margin: 15px 0 15px 0;
	}
	.company_contents .sus_envir_1 .contents .content_1 .table_container .vertical_text {
		min-width:20px;
	}
	.company_contents .sus_envir_1 .contents .content_1 th, td {
		padding: 2vw;
		font-size: 2vw;
	}
	.company_contents .sus_envir_1 h3 {
		font-size: 19px;
		margin: 45px 0 20px 0;
		padding-left: 25px;
	}

	/* ==================Subtainability-Social===================  */
	.company_contents .company_social_head_bg .sus_envir_1 .content_head .contents::after {
		background-image:url("/wp/wp-content/themes/osakafuji/images/en/company/subtainability_social_banner.png");
	}
	.sus_envir_1 .sus_soc_links {
		margin-top: 20px;
		justify-content: center;
	}
	.company_contents .company_social_content .contents .content_2 p {
		line-height: 27px;
	}
	.company_contents .company_social_content .contents .content_3 p.title-sus-content {
		font-size: 18px;
		line-height: 24px;
		font-family:'RedHatDisplay-Medium';
		margin-bottom: 20px;
		margin-top: 30px;
	}
	.company_contents .company_social_content .contents .content-sus .sus_social_p.mt-mb {
		font-size: 16px !important;
		margin-bottom: 27px !important;
	}
	.company_contents .company_social_content .contents .content_3 .sus_social_footer_text{
		font-size:16px;
		line-height:27px;
	}
	.company_contents .company_social_content .contents .content_3 p span {
		margin-right: 16px;
		margin-top: 0;
	}
	section.company_social_content.company_steel_content_3 {
		padding-top: 0;
	}
	.company_contents .sus_envir_1 #sus_soc_link_2 {
		margin-top: 120px;
		margin-bottom: 50px;
	}
	.company_contents .company_social_content .section-mg .sus_social_p {
		margin: 30px 0 0 0;
		letter-spacing:0;
	}
	.company_contents .company_social_content .sus-table-mt {
		margin-top: 100px !important;
	}
	.company_contents .company_social_content  .section-mt {
			margin-top: 100px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-div-year-wrapper .sus-year-flex {
		gap: 12px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-div-year-wrapper .sus-year-flex p {
		width: 100%;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-div-year-wrapper {
		gap: 20px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-outline {
		margin-top: 20px;
		margin-bottom: 24px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-social-pt{
		font-size:16px !important;
		line-height:27px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-period p{
		font-size:16px;
		line-height:27px;
	}	
	.company_contents .company_social_content {
		.br_amagasaki{
			display: block;
		}
		.dot-hidden-mb{
			display: none;
		}
		.tb_d_n_mb{
			display: none;
		}
		.tb_d_n_pc{
			display: block;
		}
		.sus_social_p{
			padding: 0px;
		}
		.contents{
			.content-sus{
				span{
					margin-top: 0px;
				}
				.mt-mb{
					margin-top: 10px;
				}
				.mb-p-mb{
					margin-top: 30px;
				}
				.title-sus-content{
					font-size: 20px;
					align-items: center;
				}
				.sus_social_p{
					font-size: 16px;

				}
			}
		}
		.section-mg{
			margin-top: 60px;
			.sus_social_p{
				font-size: 16px;
				line-height: 27px;
				font-weight: normal;
				margin: 40px 0 0 0;
				padding: 0;
			}
		}
		.section-mt{
			margin-top: 60px;
			p{
				font-size: 16px;
				line-height: 27px;
				font-weight: normal;
				margin: 40px 0 0 0;
				padding: 0;

			}
			.sus-social_div_p {
				margin-top: 40px;
				.social_div_wrap_p{
					display: flex;
					align-items: center;
					gap: 24px;
					h4{
						height: 28px;
						width: 28px;
						background-color: #23231e;
						color: white;
						min-width: 28px;
						font-size: 14px;
						align-self: flex-start;
						display: flex;
						align-items: center;
						justify-content: center;
						margin: 5px 0 0 0 ;
					}
					p{
						margin-top: 0;
						font-size: 20px;
					}
				}
				.sus-social-pt{
					margin-top: 24px;
					font-size: 16px;
				}

				.social_div_ol_span{
					display: flex;
					align-items: center;
					margin-top: 24px;
					gap: 24px;

					span{
						display: flex;
						align-items: center;
						justify-content: center;
						background-color: #0075C2;
						border-radius: 20px;
						align-self: flex-start;
						color: white;
						width: 100px;
						height: 40px;
						min-height: 40px;
						font-size: 14px;
						margin-top: 5px;
					}
					p{
						margin: 0;
						width: 90%;
						font-size:18px;
					}
				}
				.sus-outline{
					margin-top: 16px;
					margin-bottom: 32px;
					border-bottom: 1px dashed #23231e;
				}
				.sus-period{

					p{
						margin: 0;
					}
					.sus-period-mt{
						margin-top: 30px ;
					}
				}
				.sus-div-year-wrapper{
					margin-top: 32px;
					display: flex;
					gap: 16px;
					flex-direction: column;
					.sus-year-flex{
						display: flex;
						flex-direction: column;
						gap: 20px;
						span{
							width: 100%;
							height: 40px;
							background-color: #DFE3E3;
							display: flex;
							align-items: center;
							justify-content: center;
							font-size: 16px;
							line-height: 27px;
							max-width: 100%;
						}
						p{
							margin: 0;
							width: 100%;
						}
					}
				}
				.social_2_mt{
					margin-top: 30px;
				}
				.sus-radius{
					span{
						background-color: #8696A6;
						border-radius: 50%;
						width: 30px;
						height: 30px;
						min-height: 100%;
						font-size: 14px;
						letter-spacing: 0px;
					}
					.span-radius{
						background-color: #8696A6;
						border-radius: 50%;
						width: 30px;
						height: 30px;
						min-height: 100%;
						font-size: 14px;
						letter-spacing: 0px;
					}
				}

				.sus-period-contact{
					display: flex;
					flex-direction: column;
					gap: 16px;
					margin-top: 64px;

					.sus-period-contact-btn-content{
						display: flex;
						gap: 20px;

						.copy_btn{
							flex-direction:column;
							gap:10px;
						}
						span{
							font-size: 16px;
							width: 189px;
							height: 40px;
							background-color: #23231E;
							color: white;
							display: flex;
							align-items: center;
							justify-content: center;
						}
						.sus_social_p{
							font-size: 16px;
							line-height: 27px;
						}
						p{
							margin: 0;
						}
						.sus-p-underline{
							text-decoration: underline;
						}

					}
				}
			}
		}
		.section-2-mt{
			margin-top: 30px;
			.h4-2-mt{
				margin-top: 40px;
			}
			.sus_social_p{
				font-size: 16px;
				margin-top: 10px;
				line-height: 34px;
				font-weight: normal;

			}
		}
		.section-2-mt-2{
			h4{
				line-height: 28px;
				height: 40px;
				display: flex;
				align-items: center;
			}
			.sus-social-table-title-2{
				display: flex;
				justify-content: center;
				align-items: center;
				flex-direction: column;
				gap: 10px;

				span{
					display: flex;
					align-items: center;
					justify-content: center;
					background-color: #DFE3E3;
					font-size: 18px;
					line-height: 27px;
					height: 48px;
					color: white;
				}
				.sus-table-2-span-1{
					width: 100%;
					max-width: none;
					background-color: #23231E;
				}
				.sus-table-2-span-2{
					width: 100%;
					background-color: #8696A6;
				}
			}
			.span-2-mt{
				margin-top: 16px;
			}
			.sus-social-table-span-wrapper-2{
				display: flex;
				justify-content: center;
				flex-direction: column;
				gap: 16px;
				box-sizing: border-box;
				margin-top: 16px;
			}
			span{
				display: flex;
				font-size: 16px;
				line-height: 27px
			}
			.sus-table-1-span-content-1{
				width: 100%;
				max-width: 100%;
				background-color: #DFE3E3;
				display: flex;
				align-items: center;
				height: 60px;
				padding-left: 20px;
				box-sizing: border-box;
			}
			.sus-table-2-span-content-2{
				width: 100%;
				border-bottom: 1px dashed #23231E;
				display: flex;
				align-items: center;
				height: auto;
				padding: 10px 0;
				padding-left: 20px;
				box-sizing: border-box;
			}
		}

		.section-sponsor{
			.sus-social-sponsor-container{
				display: flex;
				align-items: center;
				flex-direction: column;
				.sus-social-sponsor-item{
					display: flex;
					justify-content: space-between;
					flex-direction: column;
					gap: 34px;
					margin-top: 20px;
					img{
						width: 100%;
						min-width: 320px;
						height: auto;
						object-fit: cover;
					}
					.sus-social-sponsor-content{
						width: 100%;
						display: flex;
						flex-direction: column;
						justify-content: space-between;
						border-bottom: 1px dashed #23231E;
						padding: 0;
						gap: 20px;
						.p_style{
							margin: 0;
							font-size: 20px;
						}
						.p_style-2{
							padding-bottom: 10px;
						}
					}
				}
			}
		}
		.sus-table-mt{
			margin-top: 100px;
		}
		.sus-table-title-p{
			p{
				font-size: 16px;
				margin: 0;
				line-height: 27px;
				font-weight: normal;
				padding: 0;
			}
		}
		.contents{
			.content_1{
				.mt-disable{
					margin-top: 10px !important;
				}
				.table_container{
					.fz-th-mb{
						font-size: 14px;
						line-height:19px;
					}
					.sus-table-col{
						width: 300px;
						height: auto;
						line-height:1;
					}
					.sus-table-col-1{
						width: 200px;
						background-color: #23231E;
						line-height:1;
					}
				}
				.pt-table{
					margin-top: 40px !important;
				}
				.sus_govermance_p{
					font-size: 16px;
				}
			}
			.workflow-container {
				margin-top: 64px;
				display: flex;
				align-items: center;
				justify-content: center;

				img{
					width: 100%;
					height: auto;
					object-fit: cover;
					content: url('/wp/wp-content/themes/osakafuji/images/en/company/sus-governance-overflow-mb.png');
				}
			}
		}
		.sus-social-table-mt{
			margin-top: 44px;
		}
		.sus-social-table-title{
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 10px;
			span{
				display: flex;
				align-items: center;
				justify-content: center;
				background-color: #DFE3E3;
				font-size: 12px;
				line-height: 20px;
				height: 48px;
			}
			.sus-table-span-1{
				width: calc(51%);
				max-width: 300px;
			}
			.sus-table-span-2{
				width: calc(59% - 2px);
				padding:10px 0;
				font-size:14px;
				line-height:18px;
			}
		}
		.sus-social-table-span-wrapper{
			display: flex;
			justify-content: center;
			gap: 10px;
			border-bottom: 1px solid #8696A6;
			padding: 10px 0;
			box-sizing: border-box;

			span {
				display: flex;
				font-size: 14px;
				line-height: 22px;
				letter-spacing:0;
			}
		}
		span{
			display: flex;
			font-size: 14px;
			line-height: 20px;
		}
		.sus-table-span-content-1{
			width: calc(41%);
			max-width: 300px;
		}
		.sus-table-span-content-2{
			width: calc(59% - 2px);
		}

		.section-2-mt-2{
			.sus_social_p{
				font-size: 16px;
				line-height: 34px;
				font-weight: normal;
				margin: 0;
			}
			.sus_social_p_link{
				display: flex;
				align-items: flex-start;
				gap: 15px;
				text-decoration: underline;
				color: #0075C2;
				font-size: 16px;
				line-height: 34px;
				margin-top: 30px;
				img{
					margin-top: 5px;
					width: 24px;
					height: 24px;
				}
			}
			.sus-bg-border-p{
				margin-top: 20px;
				background-color: #23231E;
				color: white;
				font-size: 19px;
				line-height: 28px;
				font-weight: normal;
				height: 40px;
				width: 100%;
				display: flex;
				align-items: center;
				padding-left: 20px;
				box-sizing: border-box;
			}
			.border-special{
				height: 70px;
			}
			.sus-employees-mt{
				margin-top: 40px;
			}
			.training-mt{
				margin-top: 24px;
			}
			.training-table{
				display: flex;
				gap: 10px;
				flex-direction: column;
				width: 100%;
				.traning-line-left{
					width: 100%;
					max-width: 100%;
					color: white;
					background-color: #23231E;
					font-weight: normal;
					font-size: 12px;
					line-height: 27px;
					writing-mode: horizontal-tb;
					white-space: nowrap;
					text-align: center;
					box-sizing: border-box;
					display: flex;
					align-items: center;
					justify-content: center;
					height: 32px;
					p{
						font-size: 14px;
					}
				}
			.traning-table-right{
				width: 100%;
				.sus-social-table-3-title{
					width: 100%;
					display: flex;
					justify-content: center;
					align-items: center;
					gap: 10px;
					span{
						display: flex;
						align-items: center;
						justify-content: center;
						background-color: #DFE3E3;
						font-size: 14px;
						line-height: 27px;
						height: 48px;
					}
					.sus-table-3-span-1{
						width: 35%;
						height: 32px;
						max-width: 100%;
					}
					.sus-table-3-span-2{
						width: 65%;
						height: 32px;
					}
				}
				.sus-social-table-3-span-wrapper{
					display: flex;
					justify-content: center;
					gap: 10px;
					border-bottom: 1px solid #8696A6;
					padding: 10px 0;
					box-sizing: border-box;

					span{
						display: flex;
						font-size: 14px;
						line-height: 20px;
					}
				}
				span{
					display: flex;
					font-size: 14px;
					line-height: 28px;
				}
				.full-space-div{
					width: 100%;
					max-width: 100%;
				}
				.sus-table-3-span-content-1{
					width: 35%;
					padding-left: 0;
					margin-top: 5px;
					max-width: 300px;
					box-sizing: border-box;
				}
				.sus-table-3-span-content-2 span {
					width: 65%;
					line-height: 30px;
					font-size: 16px;
					}
				}

			}
			.social_banner_flex-container{
				margin-top: 20px;
				display: flex;
				justify-content: center;
				flex-direction: column;
				gap: 20px;
				.item-2{
					width: 100%;
				}
				img{
					width: 100%;
					height: auto;
					max-height: 100%;
					object-fit: cover;
				}
				.sus-social-img{
					width: 100%;
					height: auto;
					object-fit: cover;
					max-height: 660px;
				}
			}
			.sus-club-activity-container{
				margin-top: 40px;
				display: flex;
				align-items: center;
				gap: 10px;
				flex-wrap: wrap;
				.sus-activity-item{
					display: flex;
					align-items: center;
					width:calc(50% - 5px);
					img{
						width: 100%;
						height: auto;
						max-height: 220px;
						object-fit: cover;

					}
					p{
						width: 100%;
						height: 48px;
						box-sizing: border-box;
						display: flex;
						align-items: center;
						justify-content: center;
						font-size: 14px;
						line-height: 16px;
						background-color: #DFE3E3;
					}
				}
			}
		}
	}
	.company_contents .company_social_content .contents .content_1 .table_container {
		margin-top: 40px;
	}
	.company_contents .company_social_content .sus-social-table-title {
		gap: 15px;
		text-align: center;
		align-items: stretch;
	}
	.company_contents .company_social_content .sus-social-table-title .sus-table-span-1 {
		height: auto;
		width: 40%;
		font-size:14px;
		line-height:18px;
	}
	.company_contents .company_social_content .sus-table-span-content-1 {
		width: 40%;
	}
	.company_contents .company_social_content .sus-social-table-span-wrapper {
		gap: 15px;
		padding: 15px 0;
	}
	section.sus_envir_1.sus-table-wrapper-3 {
		margin: 0;
	}
	.section.section-mg {
		margin: 0 0 100px 0;
	}
	.company_contents .company_social_content .section .sus-social_div_p .social_div_wrap_p h4 {
		height: 27px;
		width: 27px;
		background-color: #23231e;
		color: white;
		min-width: 27px;
		font-size: 14px;
		font-weight: normal;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0;
	}
	.company_contents .company_social_content .section .sus-social_div_p .social_div_wrap_p p {
		font-size: 18px !important;
		font-family: 'RedHatDisplay-Medium';
		font-weight: 100;
		margin-top: 0;
	}
	.company_top_content .sus-social-table-span-wrapper span {
		font-size: 16px;
		line-height: 30px;
	}
	.company_top_content .section-2-mt-2 .sus-social-table-span-wrapper-2 span {
		font-size: 16px;
		line-height: 16px;
	}
	.company_top_content .section-2-mt-2 .training-table .traning-table-right .sus-social-table-3-span-wrapper span {
		font-size: 12px;
		line-height: 20px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-div-year-wrapper .sus-year-flex span {
		max-width: none;
		width: 100%;
		justify-content: center;
	}
	.company_contents .company_chiba_content_2 {
		margin-bottom: 70px;
	}
	/* CONTACT - BUTTON */
	.company_contents .links-btn{
		width: 100%;
		margin: 0 auto;
	}
	.company_contents .links-btn .link_box_3-btn {
		align-items: flex-start;
		justify-content: flex-start;
		border: none;
		border-radius: 100px;
		margin-top: 0;
		flex-direction: column;
		border-top: 1px solid;
		border-radius: unset;
		padding: 40px 20px 28px;
		box-sizing: border-box;
	}
	.company_contents .links-btn .link_box_3-btn::before {
		top: auto;
		left:auto;
		right:28px;
		bottom:28px;
		height: 60px;
		width: 60px;
	}
	.company_contents .links-btn .link_box_3-btn .en_title-btn {
		font-size: 35px;
		line-height: 51px;
	}
	.company_contents .links-btn .link_box_3-btn .title-btn {
		font-size: 16px;
		margin: 0;
		padding-left: 0;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-period-contact .sus-period-contact-btn-content {
		display: flex;
		gap: 12px;
		flex-direction: column;
	}
	.company_contents .company_social_content .section .sus-social_div_p .social_div_ol_span {
		align-items: flex-start;
	}
	.company_contents .company_social_content .section .sus-social_div_p .social_div_ol_span span {
		width: 80px;
		min-width: 80px;
		box-sizing: border-box;
		font-size: 13px;
		padding: 7px 10px;
	}
	.company_contents .company_social_content .section .sus-social_div_p .sus-radius span {
		font-size: 13px;
		min-width: 30px;
		width: 30px;
		height: 30px;
	}
	/* ========================================================== */
	/* ==================Sustainability Governance===============  */
	/* ========================================================== */

	.company_contents .company_goverment_head_bg .sus_envir_1 .content_head .contents::after {
		background-image:url("/wp/wp-content/themes/osakafuji/images/en/company/sus-governance-banner.png");
	}
	.company_contents .sus-goverment{
		margin-bottom: 120px;
	}
	.company_contents .sus-goverment:last-child{
		margin-bottom: 80px;
	}
	.company_contents .sus-goverment .contents .workflow-container {
			margin-top: 36px;
	}
	.company_contents .sus-goverment .contents .content_1 {
		margin-bottom: 36px;
	}
	.company_contents .sus_envir_1 h2::before {
		width: 5px;
	}

	/* ======================= contact =============================  */
	.company_contents .contact_1 {
		padding: 0 20px;
	}
	.company_contents .contact_1 .content_head h1 {
		font-size: 48px;
		line-height: 56px;
		letter-spacing: 2px;
		margin: 0;
	}
	.company_contents .contact_1 .content_head p {
		font-weight: bold;
		font-family: 'ZenOldMincho', serif;
		font-size: 22px;
		letter-spacing: 7px;
		line-height: 24px;
		margin-top: 0;
	}
	.company_contents .contact_1 .content_head {
		padding: 0 0 21px 0;
		position: relative;
		height: auto;
		gap: 17px;
		align-items: flex-start;
		flex-direction: column;
	}
	.company_contents .contact_1 .content_head::after {
		height: 70px;
		width: 118px;
		top: 84%;
		right: 0;
	}
	.company_contents .contact_2 h2 {
		font-size: 28px;
		letter-spacing: 1px;
		line-height: 33px;
	}
	.company_contents .contact_2 p {
		line-height: 27px;
		margin-bottom: 70px;
	}
	.company_contents .contact_2 .contact_form_title {
		align-items: flex-start;
		justify-content: space-between;
		flex-direction: column;
		margin-bottom: 20px;
	}
	.company_contents .contact_2 {
		line-height: 35px;
		margin-bottom: 90px;
		padding: 0 20px;
	}
	.company_contents .contact_2 .checkbox_group {
		grid-template-columns: repeat(1, auto);
		gap: 15px;
	}
	.company_contents .contact_2 .contact_form_text {
		margin-top: 50px;
	}
	.contact_field{
		padding: 0 25px;
		margin-bottom: 160px;
	}
	.contact_field p{
		font-size: 16px;
		line-height: 27px;
	}
	.wpcf7-list-item{
		margin:0;
	}
	.contact_area{
		.check{
			margin-bottom:48px;

			dl{
				margin:0 0 42px;
				padding-bottom:42px;

				dt{
					p{
						flex-direction:column;
						align-items:flex-start;
						margin-bottom:18px;

						.title{
							margin-bottom:14px;
							padding:5px 14px;
							font-size:19px;
							line-height:24px;
							border-left:7px solid #0075c2;
						}
						.kome{
							font-size:16px;
						}	
					}
				}
				dd{
					.wpcf7-checkbox{
						grid-template-columns:1fr;
						gap:16px 0;

						label{
							gap:8px;
							font-size:16px;
							line-height:24px;

							input{
								width:21px;
								height:21px;
							}
						}
					}
				}
			}
			label{
				font-size:18px !important;
			}
		}
		.form{
			margin-bottom:40px;
			padding-bottom:80px;

			dl{
				margin:0 0 25px;

				dt{
					margin-bottom:15px;

					p{
						font-size: 15px;
						line-height: 24px;

						span{
							padding:6px 10px;
							font-size:12px;
						}
					}
				}
				dd{
					input[type="text"], input[type="email"], input[type="tel"]{
						padding:15px;
						font-size:14px;
						border-radius:5px;
					}
					textarea{
						padding:15px;
						font-size:14px;
						border-radius:5px;
					}
					.file_area{
						padding:10px;
						border-radius:5px;

						.custom-file-label{
							line-height:14px;
						}
					}
					.memo{
						margin-top:15px;
						font-size:16px;
						line-height:24px;
					}
				}
			}
		}
		.text{
			h3{
				margin-bottom: 20px;
				line-height: 28px;
			}
			ol{
				li{
					margin-bottom:15px;
				}
			}
			.tx{
				font-size: 16px;
				line-height: 27px;
			}
		}
		.post{
			.btn{
				input{
					width:100%;
				}
			}
		}
	}
	.company_breadcrumb{
		display: none;
	}
}
	