/*-------------------- css --------------------*/
@font-face{
	font-family:'RedHatDisplay-Bold';
	src:url('fonts/RedHatDisplay-Bold.ttf');
}
@font-face{
	font-family:'RedHatDisplay-ExtraBold';
	src:url('fonts/RedHatDisplay-ExtraBold.ttf');
}
@font-face{
	font-family:'RedHatDisplay-Regular';
	src:url('fonts/RedHatDisplay-Regular.ttf');
}
@font-face{
	font-family:'RedHatDisplay-Medium';
	src:url('fonts/RedHatDisplay-Medium.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');
}

:root {
	--blue: #0075C1;
	--bg_gray: #F3F7F7;
	--bg_d_gray: #8696A6;
	--line_gray: #DFE3E3;
	--gray: #595757;
	--white: #ffffff;
	--black: #23231E;
	--red: #E60012;
	--bg_gold: #F2F4DF;
}
a{
	text-decoration: none;
	color: var(--black);
}
a:hover{
	color:#3C9DEA;
}
html, body{
	margin: 0 !important;
}
.d_block{
	display: block !important;
}
.mobile{
	display:none;
}
#wpadminbar{
	display:none;
}

/*-------------------- header --------------------*/
.product_header{
	display:flex;
	align-items:center;
    height:140px;
/* 	background-color:#ffffff; */
	background-color:#dee1e0;
}
.p_header_wrap{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 50px;
}
.p_header_top{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:10px;
}
.p_header_logo{
	display:flex;
	align-items:flex-end;
	gap:20px;
}
.p_header_logo .img{
	max-width:310px;
}
.p_header_logo .img img{
	display:block;
	width:100%;
}
.p_header_logo .page{
	width:230px;
	margin-bottom:10px;
	padding:2px 0;
	font-family:'RedHatDisplay-Bold';
	font-size:16px;
	text-align:center;
/* 	color:#ffffff;
	background-color:#575656; */
	background-color:#ffffff;
	border-top-left-radius:15px;
	border-bottom-right-radius:15px;
}
.p_header_menu{
	display:flex;
	align-items:center;
	gap:20px;
}
.p_header_menu .lang{
	display:flex;
	align-items:center;
	gap:10px;
	font-family:"ryo-gothic-plusn", sans-serif;
	font-weight:500;
	font-style:normal;
	font-size:14px;
}
.p_header_menu .lang a.active{
	color:#0075c2;
}
.p_header_menu .link a{
	display:block;
	position:relative;
	width:320px;
	padding:7px 0;
	font-family:'RedHatDisplay-Bold';
	font-size:16px;
	text-align:center;
	color:#ffffff;
	background-color:#23231e;
	border-radius:30px;
}
.p_header_menu .link a img{
	position:absolute;
	top:50%;
	right:10px;
	transform:translateY(-50%);
	width:16px;
}
.p_header_bottom{
	display:flex;
	justify-content:flex-end;
}
.p_header_bottom nav{
	display:flex;
	align-items:center;
	gap:20px;
}
.p_header_bottom nav a{
	font-family:"ryo-gothic-plusn", sans-serif;
	font-weight:500;
	font-style:normal;
	font-size:16px;
}
.p_header_bottom nav span{
	position:relative;
	padding-right:15px;
	font-family:"ryo-gothic-plusn", sans-serif;
	font-weight:500;
	font-style:normal;
	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;
	}
}
.p_header_hamburger{
	display:none;
}
.p_header_nav{
	display:none;
}

.header_detail_pc{
	display:none;
	position: absolute;
    top: 140px;
    left: 0;
    width: 100%;
    background-color: #ffffff;
	z-index:100;
}
.header_container{
	display: grid;
	grid-template-columns: 350px 1fr;
	align-items: flex-start;
	max-width: 1200px;
	margin: 0 auto;
	padding: 64px 50px 34px;

	.title{
		display:flex;
		align-items:center;
		gap:24px;
		font-family:"ryo-gothic-plusn", sans-serif;
		font-weight:500;
		font-style:normal;
		font-size:24px;

		img{
			width:26px;
		}
	}
	.menu{
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
		gap: 16px 24px;

		a{
			padding:12px 0;
			font-family:"ryo-gothic-plusn", sans-serif;
			font-weight:500;
			font-style:normal;
			font-size:16px;
			border-bottom:1px dotted #23231e;
			background-image:url('images/header_right_cursor.png');
			background-position:center right;
			background-repeat:no-repeat;
			background-size:20px;
		}
	}
}
.header_close{
	max-width:1200px;
	margin:0 auto 10px;
	padding:0 50px;
	
	img{
		display:block;
		width:20px;
		margin-left:auto;
		cursor:pointer;
	}
}

