/*-------------------- css --------------------*/
@font-face{
	font-family:'RedHatDisplay-Bold';
	src:url('fonts/RedHatDisplay-Bold.ttf');
}
@font-face{
	font-family:'RedHatDisplay-SemiBold';
	src:url('fonts/RedHatDisplay-SemiBold.ttf');
}
@font-face{
	font-family:'ZenOldMincho-Bold';
	src:url('fonts/ZenOldMincho-Bold.ttf');
}
@font-face{
	font-family:'kozminpro-medium';
	src:url('fonts/kozminpro-medium.otf');
}

.mt_60{
	margin-top:60px !important;
}
.pt_96{
	padding-top:96px !important;
}
.pt_130{
	padding-top:130px !important;
}

.company_header{
	display:flex;
	align-items:center;
    height:140px;
/* 	background-color:#dfe3e3; */
	background-color:#ffffff;
}
.c_header_wrap{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 50px;
}
.c_header_top{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:10px;
}
.c_header_logo{
	display:flex;
	align-items:flex-end;
	gap:20px;
}
.c_header_logo .img{
	max-width:310px;
}
.c_header_logo .img img{
	display:block;
	width:100%;
}
.c_header_logo .page{
	width:160px;
	margin-bottom:10px;
	padding:1px 0;
	font-size:16px;
	text-align:center;
/* 	color:#23231e;
	background-color:#ffffff; */
	color:#ffffff;
	background-color:#575656;
	border-top-left-radius:15px;
	border-bottom-right-radius:15px;
}
.c_header_menu{
	display:flex;
	align-items:center;
	gap:20px;
}
.c_header_menu .lang{
	display:flex;
	align-items:center;
	gap:10px;
	font-size:14px;
}
.c_header_menu .lang a.active{
	color:#0075c2;
}
.c_header_menu .news{
}
.c_header_menu .news a{
	display: block;
    position: relative;
    width: 188px;
    padding: 10px 20px;
    font-size: 16px;
    box-sizing: border-box;
    background-image: url(/wp/wp-content/themes/osakafuji/images/company/icon_gray.png);
    background-position: center right 20px;
    background-repeat: no-repeat;
    background-size: 16px;
    border-left: 1px solid #23231e;
    border-right: 1px solid #23231e;
}
.c_header_menu .link a{
	display:block;
	position:relative;
	width:200px;
	padding:6px 0;
	font-size:16px;
	text-align:center;
	color:#ffffff;
	background-color:#23231e;
	border-radius:30px;
}
.c_header_menu .link a img{
	position:absolute;
	top:50%;
	right:10px;
	transform:translateY(-50%);
	width:16px;
}
.c_header_bottom{
	display:flex;
	justify-content:flex-end;
}
.c_header_bottom nav{
	display:flex;
	align-items:center;
	gap:20px;
}
.c_header_bottom nav a{
	font-size:16px;
}
.c_header_bottom nav span{
	position:relative;
	padding-right:12px;
	font-size:16px;
	cursor:pointer;
	
	&:hover{
		color:#3C9DEA;
	}
	&:after{
		content: '';
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        border-top: 8px solid #0075c2;
        border-right: 5px solid transparent;
        border-left: 5px solid transparent;
	}
}

.c_header_hamburger{
	display:none;
}
.c_header_nav{
	display:none;
}

/*-------------------- footer --------------------*/
.c_footer_link{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
}
.c_footer_link .box img{
	width:100%;
}


/*-------------------- main --------------------*/
.company_main{
	padding-bottom:240px;
	background-color:#ffffff;
}
.company_main.pd_n{
	padding-bottom:0;
}

/*-------------------- top --------------------*/
.pc {
    display: block;
}


/*-------------トップ----------------*/
.company_contents .company_contents_bg_1{
    background-image: url("images/company/top_background_1_fix.png");
    background-size: cover;
    background-repeat: no-repeat;
/*     padding-top: 128px; */
    background-position: center;
/* 	height: 2317px; */
}

.company_contents .company_top_content {
    max-width: 1100px;
    margin: 0 auto;
    color: #23231E;
	overflow: hidden;
}
.company_contents .company_contents_bg_1_2 {
	margin-top: 130px;
}
.company_contents .company_top_content_1 h5{
	margin-top: 117px;
    font-weight: normal;
    font-size: 34px;
    font-family: 'ZenOldMincho-Bold';
    line-height: 63px;
    letter-spacing: 3px;
}
.company_contents .company_top_content p{
	font-weight: normal;
    font-family: 'ZenOldMincho-Bold';
    font-size: 18px;
    letter-spacing: 0.3px;
    line-height: 42px;
}
.company_contents .company_top_content .company_top_content_p{
    width: 806px;
    margin: 0 auto;
}
.company_contents .company_top_content .company_top_row {
	display: flex;
	align-items: center;
	margin: 20px 0 0;
}
.company_contents .company_top_content .company_top_p{
    display: inline-block;
}
.company_contents .company_top_content .hyphen_company_top{
	width: 20px;
    height: 2px;
}
.company_contents .company_top_content .hyphen_company_top_left{
	margin-right: 10px;
}
.company_contents .company_top_content .hyphen_company_top_right{
	margin-left: 10px;
}
/* .company_contents .company_top_content_1 p{
    margin: 20px 0 0 0;
} */
.company_contents .company_top_content_1 .scroll_indicators {
    position: relative;
}
.company_contents .company_top_content_1 h1 {
	margin-top: 118px;
    font-weight: bold;
    font-size: 196px;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 3.5px;
    line-height: 1.2;
}
.company_contents .company_top_content .scroll_indicator {
    position: absolute;
    top: 58%;
    left: 664px;
    transform: translateY(-50%) rotate(90deg);
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}

.company_contents .company_top_content .scroll_indicator span {
    font-size: 16px;
    font-weight: bold;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 1.5px;
    color: #23231E;
}

.company_contents .company_top_content .scroll_indicator .dots {
    display: flex;
    flex-direction: row;
    gap: 15px;
}