/* .product_header{
	background-color: var(--line_gray);

	.product_header_container{
		max-width: 1200px;
		margin: 0 auto;
		padding: 20px 0;

		.container {
			display: flex;
			align-items: flex-end;
			justify-content: space-between;

			.logo_header {
				max-width: 397px;

				img{
					width: 100%;
					margin-bottom: -15px;
				}
			}
			.header_funtion{
				display: flex;
				align-items: flex-end;
				justify-content: space-around;
				gap: 40px;

				.service_products_button {
					text-align: center;
					font-family: 'RedHatDisplay-ExtraBold';
					font-size: 16px;
					background-color: var(--white);
					width: 230px;
					display: inline-block;
					border-radius: 15px 0;
					padding: 5px;
				}
				.lang_button {
					display: flex;
					align-items: center;
					gap: 10px;
					margin-bottom: -4px;
	
					a{
						font-family:'RedHatDisplay-Bold';
						font-size: 14px;
					}
					p{
						margin: 0;
					}
				}
				.company_link_button {
					color: var(--white);
					background-color: var(--black);
					width: 320px;
					text-align: center;
					padding: 5px;
					border-radius: 18px;
					position: relative;
					font-family:'RedHatDisplay-ExtraBold';
					font-size: 16px;
	
					img {
						position: absolute;
						width: 16px;
						height: 16px;
						right: 12px;
						top: 50%;
						transform: translateY(-50%);
					}
				}
			}
		}
		.main_navigation {
			margin-top: 23px;
			display: flex;
			justify-content: flex-end;
			gap: 15px;

			a{
				display:flex;
				align-items:center;
				gap:5px;
				font-family:'RedHatDisplay-Bold';
				font-size: 16px;
				position: relative;

				img{
					width: 10px;
				}
			}
		}
	}
} */

/*-------------------- footer --------------------*/
.p_footer_link{
	display:grid;
/* 	grid-template-columns:repeat(2, 1fr); */
}
.p_footer_link .box{
	height:300px;
	background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/footer_link1_1_pc.png");
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.p_footer_link .box a{
	display:block;
	height:100%;
}
.p_footer_link .box img{
	width:100%;
}
.p_footer_link .box .img{
	display:flex;
	justify-content:space-between;
	align-items:center;
	max-width:1100px;
	height:100%;
	margin:0 auto;
	padding:0 50px;
}
.p_footer_link .box .img p{
	font-family:'RedHatDisplay-Bold';
	font-size:70px;
	color:#ffffff;
}
.p_footer_link .box .img img{
	width:80px;
}

.footer_area{
	background-color:#595757;
}
.footer_wrap{
	position:relative;
	max-width:1100px;
	margin:0 auto;
	padding:40px 50px 20px;
}
.footer_top{
	margin-bottom:10px;
}
.footer_top .return{
	margin-bottom:30px;
	padding-bottom:25px;
	border-bottom:1px solid #ffffff;
}
.footer_top .return a{
	display:inline-block;
}
.footer_top .return a span{
	display:flex;
	align-items:center;
	gap:10px;
	font-family:'RedHatDisplay-SemiBold';
	font-size:18px;
	color:#ffffff;
}
.footer_top .return a span img{
	width:20px;
	transform:rotate(-90deg);
}
.footer_top .nav{
	display:flex;
	justify-content:flex-end;
	gap:30px;
}
.footer_top .nav a{
	font-family:"ryo-gothic-plusn", sans-serif;
	font-size:16px;
	color:#ffffff;
}
.footer_bottom{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	margin-bottom:70px;
}
.footer_bottom .logo img{
	width:125px;
}
.footer_bottom .youtube{
	display:flex;
	align-items:center;
	gap:10px;
}
.footer_bottom .youtube p{
	position:relative;
	margin:0;
	padding-right:20px;
	font-family:'RedHatDisplay-SemiBold';
	font-size:16px;
	text-decoration:underline;
	color:#ffffff;
}
.footer_bottom .youtube p:after{
	content:'▷';
	position:absolute;
    top:0;
    right:0px;
}
.footer_bottom .youtube img{
	width:57px;
}
.footer_copy p{
	font-family:"ryo-gothic-plusn", sans-serif;
	font-size:14px;
	text-align:right;
	color:#ffffff;
}
.footer_top_return{
	display:block;
	position:fixed;
	left:50%;
    bottom:80px;
	transform:translateX(-50%);
	width:100%;
    max-width:1270px;
    margin:0 auto;
	opacity:0;
	visibility:hidden;
	transition:0.3s;
	z-index:200;
}
.footer_top_return img{
	position:absolute;
	top:0;
	right:0;
	width:60px;
}
.footer_contact_link{
	display:block;
    position:fixed;
    left:50%;
    bottom:260px;
    transform:translateX(-50%);
    width:100%;
    max-width:1460px;
    margin:0 auto;
/* 	visibility:hidden; */
	transition:0.3s;
    z-index:200;
}
.footer_contact_link:hover{
	opacity:0.8;
}
.footer_contact_link img{
	position:absolute;
	top:0;
	right:0;
	width:160px;
}

/* .product_footer{
	background-color: var(--gray);

	.product_footer_container{
		max-width: 1100px;
		margin: 0 auto;
		color: var(--white);
		font-family:'RedHatDisplay-Bold';
		padding: 35px 0 20px;

		.site_top_container {
			padding-bottom: 20px;
			border-bottom: 1px solid;

			img{
				width: 20px;
				height: 20px;
				margin-bottom: -3px;
			}
			span{
				color: var(--white);
                font-size: 18px;
                margin-left: 10px;
			}
		}
		.footer_funtion_container {
			margin-top: 30px;
			display: flex;
			justify-content: flex-end;
			gap: 20px;

			.site_top_button {
				color: var(--white);
				font-size: 16px;
			}
		}
		.footer_logo_container {
			display: flex;
			align-items: flex-end;
			justify-content: space-between;

			img {
				height: 128px;
				width: auto;
			}
			.footer_logo_side {
				display: flex;
				align-items: center;
				gap: 30px;

				a {
					color: var(--white);
					text-decoration: underline;
				}
				img {
					height: 40px;
					width: auto;
				}
			}
		}
		.footer_copy_right_container {
			text-align: end;
			margin-top: 40px;
			font-size: 14px;
		}
		.footer_contact_link{
			display: block;
			position: fixed;
			left: 50%;
			bottom: 260px;
			transform: translateX(-50%);
			width: 100%;
			max-width: 1460px;
			margin: 0 auto;
			transition: 0.3s;
			z-index: 200;

			img {
				position: absolute;
				top: 0;
				right: 0;
				width: 160px;
			}
		}
		.footer_top_return{
			display: block;
			position: fixed;
			left: 50%;
			bottom: 80px;
			transform: translateX(-50%);
			width: 100%;
			max-width: 1270px;
			margin: 0 auto;
			opacity: 0;
			visibility: hidden;
			transition: 0.3s;
			z-index: 200;

			img {
				position: absolute;
				top: 0;
				right: 0;
				width: 60px;
			}
		}
	}
} */


/*-------------------- main --------------------*/
.product_main{
	padding-bottom:240px;
	background-color:var(--white);
}

.pc {
	display: block;
}
.ps {
	display: none;
}

/*-------------------- product top --------------------*/
.product_page{
	max-width: 1100px;
	margin: 0 auto;
	font-family:'RedHatDisplay-Regular';
	font-size: 18px;


	.product_top{
		position: relative;
		padding-top: 270px;
		margin-bottom: 200px;

		h1.top_title{
			font-family:'RedHatDisplay-Bold';
			font-size: 140px;
			position: relative;
			z-index: 20;
			margin: 0;
			line-height: 135px;
		}
	}
	.product_top::before{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 100vw;
		height: 540px;
		background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/product_bg_img.png");
		background-size: cover;
		background-repeat: no-repeat;
		z-index: 10;
	}
	.product_contents {
		padding: 0px 0 96px;

		.product_content{
			padding-bottom: 96px;
            border-bottom: 1px dotted;
            margin-top: 80px;

			.content_title{
				font-family: 'RedHatDisplay-Bold';
                font-size: 48px;
                padding-left: 80px;
                margin: 0;
				position: relative;
			}
			.content_title::before{
				content: "";
				background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/blue_circle.png");
				background-repeat: no-repeat;
				background-size: cover;
				width: 54px;
				height: 54px;
				position: absolute;
				left: 0;
				top: 50%;
				transform: translateY(-50%);
			}
			.img_link_text_boxs{
				display: flex;
				gap: 40px;
				margin-top: 64px;

				.img_link_text_box{
					width: 33%;

					img{
						width: 100%;
					}
					.link{
						font-family: 'RedHatDisplay-Bold';
                        font-size: 24px;
                        color: var(--blue);
                        padding-left: 43px;
						position: relative;
					}
					.link::before{
						content: "";
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue.png");
						background-repeat: no-repeat;
						background-size: cover;
						width: 28px;
						height: 28px;
						position: absolute;
						left: 0;
						top: 50%;
						transform: translateY(-50%);
					}
					p{
						line-height: 32px;
					}
				}
				.img_link_text_box:hover{
					.link::before{
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_hover.png");
					}
				}
			}
		}
		.product_content_link_box{
			display: flex;
            justify-content: space-between;
            align-items: center;

			.link_box{
				padding-right: 120px;
                max-width: 620px;
                box-sizing: border-box;
                line-height: 32px;
				position: relative;
				
				.link_boxs_text{
					margin: 0;
				}
			}
			.link_box::before{
				content: "";
				background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue.png");
				background-repeat: no-repeat;
				background-size: cover;
				width: 54px;
				height: 54px;
				position: absolute;
				right: 0;
				top: 50%;
				transform: translateY(-50%);
			}
			.link_box:hover::before{
				background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_hover.png");
			}
		}
	}
}
.cor_recruit_box{
	display: flex;
    width: 100%;

	a{
		width: 50%;
		margin-bottom: -5px;

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

/*-------------------- markets --------------------*/
.markets {
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';
	max-width: 1100px;
    margin: 0 auto;
	color: var(--black);
	
	.markets_top{
		margin-bottom: 120px;

		.top_title{
			font-family: 'RedHatDisplay-Bold';
			font-size: 96px;
			text-align: center;
			margin-top: 140px;
		}
		.content_title{
			font-family: 'RedHatDisplay-ExtraBold';
			font-size: 28px;
			line-height: 44px;
		}
		.content_detail{
			margin-top: 40px;
			margin-bottom: 0;
			line-height: 32px;
		}
	}

	.markets_contents{
		margin-bottom: 160px;

		.markets_content {
			padding: 48px 0;
			border-top: 2px dotted;
			display: flex;
			gap: 60px;

			.left_box{
				min-width: 300px;

				img{
					width: 100%;
				}
			}
			.right_box{
				.box_title{
					display: flex;
    				justify-content: space-between;
					align-items: center;

					h3 {
						font-family: 'RedHatDisplay-Bold';
						font-size: 44px;
						margin: 0;
						color: var(--blue);
					}

					.link{
						width: 64px;
						height: 64px;
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue.png");
						background-size: cover;
					}
					.link:hover{
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_hover.png");
					}
				}

				.box_detail p{
					line-height: 32px;
					margin-top: 60px;
				}
			}
		}
		.markets_content:last-child {
			border-bottom: 2px dotted;
		}
	}
}
.ans_que_bg{
	background-color: var(--bg_gray);
	color: var(--black);

	.ans_que{
		max-width: 1100px;
		margin: 0 auto;
		padding: 88px 0;
		font-size: 18px;
		font-family:'RedHatDisplay-Regular';

		.ans_que_head{
			position: relative;

			h2{
				text-align: center;
				font-family: 'RedHatDisplay-Bold';
				font-size: 64px;
				margin: 0;
			}
			.ans_que_head_detail {
				margin-top: 30px;
				text-align: center;
				color: var(--blue);
				font-size: 24px;
			}
			.link_box {
				position: absolute;
				display: flex;
				top: 20px;
				right: 0;
				gap: 30px;
				align-items: center;

				p{
					font-family:'RedHatDisplay-Medium';
					margin: 0;
					font-size: 19px;
				}
				img{
					width: 60px;
					height: 30px;
				}
			}
		}
		.ans_que_contents{
			margin-top: 40px;
            display: flex;
            flex-direction: column;
            gap: 17px;

			.ans_que_content {
				display: flex;
				align-items: center;
				background-color: var(--white);
				padding: 26px;
				border-radius: 10px;
				position: relative;

				.left_box{
					color: var(--blue);
					font-size: 40px;
					margin: 0;
				}
				.center_box {
					margin-left: 100px;
					padding-right: 26px;
				}
				.link {
					width: 24px;
					height: 24px;
					background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_small.png");
					background-size: cover;
					text-align: right;
					position: absolute;
					top: 50%;
					transform: translateY(-50%);
					right: 26px;
					
				}
			}
		}
		.link_box_2 {
			display: none;
		}
	}
}
.contact_bot_button{
	max-width: 1100px;
	margin: 0 auto;
	color: var(--black);

	a {
        border: 1px solid var(--black);
        height: 200px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
		border-radius: 100px;
		font-family:'RedHatDisplay-Bold';
		font-size: 55px;
		margin-top: 160px;
		letter-spacing: 5px;

		img{
			position: absolute;
			height: 202px;
			width: 202px;
			top: -1px;
			left: -1px;
		}
    }
}
@media(min-width:769px){
	.contact_bot_button:hover{
		a {
			background-color: var(--black);
			color: var(--white);

			img{
				top: -1px;
				right: -1px;
				left: auto;
			}
		}
	}
}


/*-------------------- markets steel --------------------*/
.markets_steel {
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';
	max-width: 1100px;
    margin: 0 auto;
	color: var(--black);
	margin-bottom: 240px;

	.markets_steel_content {
		margin: 160px 0 240px;

		.title {
			font-size: 32px;
			color: var(--blue);
			border-left: 6px solid var(--blue);
			padding-left: 10px;
			font-family:'RedHatDisplay-Bold';
		}
		.content_title {
			font-size: 36px;
			border-left: 6px solid var(--blue);
			padding-left: 25px;
			font-family:'RedHatDisplay-Bold';
			margin-bottom: 72px;
		}
		.top_title {
			font-family: 'RedHatDisplay-Bold';
			font-size: 64px;
		}
		.content_box{
			margin-top: 60px;
			margin-bottom: 110px;

			h4 {
				position: relative;
				font-size: 24px;
				border-bottom: 1px solid var(--gray);
				padding: 0 0 20px;
                margin: 0;
			}
			h4::before {
				content: "";
				position: absolute;
				bottom: -3px;
				left: 0;
				display: flex;
				gap: 4px;
			}
			h4::before {
				width: 60px;
				height: 5px;
				background: linear-gradient(
					to right,
					var(--blue) 0 20px,
					transparent 20px 20px,
					var(--red) 20px 40px,
					transparent 40px 40px,
					var(--gray) 40px 60px
				);
			}
			p {
				line-height: 32px;
			}
			.top_img {
				margin-top: 120px;

				img{
					width: 100%;
				}
			}
			.bot_img {
				margin-top: 60px;

				img{
					width: 100%;
				}
			}
			.box_detail{
				margin-top: 40px;

				.img_box{
					margin-top: 40px;
					display: flex;
					flex-wrap: wrap;

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

						p {
							line-height: 32px;
							width: 100%;
						}
					}
				}
			}
		}
		.content_box_1 {
			display: flex;
			gap: 32px;

			.side_box {
				width: 50%;

				.box_detail{

					.img_box{
                        gap: 12px;
						
						img{
							max-height: 200px;
							width: auto;
						}
					}
				}
			}
			.box_detail_1{
				p{
					height: 64px;
				}
			}
		}
		.content_box_2 {
			
			.box_detail{

				.img_box{
					gap: 20px;
					
					img{
						max-height: 260px;
						width: auto;
					}

					.img_flex_box {

						p {
							width: 260px;
						}
					}
				}
				.img_grid_box{
					display: grid;
                    grid-template-columns: repeat(4, 1fr);
					gap: 20px;
					
					img {
						width: 100%;
					}
					p{
						width: 100%;
						margin: 15px 0 0;
					}
				}
			}
		}
		.content_box_mg_bt_260{
			margin-bottom: 260px
		}
		.content_box_3 {

			.box_detail{

				.img_box{
					gap: 20px;
					
					img{
						max-height: 200px;
						width: auto;
					}
				}
			}
		}
	}
}

/*-------------------- markets paper --------------------*/
.markets_paper {
	.markets_paper_content_mb_160{
		margin-bottom: 160px;
	}
	.markets_paper_content{
		margin-bottom: 240px;
		
		.content_title {
            margin-bottom: 64px;
        }
		.content_box_2{

			.box_detail{

				.img_box{

					.img_height_thin_2{
						height: 130px;
					}
					.img_flex_box{

						p{
							width: 350px;
						}
					}
				}
				.gray_bg_text{
					color: var(--white);
					background-color: var(--bg_d_gray);
					padding: 10px 15px;
					margin-top: 60px;
				}
				.paper_img_tyle_1{
					width: 100%;
					margin-top: 70px;
				}
			}
		}
		.content_box{
			margin-top: 96px;
			margin-bottom: 112px;

			.bot_img{
				display: flex;
				margin-top: 100px;

				.paper_img_tyle_2{
					max-width: 1000px;
					margin: 0 auto;
				}
			}
		}
		.content_box_table{
			margin-top: 64px;
		}
	}

}

/*-------------------- markets energy --------------------*/
.markets_energy{

	.markets_energy_content{
		margin-bottom: 240px;
		.content_box_2{

			.box_detail{

				.title_text_box{
					display: flex;
					margin-bottom: 60px;
	
					.title_text_l_box{
						width: 25%;
						border-right: 1px solid var(--line_gray);

						p{
							font-family:'RedHatDisplay-Medium';
						}
					}
					.title_text_r_box{
						width: 75%;
						padding-left: 60px;
					}
					p{
						margin: 0;
					}
				}
				.img_box{
	
					.img_flex_box{
	
						p{
							width: 360px;
						}
					}
				}
			}
		}
		.content_box{

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

				.img_box{
					max-width: 352px;

					img{
						width: 100%;
					}
				}
				.text_box{

					p{
						margin: 0;
					}
				}
			}
		}
	}
}

/*-------------------- markets Other fields --------------------*/
.markets_other_fields{

	.markets_other_fields_content{
		margin-bottom: 240px;

		.content_box{

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

				.img_box {
					max-width: 500px;

					img{
						width: 100%;
					}
				}
				.text_box {
					max-width: 600px;
					
					p{
						margin: 0;
					}
				}
			}
			.box_detail{

				.img_box{

					img{
						width: 100%;
					}
				}
			}
		}
	}
}