.company_contents .company_top_content .scroll_indicator .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.company_contents .company_top_content .scroll_indicator .dot_1 {
    background-color: #9b9b96;
}
.company_contents .company_top_content .scroll_indicator .dot_2 {
    background-color: #696964;
}
.company_contents .company_top_content .scroll_indicator .dot_3 {
    background-color: #23231e;
}
.company_contents .vertical_lines {
    position: relative;
    height: 100px;
	margin: 120px 0;
}
.company_contents .vertical_line {
/*     display: flex;
    flex-direction: column;
	justify-content: space-between;
    align-items: center; */
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
	width: 10px;
    height: 100px;
	background-image: url("images/company/top_dotted.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* .company_contents .vertical_line .dot {
    width: 10px;
    height: 10px;
    background-color: black;
    border-radius: 50%;
}

.company_contents .vertical_line .dotted_line {
    width: 5px;
    height: 100px;
    background: radial-gradient(circle, black 2px, transparent 0px) repeat;
    background-size: 5px 12px;
} */

.company_contents .company_contents_bg_2{
	position:relative;
	overflow:hidden;
/*     background-image: url("images/company/top_background_2.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 2195px; */
}
/* .company_contents .company_contents_bg_2:before{
	content:'';	
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height: 100%;
	background-image: url("images/company/top_background_2.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	z-index:1;
} */
.company_contents .company_top_content_2 {
	position:relative;
    padding-bottom: 290px;
    overflow: hidden;
	z-index:2;
}
.company_contents .company_top_content_2 h2 {
    margin: 0;
    font-weight: bold;
    font-size: 140px;
    line-height: 175px;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 6.5px;
}
.company_contents .company_top_content_2 p{
	font-weight: normal;
    font-size: 40px;
    font-family: 'ZenOldMincho-Bold';
    letter-spacing: 9px;
    line-height: 55px;
    /* position: absolute; */
    bottom: 60px;
    right: 290px;
}
.company_contents .company_top_content_2 .content_head {
	position: relative;
    /* text-align: end; */
    padding-top: 18px;
}
.company_contents .company_top_content_2 .container {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 28px; 
}

.company_contents .company_top_content_2 .block {
	position: relative;
    display: block;
    width: 360px;
    height: 320px;
    border-radius: 110px 0 110px 0;
    color: white;
    text-decoration: none;
}

.company_contents .company_top_content_2 .block_1 {
    background-color: #8193a0; 
    margin-top: 160px; 
}

.company_contents .company_top_content_2 .block_2 {
    background-color: #0075c2; 
    margin-top: 80px; 
}

.company_contents .company_top_content_2 .block_3 {
    background-color: #e50012; 
    margin-top: 0; 
}

.company_contents .company_top_content_2 .vertical_title {
    position: absolute;
    top: 40px;
    right: 40px;
    writing-mode: vertical-rl;
    font-family: 'ZenOldMincho-Bold';
    letter-spacing: 9px;
    font-size: 30px;
    font-weight: normal;
}

.company_contents .company_top_content_2 .horizontal_title {
    position: absolute;
    bottom: 20px;
    left: 20px;
    font-family: 'RedHatDisplay-Bold';
    font-size: 16px;
    letter-spacing: 1.5px;
    font-weight: normal;
    display: flex;
    align-items: center;
}
.company_contents .company_top_content_2 .horizontal_title::before {
    content: "";
    background-image: url("images/company/right_arrow_w.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    height: 26px;
    width: 26px;
    margin-right: 10px;
}
.company_contents_bg_2 .dot_line_italics {
    /* position: relative;
    height: 120px; */
}
.company_contents_bg_2 .dot_line_italics .dot_line_italic {
    position: absolute;
    background-image: url(images/company/dot_line_italic.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 832px;
    height: 250px;
    bottom: 213px;
    left: 65%;
    max-width: 100vw;
    pointer-events: none;
}
.company_contents .company_contents_bg_3{
    background-image: url(images/company/top_background_3.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
/*     margin-top: 88px; */
    padding-top: 140px;
}
.width_1400 {
	max-width: 1320px;
    margin: 0 auto;
    background-color: white;
    border-radius: 20px;
}
.company_contents_bg_3 .content_head {
	position: absolute;
    top: -88px;
}
.company_contents_bg_3 .content_head h2 {
    margin: 0;
    font-weight: bold;
    font-size: 140px;
    line-height: 180px;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 2.5px;
    display: flex;
    /* flex-direction: column;*/
}

.company_contents_bg_3 .content_head .business_text {
    position: relative;
    display: flex;
    align-items: center;
}

.company_contents_bg_3 .content_head .business_text::before {
	content: "";
    width: 100px;
    height: 100px;
    background-image: url(images/company/red_cycle.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
    margin: 0 25px;
}


.company_contents_bg_3 .content_wrapper {
    display: flex;
    align-items: flex-start;
    width: 100%;
    padding: 125px 0 200px;
}


.company_contents_bg_3 .title {
    writing-mode: vertical-rl;
    font-family: 'ZenOldMincho-Bold';
    letter-spacing: 9px;
    font-size: 40px;
    font-weight: normal;
    padding-left: 80px;
    width: 280px;
    align-content: end;
}

.company_contents_bg_3 .content {
    flex-grow: 1;
    border-bottom:1px solid #dfe3e3;
}

.company_contents_bg_3 .content_link {
    display: flex;
    justify-content: space-between;
    text-decoration: none;
    color: #8696a6;
    font-size: 16px;
    font-weight: normal;
    width: 100%;
    border-top: #dfe3e3 1px solid;
    padding: 40px 0;
    align-items: center;
}
.company_contents_bg_3 .content_link:hover{
	color:#23231e;
	border-top: #23231e 1px solid;
}

.border_b {
    border-bottom: #23231e 1px solid;
}

.company_contents_bg_3 .content_icon {
    display: inline-block;
    width: 80px;
    height: 80px;
/*     background-image: url("images/company/blue_cycle.png"); */
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 50px;
    text-align: center;
    align-content: center;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    letter-spacing: 3px;
    font-size: 20px;
    color: #8696a6;
}
.company_contents_bg_3 .content_link:hover .content_icon{
	color:#ffffff;
    background-image: url("images/company/blue_cycle.png");
}

.company_contents_bg_3 .view_more_icon {
    display: inline-block;
    width: 50px;
    height: 10px;
    background-image: url("images/company/right_arrow_line_gray.png");
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 10px;
    vertical-align: middle;
}
.company_contents_bg_3 .content_link:hover .view_more_icon{
	background-image: url("images/company/right_arrow_line.png");
}

.company_contents_bg_3 .content_name {
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    letter-spacing: 5px;
    font-size: 32px;
    display: flex;
    align-items: center;
}

.company_contents_bg_3 .view_more {
    font-family: 'RedHatDisplay-Bold';
    font-size: 18px;
    letter-spacing: 1.5px;
    display: flex;
    align-items: center;
}
.company_contents_bg_3 .view_more .more{
	opacity:0;
}
.company_contents_bg_3 .content_link:hover .view_more .more{
	opacity:1;
}


/*-------slick------------*/
.company_contents .company_contents_bg_4{
	position:relative;
	padding-top: 279px;
/*     background-image: url("images/company/top_background_4.png"); */
/* 	background-image: url("images/company/top_group_img1.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top; */
    /* height: 1110px; */
}
.company_contents .company_contents_bg_4:before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-image:url("images/company/top_group_img1.png");
    background-size:cover;
    background-repeat:no-repeat;
    background-position:top;
	z-index:1;
}
.company_contents .company_top_content_4{
	position:relative;
	padding:144px 0 120px;
    overflow:hidden;
}
.company_contents .company_top_content_4:before{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	background-image: url("images/company/top_group_img2.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom;
	z-index:2;
}
.company_contents_bg_4 .slick_company {
	position:relative;
    align-items: center;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 50px;
	z-index:3;
}
.company_top_content_4 .slick_control {
    display: flex;
    justify-content: space-between;
    gap: 10%;
}
.company_top_content_4 .slick_control h2{
	margin: 0;
    font-weight: bold;
    font-size: 110px;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 2.5px;
    line-height: 90px;
    display: flex;
}
.company_top_content_4 .slick_control .company_name{
    width: 70%;
}
.company_top_content_4 .slick_control span{
    font-size: 35px;
    padding-left: 80px;
    display: flex;
    line-height: 35px;
    align-items: flex-end;
}

.company_top_content_4 .all_view {
    display: flex;
    align-items: end;
    justify-content: space-between;
    width: 30%;
    text-decoration: none;
    color: #23231E;
    font-family: 'RedHatDisplay-Bold';
    font-size: 18px;
    letter-spacing: 1.5px;
    padding: 20px 0;
    border-bottom: 3px #23231e dotted;
}

.company_top_content_4 .all_view::after {
    content: "";
    width: 60px;
    height: 30px;
    background-color: white;
    background-image: url("images/company/right_arrow_line.png");
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: center;
    border: 2px solid #333;
    border-radius: 15px;
}
.company_top_content_4 .slick_arrow{
    display:flex;
    align-items:center;
    gap:20px;
}
.company_top_content_4 .slick_arrow button{
    width:70px;
    height:70px;
    background-color:#ffffff;
    background-image: url("images/company/slick_prev_b.png");
    background-position:center;
    background-repeat: no-repeat;
    background-size:20px;
    border:1px solid #23231E;
    border-radius:50%;
    cursor: pointer;
}
.company_top_content_4 .slick_arrow button.next{
    transform:rotate(180deg);
}
.company_top_content_4 .slick_arrow button.prev:hover{
    background-color:#23231e;
    background-image: url("images/company/slick_next_w.png");
    transform:rotate(180deg);
}
.company_top_content_4 .slick_arrow button.next:hover{
    background-color:#23231e;
    background-image: url("images/company/slick_next_w.png");
    transform:rotate(0deg);
}

.company_contents_bg_4 .content_area{
    margin-top: 96px;
}
.company_contents_bg_4 .content_area .slick-slider{
    overflow: hidden;
}


.company_contents_bg_4 .slick-item{
    height: 400px;
    padding: 0 5px;
}
.company_contents_bg_4 .slick-item .slick_content{
	display:block;
	position:relative;
    /* width:340px; */
    height: 400px;
    background-color: white;
    border-radius: 20px;
    margin: 0 auto;
    overflow: hidden;
}
.company_contents_bg_4 .slick-item .slick_content:before{
	content:'';
	position:absolute;
	top:20px;
	right:20px;
	width:40px;
	height:40px;
	background-image:url('images/company/top_group_link.png');
	background-position:center;
	background-size:contain;
}
.company_contents_bg_4 .slick-item .img {
    height:320px;
    overflow:hidden;
}
.company_contents_bg_4 .slick-item .img img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.company_contents_bg_4 .slick-item p {
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    letter-spacing: 2px;
    font-size: 18px;
    height: 80px;
    display: flex;
    width: 100%;
    margin: 0;
    align-items: center;
    justify-content: center;
}

.t_f16 {
    font-size: 16px !important;
}

.company_contents_bg_4 .slick-prev {
    left: -25px;
    height: 70px;
    width: 70px;
    background-color: white;
    border-radius: 50%;
    border: 1px solid black;
    left: -397px;
    top: 239px;
}

.company_contents_bg_4 .slick-prev::before {
    content: "";
    width: 20px;
    height: 10px;
    background-image: url("images/company/slick_prev_b.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
}
.company_contents_bg_4 .slick-next {
    left: -25px;
    height: 70px;
    width: 70px;
    background-color: black;
    border-radius: 50%;
    border: 1px solid black;
    left: -294px;
    top: 239px;
}
    
.company_contents_bg_4 .slick-next::before {
    content: "";
    width: 20px;
    height: 10px;
    background-image: url("images/company/slick_next_w.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
}
.company_contents_bg_4 .slick-item img {
    width: 100%;
}
.company_contents_bg_4 .container {
    display: grid;
	grid-template-columns:repeat(3, 1fr);
    gap: 10px;
    padding-top: 68px;
    flex-wrap: wrap;
    justify-content: center;
}
.company_top_content_4 .box {
/*     width: 360px; */
    height: 300px;
    position: relative;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 26px 29px;
    box-sizing: border-box;
    border-radius: 50px 0;
}
.company_top_content_4 .box::after {
    content: "";
    background-image: url("images/company/right_arrow_w.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 30px;
    right: 30px;
    width: 30px;
    height: 30px;
}
.company_top_content_4 .box p {
    font-size: 20px;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    margin: 0;
    letter-spacing: 2px;
}
.company_top_content_4 .box:nth-child(1) {
    background: url("images/company/slick_img_1.png") no-repeat center / cover;
}
.company_top_content_4 .box:nth-child(2) {
    background: url("images/company/slick_img_2.png") no-repeat center / cover;
}
.company_top_content_4 .box:nth-child(3) {
    background: url("images/company/slick_img_3.png") no-repeat center / cover;
}
.company_top_content_4 .box:nth-child(4) {
    background: url("images/company/slick_img_4.png") no-repeat center / cover;
}
.company_top_content_4 .box:nth-child(5) {
    background: url("images/company/slick_img_5.png") no-repeat center / cover;
}
.company_top_content_4 .box:nth-child(6) {
    background: url("images/company/slick_img_6.png") no-repeat center / cover;
}

.company_top_content_5 {
    position:relative;
    padding-bottom: 200px;
	overflow:hidden;
}
.company_top_content_5::before {
    content: "";
    background-image: url("images/company/top_background_5.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    width: 600px;
    height: 440px;
    top: 120px;
    left:61%;
    z-index: 10;
}
.company_top_content_5 .content_head {
    position: relative;
}
.company_top_content_5 .content_head h2 {
    margin: 0;
    font-weight: bold;
    font-size: 140px;
    line-height: 120px;
    font-family:'RedHatDisplay-Bold';
    letter-spacing: 5px;
	position: relative;
    z-index: 20;
}
.company_top_content_5 .content_head h5{
    font-size: 40px;
    font-family: 'ZenOldMincho-Bold';
    font-weight: normal;
    line-height: 70px;
    letter-spacing: 8px;
    margin: 40px 0 0 0;
    position: relative;
    z-index: 20;
}
.company_top_content_5 .container {
    display: flex;
    gap: 20px;
    padding-top: 60px;
}
.company_top_content_5 .box {
    width: 360px;
    height: 300px;
    position: relative;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 50px 0;
}
.company_top_content_5 .box h5 {
    font-size: 28px;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    line-height: 70px;
    letter-spacing: 8px;
    margin: 0;
}
.company_top_content_5 .box p {
    font-size: 18px;
    font-family:'RedHatDisplay-Bold';
    margin: 0;
}
.company_top_content_5 .box:nth-child(1) {
    background: url('images/company/Sustainability_img_1.png') no-repeat center/cover;
}
.company_top_content_5 .box:nth-child(2) {
    background: url('images/company/Sustainability_img_2.png') no-repeat center/cover;
}
.company_top_content_5 .box:nth-child(3) {
    background: url('images/company/Sustainability_img_3.png') no-repeat center/cover;
}
.company_top_content_5 .box::after {
    content: "";
    background-image: url("images/company/right_arrow_w.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 30px;
    right: 30px;
    width: 30px;
    height: 30px;
}

.company_top_links{
	overflow:hidden;
}
.company_top_links .box{
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
    max-width:1100px;
    margin:0 auto;
}
.company_top_links .box.left .img{
    margin-left: calc(50% - 50vw);
}
.company_top_links .box.right .img{
    margin-right: calc(50% - 50vw);
}
.company_top_links .box .img img{
    display:block;
    width:100%;
}
.company_top_links .box .text{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:64px;
    position:absolute;
    top:50%;
    left:0;
    transform:translateY(-50%);
    width:100%;
}
.company_top_links .box .text .title{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:226px;
}
.company_top_links .box .text .title .en{
    font-family: 'RedHatDisplay-Bold';
    font-size:76px;
    line-height:92px;
    letter-spacing:1px;
    color:#ffffff;
	width: 402px;
}
.company_top_links .box .text .title .ja{
    font-size:28px;
    line-height:49px;
    letter-spacing:2px;
    color:#ffffff;
}
.company_top_links .box .text img{
    width:100px;
}
.company_top_links .contact{
    max-width:1100px;
    margin:160px auto 0;
}
.company_top_links .contact a{
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: black;
    outline: 2px black solid;
	outline-offset:-2px;
    border-radius: 100px;
    margin-top: 160px;
    position: relative;
}
.company_top_links .contact a::before {
    content: "";
    background-image: url("images/company/right_cycle_arrow_b.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    height: 200px;
    width: 200px;
}
.company_top_links .contact a .en_title {
    font-size: 55px;
    font-family: 'RedHatDisplay-Bold';
    margin: 0;
    line-height: 92px;
    text-align: start;
}
.company_top_links .contact a .title {
    font-size: 24px;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: bold;
    margin: 0;
    padding-left: 60px;
}

/*-------------safety------------*/
.company_contents .company_safety_bg_1 {
    background-image: url("images/company/safety_background_1.png");
    background-size: cover;
    background-repeat: no-repeat;
    padding-top: 100px;
    background-position:top -1px center;
}
.company_contents .company_safety_content_1 {
    max-width: 1100px;
    margin: 0 auto;
    color: #23231E;
    overflow: hidden;
}
.company_contents .company_safety_content_1 .content_head {
    display: flex;
    align-items: center;
}
.company_contents .company_safety_content_1 .content_head h1 {
    margin: 0;
    font-weight: bold;
    font-size: 140px;
    line-height: 160pt;
    font-family: 'RedHatDisplay-Bold';
    letter-spacing: 9px;
    white-space: nowrap;
}

.company_contents .company_safety_content_1 .content_head p {
    font-size: 45px;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    letter-spacing: 12px;
    writing-mode: vertical-rl;
    text-align: center;
    margin: auto;
}
.company_contents .company_safety_content_1 h2 {
    display: flex;
    align-items: center;
    font-size: 40px;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    letter-spacing: 7px;
    margin: 160px 0 63px 0;
}

.company_contents .company_safety_content_1 h2 span {
	display:flex;
	justify-content:center;
	align-items:center;
    background-color: #23231e;
    color: white;
    font-size: 26px;
    font-family:'RedHatDisplay-SemiBold';
    letter-spacing: 5px;
    line-height: 29px;
    height: 64px;
    width: 64px;
    margin-right: 37px;
}
.company_contents .company_safety_content_1 .contents .content_1 h3 {
    text-align: center;
    font-size: 28px;
    font-family:'ZenOldMincho-Bold';
    font-weight: normal;
    position: relative;
    padding: 10px 0;
    letter-spacing: 5px;
    border-top: 1px #23231E solid;
    border-bottom: 1px #23231E solid;
    margin: 63px 0 48px 0;
}

.company_contents .company_safety_content_1 .contents .content_1 h3::before {
    top: 0;
}

.company_contents .company_safety_content_1 .contents .content_1 h3::after {
    bottom: 0;
}

.company_contents .company_safety_content_1 .contents .content_1 p {
    display: flex;
    align-items: baseline;
    font-family:'kozminpro-medium';
    margin: 12px 0;
    font-size: 20px;
	line-height:40px;
    font-weight: 200;
    letter-spacing: 1.5px;
    padding: 0;
}

.company_contents .company_safety_content_1 .contents .content_1 p span {
    display: flex;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    background-color: #0075c2;
    color: white;
    font-size: 18px;
    font-weight: bold;
    margin-right: 24px;
}
.company_contents .company_safety_content_1 .contents .content_2 p {
	font-family: 'kozminpro-medium';
    line-height: 40px;
    font-size: 18px;
    margin: 0 0 60px 0;
}
.company_contents .company_safety_content_1 .contents .content_2 p.line_1 {
    font-size: 32px;
	font-family:'ZenOldMincho-Bold';
	font-weight: normal;
}
.company_contents .company_safety_content_1 .contents .content_3 .list {
    list-style: none;
    padding: 0;
    margin: 60px 0;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 22px;
    line-height: 50px;
}
.company_contents .company_safety_content_1 .contents .content_3 .list li {
    display: flex;
    align-items: center;
    margin: 10px 0;
}

.company_contents .company_safety_content_1 .contents .content_3 .list li::before {
    content: ""; 
    width: 32px;
    height: 32px;
    background-image: url('images/company/square_check_b.png');
    background-size: cover;
    background-position: center;
    margin-right: 26px;
    display: inline-block;
}
.company_contents .company_safety_content_1 .contents .content_2 .sign_line {
    text-align: right;
    font-size: 20px;
    font-weight: bold;
    margin-top: 20px;
    margin-right: 20px;
	letter-spacing: 2px;
}

.company_contents .company_safety_content_1 .contents .content_2 .sign_line_name {
    font-size: 32px;
    font-weight: bold;
    margin-left: 20px;
}
.company_contents .company_safety_content_1 .contents .content_1 img {
    width: 100%;
    margin-bottom: 53px;
}
.company_contents .company_safety_content_1 .contents .content_4 .custom-link {
    display: flex
;
    justify-content: space-between;
    font-family: 'kozminpro-medium';
    letter-spacing: 4px;
    align-items: center;
    text-decoration: none;
    font-size: 28px;
    color: #333;
    padding: 52px 0;
    width: 100%;
    border-bottom: 1px solid #ccc;
}

.company_contents .company_safety_content_1 .contents .content_4 .custom-link::after {
    content: "";
    width: 40px;
    height: 40px;
    background-image: url(images/company/right_cycle_arrow_1.png);
    background-size: cover;
    background-position: center;
    display: inline-block;
    margin-right: 20px;
}
.company_contents .company_safety_content_1 .contents .content_4 .custom-link:hover::after {
    background-image: url(images/company/right_cycle_arrow_b.png);
}
/* =========philosophy================  */
.philosophy-greeting-container{
    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    ul, ol {
        list-style: none;
    }

    a {
        text-decoration: none;
        color: inherit;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    body {
        background-color: #fff;
    }

    img {
        max-width: 100%;
        height: auto;
    }

    input, textarea, select, button {
        font-family: inherit;
        font-size: inherit;
        border: none;
        outline: none;
        background: transparent;
    }

    * {
        box-sizing: border-box;
    }

    header, footer, section, article, nav, aside, figure, figcaption {
        margin: 0;
        padding: 0;
        display: block;
    }

    .philosophy-greeting-title {
        padding-top: 120px;
        background-image: url("images/company/philosophy_bg_1.png");
        background-position: top;
        background-repeat: repeat;
        background-size: contain;
		
        .pc_none{
            display: none;
        }
        .mobile_none{
            display: block;
        }
        .head_philosophy-greeting-title{
            max-width: 1100px;
            margin: 0 auto;
        }
        h2{
            font-size: 140px;
            font-family: 'RedHatDisplay-Bold', Arial, sans-serif;
            font-weight: bold;
			line-height:160px;
            width: fit-content;
        }
        h3{
            font-size: 110px;
            width: fit-content;
            margin: 0;
            font-family: 'RedHatDisplay-Bold', Arial, sans-serif;
            font-weight: bold;
            color: #8696A6;
            margin-top: -17px;
        }
        p{
            font-size: 45px;
			margin-top: 50px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
            letter-spacing: 12px;
			line-height:50px;
        }
    }

    .philosophy-box-img{
        display: flex;
        width: 100%;
        margin-top: 140px;
    }
    .circle-container img{
        width: 81%;
        position: relative;
        height: 650px;
        max-height: 650px;
        object-fit: cover;
        border-bottom-right-radius: 80px;
		z-index: 2;
    }
	img.philosophy-banner {
		width:80%;
		z-index: 5;
	}
    .banner_red_blue_mb{
        display: none;
    }
     .circle-container{
        position: absolute;
        width: 35%;
        right: 0%;
        transform: translateY(-50%);
        z-index: 1;
        margin-top: 100px;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
    } 
    .circle-container img{
        width: 100%;
        object-fit: fill;
    }

    .philosophy-content-box{
        max-width: 1200px;
		margin: 100px auto 0 auto;
        padding: 0 20px;
        
        p{
            font-size: 18px;
                font-family: 'kozminpro-medium';
                letter-spacing: 3px;
                line-height: 44px;
        }
        .sign_line {
            text-align: right;
            font-size: 20px;
			font-weight: bold;
			letter-spacing: 2px;
            margin-top: 60px;
            margin-right: 20px;
	    }
        .sign_line_name {
			font-size: 32px;
			font-weight: bold;
			margin-left: 20px;
        }

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

/* ===============================================================  */
/* =========philosophy-greeting-container>ofic_group================  */
/* ===============================================================  */
.ofic_group{
    margin: 0 auto;
    margin-top: 60px;
    padding-top: 200px;
    background-image: url('images/company/border_banner.png') ;
    background-position: top;
    background-repeat: no-repeat;
    position: relative;

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    ul, ol {
        list-style: none;
    }

    a {
        text-decoration: none;
        color: inherit;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    body {
        background-color: #fff;
    }

    img {
        max-width: 100%;
        height: auto;
    }

    input, textarea, select, button {
        font-family: inherit;
        font-size: inherit;
        border: none;
        outline: none;
        background: transparent;
    }

    * {
        box-sizing: border-box;
    }

    header, footer, section, article, nav, aside, figure, figcaption {
        margin: 0;
        padding: 0;
        display: block;
    }

    > h2{
        font-size: 40px;
        padding-left: 30px;
        line-height: 62px;
        border-left: 10px solid #0075C2;
        font-weight: bold;
    }
    
    .p_description_1{
        margin-top: 50px;
    }
    p{
        line-height: 40px;
    }

    .moderate-border{
        max-width: 1200px;
        margin: 0 auto;
    }
	.moderate-border h3{
		padding-left:32px;
		font-family:'ZenOldMincho-Bold';
		font-weight: normal;
		font-size:40px;
		line-height:62px;
		border-left:8px solid #0075c1;
	}
    .moderate-border img{
        position: absolute;
        top: -289px;
        left: -42%;
        width: 57%;
    }
    

    .p_description_1, .p_description_2 {
        font-size: 18px;
        color: #333;
        line-height: 40px;
        font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
        letter-spacing: 2px;
    }
    
    h2 {
        font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
        font-size: 36px;
        color: #333;
        line-height: 1.5;
        margin-bottom: 20px;
    }
    
    .info-box{
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        max-width: 1100px;
        margin: 0 auto;
    }
    .philosophy-content-box{
        width: 100%;
        display: flex;
        align-items: center;
        flex-direction: column;
        margin-top: 157px;
        padding-bottom: 80px;
        border-bottom: 2px solid #0075C2;
		
        h3{
            color: #0075C2;
            font-size: 60px;
            font-weight: bold;
            padding: 0 10px;
            font-family: 'RedHatDisplay-Bold';
            letter-spacing: 6px;
        }
        .phi-subtitle{
            margin-top: 10px;
            color: #0075C2;
            font-size: 23px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
        }
        .phi-description_1{
            margin-top: 40px;
            font-size: 32px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
            text-align: center;
            line-height: 61px;
            letter-spacing: 6px;
        }
    }
    .purpose-value-content-box {
        width: 100%;
        display: flex;
        align-items: center;
        flex-direction: column;
        margin-top: 60px;
        padding-bottom: 64px;
        border-bottom: 2px solid #0075C2;
        position: relative; 
    }
    
    .purpose-value-content-box h3 {
        color: #0075C2;
        font-size: 60px;
        font-weight: 500;
        padding: 0 10px;
        font-family: 'RedHatDisplay-Bold';
        letter-spacing: 6px;
    }
    
    .purpose-value-subtitle {
        margin-top: 10px;
        color: #0075C2;
        font-size: 23px;
        font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
        letter-spacing: 3px;

    }
    
    .purpose-value-description {
        margin-top: 32px;
        font-family: 'kozminpro-medium';
        font-size: 18px;
        letter-spacing: 3px;
    }
    
    .purpose-value-content-box::after {
        content: "";
        position: absolute;
        bottom: 0px; 
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 25px solid #0075C2; 
    }
    .purpose-value-content-box:last-child::after {
        content: none;
    }
    .affter_none::after {
        content: none !important;
    }
    .p_grid_2{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .purpose-value-description{
        .purpose-value-description {
            font-size: 18px;
            margin-top: 10px;
            font-family: 'kozminpro-medium';
            letter-spacing: 3px;
        }
    }


    /* CONTACT BUTTON */
    .contact-button {
        cursor: pointer;
        display: flex;
        background-color: white;
        border: 2px solid black;
        border-radius: 100px;
        width: 100%;
        height: 200px;
        margin: 240px auto 0;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        -ms-border-radius: 100px;
        -o-border-radius: 100px;
        position: relative;
        align-items: center;
        align-content: center;
        justify-content: center;
    }
    
    .circle {
        width: 200px;
        height: 200px;
        border-radius: 50%;
        background-color: black;
        display: flex;
        justify-content: center;
        align-items: center;
		position: absolute;
        top: 0;
		left: 0;
    }
    
    .arrow {
        color: white;
        font-size: 40px;
    }
    
    .text-container {
        display: flex;
        gap: 50px;
        margin-right: 30px;
    }
    
    .contact {
        font-family: 'RedHatDisplay-Bold';
        font-size: 55px;
        font-weight: bold;
        color: #333;
        margin: 0;
        letter-spacing: 3px;
    }

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

    .contact-button-mb{
        display: none;
    }


    /* cirle button */
    .circle-button {
        align-self: flex-end;
        width: 50px;
        height: 50px;
        border-radius: 50%; 
        background-color: #007BFF;
        display: flex;
        justify-content: center;
        align-items: center;
        color: white; 
        font-size: 24px; 
        font-weight: bold;
        text-align: center;
        cursor: pointer; 
    }
    .triangle{
        font-size: 18px;
    }
    
	&.mg_n{
		margin:0;
	}
}

.ofic_group_title{
	margin-bottom:128px;
	
	h2{
		font-family:'RedHatDisplay-Bold';
		font-size:140px;
		line-height:120px;
	}
	p{
		margin-top:48px;
		font-family:'ZenOldMincho-Bold';
		font-weight: normal;
		font-size:45px;
		line-height:78px;
	}
}

/*------------------overview----------------*/
.overview {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    border: 0;
    outline: 0;
    background: none;
    text-decoration: none;
    list-style: none;
    font-size: 100%;


    .img_banner {
        width: 100%;
        position: relative;
        background-image: url("images/company/img_banner_bg.png");
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        padding-top: 100px;

        .overview_title {
            max-width: 1100px;
            font-family: 'RedHatDisplay-SemiBold';
            display: flex;
            margin: 0 auto;
        }
        .overview_title h2{
            font-family: 'RedHatDisplay-SemiBold';
			font-size: 140px;
            line-height: 160px;
            margin: 0 auto;
            margin-bottom: 50px;
        }

        .img_banner_content {
            max-width: 1100px;
            margin: 0 auto;
            position: relative;
            display: flex;
        

            .tower_img {
                height: 500px;
                width: 70%;
                background-image: url("images/company/im_02西南_1.jpg");
                border-radius: 100px 0 100px 0;
                background-position: 0px 29%;
                background-size: 100%;
                z-index: 5;
            }

            h3 {
                font-family: 'ZenOldMincho-Bold';
				font-weight: normal;
                font-size: 45px;
                writing-mode: vertical-rl;
                letter-spacing: 15px;
                margin-left: 20%;
            }

            .blue_circle {
                width: 100px;
                height: 100px;
                position: absolute;
                left: -146px;
                top: 66px;
                border-radius: 100%;
                background: linear-gradient(-45deg, #0060A0, #0075C2);
            }

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

            .gray_circle {
                width: 170px;
                height: 170px;
                position: absolute;
                left: 95%;
                top: 270px;
                border-radius: 100%;
                background: linear-gradient(-45deg, #657689, #8696A6);
            }
        }
    }



    .company_info {
        max-width: 1100px;
        margin: 0 auto;
        font-family: 'kozminpro-medium';
        padding-top: 140px;

        .company_wapper {
            

            h3 {
                position: relative;
                height: 80px;
                align-content: center;
                letter-spacing: 3px;
                font-size: 26pt;
                line-height: 28pt;
                font-weight: normal;
                border-bottom: 1px solid #657689;


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

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

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

            .company_document {
                margin-top: 48px;

                .info_box {
                    font-family: 'kozminpro-medium';
                    padding: 30px 0 30px 0;
                    flex-wrap: nowrap;
                    display: flex;
                    font-size: 18pt;
                    letter-spacing: 3px;
                    border-bottom: 1px solid #dfe3e3;

                    h4 {
                        min-width: 200px;
                        font-weight: 400;
                    }
					.info_flex{
						flex:1;
					}
                }
            }

            .map_info {
                margin-top: 30px;


                .map_img {
                    margin: 30px 0;
                    width: 100%;
                    height: 300px;
                }
            }

            .ofic_title {
                max-width: 100%;
                margin-top: 80px;
                display: flex;
                flex-direction: column;
                text-align: center;
                align-items: center;
                font-size: 17pt;
                /*22pt -> 17pt*/
                line-height: 49pt;
                letter-spacing: 2px;

                img {
                    max-width: 290px;
                    max-height: 300px;
                    margin: 60px 0 40px 0;
                }
            }

            .document_box {
                font-size: 22pt;
                line-height: 49pt;
                margin-top: 60px;
                display: flex;
                flex-direction: column;
                gap: 40px;

                p {
                    border-bottom: 2px dashed #8696A6;
                }

                span {
                    font-size: 17pt;
                    /*18pt -> 17pt*/
                    line-height: 40pt;
                }

            }

            .character_content {
                display: grid;
				grid-template-columns:repeat(2, 1fr);
                margin-top: 80px;

                img {
                    width: 100%;
                    padding:0 118px 0 95px;
					box-sizing:border-box;
                }

                .character_text {
                    font-family: "m-plus-rounded-1p", sans-serif;
					font-weight: bold;
                    font-size: 36px;
                    line-height: 80px;
                    display: flex;
                    flex-direction: column;

                    .character_title {
                        border-bottom: 2px dashed #8696A6;
                        margin: 0;
                        display: flex;
                        align-items: flex-end;
                        gap: 30px;

                        .character_subtitle {
                            font-size: 60px;
                            letter-spacing: 12px;
                        }
                        .furigana {
                            font-size: 16px;
                            text-align: center;
                            height: 13px;
                            letter-spacing: 3px;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                        }
                    }

                    .character_document {
						padding:36px 0;
                        font-size: 16pt;
                        line-height: 2;
                        font-weight: 700;
                        border-bottom: 2px dashed #8696A6;
						font-family: "m-plus-rounded-1p", sans-serif;

                        p {
                            display: grid;
							grid-template-columns:230px 1fr;
							align-items:baseline;
                        }

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

                        .value {
                            color: #007acc;
                            font-weight: bold;
                            letter-spacing: 3px;
                        }
                    }
                }
            }

            .btn_profile {
                background-color: #F3F7F7;
                min-height: 220px;
                display: flex;
                border-radius: 120px;
                justify-content: center;
                align-items: center;
                gap: 95px;

                h4 {
                    font-family: 'RedHatDisplay-Bold';
                    color: #0075C2;
                    /* background-color: #FACBCC; */
                    max-height: max-content;
                    font-size: 24px;
                    line-height: 49px;
                    letter-spacing: 4px;
                }

                p {
                    font-family: "m-plus-rounded-1p", sans-serif;
					font-weight: 700;
					font-style: normal;
                    font-size: 18px;
                    line-height: 35px;
                    letter-spacing: 2px;
                }
            }

            .btn_page {
                display: flex;
                gap: 20px;

                img {
                    width: 100%;
                }
            }
            .btn_tv_title {
                color: #0075C2;
                text-align: center;
                font-size: 27px;
                border-bottom: 1px solid;
                border-top: 1px solid;
                letter-spacing: 5px;
            }
            .btn_contact {
                padding-top: 240px;
                padding-bottom: 180px;
            }
			.steel_img {
                display: flex;
                margin: 60px 0;


                .steel_title{
                    font-family: 'kozminpro-medium';
                    max-width: 620px;
                    width: 57%;
                    background-color: #DFE3E3;
                    font-size: 24pt;
                    line-height: 28pt;
                    letter-spacing: 10px;
                    padding: 30px;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;


                    .btn_steel {
                        align-self: end;

                        img{
                            width: 100%;
                        }
                    }
                    
                }
                img{
                    width: 44%;
                }
                .steel_title2{
                    font-family: 'kozminpro-medium';
                    width: 481px;
                    height: 240px;
                    background-color: #CCCCCC;
                    color: #fff;
                    font-size: 24pt;
                    line-height: 28pt;
                    letter-spacing: 10px;
                    padding: 30px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }
                
            }
        }
    }
	.mg_reset {
        margin-top: 0;
    }

    .btn_wapper {
        max-width: 1100px;
        font-family: 'kozminpro-medium';
        margin: 0 auto;


        .btn_box {
            width: 100%;
            margin-top: 10px;

            .box_title {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding: 30px;	
                background-color: #F8FAFA;
				cursor: pointer;

                span {
                    font-size: 22pt;
                    line-height: 28pt;
                    letter-spacing: 5px;
                }

                .icon_plus {
                    width: 30px;
                    height: 30px;
                    color: #657689;
                    font-weight: 600;
					line-height:1;
                }

            }

            .box_content {
				display:none;
                width: 100%;
                padding: 40px 60px 80px 60px;
                font-size: 16pt;
                line-height: 34pt;
                letter-spacing: 2px;
/*                 display: flex;
                flex-direction: column;
                gap: 4px; */
                box-sizing: border-box;
                margin-top: 3px;
                background-clip: padding-box;
                background-color: #F8FAFA;

                a {
                    color: #0075C2;
                    font-size: 20px;
                    margin: 20px 0 20px 0;
                    text-decoration: underline;
                }

                .box_subtitle {
					margin-bottom:4px;
                    padding: 20px;
                    color: #fff;
                    background-color: #8696A6;
                }

                .box_item {
                    display: grid;
					grid-template-columns:180px 1fr;
					margin-bottom:4px;
                    background-color: #F8FAFA;

                    .txt_underline {
                        text-decoration: underline;
                    }

                    .box_year {
						display: flex;
						justify-content: center;
						align-items: center;
						flex-direction: column;
						min-width: 180px;
						min-height: 60px;
						margin:0;
						padding:10px 0;
						font-size:18px;
						line-height:34px;
						text-align: center;
						color: #fff;
						background-color: #8696A6;
                    }

                    .bg_gray {
                        background-color: #595757;
                    }

                    .box_text {
                        max-width: 798px;
                        border-bottom: 1px dotted #8696A6;
                        padding: 20px 0 20px 30px;
                        display: flex;
						justify-content:center;
                        flex-grow: 1;
                        flex-direction: column;
                        line-height: 1.5;
						letter-spacing:1.5px;

                        u {
                            display: inline;
                            color: #0075C2;
                            text-decoration: underline;
                            line-height: 1;
                        }
                    }
                }
				
				.container{
					display:grid;
					
					&.col2{
						grid-template-columns:repeat(2, 1fr);
					}
					ul{
						margin:0;
						padding-left:20px;
						
						li{
							font-size:18px;
							line-height:40px;
						}
						&.lg{
							li{
								font-size:26px;
								line-height:56px;
							}
						}
					}
				}
            }


        }



    }
}
/* =================================================================  */
/* ====================all_activity-container>======================  */
/* =================================================================  */


.all_activity_container{
    display: flex;
    flex-direction: column;
	
    .bg-head-content{
        background-image: url("images/company/banner_head_title_1.png");
		background-size:contain;
        max-width: 100vw;
        height: 130px;
    }
    .sp_pd{
        width: 64px;
        height: 64px;
        background-color: #23231E;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .p_04{
        font-size: 26px;
        line-height: 30px;
        letter-spacing: 2.5px;
        font-weight: bold;
        color: #ffffff;
        font-family: 'RedHatDisplay-SemiBold';
    }
    .activity_big_title{
        max-width: 1100px;
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content:flex-start;
        gap: 40px;
        align-items: center;

        h2{
            font-size: 40px ;
            line-height: 86px;
            letter-spacing: 8px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
        }
    }
    .activity_item{
        max-width: 1100px;
        margin: 0 auto;
        margin-top: 96px;
        .mobile-only br{
            display: none;
        }
        h3{
            font-size: 40px;
            border-left: 8px solid #1575BC ;
            padding-left: 40px;
            letter-spacing: 6px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
        }

        .activity_content{
            margin-top: 52px;
        }
        .activity_content p{
            font-size: 18px;
            line-height: 40px;
            letter-spacing: 2.5px;
            font-family: 'kozminpro-medium';
        }
        .activity_img{
            margin-top: 48px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 24px;
        }
        .activity_img img{
            width: calc(50% - 12px);
            height: auto;
        }
    }
    .m-t_96{
        margin-top: 96px;
    }
    .m-t_160{
        margin-top: 160px;
    }

    .btn-top{
        max-width: 1100px;
        width: 100%;
        margin: 160px auto 0 auto;
        display: flex;
        justify-content: end;
        align-items: center;

    }
    .btn-top a{
        width: 300px;
        height: 40px;
        text-align: center;
        box-sizing: border-box;
        background-color: #23231E;
        border-radius: 30px;
        font-weight: normal;
        color: #ffffff;
        padding-right: 30px;
		position: relative;
    }
    .btn-top span{
        font-family: "ryo-gothic-plusn", sans-serif;
        font-size: 18px;
        line-height: 39px;
        letter-spacing: 2px;
    }
    .btn-top img{
        width: 20px;
        height: 20px;
        position: absolute;
        top: 50%;
        right: 0px;
        transform: translate(-50%, -50%);
    }
    .contact-button-mb{
        display: none;
    }
	
	/* Contact button */
	.contact-button_all_pc {
		cursor: pointer;
		display: flex;
		max-width: 1100px;
		align-items: center;
		background-color: white;
		border: 2px solid black;
		justify-content: start;
		border-radius: 100px;
		width: 100%;
		height: 200px;
		margin: 160px auto 0 auto;
		gap: 140px;
	}

	.circle_all_pc {
		width: 200px;
		height: 200px;
		border-radius: 50%;
		background-color: black;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.arrow {
		color: white;
		font-size: 40px;
	}
	.text-container_all_pc {
		display: flex;
		gap: 50px;
		margin-right: 30px;
		align-items: center;
	}
	.contact_all_pc {
		font-size: 55px;
		font-weight: normal;
		line-height: 96px;
		font-family: 'RedHatDisplay-Bold';
		letter-spacing: 5px;
	}

	.japanese_all_pc {
		font-size: 24px;
		letter-spacing: 4px;
		font-family: "ryo-gothic-plusn", sans-serif;
		font-weight: bold;
		line-height: 42px;
		padding-top: 10px;
	}


}
/*-------------------steel-----------------*/
.company_contents .company_steel_bg_1{
    background-image: url("images/company/steel_background_1.png");
    background-size: cover;
	background-repeat:no-repeat;
    /*background-position: center;*/
    padding-top: 40px;
}
.company_contents .company_steel_bg_1 .company_steel_content_1 {
    max-width: 1200px;
    margin: 0 auto;
    background-color: white;
    border-radius: 60px;
    padding: 100px 0 47px 0;
}
.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head {
    max-width: 1100px;
    margin: 0 auto;
}
.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head h1 {
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 50px;
    text-align: center;
    letter-spacing: 9px;
    margin: 0;
}
.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head p {
    font-family: 'RedHatDisplay-SemiBold';
    font-size: 20px;
    color: #127fc5;
    text-align: center;
    margin: 35px 0 0 0;
}
.company_contents .company_steel_bg_1 .company_steel_content_1 .content_head .contents p {
    font-family: 'kozminpro-medium';
    font-size: 18px;
    color: #23231E;
    text-align: start;
    line-height: 40px;
    letter-spacing: 2px;
    font-weight: 100;
    margin-top: 64px;
}
.company_contents .company_steel_content_2 h2 {
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 24px;
    letter-spacing: 4px;
    background-image: url("images/company/steel_background_2.png");
    background-repeat: no-repeat;
    color: white;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px 0;
    margin: 45px 0 0 0;
}
.company_contents .company_steel_content_2 .container_title_boxs {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    width: 100%;
    margin-top: 60px;
}

.company_contents .company_steel_content_2 .container_title_boxs .container_title_box {
    flex: 1;
    border-left: solid 2px #0075c1;
}
.company_contents .company_steel_content_2 .container_title_boxs .container_title_box:last-child {
    border-right: solid 2px #0075c1;
}

.company_contents .company_steel_content_2 .container_title_boxs .container_title_box .title_jp {
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 40px;
    text-align: center;
    letter-spacing: 11px;
    margin: 0;
}


.company_contents .company_steel_content_2 .container_title_boxs .container_title_box .title_en {
    font-family: 'RedHatDisplay-SemiBold';
    font-size: 16px;
    color: #127fc5;
    text-align: center;
    margin: 5px 0 20px;
}
.company_contents .company_steel_content_2 .container_title_boxs_1 {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    margin-top: 80px;
    align-items: center;
    gap: 10px;
    border-top: solid;
}
.company_contents .company_steel_content_2 .container_title_boxs_1 .title_before {
    background-image: url("images/company/steel_background_3.png");
    background-repeat: no-repeat;
    background-size: contain;
    color: white;
    width: 180px;
    height: 40px;
    font-family: 'RedHatDisplay-SemiBold';
    font-size: 18px;
    letter-spacing: 4px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.company_contents .company_steel_content_2 .container_title_boxs_1 .title_behide {
    font-size: 18px;
    letter-spacing: 2px;
    font-family: "ryo-gothic-plusn", sans-serif;
}
.company_contents .company_steel_content_2 img {
    width: 100%;
}
.company_contents .company_steel_content_2 .separator {
    width: 100%;
    border-bottom: 3px dotted black;
    margin: 20px 0;
}
.company_contents .company_steel_content_2 .separator.solid {
	border-bottom: 1px solid black;
}
.company_steel_content_2{
	position:relative;
	max-width: 1100px;
    margin: 0 auto;
    color: #23231E;
    overflow: hidden;
}
.company_steel_content_2 map{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

/* .company_steel_content_2 map #map1{
	position:absolute;
    top: 1148px;
    right: 0;
    width: 260px;
    height: 161px;
}
.company_steel_content_2 map #map2{
	position: absolute;
    top: 192px;
    left: 0;
    width: 240px;
    height: 200px;
}
.company_steel_content_2 map #map3{
	position: absolute;
    top: 731px;
    right: 0;
    width: 240px;
    height: 188px;
}
.company_steel_content_2 map #map4{
    position: absolute;
    top: 581px;
    right: 0;
    width: 240px;
    height: 140px;
}
.company_steel_content_2 map #map5{
	position: absolute;
    top: 1202px;
    left: 0;
    width: 240px;
    height: 160px;
}
.company_steel_content_2 map #map6{
	position: absolute;
    top: 551px;
    left: 0;
    width: 240px;
    height: 344px;
}
.company_steel_content_2 map #map7{
	position: absolute;
    top: 943px;
    left: 0;
    width: 240px;
    height: 120px;
}
.company_steel_content_2 map #map8{
	position: absolute;
    top: 1072px;
    left: 0;
    width: 240px;
    height: 120px;
}
.company_steel_content_2 map #map9{
	position:absolute;
    top: 928px;
    right: 0;
    width: 240px;
    height: 211px;
}
.company_steel_content_2 map #map10{
	position: absolute;
    top: 192px;
    left: 431px;
    width: 240px;
    height: 190px;
}
.company_steel_content_2 map #map11{
	position: absolute;
    top: 401px;
    left: 0;
    width: 240px;
    height: 140px;
}
@media(max-width:1100px){
	.company_steel_content_2 map #map1{
		position: absolute;
        top: 104.5vw;
        right: 0;
        width: 23.6vw;
        height: 14.4vw;
	}
	.company_steel_content_2 map #map2{
		position: absolute;
        top: 17.5vw;
        left: 0;
        width: 22vw;
        height: 18.1vw;
	}
	.company_steel_content_2 map #map3{
		position: absolute;
        top: 66.5vw;
        right: 0;
        width: 21.7vw;
        height: 17vw;
	}
	.company_steel_content_2 map #map4{
		position: absolute;
        top: 52.8vw;
        right: 0;
        width: 21.8vw;
        height: 12.8vw;
	}
	.company_steel_content_2 map #map5{
		position: absolute;
        top: 109.2vw;
        left: 0;
        width: 22vw;
        height: 14.6vw;
	}
	.company_steel_content_2 map #map6{
        position: absolute;
        top: 50.1vw;
        left: 0;
        width: 22vw;
        height: 31.2vw;
	}
	.company_steel_content_2 map #map7{
		position: absolute;
        top: 85.6vw;
        left: 0;
        width: 22vw;
        height: 11vw;
	}
	.company_steel_content_2 map #map8{
		position: absolute;
        top: 97.5vw;
        left: 0;
        width: 22vw;
        height: 10.8vw;
	}
	.company_steel_content_2 map #map9{
		position: absolute;
		top:84.4vw;
		right:0;
		width:21.8vw;
		height:19.1vw;
	}
	.company_steel_content_2 map #map10{
		position: absolute;
        top: 17.5vw;
        left: 39vw;
        width: 22vw;
        height: 17.2vw;
	}
	.company_steel_content_2 map #map11{
		position: absolute;
        top: 36.5vw;
        left: 0;
        width: 22vw;
        height: 12.6vw;
	}
} */

#map_steel map{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
#map_steel map #map1{
	position:absolute;
    top: 1148px;
    right: 0;
    width: 260px;
    height: 161px;
}
#map_steel map #map2{
	position: absolute;
    top: 192px;
    left: 0;
    width: 240px;
    height: 200px;
}
#map_steel map #map3{
	position: absolute;
    top: 731px;
    right: 0;
    width: 240px;
    height: 188px;
}
#map_steel map #map4{
    position: absolute;
    top: 581px;
    right: 0;
    width: 240px;
    height: 140px;
}
#map_steel map #map5{
	position: absolute;
    top: 1202px;
    left: 0;
    width: 240px;
    height: 160px;
}
#map_steel map #map6{
	position: absolute;
    top: 551px;
    left: 0;
    width: 240px;
    height: 344px;
}
#map_steel map #map7{
	position: absolute;
    top: 943px;
    left: 0;
    width: 240px;
    height: 120px;
}
#map_steel map #map8{
	position: absolute;
    top: 1072px;
    left: 0;
    width: 240px;
    height: 120px;
}
#map_steel map #map9{
	position:absolute;
    top: 928px;
    right: 0;
    width: 240px;
    height: 211px;
}
#map_steel map #map10{
	position: absolute;
    top: 192px;
    left: 431px;
    width: 240px;
    height: 190px;
}
#map_steel map #map11{
	position: absolute;
    top: 401px;
    left: 0;
    width: 240px;
    height: 140px;
}
@media(max-width:1100px){
	#map_steel map #map1{
		position: absolute;
        top: 104.5vw;
        right: 0;
        width: 23.6vw;
        height: 14.4vw;
	}
	#map_steel map #map2{
		position: absolute;
        top: 17.5vw;
        left: 0;
        width: 22vw;
        height: 18.1vw;
	}
	#map_steel map #map3{
		position: absolute;
        top: 66.5vw;
        right: 0;
        width: 21.7vw;
        height: 17vw;
	}
	#map_steel map #map4{
		position: absolute;
        top: 52.8vw;
        right: 0;
        width: 21.8vw;
        height: 12.8vw;
	}
	#map_steel map #map5{
		position: absolute;
        top: 109.2vw;
        left: 0;
        width: 22vw;
        height: 14.6vw;
	}
	#map_steel map #map6{
        position: absolute;
        top: 50.1vw;
        left: 0;
        width: 22vw;
        height: 31.2vw;
	}
	#map_steel map #map7{
		position: absolute;
        top: 85.6vw;
        left: 0;
        width: 22vw;
        height: 11vw;
	}
	#map_steel map #map8{
		position: absolute;
        top: 97.5vw;
        left: 0;
        width: 22vw;
        height: 10.8vw;
	}
	#map_steel map #map9{
		position: absolute;
		top:84.4vw;
		right:0;
		width:21.8vw;
		height:19.1vw;
	}
	#map_steel map #map10{
		position: absolute;
        top: 17.5vw;
        left: 39vw;
        width: 22vw;
        height: 17.2vw;
	}
	#map_steel map #map11{
		position: absolute;
        top: 36.5vw;
        left: 0;
        width: 22vw;
        height: 12.6vw;
	}
}