/*-------------------- Case Studies --------------------*/
.product {
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';
	max-width: 1100px;
    margin: 0 auto;
	color: var(--black);
	margin-bottom: 240px;

	.product_content {
		margin-top: 160px;

		.title {
			font-size: 44px;
			color: var(--blue);
			border-left: 6px solid var(--blue);
			padding-left: 30px;
			font-family:'RedHatDisplay-Bold';
		}
		.top_title {
			font-family: 'RedHatDisplay-Bold';
			font-size: 96px;
            text-align: center;
		}
		.content_box{
			margin-top: 64px;
			margin-bottom: 80px;

			h3 {
				position: relative;
				font-size: 24px;
				border-bottom: 1px solid var(--gray);
				padding: 0 0 30px;
				margin-bottom: 35px;

				.count_num{
					background-color: var(--black);
					color: var(--white);
					padding: 10px 20px;
					border-radius: 25px;
					margin-right: 20px;
					font-family:'RedHatDisplay-Medium';
					font-size: 20px;
					display: inline-block;
				}
			}
			h3::before {
				content: "";
				position: absolute;
				bottom: -3px;
				left: 0;
				display: flex;
				gap: 4px;
			}
			h3::before {
				width: 60px;
				height: 5px;
				background: linear-gradient(
					to right,
					var(--blue) 0 20px,
					transparent 20px 20px,
					var(--red) 20px 40px,
					transparent 40px 40px,
					var(--gray) 40px 60px
				);
			}
			p {
				line-height: 32px;
			}
			.box_detail{
				margin-top: 40px;

				p {
					line-height: 32px;
				}
				.text_title{
					font-family:'RedHatDisplay-ExtraBold';
				}
			}
		}
	}
}

/*----------------research and development----------------*/
.research_development {
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';
	max-width: 1100px;
    margin: 0 auto;
	color: var(--black);
	
	.research_development_top{
		margin-bottom: 160px;

		.top_title{
			font-family: 'RedHatDisplay-Bold';
			font-size: 72px;
			text-align: center;
			margin-top: 140px;
			margin-bottom: 80px;
		}
		.content_title{
			font-family: 'RedHatDisplay-ExtraBold';
			font-size: 28px;
			line-height: 44px;
		}
		.content_detail{
			margin-top: 40px;
			margin-bottom: 0;
			line-height: 32px;
		}
	}

	.research_development_contents{
		margin-bottom: 160px;

		.research_development_content {
			padding: 48px 0;
			border-top: 2px dotted;
			display: flex;
			gap: 60px;

			.left_box{
				min-width: 300px;

				img{
					width: 100%;
				}
			}
			.right_box{
				.box_title{
					display: flex;
    				justify-content: space-between;
					align-items: center;

					h3 {
						font-family: 'RedHatDisplay-Bold';
						font-size: 44px;
						margin: 0;
						color: var(--blue);
					}

					.link{
						width: 64px;
						height: 64px;
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue.png");
						background-size: cover;
					}
					.link:hover{
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_hover.png");
					}
				}

				.box_detail{
					margin-top: 50px;

					p{
						line-height: 32px;
					}
				}

			}
		}
		.research_development_content:last-child {
			border-bottom: 2px dotted;
		}
	}
}