#map_sm map{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
#map_sm map area{
/* 	background-color:#aaaaaaaa; */
}
#map_sm map #map1{
	position: absolute;
    top: 180px;
    left: 0;
    width: 242px;
    height: 30px;
}
#map_sm map #map2{
	position: absolute;
    top: 217px;
    left: 0;
    width: 242px;
    height: 29px;
}
#map_sm map #map3{
	position: absolute;
    top: 252px;
    left: 0;
    width: 242px;
    height: 30px;
}
#map_sm map #map4{
	position: absolute;
    top: 289px;
    left: 0;
    width: 242px;
    height: 30px;
}

#map_sm map #map5{
	position: absolute;
    top: 353px;
    left: 0;
    width: 242px;
    height: 270px;
}
#map_sm map #map6{
	position: absolute;
    top: 633px;
    left: 0;
    width: 242px;
    height: 70px;
}
#map_sm map #map7{
    position: absolute;
    top: 713px;
    left: 0;
    width: 242px;
    height: 70px;
}
#map_sm map #map8{
	position: absolute;
    top: 1080px;
    left: 0;
    width: 242px;
    height: 140px;
}
#map_sm map #map9{
	position: absolute;
    top: 1229px;
    left: 0;
    width: 242px;
    height: 70px;
}
#map_sm map #map10{
	position: absolute;
    top: 160px;
    left: 347px;
    width: 240px;
    height: 110px;
}
#map_sm map #map11{
	position: absolute;
    top: 299px;
    left: 348px;
    width: 309px;
    height: 30px;
}
#map_sm map #map12{
	position: absolute;
    top: 338px;
    left: 348px;
    width: 309px;
    height: 30px;
}
#map_sm map #map13{
	position: absolute;
    top: 1080px;
    left: 490px;
    width: 280px;
    height: 110px;
}
#map_sm map #map14{
	position: absolute;
    top: 541px;
    right: 0;
    width: 240px;
    height: 70px;
}
#map_sm map #map15{
	position: absolute;
    top: 621px;
    right: 0;
    width: 240px;
    height: 144px;
}
#map_sm map #map16{
	position: absolute;
    top: 774px;
    right: 0;
    width: 240px;
    height: 190px;
}
#map_sm map #map17{
	position: absolute;
    top: 974px;
    right: 0;
    width: 240px;
    height: 110px;
}
@media(max-width:1100px){
	#map_sm map #map1{
		position: absolute;
        top: 16.5vw;
        left: 0;
        width: 22vw;
        height: 2.5vw;
	}
	#map_sm map #map2{
		position: absolute;
        top: 20vw;
        left: 0;
        width: 22vw;
        height: 2.5vw;
	}
	#map_sm map #map3{
		position: absolute;
        top: 23vw;
        left: 0;
        width: 22vw;
        height: 2.5vw;
	}
	#map_sm map #map4{
		position: absolute;
        top: 26.5vw;
        left: 0;
        width: 22vw;
        height: 2.5vw;
	}
	#map_sm map #map5{
		position: absolute;
        top: 32.2vw;
        left: 0;
        width: 22vw;
        height: 24.5vw;
	}
	#map_sm map #map6{
		position: absolute;
        top: 57.5vw;
        left: 0;
        width: 22vw;
        height: 6.4vw;
	}
	#map_sm map #map7{
		position: absolute;
        top: 64.8vw;
        left: 0;
        width: 22vw;
        height: 6.4vw;
	}
	#map_sm map #map8{
		position: absolute;
        top: 98.2vw;
        left: 0;
        width: 22vw;
        height: 12.8vw;
	}
	#map_sm map #map9{
		position: absolute;
        top: 111.8vw;
        left: 0;
        width: 22vw;
        height: 7vw;
	}
	#map_sm map #map10{
		position: absolute;
        top: 14.5vw;
        left: 31.6vw;
        width: 21.8vw;
        height: 10vw;
	}
	#map_sm map #map11{
		position: absolute;
        top: 27.4vw;
        left: 31.6vw;
        width: 28.2vw;
        height: 2.5vw;
	}
	#map_sm map #map12{
		position: absolute;
        top: 30.8vw;
        left: 31.6vw;
        width: 28.2vw;
        height: 2.5vw;
	}
	#map_sm map #map13{
		position: absolute;
        top: 98.2vw;
        left: 44.6vw;
        width: 25.4vw;
        height: 10vw;
	}
	#map_sm map #map14{
		position: absolute;
        top: 49.2vw;
        right: 0;
        width: 21.8vw;
        height: 6.4vw;
	}
	#map_sm map #map15{
		position: absolute;
        top: 56.4vw;
        right: 0;
        width: 21.8vw;
        height: 13.2vw;
	}
	#map_sm map #map16{
		position: absolute;
        top: 70.4vw;
        right: 0;
        width: 21.8vw;
        height: 17.3vw;
	}
	#map_sm map #map17{
		position: absolute;
        top: 88.5vw;
        right: 0;
        width: 21.8vw;
        height: 10vw;
	}
}

.company_contents .company_steel_content_3 {
   max-width: 1100px;
    margin: 0 auto;
	padding-top:90px;
    color: #23231E;
    overflow: hidden;
}
.company_contents .company_steel_content_3 .section {
    margin: 0 0 40px 0;
    position: relative;
}

.company_contents .tech_cen_content_3 .tech_cen_content_section {
    margin: 120px 0 40px 0;
}

.company_contents .company_steel_content_3 .section h3 {
    font-family: 'kozminpro-medium';
    font-size: 26px;
    letter-spacing: 5px;
    margin: 0;
	font-weight: 500;
}

.company_contents .company_steel_content_3 .line_container {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

.company_contents .company_steel_content_3 .line {
    width: 100%;
    height: 1px;
    background-color: #72726f;
}

.company_contents .company_steel_content_3 .rectangles {
    display: flex;
    position: absolute;
    left: 0;
}

.company_contents .company_steel_content_3 .rectangle {
    width: 20px;
    height: 5px;
}

.blue { background-color: #0075c2; }
.red { background-color: #e60012; }
.gray { background-color: #595757; }
.company_contents .company_steel_bg_3 {
    background-image: url("images/company/steel_background_4.png");
    background-size: cover;
    background-position: center;
    padding-top: 100px;
	padding-bottom:240px;
}

/*---------------------ofic group------------------*/
.ofic_box{
	position:relative;
	
/* 	.banner_title1 {
		max-width: 100vw;
		height: 200px;
		object-fit: contain;
		background-image: url("images/company/ofic_group/banner_head_title_1.png");
	} */
	.oficgroup_wapper {
		max-width: 1100px;
		margin: 130px auto 60px auto;
		font-family: 'RedHatDisplay-SemiBold';

		.ofic_title {
			/* padding: 20px 110px; */
			display: flex;
			gap: 105px;
			justify-content: center;
			/* min-width: 900px; */
			flex-wrap: wrap;


			h2 {
				font-size: 180px;
				line-height: 117px;
				letter-spacing: 7px;
			}

			p {
				font-size: 100px;
				line-height: 117px;
				letter-spacing: 7px;
			}
		}

		.ofic_content {
			padding: 80px 0 0 80px;
			display: flex;

			h3 {
				width: 25%;
				font-family: 'ZenOldMincho-Bold';
				font-weight: normal;
				writing-mode: vertical-rl;
				font-size: 45px;
				line-height: 78.6px;
				letter-spacing: 14px;
				align-content: end;
			}

			p {
				width: 75%;
				font-family: 'kozminpro-medium';
				font-size: 18px;
				line-height: 40px;
				letter-spacing: 1.5px;
				display: flex;
				flex-direction: column;
			}
		}
	}
}
.ofic_box::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:200px;
	background-image: url("images/company/ofic_group/banner_head_title_1.png");
}
.ofic_map {
	max-width: 1920px;
	max-height: 1940px;
	padding-top: 150px;
	padding-bottom: 110px;
	margin-top: 60px;
	margin-bottom: 160px;
	background-image: url('images/company/ofic_group/bg_map.png');
	display: flex;
	justify-content: center;

	.map_img{
		max-width: 1100px;

		img{
			width: 100%;
		}
	}
}

.contact_wapper{
	max-width: 1100px;
	margin: 0 auto 40px;
	font-family: 'kozminpro-medium';

	.contact_title h3 {
		min-height: 40px;
        max-width: 100%;
		font-size: 22px;
        line-height: 28px;
        letter-spacing: 10px;
        font-weight: 100;
        border-left: 10px solid #000;
        border-bottom: 2px solid #000;
        padding-left: 16px;
	}
	.contact_subtitle{
		padding: 40px 0;
		display: flex;
		font-size: 18pt;
		line-height: 40pt;
		letter-spacing: 2px;
		border-bottom: 2px dashed #657689;
		gap: 85px;

		span{
			min-width: 200px;
		}
	}
	.contact_table{
		width: 100%;
		display: flex;
		flex-direction: column;
		font-size: 18pt;
		line-height: 40pt;
		letter-spacing: 2px;
		margin-bottom: 30px;

		.tb_box{
			display: flex;

			.tb_title{
				min-width: 200px;
			}
		}
	}
	.map_info {
		margin-top: 30px;

		.map_img {
			margin-top: 30px;
			margin-bottom: 95px;
			width: 100%;
		}
	}
	.tb_box {
		font-family: 'kozminpro-medium';
        padding: 30px 0 30px 0;
        flex-wrap: nowrap;
        display: flex;
        font-size: 18px;
        line-height: 40px;
        border-bottom: 1px solid #DFE3E3;
        gap: 85px;


		h4 {
			min-width: 200px;
			font-weight: 400;
		}
		
		.tb_box_content{
			display: flex;
            gap: 10px;
			
			.tb_box_conten_line{
				min-width: 76px;
			}
		}
	}
}
.company_steel_bg_1 .group_company{
	margin-top:92px;
}
.group_company{
	position:relative;
	max-width: 1100px;
	margin: 0 auto;

	.group_title{
		display: flex;
/* 		padding-top: 100px; */
		font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
		font-size: 32px;
		letter-spacing: 7px;
		color: #0075C2;
/* 		padding-bottom: 95px; */
		justify-content: space-between;

		.title_content{
			display: flex;
			flex-direction: column;


			.title{
				display: flex;
				align-items: center;
				gap: 25px;
				padding-bottom: 40px;

				.blue_stroke {
					width: 32px;
					height: 32px;
					border-radius: 100%;
					background-color: #0075C2;
				}
			}
			.company_branch{
				display:flex;
				gap:50px;
/* 				padding: 100px 0; */
				align-items: flex-end;
			}
			h4{
				font-size: 48px;
				/*line-height: 80px;*/
				letter-spacing: 10px;
				color: #000;
				
			}
			p{
				font-size: 18px;
				/*line-height: 82px;*/
				letter-spacing: 4px;
				padding-bottom: 7px;
			}
		}
		img{
			max-width:500px;
			align-self: end;
		}

	}
	.group_content{
		font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
		display: flex;
		flex-direction: column;
		letter-spacing: 3px;
		gap: 2px;
		
		p {
			font-size: 18px;
			line-height: 40px;
			font-weight: 100;

		}

		h3{
			font-size: 22px;
			line-height: 28pt;
			font-weight: 500;
			padding: 20px 40px;
			background-color: #F3F7F7;
			font-family: 'kozminpro-medium';
			margin-top: 30px;
		}
		p{
			padding: 40px;
			background-color: #F3F7F7;
			font-family: 'kozminpro-medium';
		}

	}
	.group_content_2 {
		font-family: 'ZenOldMincho-Bold';
		font-weight: normal;
		display: flex;
		flex-direction: column;
		font-size: 18pt;
		line-height: 40pt;
		letter-spacing: 3px;
		background-color:#f3f7f7;

		h3 {
			font-size: 22px;
			line-height: 28px;
			font-weight: 500;
			padding: 20px 40px;
/* 			background-color: #F3F7F7; */
			border-bottom:2px solid #ffffff;
			font-family: 'kozminpro-medium';
		}
		.content_2_box{
			display: flex;
			gap: 4.17vw;
			padding: 40px 20px 40px 20px;
			max-width: 100%;

			h4{
				background-color: #8190A0;
                color: #fff;
                padding: 10px 30px;
                width: 35%;
                max-height: max-content;
                font-family: 'kozminpro-medium';
                font-size: 20px;
                font-weight: 100;
			}
			.box_content{
				width: 65%;
				display: flex;
				flex-direction: column;
				justify-items: end;
				max-height: none !important;

				.box_2 {
					display: flex;
                    padding: 0 10px;
                    color: #23231E;
                    border-bottom: 1px solid #DFE3E3;
                    gap: 10px;
                    font-family: 'kozminpro-medium';
                    font-size: 18px;
                    font-weight: 100;

					h5 {
						max-width: 220px;
						width: 45%;
						word-wrap: break-word;
						font-family: 'kozminpro-medium';
						font-size: 18px;
						font-weight: 100;
					}
					
					.box_2_content {
						display: flex;
						justify-content: flex-end;
						width: 100%;
					}

					p {
						max-width: 256px;
						width: 70%;
						text-align: right;
						word-wrap: break-word;
					}

					span {
						width: 20%;
						text-align: right;
						min-width: max-content;
					}
				}
			}
		}
		.katagirishoko_content_2_box {
			padding-bottom: 80px;
		}


	}   
	.btn_b1 {
		display: flex;
		justify-content: right;
		min-width: max-content;
	}

}
.group_company_katagirishoko {
    margin-bottom: 160px;
}
.group_katagirishoko_content{
	margin-bottom: 30px;
}
.mb_48{
	margin-bottom: 48px;
}
.mb_36{
	margin-bottom: 36px;
}
.pc_none {
	display: none;
}
.sp_none {
	display: block;
}
.company_info .company_wapper .btn_contact img {
	width: 100%;
}




/*-------------------- ofic-group --------------------*/
.company_wrap{
    max-width:1100px;
    margin:0 auto;
}
.group_mv{
    padding-top:128px;
    padding-bottom:64px;
}
.group_mv .title{
    margin-bottom:128px;
}
.group_mv .title h1{
    display:flex;
    justify-content:center;
    align-items:baseline;
    gap:30px;
    font-family:'RedHatDisplay-Bold';
    font-size: 140px;
    line-height: 160pt;
    letter-spacing:7px;
}
.group_mv .title h1 span{
    font-size:100px;
    line-height:117px;
}
.group_mv .container{
    display:grid;
    grid-template-columns:200px 1fr;
    gap:40px 138px;
}
.group_mv .container h2{
    display:flex;
    align-items:center;
    grid-column:1;
    grid-row:1/3;
    writing-mode:vertical-lr;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    font-size:45px;
    letter-spacing:10px;
}
.group_mv .container p{
    grid-column:2;
    grid-row:1;
    font-family:'kozminpro-medium';
    font-size:18px;
    line-height:40px;
    letter-spacing:2.5px;
}
.group_mv .container img{
    grid-column:2;
    grid-row:2;
    width:100%;
}

.group_local{
    margin-bottom:160px;
}
.group_headline{
    margin-bottom:60px;
}
.group_headline h2{
    position:relative;
    padding:26px 0;
    font-family:'kozminpro-medium';
    font-size:26px;
    font-weight:normal;
    line-height:28px;
    border-bottom:1px solid #23231e;
    letter-spacing:2px;
}
.group_headline h2:before{
    content:'';
    position:absolute;
    bottom:-2px;
    left:0;
    width:60px;
    height:4px;
    background-image:url('images/company/company_head_border.png');
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}
.group_local_map{
    padding-top:91px;
    padding-bottom:110px;
    background-image:url('images/company/group_local_back.png');
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}
.group_local_map img{
    width:100%;
}
.group_local_container{
    display:none;
}
.group_company_container{
    display:grid;
    gap:240px;
}
.group_company_column .profile{
    display:grid;
    grid-template-columns:1fr 480px;
    margin-bottom:48px;
}
.group_company_column .profile .box{
    position:relative;
    padding:27px 18px 22px 27px;
    background-color:#dfe3e3;
}
.group_company_column .profile .box h3{
    font-family:'kozminpro-medium';
    font-size:24px;
    line-height:28px;
}
.group_company_column .profile .box a{
    display:block;
    position:absolute;
    bottom:22px;
    right:22px;
    width:324px;
    padding:10px 0;
    font-size:16px;
    text-align:center;
    color:#ffffff;
    background-color:#23231e;
    background-image:url('images/company/cursor_white_icon.png');
    background-position:center right 10px;
    background-repeat:no-repeat;
    background-size:21px;
    border-radius:50px;
}
.group_company_column .profile .img{
    height:240px;
    overflow:hidden;
}
.group_company_column .profile .img img{
    width:100%;
}
.group_company_column .company{
    display:grid;
    gap:96px;
}
.group_company_column .company .box h4{
    margin-bottom:40px;
    padding:8px 0 10px 16px;
    font-family:'kozminpro-medium';
    font-size:22px;
    line-height:28px;
    border-left:8px solid #23231e;
    border-bottom:1px solid #23231e;
}
.group_company_column .company .box dl{
    display:grid;
    grid-template-columns:200px 1fr;
    align-items:baseline;
    gap:10px 0;
    margin:0;
}
.group_company_column .company .box dl dt{
    font-family:'kozminpro-medium';
    font-size:18px;
    line-height:40px;
}
.group_company_column .company .box dl dd{
    margin:0;
    font-family:'kozminpro-medium';
    font-size:18px;
    line-height:40px;
}
.group_company_column .company .box hr{
    margin:30px 0;
    border:none;
    border-bottom:2px dotted #23231e;
}
.group_company_column .company .box .access{
    display:grid;
    gap:32px;
    margin-top:28px;
}
.group_company_column .company .box .access a{
    width:220px;
    padding:8px 44px 8px 24px;
    font-size:16px;
	letter-spacing: 4px;
    text-align:center;
    background-image:url('images/company/cursor_blue_icon.png');
    background-position:center right 10px;
    background-repeat:no-repeat;
    background-size:21px;
    border:1px solid #23231e;
    border-radius:50px;
}
.group_company_column .company .box .access img{
    width:100%;
}
.group_company_column .company .box .access iframe{
    width:100%;
	height: 300px;
}
.group_local_map .group_local_wrap {
    position: relative;
}
.group_local_map map[name="ofic_group_map"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.group_local_map map[name="ofic_group_map"] #map1 {
    position: absolute;
    top: 0;
    left: 3%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map2 {
	position: absolute;
    top: 7.5%;
    left: 3%;
    width: 36%;
    height: 5.5%;
}
.group_local_map map[name="ofic_group_map"] #map3 {
    position: absolute;
    top: 13%;
    left: 3%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map4 {
    position: absolute;
    top: 20%;
    left: 3%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map5 {
    position: absolute;
    top: 51%;
    left: 0%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map6 {
    position: absolute;
    top: 59%;
    left: 0%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map7 {
    position: absolute;
    top: 0%;
    right: 0%;
    width: 40%;
    height: 8%;
}
.group_local_map map[name="ofic_group_map"] #map8 {
    position: absolute;
    top: 9%;
    right: 0%;
    width: 40%;
    height: 6%;
}
.group_local_map map[name="ofic_group_map"] #map9 {
    position: absolute;
    top: 43%;
    right: 4%;
    width: 36%;
    height: 6%;
}
.group_local_map map[name="ofic_group_map"] #map10 {
    position: absolute;
    top: 50%;
    right: 4%;
    width: 36%;
    height: 8%;
}
.group_local_map map[name="ofic_group_map"] #map11 {
    position: absolute;
    top: 58%;
    right: 24%;
    width: 36%;
    height: 7%;
}
.group_local_map map[name="ofic_group_map"] #map12 {
    position: absolute;
    bottom: 6%;
    right: 13%;
    width: 40%;
    height: 8%;
}
.group_local_map map[name="ofic_group_map"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

/* 千葉支店 */
.company_steel_img img{
	width:100%;
	margin-top:100px;
}
.company_steel_toggle{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:10px;
	margin-top:128px;
	margin-bottom:96px;
	border-bottom:4px solid #0075c2;
}
.company_steel_toggle .box{
	padding:30px 0;
	font-family:'kozminpro-medium';
	font-size:20px;
	text-align:center;
	background-color:#f3f7f7;
	border-top-left-radius:10px;
	border-top-right-radius:10px;
	cursor:pointer;
}
.company_steel_toggle .box.active{
	color:#ffffff;
	background-color:#0075c2;
}
.company_steel_container .box{
	display:none;
}
.company_steel_container .box.active{
	display:block;
}
.company_steel_container .box img{
	width:100%;
}

/*-------------------- sustainability_environment --------------------*/
.company_contents .sus_envir_1 {
    max-width: 1100px;
    margin: 0 auto;
}
.company_contents .company_steel_bg_1 .sus_envir_1 .content_head h1 {
    align-items: baseline;
    font-family: 'RedHatDisplay-Bold';
    font-size: 130px;
    line-height: 90px;
    letter-spacing: 5px;
    margin: 0;
}
.company_contents .company_steel_bg_1 .sus_envir_1 .content_head .contents {
    margin-top: 60px;
    position: relative;
    height: 244px;
    background-image:url("images/company/sus_envir_img_1.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
}
.company_contents .company_steel_bg_1 .sus_envir_1 .content_head .contents .content_head_1 {
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 50px;
    letter-spacing: 14px;
    line-height: 55px;
    margin: 0;
}
.company_contents .company_steel_bg_1 .sus_envir_1 .content_head .contents .content_head_2 {
    font-family: 'RedHatDisplay-SemiBold';
    font-size: 20px;
    letter-spacing: 1px;
    color: #0075c1;
    margin-top: 40px;
}
.company_contents .sus_envir_1 h2 {
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 40px;
    letter-spacing: 7px;
    margin: 173px 0 64px 0;
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 40px;
}
.company_contents .sus_envir_1 h2 .sm{
	font-size:22px;
}
.company_contents .sus_envir_1 h2::before {
    content: "";
    width: 8px;
    height: 100%;
    background-color: #0075c2;
    position: absolute;
    top: 0;
    left: 0;
}
.company_contents .sus_envir_1 .contents .content_1 p {
    font-weight: 100;
    font-family: 'kozminpro-medium';
    font-size: 20px;
    letter-spacing: 2.5px;
    line-height: 40px;
    margin: 0;
}
.company_contents .sus_envir_1 .contents .content_2 p {
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 28px;
    letter-spacing: 5px;
    line-height: 55px;
    margin: 90px 0 40px 0;
    text-align: center;
    border-bottom: 1px solid;
    border-top: 1px solid;
}
.company_contents .sus_envir_1 .contents .content_3 p {
    display: flex;
    align-items: center;
    margin: 24px 0;
}
.company_contents .sus_envir_1 .contents .content_3 .sus_social_footer_text {
    justify-content: flex-end;
    margin-top: 30px;
}
.company_contents .sus_envir_1 .contents .content_3 p span {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 36px;
    height: 36px;
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    background-color: #23231e;
    color: white;
    font-size: 18px;
    margin-right: 24px;
}

.company_contents .sus_envir_1 h3 {
    font-family: 'kozminpro-medium';
    font-size: 22px;
    letter-spacing: 4px;
    margin: 64px 0 40px 0;
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 30px;
    border-bottom: 1px solid;
	font-weight: 100;
}
.company_contents .sus_envir_1 h3::before {
    content: "";
    width: 8px;
    height: 100%;
    background-color: #23231e;
    position: absolute;
    top: 0;
    left: 0;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container {
/*     overflow-x: auto; */
    margin: 40px 0 24px 0;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .th_b_l {
    border-left: 2px solid #8696a6;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .th_b_t {
    border-top: 2px solid #8696a6;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .th_b_r {
    border-right: 2px solid #8696a6;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_r {
    border-right: 2px solid #23231e;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_l {
    border-left: 2px solid #23231e;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_t {
    border-top: 2px solid #23231e;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_b {
    border-bottom: 2px solid #23231e;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .h_5{
    height: 2px;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .b_n{
    border: none !important;
}
.company_contents .sus_envir_1 .contents .content_1 table {
/*     width: 1100px; */
	width:100%;
    border-collapse: collapse;
}

.company_contents .sus_envir_1 .contents .content_1 th, td {
    padding: 10px;
    text-align: center;
    font-family: 'kozminpro-medium';
    letter-spacing:0;
    font-size: 16px;
    font-weight: 100;
    border: 2px solid #8696a6;
}

.company_contents .sus_envir_1 .contents .content_1 th {
    background-color: #8696a6;
    color: white;
    border: 2px solid #f8fafa;
}

.company_contents .sus_envir_1 .contents .content_1 tr:nth-child(even) {
    background-color: #f2f2f2;
}
.company_contents .sus_envir_1 .contents .content_1 .dotted_separator {
    border-bottom: 2px dotted black;
    margin: 24px 0 40px 0;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .vertical_text {
	min-width: 60px;
	padding:0;
    writing-mode: vertical-rl;
    letter-spacing: 7px;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .vertical_text span{
	white-space: nowrap;
	writing-mode: vertical-rl;
	display: inline-block;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .bg_gray_1 {
    background-color: #dfe3e3;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .te_al_l {
    text-align: left;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .te_al_r {
    text-align: right;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_l_1 {
    border-left: 2px solid #dfe3e3;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_r_1 {
    border-right: 2px solid #dfe3e3;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .td_b_t_1 {
    border-top: 2px solid #dfe3e3;
}
.company_contents .sus_envir_1 .contents .content_1 .table_container .word_break_keep_all {
    word-break: keep-all;
}
.company_contents .links .link_box_4s {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: 160px;
}
.company_contents .links .link_box_4s .link_box_4 {
    text-align: end;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 300px;
    background-color: #23231e;
    border-radius: 30px;
    color: white;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-size: 18px;
    position: relative;
    margin-right: 0;
    text-decoration: none;
}
.company_contents .links .link_box_4s .link_box_4::after {
    content: '';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-image: url('images/company/right_arrow_w_up.png');
    background-size: cover;
}
/*-------------------- kansai --------------------*/
.kansai_wapper{
    max-width: 1100px;
    margin: 0 auto;

}
.kansai_wapper .kansai_title_black {
    font-family: "ryo-gothic-plusn", sans-serif;
    color: #fff;
    background-color: #000;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 4px;
    text-align: center;
    padding: 15px 0;
}
.kansai_wapper .kansai_title_gray {
    font-family: "ryo-gothic-plusn", sans-serif;
    color: #fff;
    background-color: #8696A6;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 4px;
    text-align: center;
    padding: 15px 0;
}
.kansai_wapper .kansai_btn_img {
    padding-top: 45px;
    padding-bottom: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 2px dashed #8696A6;
    gap: 10px;

    img{
        width: 50%;
        height: auto;
        object-fit: contain;
    }
    .btn_img2{
        margin-top: 6px;
    }
}

.kansai_wapper .kansai_3img_content{
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 24px;
    margin-bottom: 125px;
    
}
.kansai_wapper .kansai_3img_content .content{
    text-align: center;
    display: flex;
    flex-direction: column;

    img{
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    p{
		font-family: "ryo-gothic-plusn", sans-serif;
        font-size: 18px;
        line-height: 32px;
        letter-spacing: 2px;
		margin-top: 10px;
    }
}
.kansai_wapper .kansai_img_tb_box{
    margin: 55px auto;
    border-bottom: 2px solid #8696A6;
    display: flex;
    gap: 40px;
}
.kansai_wapper .kansai_img_tb_box:last-child{
	margin-bottom:0;
}
.kansai_wapper .kansai_img_tb_box .img_box{
    padding-bottom: 56px;
    max-width: 45%;
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 20px;

    img{
        flex: 1 1 auto;
        object-fit: contain;
        max-width: 100%;
        min-width: 0;

    }
}
.kansai_wapper .kansai_img_tb_box .kashima_img_box {
    img {
    }
}
.kansai_wapper .kansai_img_tb_box .content{
    display: flex;
    flex-direction: column;
    flex: 1;
    padding-bottom: 56px;
	justify-content: flex-start;

    .kansai_content_box{
        display: flex;
        gap: 30px;
        padding-bottom: 28px;
        margin-bottom: 28px;
        border-bottom: 1px dashed #8696A6;
		width: 100%;
        
        span{
            font-family: 'kozminpro-medium';
            font-size: 18px;
            line-height: 34px;
            letter-spacing: 3px;
        }
        .box_title{
            width: 35%;
            font-size: 16px;
            color: #595757;
            height: max-content;
            max-width: 180px;
			min-width: 180px;
            background-color: #DFE3E3;
            text-align: center;
        }
    }
    .kansai_content_box_1 {
        display: flex;
        gap: 30px;
        font-family: 'kozminpro-medium';
		width: 100%;
        
        span {
            font-family: 'kozminpro-medium';
            font-size: 18px;
            line-height: 34px;
            letter-spacing: 3px;
            }
        .box_title {
            width: 35%;
            font-size: 16px;
            color: #595757;
            height: max-content;
            max-width: 180px;
			min-width: 180px;
            background-color: #DFE3E3;
            text-align: center;
        }
    }
}
.kansai_wapper .contact_table {
    font-family: 'kozminpro-medium';
    width: 100%;
    display: flex;
    flex-direction: column;
    font-size: 18px;
    line-height: 40px;
    letter-spacing: 2px;
}
.kansai_wapper .kansai_tb_content {
    padding-bottom: 5px;
    display: flex;
    align-items: flex-start;

    span {
        font-family: 'kozminpro-medium';
        font-weight: 400;
        font-size: 18px;
        line-height: 40px;
        letter-spacing: 2px;
    }

    .title {
        width: 20%;
        max-width: 200px;
    }
}
.kansai_wapper .map_info {
    margin-top: 30px;
    

    .map_img {
        margin: 30px 0;
        width: 100%;
		height: 300px;
    }
    a {
        text-decoration: none;
        color: #000;

    }
    .btn_map_link{
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 10px 10px 25px;
        max-width: 220px;
        border: 1px solid #000;
        border-radius: 100px;

        span{
            font-family: "ryo-gothic-plusn", sans-serif;
            font-size: 14px;
            line-height: 25px;
            letter-spacing: 3px;
            font-weight: 600;

            img{
                width: 16px;
                height: 16px;
				display: flex;
                align-items: center;
            }
            
        }
    }
}
.mg_0{
    margin: 0 !important;
}
.pb_0{
    padding-bottom: 0 !important;
}
.pb_95{
    padding-bottom: 95px !important;
}
.mb_0{
    margin-bottom: 0 !important;
}
.pb_tb_content{
    padding-bottom: 95px;
}
.pc_none {
    display: none !important;
}


/*-------------------- Sub Button (Contact vs Top) --------------------*/
.sub_btn_content{
    max-width: 1100px;
    padding-top: 105px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    /* gap: 160px; */
}
.sub_btn_content .btn_top{
    display: flex;
    justify-content: end;
}
.company_contents .links .link_box_4 {
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: black;
    border: 1px black solid;
    border-radius: 100px;
    margin-top: 160px;
    position: relative;
}

.company_contents .links .link_box_4::before {
    content: "";
    background-image: url("images/company/right_cycle_arrow_b.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    height: 200px;
    width: 200px;
}

.company_contents .links .link_box_4 .en_title {
    font-size: 55px;
    font-family: 'RedHatDisplay-Bold';
    margin: 0;
    line-height: 92px;
    text-align: start;
}

.company_contents .links .link_box_4 .title {
    font-size: 24px;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: bold;
    margin: 0;
    padding-left: 60px;
}
.mt_120{
    margin-top: 120px;
}

/*-------------------- contact --------------------*/
.company_contents .contact_1 {
    max-width: 1100px;
    margin: 0 auto;
}
.company_contents .contact_1 .content_head h1 {
    align-items: baseline;
    font-family: 'RedHatDisplay-Bold';
    font-size: 140px;
    line-height: 116px;
    letter-spacing: 1px;
    margin: 0;
}
.company_contents .contact_1 .content_head {
	padding: 60px 0 120px 0;
    position: relative;
    display: flex;
    gap: 150px;
    align-items: flex-end;
}
.company_contents .contact_1 .content_head::after {
    content: "";
    position: absolute;
    height: 84px;
    width: 140px;
    background-image: url("images/company/contact_img_1.png");
    background-repeat: no-repeat;
    background-size: contain;
    top: 0;
    right: 5%;
}
.company_contents .contact_1 .content_head p {
    font-family: 'ZenOldMincho-Bold';
    font-weight: normal;
    font-size: 40px;
    letter-spacing: 6px;
    /* line-height: 55px; */
    /* margin-top: 80px;*/
}
.company_contents .links .link_box_5 {
    width: 100%;
    height: 140px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
    color: #0075c2;
    border: 1px #0075c2 solid;
    border-radius: 100px;
    position: relative;
    font-size: 34px;
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    margin-bottom: 30px;
    line-height: 86px;
    text-align: start;
    padding-left: 82px;
    box-sizing: border-box;
}
.company_contents .links .link_box_5::before {
    content: "";
    background-image: url("images/company/right_arrow_1_w.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 60px;
    height: 14px;
    width: 50px;
}
.company_contents .links .link_box_5:hover {
    background-color: #0075c2;
    color: #ffffff;
}
.company_contents .links .link_box_5:hover::before {
    background-image: url("images/company/right_arrow_2_w.png");
}

/*-------------------- general-inquiries --------------------*/
.company_contents .contact_2 {
	max-width: 1100px;
    margin: 0 auto;
    font-family: 'kozminpro-medium';
    font-size: 18px;
    letter-spacing: 2.5px;
    line-height: 40px;
    margin-bottom: 130px;
}
.company_contents .contact_2:last-child{
	margin-bottom:0;
}
.company_contents .contact_2 h2 {
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 54px;
    letter-spacing: 14px;
    line-height: 86px;
    color: #0075c2;
    margin: 0;
}
.company_contents .contact_2 p {
    margin-top: 64px;
}
.company_contents .t_red {
    color: #e60012;
}
.company_contents .contact_2 .contact_form {
    margin-bottom: 30px;
}
.company_contents .contact_2 .contact_form_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 45px;
}

.company_contents .contact_2 .contact_form_title h3 {
    padding-left: 30px;
    position: relative;
    font-size: 22px;
    letter-spacing: 6px;
    line-height: 45px;
    margin: 0;
}
.company_contents .contact_2 .contact_form_title h3::before {
    content: "";
    width: 8px;
    height: 100%;
    background-color: #0075c2;
    position: absolute;
    left: 0;
}
.company_contents .contact_2 .note {
    margin: 0;
}
.company_contents .contact_2 .checkbox_group {
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: 25px;
    margin-bottom: 15px;
}
.company_contents .contact_2 .checkbox_group label {
    display: flex;
    align-items: center;
    gap: 10px;
}
.company_contents .contact_2 input[type="checkbox"] {
    height: 24px;
    width: 24px;
}
.company_contents .contact_2 .dotted_line {
    border-bottom: 2px dotted #000;
    margin: 45px 0;
}
.company_contents .contact_2 .contact_form_text {
    margin-top: 150px;
}
.company_contents .contact_2 .contact_form .form_group {
    margin-bottom: 40px;
}
.company_contents .contact_2 .contact_form .form_group label {
    display: flex;
    align-items: center;
    justify-content: space-between;
	margin-bottom: 15px;
}
.company_contents .contact_2 .contact_form .form_group p {
    margin-top: 0;
}

.company_contents .contact_2 .contact_form .form_group input {
    width: 100%;
    height: 66px;
    box-sizing: border-box;
    padding: 8px;
    border: none;
    border-radius: 5px;
    background-color: #f0f0f0;
    font-size: 18px;
}
.company_contents .contact_2 .contact_form .requireds {
    padding: 0px 10px;
    line-height: 32px;
    color: white;
}
.company_contents .contact_2 .contact_form .required_1 {
    background-color: #e60012;
}
.company_contents .contact_2 .contact_form .required_2 {
    background-color: #595757;
}
.company_contents .contact_2 .contact_form .textarea_group textarea {
    width: 100%;
    height: 300px;
    padding: 8px;
    border: none;
    border-radius: 5px;
    background-color: #f0f0f0;
    box-sizing: border-box;
}
.company_contents .contact_2 .contact_form .form_group .Attachments {
    width: 100%;
    height: 100px;
    background-color: #f0f0f0;
    display: flex;
    align-items: center;
    padding: 25px;
    border-radius: 5px;
    box-sizing: border-box;
    font-family: "ryo-gothic-plusn", sans-serif;
    margin-bottom: 20px;
}

.company_contents .contact_2 .contact_form .form_group .button_Attachments {
    background-color: #ffffff;
    border: 1px solid;
    padding: 10px 25px;
    cursor: pointer;
    border-radius: 5px;
    font-size: 18px;
    font-family: "ryo-gothic-plusn", sans-serif;
    letter-spacing: 3px;
}

.company_contents .contact_2 .contact_form .form_group .button_note {
    margin-left: 25px;
    color: #626060;
}
.company_contents .contact_2 .contact_form .Attachments_form_group {
    margin-bottom: 80px;
}
.company_contents .contact_2 .contact_form .content_title {
    font-size: 20px;
}

.company_contents .contact_2 .contact_form ol {
    list-style: none;
    counter-reset: list-counter;
    padding-left: 0;
}

.company_contents .contact_2 .contact_form ol li {
    counter-increment: list-counter;
    display: flex;
    align-items: flex-start;
    gap: 40px;
    margin-bottom: 10px;
}

.company_contents .contact_2 .contact_form p.content_center {
    margin: 0 auto;
    margin-top: 35px;
    max-width: 800px;
}

.company_contents .contact_2 .contact_form .flex_center {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.company_contents .contact_2 .contact_form ol li::before {
    content: counter(list-counter) ".";
    flex-shrink: 0;
}

.company_contents .contact_2 .center {
    text-align: center;
    margin-top: 20px;
}
.company_contents .contact_2 .contact_form .btn_submit {
    font-family: 'kozminpro-medium';
    font-size: 18px;
    letter-spacing: 3px;
    background-color: #23231e;
    width: 340px;
    height: 60px;
    color: white;
    border: none;
    cursor: pointer;
}
.company_contents .contact_2 .contact_form .btn_submit:hover {
    background-color: #272725;
}

/* ================================================================ */
/* ===================*SURFACE-MODIFICATION*======================= */
/* ================================================================ */
.surface-div-item-4{
    display: flex;
    margin-top: 40px;
    flex-wrap: wrap;
    max-width: 1100px;
    gap: 30px;
    justify-content: space-between;
    .surface-item{
        display: flex;
        flex-direction: column;
        width: calc(50% - 30px);
        img{
            width: 100%;
            height: auto;
        }
        .surface-item-title{
            margin-top: 24px;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            flex-direction: column;
            .surface_pc_none{
                display: none !important;
            }
            h3{
                margin: 0;
                font-size: 32px;
                font-family:'ZenOldMincho-Bold';
				font-weight: normal;
                letter-spacing: 8px;
            }
            .surface-item-desctiption{
                width: 100%;
                display: flex;
                flex-direction: column;
                border-left: 8px solid #0075C1;
                padding-left: 30px;
                p{
                    font-size: 16px;
                    line-height: 22px;
                    letter-spacing: 1.2px;
                    margin: 0 ;  
                }
                .surface-view-btn{
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    width: 90%;

                    .surface_mb_none{
                        display: flex;
                    }
                }



            }
            .surface-item-view{
                display: flex;
                align-items: center;
                align-self: flex-end;
                gap: 20px;
                p{
                    font-size: 16px;
                    font-family:'RedHatDisplay-SemiBold';
                    line-height: 22px;
                    letter-spacing: 1.2px;
                }
                img{
                    width: 60px;
                    height: 30px;
                }
            }
        }
        
    }

}

.surface-service-title{
    max-width: 1100px;
    margin: 160px auto 0 auto;
    span{
        color: #0075C1;
        font-size: 18px;
    }
    h3{
        font-family:'kozminpro-medium';
        font-size: 18px;
        line-height: 40px;
        letter-spacing: 2.5px;
        font-weight: normal;
		margin-bottom: 30px;
    }
    /* img{
        width: 100%;
        object-fit: contain;
        height: auto;
    } */
    .surface-service-banner{
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-image: url("images/company/surface-banner-service-pc.png");
        background-repeat: no-repeat;
        background-size: cover;
        border-top-left-radius: 100px;
        border-bottom-right-radius: 100px;
        height: 240px;
        width: 100%;
        br{
            display: none;
        }
        h3{
            font-size: 50px;
            margin: 0;
            line-height: 40px;
            letter-spacing: 3px;
            font-family:'RedHatDisplay-Bold';
            color: #fff;
            padding-left: 100px;
        }
        .surface-service-description{
            display: flex;
            align-items: center;
            padding-right: 100px;
            justify-content: space-between;
            width: 28%;
            .span-none-mb{
                display: block;
            }
            .span-none-pc{
                display: none;
            }
            p{
				margin: 0;
                color: #fff;
                font-family: "ryo-gothic-plusn", sans-serif;
                font-size: 22px;
                line-height: 15px;
                letter-spacing: 6px;
            }
            img{
                width: 80px;
                height: 80px;
            }
        }
     }
}
.pc-none{
    display: none;
}
.mb-none{
    display: block;
}

.surface_container{
    display: none;
}
.bg-modification-partner{
    background-color: #DFE3E3;
    padding: 80px 0 240px 0;

    .partner-wrapper{
        max-width: 1100px;
        margin: 0 auto;
        background: #fff;
        display: flex;
        flex-direction: column;

        .section {
            position: relative;
            max-width: 1100px;
            margin: 20px 50px;
        }
        
         .section h3 {
            font-family: 'kozminpro-medium';
            font-size: 26px;
            letter-spacing: 5px;
            margin: 40px 0 0 0;
			 
			 .inside_h3 {
				 font-size: 18px;
				 padding-left: 20px;
			 }
        }
        
         .line_container {
            position: relative;
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-top: 25px;
        }
        
         .line {
            width: 100%;
            height: 1px;
            background-color: #72726f;
        }
        
         .rectangles {
            display: flex;
            position: absolute;
            left: 0;
        }
        
         .rectangle {
            width: 20px;
            height: 5px;
        }
        
        .blue { background-color: #0075c2; }
        .red { background-color: #e60012; }
        .gray { background-color: #595757; }
        .company_contents .company_steel_bg_3 {
            background-image: url("images/company/steel_background_4.png");
            background-size: cover;
            background-position: center;
            padding-top: 100px;
            padding-bottom:240px;
        }

        .partner-container{
            .flex-wrapper{
                display: flex;
                justify-content: space-between;
                margin: 20px 50px;
                gap: 10px;
            }
            h3{
                font-size: 26px;
                line-height: 28px;
                letter-spacing: 4px;
                font-family: "ryo-gothic-plusn", sans-serif;
                border-bottom: 2px solid;
            }
            span{
                color: #0075C1;
                font-size: 14px;
            }
            p{
                font-size: 18px;
                line-height: 44px;
                letter-spacing: 2px;
                font-family: 'kozminpro-medium';
            }
        }
    }

}
.company_pb{
    padding-bottom: 0;
}

/*-------------------- amagasaki --------------------*/
.mt_0 {
    margin-top: 0 !important;
}

.company_contents .company_steel_content_2 .point_md_line {
    width: 100%;
    margin-top: 95px;
    margin-bottom: 64px;
}

.kansai_wapper .kansai_btn_img2 {
    padding-top: 45px;
    padding-bottom: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 2px dashed #8696A6;
    gap: 10px;

    img {
        width: 50%;
        height: auto;
        object-fit: contain;
    }
}

.kansai_wapper .kansai_3img_content2 {
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #8696A6;
    margin-top: 24px;
    padding-bottom: 95px;
    gap: 10px;
}

.kansai_wapper .kansai_3img_content2 .content {
    text-align: center;
    display: flex;
    gap: 30px;
    flex-direction: column;
    align-items: center;

    img {
        width: 260px;
        max-width: 260px;
        height: auto;
        object-fit: contain;
    }

    p {
        flex: 1;
        width: 50%;
        font-family: "ryo-gothic-plusn", sans-serif;
        font-weight: 600;
        font-size: 16px;
        line-height: 28px;
        /* letter-spacing: 9px; */
        text-align: start;
        margin: 0;
    }
}

.company_steel_content_2 .amagasaki_title_gray {
    font-family: "ryo-gothic-plusn", sans-serif;
    color: #fff;
    background-color: #8696A6;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 4px;
    text-align: center;
    padding: 15px 0;
    margin-top: 40px;
}

/* ===============================================================  */
/* ===========surface-modification-amagasaki =====================  */
/* ===============================================================  */

.surface_amagasaki_wapper{
    max-width: 1100px;
    margin: 0 auto;

}
.surface_amagasaki_wapper .surface_amagasaki_title_black {
    font-family: "ryo-gothic-plusn", sans-serif;
    color: #fff;
    background-color: #000;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 4px;
    text-align: center;
    padding: 15px 0;
}
.surface_amagasaki_wapper .surface_amagasaki_title_gray {
    font-family: "ryo-gothic-plusn", sans-serif;
    color: #fff;
    background-color: #8696A6;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 4px;
    text-align: center;
    padding: 15px 0;
}
.surface_amagasaki_wapper .surface_amagasaki_btn_img {
    padding-top: 45px;
    padding-bottom: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 2px dashed #8696A6;
    gap: 10px;

    img{
        width: 50%;
        height: auto;
        object-fit: contain;
    }
    .btn_img2{
        margin-top: 6px;
    }
}

.table-wrapper{
    max-width: 1100px;
    display: flex;
    margin: 100px auto 0 auto;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    .table-wrapper-title{
        width: 100%;
        background-color: #8696A6;
        h3{
            color: #fff;
            font-family: 'kozminpro-medium';
            text-align: center;
            font-size: 18px;
            line-height: 40px;
            letter-spacing: 3px;
			font-weight: 100;
        }
    }
    .flex-table-col2{
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        flex-wrap: wrap;
        gap: 10px;
		
        .flex-col-1{
            display: flex;
            justify-content: space-between;
            align-items: center;
            border: 1px solid #23231E;
            padding: 0 40px;
            width: 49%;
            height: 120px;
            box-sizing: border-box;
            flex-wrap: wrap;
			
            p{
                font-size: 28px;
                line-height: 86px;
                letter-spacing: 4px;
                font-family:'ZenOldMincho-Bold';
				font-weight: normal;
            }
            img{
                width: 36px;
                height: 36px;
            }

        }
		.flex-col-1:hover img {
				content: url("images/company/right_cycle_arrow_b.png");
		}
    }
}
.border_left-section{
    border-left: 8px solid #23231E;
    padding: 0 0 0 16px;    
    border-bottom: 2px solid #23231E;
    font-size: 22px !important;
	font-family: 'kozminpro-medium';
	font-weight: 100;
}
.surface-owned-equipment{
    max-width: 1100px;
    margin: 0 auto;
    .surface-eq-title{
       font-size: 22px;
		line-height: 40px;
       letter-spacing: 4;
       font-family: 'kozminpro-medium';
       border-left: 8px solid #23231E;
       border-bottom: 2px solid #23231E;
       padding: 5px 0 5px 16px;
		margin: 60px 0 30px 0;
       font-weight: 100;
    }
    .srf_h{
        font-size: 18px;
        line-height: 28px;
        letter-spacing: 3px;
        font-weight: normal;
    }
    .surface-owned-equipment-title{
        display: flex;
        justify-content: space-between;
        gap: 10px;
        .surface-title-h3_1{
            width: 78%;
            text-align: center;
            background-color: #DFE3E3;
            padding: 10px;
            font-family: 'kozminpro-medium';

        }
        .surface-title-h3_2{
            width: 31%;
            text-align: center;
            background-color: #DFE3E3;
            padding: 10px;
            font-family: 'kozminpro-medium';
        }
    }

    .surface-eq-wrapper{
        display: flex;
        flex-direction: column;

        .surface-equitment-p{
            display: flex;
            justify-content: space-between;
            border-bottom: 1px solid #23231E;
			padding: 20px 0;
			
            br{
                display: none;
            }
            .surface-p-̃70{
                width: 70%;
            }
            .surface-p-̃30{
                width: 30%;
                text-align: center;
            }
            p{
                font-size: 18px;
                line-height: 54px;
                letter-spacing: 2px;
                font-family: 'kozminpro-medium';
            }

            .surface-flex{
                display: flex;
                flex-direction: column;
                width: 30%;
                align-items: center;
                p{
                    display: flex;
                    margin: 5px;
                }
            }
        }
    }
    .surface-owned-equipment-content-title{
        margin-top: 30px;
        h3{
            font-family: 'kozminpro-medium';
            background-color: #23231E;
            padding: 10px;
            text-align: center;
            color: #fff;
            font-weight: normal;
			margin: 35px 0 15px 0;
			position: relative;
        }
    }
}
.surface_modification_toggle_btn {
  cursor: pointer;
}

.surface_modification_toggle_icon {
	font-weight: bold;
    margin-left: 10px;
    transition: transform 0.2s;
    position: absolute;
    right: 20px;
}
.surface_amagasaki_wapper .surface_amagasaki_3img_content{
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 24px;
    margin-bottom: 125px;
    
}
.surface_amagasaki_wapper .surface_amagasaki_3img_content .content{
    text-align: center;
    display: flex;
    flex-direction: column;

    img{
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    p{
        font-family: 'kozminpro-medium';
        font-size: 18px;
        line-height: 32px;
        letter-spacing: 2px;
    }
}
.surface_amagasaki_wapper .surface_amagasaki_img_tb_box{
    margin: 55px auto;
    border-bottom: 2px solid #8696A6;
    display: flex;
    gap: 40px;
}
.surface_amagasaki_wapper .surface_amagasaki_img_tb_box .img_box{
    padding-bottom: 56px;
    max-width: 45%;

    img{
        width: 100%;
        height: auto;
        object-fit: contain;

    }
}

.surface_amagasaki_wapper .contact_table {
    font-family: 'kozminpro-medium';
    width: 100%;
    display: flex;
    flex-direction: column;
    font-size: 18px;
    line-height: 40px;
    letter-spacing: 2px;
}
.surface_amagasaki_wapper .surface_amagasaki_tb_content {
    padding-bottom: 25px;
    display: flex;
    .br_amagasaki{
        display: none;
    }
    span {
        font-family: 'kozminpro-medium';
        font-weight: 400;
        font-size: 18px;
        line-height: 40px;
        letter-spacing: 2px;
    }

    .title {
        width: 20%;
        max-width: 200px;
    }
    .surface_amagasaki-span-content{
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
}
.surface_amagasaki_wapper .map_info {
    margin-top: 30px;
    .map_img {
        margin: 30px 0;
        width: 100%;
		height: 300px;
    }
    a {
        text-decoration: none;
        color: #000;

    }
    .btn_map_link{
        display: flex;
        align-items: center;
        justify-content: space-between;
		padding: 5px 8px 5px 18px;
        width: 220px;
        box-sizing: border-box;
        border: 1px solid #000;
        border-radius: 100px;

        span{
            font-family: "ryo-gothic-plusn", sans-serif;
            font-size: 14px;
            line-height: 25px;
            letter-spacing: 3px;

            img{
                width: 16px;
                height: 16px;
            }
            
        }
    }
}
a{
    text-decoration: none;
    color: #000;
}
.ml_5{
    margin-left: 5px;
}
.mg_0{
    margin: 0 !important;
}
.pb_0{
    padding-bottom: 0 !important;
}
.mb_0{
    margin-bottom: 0 !important;
}
.pb_tb_content{
    padding-bottom: 95px;
}
.pc_none {
    display: none !important;
}


.sub_btn_content{
    max-width: 1100px;
    padding-top: 105px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    /* gap: 160px; */
}
.sub_btn_content .btn_top{
    display: flex;
    justify-content: end;
    a{
        display: flex;
        justify-content: space-around;
        background-color: #000;
        width: 300px;
        height: 40px;
        box-sizing: border-box;
        border-radius: 100px;
        padding: 10px 10px 10px 45px;
        align-items: center;
        p{
            color: white;
            font-family: "ryo-gothic-plusn", sans-serif;
            line-height: 40px;
            letter-spacing: 4px;
        }
        img{
            width: 20px;
            height: 20px;
        }
    }
}
.company_contents .links .link_box_4 {
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: black;
    border: 1px black solid;
    border-radius: 100px;
    margin-top: 160px;
    position: relative;
}

.company_contents .links .link_box_4::before {
    content: "";
    background-image: url("images/company/right_cycle_arrow_b.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    height: 200px;
    width: 200px;
}

.company_contents .links .link_box_4 .en_title {
    font-size: 55px;
    font-family: 'RedHatDisplay-Bold';
    margin: 0;
    line-height: 92px;
    text-align: start;
}

.company_contents .links .link_box_4 .title {
    font-size: 24px;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: bold;
    margin: 0;
    padding-left: 60px;
}
.mt_120{
    margin-top: 120px;
}
.mt_10{
    margin-top: 10px;
}

/*-------------------- kashima --------------------*/
.kansai_wapper .kansai_img_tb_box .img_box .kashima_box{
    width: 40px;
    min-width: 40px;
    height: 40px;
    background-color: #0075C1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'RedHatDisplay-SemiBold';
    font-size: 20px;
    line-height: 107px;
	color: white;
}
.company_steel_content_2 map[name="map_kashima"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_kashima"] #map1 {
    position: absolute;
    top: 1048px;
    left: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_kashima"] #map2 {
    position: absolute;
    top: 1048px;
    left: 280px;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_kashima"] #map3 {
    position: absolute;
    top: 1048px;
    right: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_kashima"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}
/*-------------------- naoetsu --------------------*/
.company_steel_content_2 map[name="map_naoetsu"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_naoetsu"] #naoetsu_map1 {
    position: absolute;
    top: 21%;
    left: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_naoetsu"] #naoetsu_map2 {
    position: absolute;
    top: 50%;
    right: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_naoetsu"] #naoetsu_map3 {
    position: absolute;
    top: 1048px;
    right: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_naoetsu"] #naoetsu_map4 {
    position: absolute;
    top: 1048px;
    right: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_kashima"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}
.company_steel_content_2 map[name="map_naoetsu_1"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_naoetsu_1"] #naoetsu_map1 {
    position: absolute;
    top: 21%;
    left: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_naoetsu_1"] #naoetsu_map2 {
    position: absolute;
    top: 22%;
    right: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_naoetsu_1"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

/*-------------------- wakayama --------------------*/
.company_steel_content_2 map[name="map_wakayama"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_wakayama"] #wakayama_map1 {
    position: absolute;
    top: 54%;
    left: 0;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_wakayama"] #wakayama_map2 {
    position: absolute;
    top: 54%;
    left: 26%;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_wakayama"] #wakayama_map3 {
	position: absolute;
    top: 54%;
    right: 26%;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_wakayama"] #wakayama_map4 {
	position: absolute;
    top: 54%;
    right: 0%;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_wakayama"] #wakayama_map5 {
	position: absolute;
    top: 72%;
    right: 26%;
    width: 240px;
    height: 240px;
}
.company_steel_content_2 map[name="map_wakayama"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}
/*-------------------- chita --------------------*/
.chita_wapper {
    max-width: 1100px;
    margin: 128px auto 0 auto;
}
.kansai_wapper .chita_3img_content .content {
    justify-content: flex-start;
}

.company_tab_container{
	display:grid;
	gap:16px;
}
.company_tab_row{
	display:grid;
	gap:10px;
	border-bottom:4px solid #0075c2;
	
	&.col5{
		grid-template-columns:repeat(5, 1fr);
	}
	&.col4{
		grid-template-columns:40% repeat(3, 1fr);
	}
}
.company_tab_box{
	display:flex;
	justify-content:center;
	align-items:center;
	height:80px;
	font-family:'kozminpro-medium';
	font-size:20px;
	line-height:28px;
	text-align:center;
	background-color:#f3f7f7;
	border-top-left-radius:10px;
	border-top-right-radius:10px;
	cursor:pointer;
	
	&.active{
		color:#ffffff;
		background-color:#0075c2;
	}
}

.chita_tabs_bar {
	display: flex;
    flex-direction: column;
    gap: 5px;
}
.chita_tabs {
    display: flex;
    border-bottom: 4px solid #0075C2;
    gap: 10px;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
    scroll-behavior: smooth;
}
.kansai_wapper .kansai_img_tb_box .content {
    & .chita_content_box {
        .box_title {
            min-width: 35%;
        }
    }
}
.chita_tabs .tab {
    display: flex;
    flex: 1;
    background: #F3F7F7;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    outline: none;
    border: none;
    text-align: center;
    font-family: 'kozminpro-medium';
    color: #23231E;
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 1px;
    padding: 20px;
    justify-content: space-around;
    align-items: center;
    
}
.chita_tabs .pd_chita{
    padding: 20px 50px;
    white-space: nowrap;
}

.chita_tabs .chita_active {
    background: #0075C2;
    color: #fff;
}

/* .chita_content {
    padding: 20px;
    border: 1px solid #ccc;
    border-top: none;
} */

.chita_content .chita_content-section {
    display: none;
}

.chita_content .chita_active {
    display: block;
}
.chita_content .chita_title{
    border-left: 8px solid #0075C2;
    font-family: 'ZenOldMincho-Bold';
	font-weight: normal;
    font-size: 40px;
    /* line-height: 86px; */
    letter-spacing: 4px;
    margin: 95px 0 0;

    p{
        padding-left: 34px;
    }
}
.pt_40{
    padding-top: 40px;
}
.pb_160_border_b{
    padding-bottom: 160px;
    border-bottom: 1px solid #8696A6;
}
.f-description{
    flex-direction: column;
}
.company_steel_content_2 map[name="map_chita_1"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map1 {
    position: absolute;
    top: 26%;
    left: 12%;
    width: 24%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map2 {
    position: absolute;
    top: 26%;
    right: 27%;
    width: 23%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map3 {
    position: absolute;
    top: 26%;
    right: 0%;
    width: 23%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map4 {
    position: absolute;
    top: 67%;
    left: 0%;
    width: 23%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map5 {
    position: absolute;
    top: 48%;
    left: 26%;
    width: 24%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map6 {
    position: absolute;
    top: 48%;
    right: 22%;
    width: 24%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] #chita_map7 {
    position: absolute;
    top: 48%;
    left: 0%;
    width: 23%;
    height: 18%;
}
.company_steel_content_2 map[name="map_chita_1"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

/*------------------------hirima--------------------*/
.company_steel_content_2 map[name="map_harima_1"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_harima_1"] #harima_map1 {
    position: absolute;
    top: 23%;
    right: 18%;
    width: 34%;
    height: 35%;
}
.company_steel_content_2 map[name="map_harima_1"] #harima_map2 {
    position: absolute;
    top: 65%;
    left: 0%;
    width: 23%;
    height: 35%;
}
.company_steel_content_2 map[name="map_harima_1"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

/* ===============================================================  */
/* ================surface-modification-senboku ==================  */
/* ===============================================================  */

.surface_senboku_span{
    align-self: anchor-center;
}

.senboku_br{
    display: none;
}
.senboku_mb_none{
    display: block;
}
.senboku_pc_none{
    display: none;
}


.border_left-section{
    line-height: 40px;
    letter-spacing: 4px;
}

/* ===============================================================  */
/* ================surface-modification-wakayama ==================  */
/* ===============================================================  */
/* .flex-table-col2{

    .flex-col-1{
        width: calc(50% - 5px) !important;
    }
}
 */


/* ===============================================================  */
/* ========surface-modification-quality_control ==================  */
/* ===============================================================  */


.surface-quality-̃70{
    width: 70%;
}
.sub_btn_content{
    padding-top: 160px;
}

/* ===============================================================  */
/* ========surface-modification-sales-office======================  */
/* ===============================================================  */

.table-wrapper-sales-office{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1100px;
    margin: 90px auto 0 auto;
    gap: 10px;
	flex-wrap: wrap;
	
	&.col2-col3{
		display:grid;
		grid-template-columns:repeat(6, 1fr);
		
		.sales-office-item:nth-child(1){
			grid-column:1/4;
		}
		.sales-office-item:nth-child(2){
			grid-column:4/7;
		}
		.sales-office-item:nth-child(3){
			grid-column:1/3;
		}
		.sales-office-item:nth-child(4){
			grid-column:3/5;
		}
		.sales-office-item:nth-child(5){
			grid-column:5/7;
		}
	}
    .sales-office-item{
/*         width: 33%; */
        height: 120px;
        border-top-left-radius: 50px;
        border-bottom-right-radius: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        background-color: #F4F5F5;
        p{
            color: #8696A6;
            font-size: 28px;
            line-height: 86px;
            letter-spacing: 4;
            font-family:'ZenOldMincho-Bold';
			font-weight: normal;
        }
    }
	sales-office-item:nth-child(-n+2) {
		width: calc((100% - 10px) / 2);
	}

	sales-office-item:nth-child(n+3) {
		width: calc((100% - 20px) / 3);
	}
    .sales-office-item:hover{
        background-color: #0075C2;
        p{
            color: #ffffff;
        }
    }
    .sales-office-item.sale_item_active {
        background-color: #0075C2 !important;
    }
    
    .sales-office-item.sale_item_active p {
        color: #ffffff !important;
    }
}

.surface-sales_office_title{
    max-width: 1100px;
    margin: 96px auto 0 auto;
    h2{
        font-size: 48px;
        line-height: 86px;
        letter-spacing: 7px;
        font-family:'ZenOldMincho-Bold';
		font-weight: normal;
        padding-left: 30px;
        border-left: 8px solid #0075C2;
		margin-bottom: 56px;
    }
}

.mt-80{
    margin-top: 80px !important;
}

.surface-sales_office_title_2{
    max-width: 1100px;
    margin: 0 auto;
    h4{
        font-family:'kozminpro-medium';
        font-size: 22px;
        letter-spacing: 4px;
        line-height: 28px;
        border-left: 8px solid #23231E;
        padding: 6px 20px;
        margin: 0 0 40px 0;
        border-bottom: 1px solid #23231E ;
		font-weight: 100;
    }
}
.surface-sales_mb_none{
    display: block;
}
.surface-sales_button_wrapper{
	display: block;
    position: fixed;
    left: 50%;
    bottom: 100px;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1460px;
    margin: 0 auto;
	transition:0.3s;
    z-index: 200;
	
	.surface-sales_button_red{
		position:absolute;
		bottom:180px;
		right:0;
	}
    .surface-sales_button_blue {
		position:absolute;
		bottom:0;
		right:0;
    }
    .surface-sales_button_red a,
    .surface-sales_button_blue a {
    img{
        width: 160px;
        height: 160px;
        object-fit: contain;
    }
}
}
.mt-240{
    margin-top: 240px;
}
.mt-30{
    margin-top: 30px;
}
.mt-96{
    margin-top: 96px;
}
.surface_border_b_line{
    border-bottom: 1px dashed #23231E;
}
.mb-290{
    margin-bottom: 290px;
}
.surface-sales_office_title_2 .surface_sales_title {
	border: none;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.surface-sales_office_title_2 .surface_sales_title span {
    width: 28%;
    padding: 5px 0 5px 20px;
    border-left: 8px solid;
    border-bottom: 1px solid;
}

/* ===============================================================  */
/* ========surface-modification-technology-center=================  */
/* ===============================================================  */

.surface-technology_center_desctiption{
    max-width: 1100px;
    margin: 0 auto;
    p{
        font-family:'kozminpro-medium';
        font-size: 18px;
        line-height: 40px;
        letter-spacing: 3px;
    }
}
.mt-120{
    margin-top: 120px !important;
}

.surface-technology_center-btn{
    max-width: 1100px;
    margin: 0 auto;

    .btn_tech_center{
        width: 100%;
        height: 180px;
        display: flex;
        justify-content: center;
        cursor: pointer;
    }
    .btn_tech_title{
        width: 50%;
        background-color: #23231E;
        border-top-left-radius: 50px;
        display: flex;
        align-items: center;
        p{
            color: #ffffff;
            font-size: 34px;
            line-height: 80px;
            letter-spacing: 6px;
            padding-left: 50px;
            font-family: 'ZenOldMincho-Bold';
			font-weight: normal;
        }
    }
    .btn_tech_viewmore{
        width: 50%;
        display: flex;
        justify-content: flex-end;
        padding-right: 50px;
        box-sizing: border-box;
        background-color: #DFE3E3;
        gap: 30px;
        align-items: center;
        border-bottom-right-radius: 50px;
        img{
            width: 60px;
            height: 60px;
        }
        p{
            font-size: 16px;
            line-height: 22px;
            letter-spacing: 2px;
            font-family:'kozminpro-medium';
        }
    }
    .btn_tech_viewmore:hover img{
        content: url("images/company/right_cycle_arrow_b.png");
    }

    .surface-technology_center-content{
        margin-top: 60px;
        p{
            font-family:'kozminpro-medium';
            font-size: 18px;
            line-height: 40px;
            letter-spacing: 2px;
            
        }

        .surface-technology_center-p_outline{
            font-size: 22px;
            letter-spacing: 4px;
            line-height: 28px;
            border-bottom: 1px dashed #23231E;
            padding-bottom: 15px;
			margin-bottom: 30px;
        }
    }
    .tech_p_description{
        margin-top: 50px;
        p{
            font-size: 18px;
            font-family:'kozminpro-medium';
            line-height: 40px;
            letter-spacing: 3px;
        }
    }
	.tech_p_description_fit {
		margin-top: 0px;
		margin-bottom: 40px
	}
}
.mt-center-60{
    margin-top: 60px;
}
.pt-90{
    margin-top: 90px;
}
.surface-technology_center-btn {
    .surface_tech_cen_content {
        margin-top: 10px;
        margin-bottom: 40px;
    }
}
.surface-technology_center-btn {
    .surface_tech_cen_content_fit {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}
.surface-technology_center-btn {
    & .surface_tech_cen_content {
        .surface-technology_center-p_outline {
			border-bottom: none;
			margin-bottom: 0;
        }
    }
}
.surface-technology_center-btn {
    & .surface_tech_cen_content_fit {
        .surface-technology_center-p_outline {
			border-bottom: none;
			margin-bottom: 0;
        }
    }
}
/* -------------------magnesium-------------------*/
.company_contents .company_steel_content_3 .magnesium_section {
    margin: 90px 0 40px 0;
    position: relative;
}
.company_contents .company_steel_content_3 .magnesium_contents p{
    font-family: 'kozminpro-medium';
    font-size: 18px;
    color: #23231E;
    text-align: start;
    line-height: 40px;
    letter-spacing: 2px;
    font-weight: 100;
    margin: 0;
    padding: 0;
}
.company_contents .company_steel_content_3 .magnesium_contents .bg_gray_content {
    background-color: #dfe3e3;
    font-size: 22px;
    padding: 10px 25px;
    font-family: 'kozminpro-medium';
    letter-spacing: 5px;
    margin: 60px 0 40px 0;
}
.company_contents .company_steel_content_3 .magnesium_contents .magnesium_content_1 {
    justify-content: start;
    display: grid;
    grid-template-columns: 200px auto auto;
    gap: 20px;
    justify-items: start;
    align-content: center;
}
.company_contents .company_steel_content_3 .magnesium_contents .magnesium_logo_content {
    display: flex;
    justify-content: space-between;
}
.company_contents .company_steel_content_3 .magnesium_contents .magnesium_logo_content img {
    width: 150px;
	height: 94.5px;
}
.company_contents .company_steel_content_3 .magnesium_contents .separator {
    border-bottom: 2px dotted black;
    margin: 25px 0;
}
.company_contents .company_magnesium_content_1 p {
    font-weight: bold;
    font-family: 'kozminpro-medium';
    font-size: 18px;
    letter-spacing: 2px;
    line-height: 40px;
    margin-bottom: 30px;
}
.company_contents .company_magnesium_content_1 .t_blue {
    color: #0075c1;
}
.company_contents .company_magnesium_content_1 .magnesium_link_box {
    background-image: url("images/company/magnesium_bg_1.png");
    background-repeat: no-repeat;
    height: 180px;
    background-size: cover;
    border-radius: 90px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.company_contents .company_magnesium_content_1 .magnesium_link_box p{
    font-family: "ryo-gothic-plusn", sans-serif;
    font-size: 20px;
    letter-spacing: 4px;
    color: white;
    margin: 0;
}
.company_contents .company_magnesium_content_1 .magnesium_link_box .link_box_tile {
    font-family: 'RedHatDisplay-Bold';
    font-size: 55px;
}
.company_contents .company_magnesium_content_1 .magnesium_link_box .magnesium_link_box_content {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 5%;
    width: 82%;
}
.company_contents .company_magnesium_content_1 .magnesium_link_box img {
    height: 80px;
    width: 80px;
}
.company_contents .company_magnesium_content_1 {
    max-width: 1100px;
    margin: 0 auto;
    color: #23231E;
    overflow: hidden;
    margin-top: 180px;
}
.magnesium_content_1 .magnesium_content_box_1 a {
    text-decoration: none;
    color: white;
    background: #23231e;
    padding: 10px 40px 10px 20px;
    border-radius: 25px;
    margin-top: 20px;
    display: inline-block;
	position: relative;
	width: 250px;
	text-align: center;
}
.magnesium_content_1 .magnesium_content_box_1 a::after {
	content: '';
    display: inline-block;
    background-image: url('images/company/cursor_white_icon.png');
    background-repeat: no-repeat;
    background-size: contain;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

/* ==================Subtainability-Social===================  */
/* ========================================================== */
.company_contents .company_steel_bg_1 .sus_envir_1 .content_head .social-banner {
    margin-top: 60px;
    position: relative;
    height: 244px;
    background-image:url("images/company/subtainability_social_banner.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
}
.sus_envir_1 .sus_soc_links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    margin-top: 96px;
}
.sus_envir_1 .sus_soc_links a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family:'ZenOldMincho-Bold';
	font-weight: normal;
    width: 360px;
    box-sizing: border-box;
    height: 56px;
    border: 2px solid black;
    color: #23231E;
    text-decoration: none;
    font-size: 16px;
    text-align: center;
    transition: all 0.3s ease;
}
.sus_envir_1 .sus_soc_links a:hover {
    background-color: #23231E;
    color: white;
}
.company_social_content {
    .br_amagasaki{
        display: none;
    }
    .dot-hidden-mb{
        display: inline;
    }
    .tb_d_n_mb{
        display: block;
    }
    .tb_d_n_pc{
        display: none;
    }
    .contents{
        .content-sus{
            .mt-mb{
                margin-top: 10px !important;
            }
            .sus_social_p{
                font-size: 18px !important;
                margin: 0 !important;
            }
        }
    }
    .section-mg{
        margin-top: 90px !important;

        .sus_social_p{
            font-size: 18px !important;
            line-height: 40px;
            letter-spacing: 2px;
            font-family:'kozminpro-medium';
            font-weight: normal;
            margin: 40px 0 0 0;
        }
    }
    .social-mtt{
        margin-top: 40px !important;
    }
    .section-mt{
        margin-top: 120px !important;
        .sus_social_p{
            font-size: 18px !important;
            line-height: 40px;
            letter-spacing: 3px;
            font-family:'kozminpro-medium';
            font-weight: normal;
            margin-top: 40px;
        }
        .sus-social_div_p {
            margin-top: 64px;
            .social_div_wrap_p{
                display: flex;
                align-items: center;
                gap: 24px;
                h4{
                    height: 36px;
                    width: 36px;
                    background-color: #23231e;
                    color: white;
                    min-width: 36px;
                    font-size: 18px;
                    font-family: 'ZenOldMincho-Bold';
					font-weight: normal;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    margin: 0;
                }
                p{
                    font-size: 20px !important;
                    letter-spacing: 1.6px;
					font-family: 'kozminpro-medium';
					font-weight: 100;
					margin-top: 0;
                }
            }
            .sus-social-pt{
                margin-top: 24px;
				font-size: 18px;
                font-weight: 100;
                font-family: 'kozminpro-medium';
            }

            .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;
                    color: white;
                    width: 100px;
                    height: 40px;
                    min-height: 40px;
                    font-family:'kozminpro-medium';
                    letter-spacing: 3px;
                    font-size: 18px;
                }
                p{
                    margin: 0;
                }
            }
            .sus-outline{
                margin-top: 16px;
                margin-bottom: 32px;
                border-bottom: 1px dashed #23231e;
            }
            .sus-period{
                
                p{
                    margin: 0;
					font-size: 18px;
					font-weight: 100;
					font-family: 'kozminpro-medium';
					line-height: 40px;
                }
                .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;
                    gap: 20px;
					
                    span{
                        width: 25%;
                        max-width: 260px;
                        height: 40px;
                        background-color: #DFE3E3;
                        letter-spacing: 3px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        font-size: 18px;
                        line-height: 40px;
						font-family: 'kozminpro-medium';
                    }
                    p{
                        margin: 0;
                        width: 65%;
                    }
                }
            }
            .social_2_mt{
                margin-top: 60px;
            }
            .sus-radius{
                span{
                    background-color: #8696A6;
                    border-radius: 50%;
                    width: 40px;
                    height: 40px;
                    font-size: 18px;
                    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{
						display:flex;
						gap:20px;
					}
                    span{
                        width: 140px;
                        height: 40px;
                        background-color: #23231E;
                        color: white;
                        display: flex;
                        align-items: center;
                        justify-content: center;
						font-size: 18px;
                        font-weight: 100;
                        font-family: 'kozminpro-medium';
                    }
                    p{
                        margin: 0;
						font-size: 18px;
                        font-weight: 100;
                        font-family: 'kozminpro-medium';
						display: flex;
                        align-items: center;
                    }
					button {
						display: flex;
						align-items: center;
						justify-content: center;
						background-color: #0075C2;
						border-radius: 20px;
						color: white;
						width: 100px;
						height: 40px;
						min-height: 40px;
						font-family: 'kozminpro-medium';
						letter-spacing: 3px;
						font-size: 18px;
						border: none;
						cursor: pointer;
					}
					button:hover {
						background-color: #005a99;
						box-shadow: 0 4px 10px rgba(0, 117, 194, 0.4);
					}

					button:active {
						background-color: #00497c;
						transform: scale(0.95);
					}
                    .sus-p-underline{
                        text-decoration: underline;
                    }
                    
                }
            }
        }
    }
    .section-sponsor{
        .sus-social-sponsor-container{
            display: flex;
            align-items: center;
            flex-direction: column;
            
            .sus-social-sponsor-item{
                display: flex;
                justify-content: space-between;
                gap: 34px;
                img{
                    width: 30%;
                    min-width: 320px;
                    height: auto;
                    object-fit: cover;
                }
                .sus-social-sponsor-content{
                    width: 70%;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                    border-bottom: 1px dashed #23231E;
                    padding: 20px 0;
					
                    .sus_social_p{
                        margin: 0 !important;
						
						span{
							font-size:inherit;
							color:#e60012;
						}
                    }
                }
            }
        }
    }
    .sus-table-mt{
        margin-top: 120px !important;
    }
    .society-mt{
        margin-top: 40px !important;
    }
    .sus-table-title-p{
        p{
            font-size: 18px;
            margin: 0;
            font-family:'kozminpro-medium';
            line-height: 40px;
            letter-spacing: 2px;
            font-weight: normal;
        }
    }
    .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: 18px;
            line-height: 40px;
            letter-spacing: 2px;
            height: 48px;
			font-family: 'kozminpro-medium';
        }
        .sus-table-span-1{
            width: calc(28% - 8px);
            max-width: 300px;
        }
        .sus-table-span-2{
            width: calc(72% - 2px);
        }
    }
    .sus-social-table-span-wrapper{
        display: flex;
        justify-content: center;
        gap: 10px;
        border-bottom: 1px solid #8696A6;
        padding: 25px 0;
        box-sizing: border-box;
		
		    span{
				display: flex;
				font-size: 18px;
				line-height: 40px;
				letter-spacing: 2px;
				font-family: 'kozminpro-medium';
			}
    }

    .sus-table-span-content-1{
        width: calc(28% - 8px);
        max-width: 300px;
    }
    .sus-table-span-content-2{
        width: calc(72% - 2px);
    }
    
    .contents{
        .content_1{
            .table_container{
                .sus-table-col{
                    width: 300px;
                    height: 48px;
                }
                .sus-table-col-1{
                    width: 200px;
                    background-color: #23231E;
                }
                 table {
                    width: 100%;
                    border-collapse: collapse;
                }
            }
        }
        .workflow-container {
            margin-top: 64px;
            display: flex;
            align-items: center;
            justify-content: center;

            img{
                width: 100%;
                height: auto;
                object-fit: cover;
            }
        }
    }
    .section-2-mt{
        margin-top: 30px !important;
        .h4-2-mt{
            margin-top: 40px;
            font-family:'kozminpro-medium';
        }
        .sus_social_p{
            font-size: 18px;
            margin: 0;
            font-family:'kozminpro-medium';
            line-height: 40px;
            letter-spacing: 2px;
            font-weight: normal;

        }
    }

    .section-2-mt-2{
        margin-top: 64px !important;
        h4{
            letter-spacing: 4px;
            line-height: 28px;
            font-family:'kozminpro-medium';
            height: 40px;
            display: flex;
            align-items: center;
			margin-bottom: 40px;
        }
        .sus-social-table-title-2{
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 10px;
            span{
                display: flex;
                align-items: center;
                justify-content: center;
                font-family:'kozminpro-medium';
                background-color: #DFE3E3;
                font-size: 18px;
                line-height: 40px;
                letter-spacing: 2px;
                height: 48px;
                color: white;
            }
            .sus-table-2-span-1{
                width: 41%;
                max-width: 440px;
                background-color: #23231E;
            }
            .sus-table-2-span-2{
                width: 59%;
                background-color: #8696A6;
            }
        }
        .span-2-mt{
            margin-top: 16px;
        }
        .sus-social-table-span-wrapper-2{
            display: flex;
            justify-content: center;
            gap: 16px;
            box-sizing: border-box;
            margin-top: 16px;
			
			span{
				display: flex;
				font-size: 20px;
				line-height: 40px;
				letter-spacing: 1.2px;
				font-family:'kozminpro-medium';
			}
        }

        .sus-table-1-span-content-1{
            width: 41%;
            max-width: 440px;
            background-color: #DFE3E3;
            display: flex;
            align-items: center;
            height: 80px;
            padding-left: 20px;
            box-sizing: border-box;
        }
        .sus-table-2-span-content-2{
            width: 59%;
            border-bottom: 1px dashed #23231E;
            display: flex;
            align-items: center;
            height: 80px;
            padding-left: 20px;
        }
    }
    .social-mt-origin{
        margin-top: 170px !important;
    }
    .section-2-mt-2{
        .sus_social_p{
            font-size: 18px;
            line-height: 40px;
            letter-spacing: 2px;
            font-family:'kozminpro-medium';
            font-weight: normal;
            margin: 0;
        }
        .sus_social_p_link{
            display: flex;
            align-items: center;
            gap: 15px;
            text-decoration: underline;
            color: #0075C2;
            font-size: 20px;
            letter-spacing: 1.6px;
            line-height: 40px;
            font-family:'kozminpro-medium';
			margin-bottom: 64px;
			
            img{
                width: 24px;
                height: 24px;
            }
        }
        .sus-bg-border-p{
            margin-top: 40px;
            background-color: #23231E;
            color: white;
            font-size: 22px;
            line-height: 28px;
            letter-spacing: 4px;
            height: 48px;
            font-family:'kozminpro-medium';
            font-weight: normal;
            width: 100%;
            display: flex;
            align-items: center;
            padding-left: 24px;
            box-sizing: border-box;
        }
        .sus-employees-mt{
            margin-top: 40px;
        }
        .training-mt{
            margin-top: 24px;
        }
        .training-table{
            display: flex;
            gap: 10px;
            width: 100%;
            .traning-line-left{
                width: 20%;
                max-width: 60px;
                color: white;
                background-color: #23231E;
                font-family: 'kozminpro-medium';
                font-weight: normal;
                font-size: 18px;
                line-height: 40px;
                letter-spacing: 3px;
                writing-mode: vertical-rl;
                white-space: nowrap;
                text-align: center;
                box-sizing: border-box;
                display: flex;
                align-items: center;
                justify-content: center;
				
				p {
					font-family: 'kozminpro-medium';
					font-weight: normal;
					font-size: 18px;
					line-height: 40px;
					letter-spacing: 6px;
				}
            }
            .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: 18px;
                        line-height: 40px;
                        letter-spacing: 2px;
                        height: 48px;
						font-family: 'kozminpro-medium';
                    }
                    .sus-table-3-span-1{
                        width: 30%;
                        max-width: 300px;
                    }
                    .sus-table-3-span-2{
                        width: 70%;
                    }
                }
                .sus-social-table-3-span-wrapper{
                    display: flex;
                    justify-content: center;
                    gap: 10px;
                    border-bottom: 1px solid #8696A6;
                    padding: 25px 0;
                    box-sizing: border-box;
					
					span{
						display: flex;
						font-size: 18px;
						line-height: 40px;
						letter-spacing: 2px;
						font-family: 'kozminpro-medium';

					}
                }

                .full-space-div{
                    width: 100% !important;
                    max-width: 100% !important;
                }
                .sus-table-3-span-content-1{
                    width: 30%;
                    padding-left: 10px;
                    max-width: 300px;
                    box-sizing: border-box;
                }
                .sus-table-3-span-content-2{
                    width: 70%;

                }
            }
            
        }
        .social_banner_flex-container{
            margin-top: 40px;
            display: flex;
            justify-content: center;
            gap: 48px;
            .item-2{
                width: 50%;
            }
            img{
                width: calc(30% - 10px);
                height: auto;
                max-height: 220px;
                object-fit: cover;
            }
            .sus-social-img{
                width: 49%;
                height: auto;
                object-fit: cover;
                max-height: 660px;
            }
        }
        .sus-club-activity-container{
            margin-top: 40px;
            display: flex;
            align-items: center;
            gap: 20px;
            .sus-activity-item{
                display: flex;
                align-items: center;
                flex-direction: column;;
                width: calc(25% - 10px);
                img{
                    width: 100%;
                    height: auto;
                    max-height: 220px;
                    object-fit: cover;
                    
                }
                p{
                    width: 100%;
                    height: 48px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-size: 22px;
                    letter-spacing: 4px;
                    line-height: 28px;
                    background-color: #DFE3E3;
                }
            }
        }
    }

}


/* ========================================================== */
/* ==================Sustainability Governance===============  */
/* ========================================================== */

.company_contents .company_steel_bg_1 .sus_envir_1 .content_head .governance-banner {
    margin-top: 60px;
    position: relative;
    height: 244px;
    background-image:url("images/company/sus-governance-banner.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
}
.sus-goverment{
    .contents{
        .content_1{
            .sus_govermance_p{
                font-size: 18px !important;
            }

        }
    }
}



.sub_btn_content .btn-top-pd{
    a{
        padding: 10px 10px 10px 25px;
    }
}
/* BUTTON-CONTACT */
.company_contents .links-btn{
    max-width: 1100px;
    margin: 0 auto;
}
.company_contents .links-btn .link_box_3-btn {
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: black;
    border: 1px black solid;
    border-radius: 100px;
    margin-top: 160px;
    position: relative;
}
.company_contents .links-btn .link_box_3-btn::before {
    content: "";
    background-image: url("images/company/right_cycle_arrow_b.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    height: 200px;
    width: 200px;
}
.company_contents .links-btn .link_box_3-btn .en_title-btn {
    font-size: 55px;
    font-family: 'RedHatDisplay-Bold';
    margin: 0;
    line-height: 92px;
    text-align: start;
}
.company_contents .links-btn .link_box_3-btn .title-btn {
    font-size: 24px;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: bold;
    margin: 0;
    padding-left: 60px;
}


/* -------------------company_steel_chiba-------------------*/
.company_contents .company_chiba_content_2 {
    margin-bottom: 160px;
}
.company_contents .company_chiba_content_2 img {
    margin-top: 48px;
}
.kansai_wapper .kansai_img_tb_box .content {
    .chiba_content_box_1 {
        display: flex;
        gap: 10px;
        font-family: 'kozminpro-medium';
        width: 100%;

        .blue_box {
            width: 40px;
            min-width: 40px;
            height: 40px;
            background-color: #0075C1;
            display: flex;
            align-items: center;
            justify-content: center;
            font-family: 'RedHatDisplay-SemiBold';
            font-size: 20px;
            line-height: 107px;
            color: white;
        }
    }
}
.company_steel_content_2 map[name="map_chiba_1"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_chiba_1"] #chiba_map1 {
    position: absolute;
    top: 27%;
    right: 11%;
    width: 46%;
    height: 35%;
}
.company_steel_content_2 map[name="map_chiba_1"] #chiba_map2 {
    position: absolute;
    top: 64%;
    right: 11%;
    width: 46%;
    height: 37%;
}
.company_steel_content_2 map[name="map_chiba_1"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

.company_steel_content_2 map[name="map_chiba_22"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_chiba_22"] #chiba_map2_1 {
    position: absolute;
    top: 36%;
    right: 0%;
    width: 20%;
    height: 14%;
}
.company_steel_content_2 map[name="map_chiba_22"] #chiba_map2_2 {
    position: absolute;
    top: 65%;
    left: 0;
    width: 36%;
    height: 28%;
}
.company_steel_content_2 map[name="map_chiba_22"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}
.company_steel_content_2 map[name="map_chiba_3"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_chiba_3"] #chiba_map31 {
    position: absolute;
    top: 22%;
    left: 0%;
    width: 50%;
    height: 59%;
}
.company_steel_content_2 map[name="map_chiba_3"] #chiba_map32 {
    position: absolute;
    top: 21%;
    right: 0;
    width: 49%;
    height: 60%;
}
.company_steel_content_2 map[name="map_chiba_3"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}
.company_steel_content_2 map[name="map_chiba_4"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_chiba_4"] #chiba_map41 {
    position: absolute;
    top: 29%;
    right: 0%;
    width: 62%;
    height: 46%;
}
.company_steel_content_2 map[name="map_chiba_4"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}

/* =======================safety=>each-activity===================  */
/* ===============================================================  */

.each-activity-container{
    margin-bottom: 0 !important;
    .activity_mtt{
        margin-top: 120px;
    }
    .each_activity_title{
        h3{
            letter-spacing: 7px;
            margin-bottom: 52px;
        }
    }
    .each-activity_item{
        display: flex;
        flex-direction: column;
        .each-activity-title{
            width: 85%;
            margin: 0 auto;
            .activity-title-img{
                width: 100%;
            }
        }

    }
    .each-activity{
        display: flex;
        max-width: 1100px;
        margin: 30px auto 0 auto;
        gap: 50px;
        .each-activity-p-wrapper{
            width: calc(50% - 25px);
            .each-activity-p-content{
                width: 100%;
                font-size: 18px;
                line-height: 40px;
                letter-spacing: 2px;
                font-family:'kozminpro-medium';
                margin: 0;
            }
        }
    
        .each-activity{
            width: 50%;
            img{
                width: 100%;
                height: 100%;
                max-height: 382px;
                object-fit: cover;
            }
        }
    
    }
}


.contact_link{
	display:flex;
	justify-content:center;
	align-items:center;
	position: relative;
    width: 100%;
    height: 200px;
    font-family:'ZenOldMincho-Bold';
	font-size: 34px;
    font-weight: normal;
    text-decoration: none;
    letter-spacing: 5.5px;
	color: #23231E;
    border-radius: 100px;
    border: 2px solid #23231E;
    overflow: visible;
    cursor: pointer;
    z-index: 1;
}
.contact_link::before {
    content: '';
    position: absolute;
    top:0;
	left:0;
	width:200px;
    height:200px;
	background-image: url('images/product/arrow3.png');
    background-size: contain;
    background-repeat: no-repeat;
    z-index:10;
}
.contact_link:hover{
	color:#ffffff;
	background-color:#23231e;
}
.contact_link:hover::before{
	left:calc(100% - 200px);
}


/*-------------------- construction --------------------*/
.const_area{
	padding-top:40px;
	background-image:url('images/company/const_back.png');
	background-position:top center;
	background-repeat:no-repeat;
	background-size:auto 300px;
}
.const_section1{
	max-width:1100px;
	margin:0 auto;
	padding:100px 50px 100px;
	background-color:#ffffff;
	border-radius:60px;
}
.const_section1 .title{
	margin-bottom:60px;
	text-align:center;
}
.const_section1 .title h1{
	margin-bottom:35px;
	font-family: 'ZenOldMincho-Bold';
    font-weight: normal;
    font-size: 50px;
    text-align: center;
    letter-spacing: 9px;
}
.const_section1 .title p{
	font-family: 'RedHatDisplay-SemiBold';
    font-size: 20px;
    color: #127fc5;
}
.const_section1 .text p{
	font-family:'kozminpro-medium';
	font-size:18px;
	line-height:40px;
}

.const_section2{
	padding-top:45px;
	margin-bottom:180px;
}
.const_section2 h2{
	display:flex;
	justify-content:center;
	align-items:center;
	height:60px;
	font-family:'ZenOldMincho-Bold';
	font-weight: normal;
	font-size:24px;
	letter-spacing:4px;
	color:#ffffff;
	background-color:#0075c1;
	border-top-left-radius:30px;
	border-bottom-right-radius:30px;
}
.const_section2 .container{
	display:grid;
	grid-template-columns:1fr 480px;
	align-items:center;
	gap:40px;
	padding:40px 0;
	border-bottom:2px dotted #8696a6;
}
.const_section2 .container .box h3{
	display:flex;
	align-items:center;
	gap:20px;
	margin-bottom:10px;
	font-family:'ZenOldMincho-Bold';
	font-weight: normal;
	font-size:30px;
	line-height:86px;
}
.const_section2 .container .box h3 span{
	display:flex;
	justify-content:center;
	align-items:center;
	width:40px;
	height:40px;
	font-family:'RedHatDisplay-Medium';
	font-size:12px;
	line-height:22px;
	color:#ffffff;
	background-color:#0075c1;
	border-radius:50%;
}
.const_section2 .container .box p{
	font-family:'kozminpro-medium';
	font-size:18px;
	line-height:40px;
}
.const_section2 .container .img{
	overflow:hidden;
}
.const_section2 .container .img img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.const_section3{
	margin-bottom:180px;
}
.const_section3 ul{
	display: grid;
    grid-auto-flow: row;
    grid-template-columns: repeat(auto-fit, minmax(363px, max-content));
    gap: 15px 5px;
    margin: 0;
    padding: 0;
    list-style: none;
    justify-content: space-between;
}
.const_section3 ul li{
	display:flex;
	align-items:baseline;
	font-family:'kozminpro-medium';
	font-size:18px;
	list-style:none;
	white-space: nowrap;
}
.const_section3 ul li:before{
	content:'⚫︎';
	color:#0075c1;
}
.const_headline{
	margin-bottom:45px;
}
.const_headline h2{
	display:flex;
	align-items:baseline;
	gap:20px;
	position:relative;
	padding-bottom:26px;
	font-family:'kozminpro-medium';
	font-size:26px;
	font-weight:normal;
	line-height:28px;
	border-bottom:1px solid #23231e;
	letter-spacing:2px;
}
.const_headline h2:before{
	content:'';
	position:absolute;
	bottom:-2.5px;
	left:0;
	width:60px;
	height:4px;
	background-image:url('images/company/company_head_border.png');
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.const_headline h2 span{
	font-size:18px;
	line-height:1;
}
.const_section4{
	margin-bottom:180px;
}
.const_section4 .container{
	display:grid;
	grid-template-columns:400px 1fr;
	align-items:flex-start;
	gap:20px;
	margin-bottom:40px;
}
.const_section4 .container:last-child{
	margin:0;
}
.const_section4 .container h3{
	padding:20px 30px;
	font-family:'kozminpro-medium';
	font-size:20px;
	font-weight:normal;
	line-height:34px;
	color:#ffffff;
	background-image:url('images/company/const_title_back.png');
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.const_section4 .container .list{
	display:grid;
}
.const_section4 .container .list.col2{
	grid-template-columns:repeat(2, 1fr);
}
.const_section4 .container .list ul{
	margin:0;
	padding:0;
	outline:1px solid #dfe3e3;
	outline-offset:-0.5px;
}
.const_section4 .container .list ul li{
	padding:20px 40px;
	font-family:'kozminpro-medium';
	font-size:18px;
	line-height:34px;
	text-align:left;
	list-style:none;
	outline:1px solid #dfe3e3;
	outline-offset:-0.5px;
}
.const_section4 .container .list.col2 ul li{
	text-align:center;
}
.const_section5 .label h3{
	padding:3px 0;
	width:240px;
	font-family:'kozminpro-medium';
	font-size:20px;
	font-weight:normal;
	line-height:34px;
	text-align:center;
	color:#ffffff;
	background-color:#23231E;
}
.const_section5 .container dl{
	display:grid;
	grid-template-columns:240px 1fr;
	gap:60px;
	align-items:baseline;
	margin:0;
	padding:30px 0;
	border-bottom:1px solid #dfe3e3;
}
.const_section5 .container dl dt{
	font-family:'kozminpro-medium';
	font-size:20px;
	line-height:34px;
}
.const_section5 .container dl dd{
	margin:0;
	font-family:'kozminpro-medium';
	font-size:18px;
	line-height:40px;
}

/* =======================steel---mizushima===================  */
.chita_wapper .mizushima_tabs_mobile {
    display: none;
}
.chita_wapper .mizushima_tabs_pc {
    margin-top: 20px;
}
.chita_wapper .mizushima_tabs_pc .tab {
    flex: 1 1 calc(20% - 10px);
}
.chita_content-section .company_mizushima_content_2 .container_title_boxs_1  .title_before {
    font-family: 'kozminpro-medium';
}
.chita_content-section .company_mizushima_content_2 p {
    font-family: 'kozminpro-medium';
    font-size: 18px;
    line-height: 40px;
    letter-spacing: 2px;
    margin-top: 36px;
}
.company_mizushima_content_2 .mizushima_container_title_boxs_1 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 60px;
}

.company_mizushima_content_2 .mizushima_container_title_boxs_1 .mizushima_container_title_box {
    width: 340px;
    max-width: 340px;
    height: 120px;
    border: 6px solid #0075c2;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "ryo-gothic-plusn", sans-serif;
    font-size: 24px;
    position: relative;
    background-color: #fff;
}

.company_mizushima_content_2 .mizushima_container_title_boxs_1 .mizushima_container_title_box::after {
    content: "";
    position: absolute;
    bottom: -5px;
    right: -5px;
    width: 30px;
    height: 30px;
    background-image: url('images/company/mizushima_icon_1.png');
    background-size: cover;
}
.kansai_wapper .mizushima_3img_content2 {
    display: flex;
    justify-content: center;
    gap: 20px;
    border-bottom: none;
    margin-top: 24px;
    padding-bottom: 95px;
}
.kansai_wapper .mizushima_3img_content2 .content {
    text-align: center;
    width: auto;
    gap: 20px;
    flex-direction: column;
    align-items: center;
}
.kansai_wapper .mizushima_3img_content2 .content img {
        width: 260px;
        max-width: 260px;
        height: auto;
        object-fit: contain;
}
.kansai_wapper .kansai_3img_content2 .content p {
    width: 100%;
    text-align: center;
    font-size: 18px;
    letter-spacing: 3px;
}
.company_mizushima_content_2 .mizushima_container_title_boxs_2 {
    justify-content: center;
    gap: 30px;
}
.kansai_wapper .mizushimai_img_tb_box {
    border: none;
    margin: 0 0 24px 0;
}
.kansai_wapper .mizushimai_img_tb_box .img_box {
    padding: 0;
}
.kansai_wapper .mizushimai_img_tb_box_2 {
    margin-top: 0;
}
.company_mizushima_content_2 .mizushima_container_title_boxs_3 {
    justify-content: flex-start;
    column-gap: 40px;
    row-gap: 20px;
    flex-wrap: wrap;
}
.chita_content-section .mizushima_wapper h4 {
    font-family: 'kozminpro-medium';
    font-size: 22px;
    letter-spacing: 3px;
    margin-bottom: 30px;
    padding-left: 20px;
    border-left: 8px solid;
    border-bottom: 1px solid;
}
.company_steel_content_2 map[name="map_wakayama"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.company_steel_content_2 map[name="map_mizushima"] #mizushima_map1 {
    position: absolute;
    top: 52%;
    left: 24%;
    width: 23%;
    height: 23%;
}
.company_steel_content_2 map[name="map_mizushima"] #mizushima_map2 {
    position: absolute;
    top: 79%;
    left: 24%;
    width: 23%;
    height: 23%;
}
.company_steel_content_2 map[name="map_mizushima"] #mizushima_map3 {
	position: absolute;
    top: 79%;
    right: 24%;
    width: 23%;
    height: 23%;
}
.company_steel_content_2 map[name="map_wakayama"] area:hover {
    cursor: pointer;
    opacity: 0.7;
}


.btn_map_link{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom:32px;
	padding: 10px 10px 10px 25px;
	max-width: 220px;
	border: 1px solid #000;
	border-radius: 100px;
	cursor:pointer;

	span{
		font-family: "ryo-gothic-plusn", sans-serif;
		font-size: 14px;
		line-height: 25px;
		letter-spacing: 3px;
		font-weight: 600;

		img{
			display:flex;
			align-items:center;
			transform:rotate(90deg);
			width:16px;
			height:16px;
		}
	}
	&.active{
		span{
			img{
				transform:rotate(-90deg);
			}
		}
	}
}
.map_toggle{
	display:none;
	
	iframe{
		width:100%;
		height:300px;
	}
}

.surface_modification_wrap{
	max-width: 1100px;
    margin: 186px auto 0;
}

/*---------- 工場 > 保有設備 ----------*/
.owned_equipment{
	max-width:1100px;
	margin:60px auto 0;
}
.owned_equipment_title{
	display:flex;
	justify-content:space-between;
	align-items:center;
	position:relative;
	padding:30px;
	font-family:'kozminpro-medium';
	font-size:22px;
	line-height:28px;
	letter-spacing:5px;
	background-color:#F8FAFA;
	cursor:pointer;
	
	&:before{
		content:'';
		position:absolute;
		top:50%;
		right:30px;
		transform:translateY(-50%);
		width:30px;
		height:2px;
		background-color:#657689;
	}
	&:after{
		content:'';
		position:absolute;
		top:50%;
		right:44px;
		transform:translateY(-50%);
		width:2px;
		height:30px;
		background-color:#657689;
	}
	&.open{
		&:after{
			content:none;
		}
	}
}
.owned_equipment_container{
	display:none;
}
.owned_equipment_list{
	margin-top:20px;
	
	dl{
		display:grid;
		grid-template-columns:1fr 30%;
		gap:10px;
		margin:0;
		padding:30px 0;
		border-bottom:1px solid #23231e;
		
		dt{
			font-family:'kozminpro-medium';
			font-size:18px;
			line-height:40px;
		}
		dd{
			margin:0;
			font-family:'kozminpro-medium';
			font-size:18px;
			line-height:40px;
			text-align:center;
		}
		&:first-child{
			padding:0;
			border:none;
			
			dt{
				padding:10px;
				letter-spacing:5px;
				text-align:center;
				background-color:#DFE3E3;
			}
			dd{
				padding:10px;
				letter-spacing:5px;
				text-align:center;
				background-color:#DFE3E3;
			}
		}
	}
}
.owned_equipment_toggle{
	margin-top:40px;
}
.owned_equipment_link{
	display:block;
	padding:20px;
	font-family:'kozminpro-medium';
	font-size:20px;
	letter-spacing:3px;
	color:#ffffff;
	background-color:#23231E;
	cursor:pointer;
	
	&:hover{
		color:#ffffff;
	}
}
.owned_equipment_toggle_title{
	display:flex;
	justify-content:space-between;
	align-items:center;
	position:relative;
	padding:20px;
	font-family:'kozminpro-medium';
	font-size:20px;
	letter-spacing:3px;
	color:#ffffff;
	background-color:#23231E;
	cursor:pointer;
	
	&:before{
		content:'';
		position:absolute;
		top:50%;
		right:20px;
		transform:translateY(-50%);
		width:20px;
		height:2px;
		background-color:#ffffff;
	}
	&:after{
		content:'';
		position:absolute;
		top:50%;
		right:29px;
		transform:translateY(-50%);
		width:2px;
		height:20px;
		background-color:#ffffff;
	}
	&.open{
		&:after{
			content:none;
		}
	}
}
.owned_equipment_toggle_container{
	display:none;
}

.ofic_group_box{
	display:flex;
	flex-wrap:wrap;
	gap:85px;
	padding:30px 0;
	font-family:'kozminpro-medium';
	font-size:18px;
	line-height:40px;
	border-bottom:1px solid #DFE3E3;
	
	h4 {
		min-width: 200px;
		font-weight: 400;
	}
	.partner{
		display:grid;
		grid-template-columns:repeat(2, 1fr);
		gap:0 40px;
	}
	.ofic_group_box_flex{
		flex:1;
		
		.map_info{
			.btn_map_link{
				margin:0;
			}
			.map_toggle{
				margin-top:32px;
			}	
		}
	}
	.ofic_group_box_content{
		display: flex;
		gap: 10px;

		.ofic_group_box_conten_line{
			min-width: 76px;
		}
	}
}