/*---------research and development/overlay welding----------*/
.rad_style {
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';
	max-width: 1100px;
    margin: 0 auto;
	color: var(--black);
	margin-bottom: 160px;

	.rad_style_content {
		margin-top: 160px;

		.title {
			font-size: 32px;
			color: var(--blue);
			border-left: 6px solid var(--blue);
			padding-left: 10px;
			font-family:'RedHatDisplay-Bold';
		}
		.content_title {
			font-size: 36px;
			border-left: 6px solid var(--blue);
			padding-left: 25px;
			font-family:'RedHatDisplay-Bold';

			span.content_title_small_num {
				font-size: 20px;
			}
			span.content_title_small_text {
				font-size: 20px;
				margin-bottom: 15px;
				font-family:'RedHatDisplay-Medium';
			}
		}
		.top_title {
			font-family: 'RedHatDisplay-Bold';
			font-size: 64px;
		}
		.content_box{
			margin-top: 60px;

			p {
				line-height: 32px;
			}
			.dot_list_box{
				ul.dot_list {
					list-style-type: disc;
					padding-left: 20px;
				}
				
				ul.arrow_list {
					list-style: none;
					padding-left: 0;
				}
			
				ul.arrow_list li::before {
					content: "→ ";
					color: #000;
					margin-right: 5px;
				}
				li{
					line-height: 32px;
				}
			}
			.top_img_box {
				margin-top: 80px;

				img{
					width: 100%;
				}
			}
			.img_box {
				margin-top: 60px;
				display: flex;
				flex-direction: column;
				gap: 40px;

				img{
					width: 100%;
				}
				.black_bg_title {
					background-color: var(--black);
					color: var(--white);
					padding: 15px 20px;
					margin-bottom: -20px;
				}
			}
			.img_flex_h260_box {
				display: flex;
				margin-top: 30px;
				gap: 20px;

				img{
					height: 260px;
					width: auto;
				}
				p{
					margin: 10px 0;
				}
			}
			.blue_bg_title_box{
				margin-top: 90px;
				padding-bottom: 50px;
				border-bottom: 2px solid var(--blue);

				.blue_bg_title {
					font-family: 'RedHatDisplay-Bold';
					font-size: 26px;
					text-align: center;
					background-color: var(--blue);
					color: var(--white);
					padding: 20px 0;
					border-radius: 37px;
					margin-bottom: 50px;
				}

				.blue_bg_title_detail_box{
					margin-top: 50px;

					.detail_title{
						font-family:'RedHatDisplay-SemiBold';
						font-size: 22px;
						position: relative;
						padding-left: 30px;
					}
					.detail_title::before{
						content: "";
						position: absolute;
						width: 20px;
						height: 20px;
						background-color: var(--blue);
						left: 0;
						top: 50%;
						transform: translateY(-50%);
						border-radius: 50%;
						
					}
					.text_img_haft_box{
						display: flex;
                        gap: 30px;

						.text_haft{
							max-width: 50%;
						}
						.img_text_flex_box {
							width: 50%;

							img{
								width: 100%;
							}
						}
					}
				}
			}
		}
	}
	.rad_style_content_mb_260{
		margin-bottom: 240px;
	}
}


/*---------research and development/thermal spraying----------*/
.rad_thermal_spraying_style {

	.rad_thermal_spraying_style_content {

		h3.top_title {
            font-size: 56px;
            border-bottom: 1px solid var(--blue);
            padding-bottom: 20px;
			margin-top: 240px;
        }
		.content_title {
            margin-top: 90px;
        }
		.top_detail{
			line-height: 32px
		}

		.content_box{
			.top_img_box {
                margin: 80px 0;
            }

			.title_img_flex_boxs{
				display: flex;
                flex-wrap: wrap;
                gap: 40px 32px;

				.title_img_flex_box{
					width: calc(50% - 16px); 
					box-sizing: border-box;

					.content_title {
						font-size: 20px;
						margin: 0 0 20px;
						padding-left: 12px;
					}
					img{
						width: 100%;
					}
				}
			}
			.link_button_large_box{
				font-family: 'RedHatDisplay-Bold';
                font-size: 24px;
                max-width: 800px;
                padding: 50px 0;
                margin: 0 auto;
                display: block;
                text-align: center;
                border: 2px solid;
                border-radius: 67px;
				position: relative;
				margin-top: 60px;
			}
			.link_button_large_box::after{
				content: "";
				position: absolute;
				background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/right_arrow_circle_blue_hover.png");
				background-repeat: no-repeat;
				background-size: cover;
				height: 56px;
				width: 56px;
				right: 30px;
				top:50%;
				transform: translateY(-50%);
			}
			.gray_bg_title {
				background-color: var(--line_gray);
				padding: 5px 15px;
				font-family: 'RedHatDisplay-Bold';
				margin-top: 35px;
				font-size: 20px;
			}
			.num_list_box{

				.num_list{
					line-height: 32px;
					padding-left: 0;
					list-style-position: outside;
					margin-left: 20px;

					li{
						padding-left: 15px;
					}
				}
			}
		}
	}
}

/*-----------------------faq------------------------*/
.ans_que_page{
	max-width: 1100px;
	margin: 0 auto;
	padding: 160px 0 80px;
	font-size: 18px;
	font-family:'RedHatDisplay-Regular';

	.ans_que_head{
		position: relative;
		margin-bottom: 160px;

		h1{
			text-align: center;
			font-family: 'RedHatDisplay-Bold';
			font-size: 96px;
			margin: 0;
		}
	}
	.ans_que_contents {
		margin-bottom: 160px;

		h2.contents_title{
			font-size: 36px;
			border-left: 6px solid var(--blue);
			padding-left: 25px;
			font-family: 'RedHatDisplay-Bold';
			margin-bottom: 60px;
		}
		.ans_que_content{
			margin-bottom: 80px;
			
			h3.content_title{
				position: relative;
				font-size: 24px;
				border-bottom: 1px solid var(--gray);
				padding: 0 0 20px 0;
			}
			h3.content_title::before {
				content: "";
				position: absolute;
				bottom: -3px;
				left: 0;
				display: flex;
				gap: 4px;
			}
			h3.content_title::before {
				width: 60px;
				height: 5px;
				background: linear-gradient(
					to right,
					var(--blue) 0 20px,
					transparent 20px 20px,
					var(--red) 20px 40px,
					transparent 40px 40px,
					var(--gray) 40px 60px
				);
			}
			.faq_box{
				margin-bottom: 16px;

				.quest_box{
					display: flex;
					padding: 26px;
					position: relative;
					cursor: pointer;

					.left_box{
						color: var(--blue);
						font-size: 40px;
						margin: 0;
					}
					.center_box {
						margin-left: 100px;
						padding-right: 26px;
						line-height: 32px;
					}
					.link {
						width: 24px;
						height: 24px;
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/plus_circle_blue.png");
						background-size: cover;
						text-align: right;
						position: absolute;
						top: 60px;
						transform: translateY(-50%);
						right: 26px;
						
					}
					.link.open {
						background-image: url("/wp/wp-content/themes/osakafuji/images/en/product/sub_circle_blue.png");
					}
				}
				.ans_box{
					display: none;
					padding: 26px;
					position: relative;
					background-color: var(--bg_gray);

					.left_box{
						color: var(--bg_d_gray);
						font-size: 40px;
						margin: 0;
					}
					.right_box {
						margin-left: 100px;
						line-height: 32px;
					}
				}
			}
		}
	}
}

/*----------------------- product table date------------------------*/
.product_table_date {
    width: 100%;
}
.product_table_date table {
    width: 100%;
    border-collapse: collapse;
}


.product_table_date th, td {
    text-align: left;
    box-sizing: border-box;
    flex-shrink: 0;
}

.product_table_date th {
	padding: 20px 0;
    color: var(--white);
    font-family: 'RedHatDisplay-Regular';
    border: 3px solid var(--white);
    background-color: var(--bg_d_gray);
    font-size: 20px;
    text-align: center;
}

.product_table_date .th_bd_r {
    border-right: 3px solid var(--bg_d_gray) !important;
}

.product_table_date .th_bd_l {
    border-left: 3px solid var(--bg_d_gray) !important;
}

.product_table_date .th_bd_t {
    border-top: 3px solid var(--bg_d_gray) !important;
}

.product_table_date .th_bd_b {
    border-bottom: 3px solid var(--bg_d_gray) !important;
}

.product_table_date .td_bd_r {
    border-right: 3px solid var(--black) !important;
}

.product_table_date .td_bd_l {
    border-left: 3px solid var(--black) !important;
}

.product_table_date .td_bd_t {
    border-top: 3px solid var(--black) !important;
}

.product_table_date .td_bd_b {
    border-bottom: 3px solid var(--black) !important;
}

.product_table_date .td_bd_b_none {
    border-bottom: none;
}

.product_table_date .td_bd_t_none {
    border-top: none;
}

.product_table_date .t_bold {
    font-weight: bold;
}

.product_table_date td {
    border: 3px solid var(--bg_d_gray);
    font-family: 'RedHatDisplay-Regular';
    font-size: 16px;
	line-height: 26px;
    vertical-align: middle;
    padding: 23px 15px;
}


.bg_black {
    border: 3px solid var(--black) !important;
    background-color: var(--black) !important;
    font-size: 20px !important;
    text-align: start !important;
    padding-left: 20px !important;
}

.bg_gold {
    background-color: var(--bg_gold) !important;
}

.w_140 {
    width: 140px;
}

.w_160 {
    width: 160px;
}

.w_170 {
    width: 170px;
}

.w_180 {
    width: 180px;
}

.w_190 {
    width: 190px;
}

.w_275 {
    width: 275px;
}

.w_320 {
    width: 320px;
}

.w_260 {
    width: 260px;
}

.w_28 {
    width: 28px;
}

.h_120 {
    height: 120px;
}

.t_s {
    text-align: start !important;
}

.youkou_moji {
    text-align: start;
    vertical-align: middle;
    writing-mode: vertical-lr;
    padding-top: 5px;
}
.tate_moji{
	text-align:center !important;
	vertical-align:top !important;
	letter-spacing:0px !important;
	line-height:1.2 !important;
}

.product_table_date tr:nth-child(even) {
    background-color: #f2f2f2;
}

.product_table_date tr:hover {
/*     background-color: #ddd; */
}
sup {
	font-size: 0.7em;
	vertical-align: super;
}
sub {
	font-size: 0.7em;
	vertical-align: baseline;
}
.table_t_e{
	text-align: end;
}

/*-------------------- パンくずリスト --------------------*/
.breadcrumb{
	display:flex;
	align-items:center;
	max-width:1200px;
	margin:0 auto;
	padding:25px 50px 0;
}
.breadcrumb a{
	font-size:14px;
	color:#8696a6;
}
.breadcrumb span{
	padding-left:8px;
	font-size:14px;
	color:#8696a6;
}
.breadcrumb a.active{
	text-decoration:underline;
	color:#0075c2;
}
