@charset "UTF-8";

/*   all_parts   */
[data-pagetype="list"] #contents,
[data-pagetype="detail"] #contents{
	width:100%;
	margin:0 auto;
	
	position:relative;
	background-color:#fff;

}

[data-pagetype="detail"] #contents_inner{
	width:1000px;
	margin:0 auto;

	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

#main_contents{
	width:1000px;
	margin:0 auto;
}

[data-pagetype="detail"] #main_contents{
	width:790px;

}



/*   list   */
body[data-pagetype="list"] #back-img{
	background-image: url(/europe/en/common/back-img/list_about_top.jpg);
	min-height:520px;
}

#listtitle_area{
	width:1000px;
	height:400px;
	
	margin:0 auto;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	align-content: center;
	align-items: center;
}

#listtitle_area h1{
	width:100%;
	
	font-family: 'Cormorant Garamond', serif;
	font-size:42px;
	font-weight:700;
	line-height:46px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0 0 30px 0;
}

#listtitle_area p{
	width:100%;
	
	font-size:15px;
	font-weight:500;
	line-height:46px;
	color:#000;
	letter-spacing: 0.3em;
	text-align:left;
	
	padding:0;
}

#main_contents .main_map_inner{
	width:100%;
	min-height:475px;
	margin:0;
	padding:0;
	
	position:relative;
}

#main_contents .main_map_inner #main_copy_area{
	width:100%;
	margin:0;
	padding:0;
	
	position:absolute;
	z-index:100;
}

#main_contents .main_map_inner #main_copy_area p{
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	margin:35px 0 0 0;

}

#main_contents .main_map_inner #factory_name_area{
	width:1000px;
	height:475px;
	padding:0;
	
	position:absolute;
	z-index:50;
	top:30px;
	
	background-image: url(image/map_name.png);
	background-repeat:no-repeat;
	background-position:top center;
}

#main_contents .main_map_inner #factory_map_area{
	width:1000px;
	height:475px;
	
	margin:0;
	padding:0;
	
	position: absolute;
	z-index:25;
	top:30px;
	
	background-image: url(image/map_base.png);
	background-repeat:no-repeat;
	background-position:top center;

}

#main_contents .main_list_inner{
	width:100%;
	margin:0 0 20px 0;
	padding:25px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
}

#main_contents .main_list_inner a{
	width:330px;
	padding:2px;
	margin:0 0 20px 0;
	border:solid 1px #ccc;
	
	display:block;
	
	transition: all 0.5s;
	background-color:rgba(255,255,255,1.0);
	filter:alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}

#main_contents .main_list_inner a:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	text-decoration:none;
}


#main_contents .main_list_inner a .main_name{
	width:100%;
	
	padding:5px 10px;
	margin:15px 0 5px 0;
	
	display:block;

	font-size:15px;
	font-weight:500;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	position: relative;
	
}

#main_contents .main_list_inner a:hover .main_name{
}

#main_contents .main_list_inner a .main_name::after{
	content: "";
	position: absolute;
	top: 0;
	bottom:0;
	right:22px;
	
	
	display:block;
	
	width: 24px;
	height: 24px;

	
	background-image: url(/europe/en/common/images/link_arrow_red.svg);
	margin:auto;
}

#main_contents .main_list_inner a .main_copy{
	width:100%;
	
	padding:5px 10px;
	margin:5px 0 15px 0;
	
	display:block;

	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.10em;
	text-align:left;
	
	position: relative;
	
}


#main_contents .main_list_inner .research_area{
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
	
	width:100%;
}

#main_contents .main_list_inner .research_area .research_copy_block{
	width:calc(100% - 498px);
}

#main_contents .main_list_inner .research_area .research_photo_block{
	width:498px;
}

#main_contents .main_list_inner .research_area .research_photo_block img{
	vertical-align:top;
}



#main_contents .main_list_inner .research_area .research_copy_block .main_name{
	width:40%;
}




#main_contents .main_list_inner #title_area{
	width:100%;
	margin:0 0 20px 0;
	padding:25px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:nowrap;
	-ms-flex-wrap:nowrap;
	flex-wrap:nowrap;
	
	align-content: center;
	align-items: center;
	
	border-top:solid 1px #fff;
	border-bottom:solid 1px #fff;
}


#main_contents .main_listdetail_inner{
	width:100%;
	padding:0;
	margin:30px 50px 0 0;
	background-color:#fff;
}

#main_contents .main_listdetail_inner #list_link_area {
	margin:0 0 40px 0;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block {
	width:100%;
	margin:0 0 10px 0;
	
	border:solid 1px #ccc;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:nowrap;
	-ms-flex-wrap:nowrap;
	flex-wrap:nowrap;
	
	align-content: center;
	align-items: center;

}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .copy_box {
	display: block;

	font-size:13px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0 0 0 20px;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box {
	width:330px;
	
	display: block;
	margin:20px 0 20px auto;
	padding:8px 45px 8px 0;

	font-size:15px;
	font-weight:500;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:center;
	
	background-color:#f5ebec;
	
	position:relative;
	z-index:2;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_prodcut {
	width:265px;
	margin:20px 0 20px auto;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box::after{
	content: " ";
	display: inline-block;
	width: 24px;
	height: 24px;

	
	background-image: url(/europe/en/common/images/link_arrow_red.svg);
	background-position:center;
	background-size:cover;
	background-repeat:no-repeat;
	position:absolute;
	top:0;
	bottom:0;
	right:20px;
	
	margin:auto;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box:hover {
	text-decoration:none;
}


#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background-color:rgba(255,255,255,0.7);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .0s;
}
#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}



/*   detail   */
#main_contents .main_detail_inner{
	width:790px;
	padding:40px 50px 0 0;
	background-color:#fff;
}

body[data-pagetype="detail"] #back-img{
	min-height:330px;
	background-image: url(/europe/en/common/back-img/list_factory_top.jpg);
}
#maintitle_area{
	width:1000px;
	height:165px;
	
	margin:0 auto;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	align-content: center;
	align-items: center;
}

#maintitle_area h1{
	width:100%;
	
	font-family: 'Noto Serif JP', serif;
	font-size:32px;
	font-weight:500;
	line-height:32px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0;
}

#maintitle_area p{
	width:100%;
	
	font-size:14px;
	font-weight:400;
	line-height:46px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:10px 0 0 0;
}

#main_contents .main_detail_inner #title_area{
	width:100%;
	margin:0 0 20px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:nowrap;
	-ms-flex-wrap:nowrap;
	flex-wrap:nowrap;
	
	justify-content: space-between;
	

}

#main_contents .main_detail_inner #title_area .title_copy_block,
#main_contents .main_detail_inner .spec_area .title_copy_block{
	width:100%;
}

#main_contents .main_detail_inner #title_area .research_title_copy_block{
	width:100%;
}

#main_contents .main_detail_inner #title_area .title_copy_block h2{
	font-size:30px;
	font-weight:900;
	line-height:30px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
	
	
	margin:0 0 25px 0;
	padding:20px 0;
	
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
}

#main_contents .main_detail_inner #title_area .title_copy_block h2 span{
	font-size:24px;
	letter-spacing: normal; 
	display:block;
}

#main_contents .main_detail_inner #title_area .research_title_copy_block h2{
	width:100%;
	margin:0;
}


#main_contents .main_detail_inner #title_area .title_copy_block ul,
#main_contents .main_detail_inner .spec_area .title_copy_block ul{
	list-style:none;
}

#main_contents .main_detail_inner #title_area .title_copy_block li,
#main_contents .main_detail_inner .spec_area .title_copy_block li{
	padding:0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#e6002d;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner #title_area .title_copy_block li .title_th_box,
#main_contents .main_detail_inner .spec_area .title_copy_block li .title_th_box{
	width:180px;
	display:inline-block;
	vertical-align:top;

}

#main_contents .main_detail_inner #title_area .title_copy_block li .title_td_box,
#main_contents .main_detail_inner .spec_area .title_copy_block li .title_td_box{
	width:calc(100% - 180px);
	display:inline-block;

}

#main_contents .main_detail_inner #title_area .title_photo_block{
	width:350px;
}


#main_contents .main_detail_inner #factory_copy_area{
	width:100%;
	margin:0 0 40px 0;
}

#main_contents .main_detail_inner .spec_area #factory_copy_area{
	width:350px;
	margin:0;
}

#main_contents .main_detail_inner #factory_copy_area ul{
	list-style:none;
	margin:0 0 0 1.3rem;
}

#main_contents .main_detail_inner #factory_copy_area li{
	padding:0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
	

	position: relative;
}

#main_contents .main_detail_inner #factory_copy_area li::before {
	content: "◎";
	padding:0;
	
	display:block;
	position:absolute;
	
	top:0;
	left:-1.3rem;
}


#main_contents .main_detail_inner .spec_area {
	margin:0 0 60px 0;
}

#main_contents .main_detail_inner .spec_area h3 {
	background-color:#dddddd;
	border-left:solid 3px #000;
	
	padding:10px 15px;
	margin:0 0 10px 0;
	
	font-size:18px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.2em;
	text-align:left;
}
#main_contents .main_detail_inner .spec_area h3 span{
	letter-spacing: 0.1em;
	padding:0 0 0 20px;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle{
	list-style:none;
	margin:0 0 15px 1.8rem;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle li{
	padding:0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.1em; 
	text-align:left;
	

	position: relative;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle li::after {
	content: "◎";
	padding:0;
	
	display:block;
	position:absolute;
	
	top:0;
	left:-1.3rem;
}

#main_contents .main_detail_inner .spec_area .att_copy{
	font-size:12px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner .spec_area .right_copy{
	text-align:right;
}

#main_contents .main_detail_inner .spec_area p{
	font-size:14px;
	font-weight:400;
	line-height:22px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner .spec_area p.maU1{
	font-size:16px;
	padding:15px 0;
}

#main_contents .main_detail_inner .spec_area .midashi_copy {
	padding:40px 15px 10px 15px;
	margin:0 0 10px 0;
	
	font-size:18px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	border-bottom:solid 3px #ccc;
	display:inline-block;
}

#main_contents .main_detail_inner .spec_area p.main_copy{
	font-size:15px;
	padding:15px;
}

#main_contents .main_detail_inner .spec_area .spec_1wey_block {
	margin:0 0 15px 0;

}

#main_contents .main_detail_inner .spec_area .spec_1wey_block .specallimage{
	width:100%;
	height:auto;
}



#main_contents .main_detail_inner .spec_area .spec_2wey_block {
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
}

#main_contents .main_detail_inner .spec_area .spec_2wey_block .half_box{
	width: 48%;
}

#main_contents .main_detail_inner .spec_area .spec_2wey_block .spec240image{
	width:240px;
	height:auto;

}

#main_contents .main_detail_inner .spec_area table{
	border:solid 1px #ccc;
	border-collapse: collapse;
}

#main_contents .main_detail_inner .spec_area table + table{
	margin:30px 0 0 0;
}

#main_contents .main_detail_inner .spec_area th,
#main_contents .main_detail_inner .spec_area td{
	border:solid 1px #ccc;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
}

#main_contents .main_detail_inner .spec_area th{
	padding:10px;
	background-color:#f2f2f2;
}

#main_contents .main_detail_inner .spec_area td{
	border:solid 1px #ccc;
	padding:10px 10px 10px 20px;
}

#main_contents .main_detail_inner .spec_area td hr{
	border: dotted 1px #ccc;
	margin:15px 0;

}

#main_contents .main_detail_inner .spec_area .table_smartphone table{
	border:solid 1px #ccc;
	border-collapse: collapse;
}

#main_contents .main_detail_inner .spec_area .table_smartphone th,
#main_contents .main_detail_inner .spec_area .table_smartphone td{
	border:solid 1px #ccc;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
}

#main_contents .main_detail_inner .spec_area .table_smartphone th{
	padding:10px;
	background-color:#f2f2f2;
}

#main_contents .main_detail_inner .spec_area .table_smartphone td{
	border:solid 1px #ccc;
	padding:10px 10px 10px 20px;
}

#main_contents .main_detail_inner .spec_area .table_smartphone td.subtitle_part{
	background-color:#ddd;
	padding:5px;
	text-align:center;
}


#menu_contents{
	width:210px;
	padding:40px 0 0 0;
	
	background-color:#f8f8f8;
	border:solid 1px #d8d8d8;
	
	position: relative;
}

#menu_contents #menu_contents_inner{
	width:208px;
	position: relative;
}

#menu_contents .sub_menu{
	width:100%;
}

#menu_contents .sub_menu .menu_are{
	width:100%;
	border-bottom:solid 1px #d8d8d8;
	display:none;
}

#menu_contents .sub_menu .menu_are.index_block{
	display:block;
	background-color:rgba(255,255,255,1.0);
}

#menu_contents .sub_menu .menu_are a{
	width:100%;
	display:block;
	
	padding:15px 1rem;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	position:relative;
	z-index:2;
}


#menu_contents .sub_menu .menu_are a:hover {
	text-decoration:none;
}

#menu_contents .sub_menu .menu_are a.active{
	color:#e6002d;
	border-left:solid 1px #e6002d;
}

#menu_contents .sub_menu .menu_are a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background-color:rgba(250,227,227,1.0);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .0s;
}
#menu_contents .sub_menu .menu_are a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

#menu_contents .sub_menu .menu_are .promenu_block {
	list-style:none;
	display:none;
}

#menu_contents .sub_menu .menu_are .promenu_block li {
	border-bottom:solid 1px #d8d8d8;
}

#menu_contents .sub_menu .menu_are .promenu_block a{
	padding:15px 2rem;
	
	color:#515151;
	letter-spacing: 0.05em;
	
	background-color:rgba(253,244,244,1.0) !important;
}

#menu_contents .sub_menu .menu_are .promenu_block a.active{
	color:#515151;
	border-left:none 1px #e6002d;
	background-color:rgba(250,227,227,1.0) !important;
}

.main_logo1{
	width: auto;
	height: 50px;
}

.main_logo1 img{
	width: auto;
	height: 50px;
}

.main_logo2{
	width: auto;
	height: 100px;
}

.main_logo2 img{
	width: auto;
	height: 100px;
}





/*   smart phone   */
@media screen and (max-width:640px) {

/*   all_parts   */
[data-pagetype="list"] #contents,
[data-pagetype="detail"] #contents{
	width:100%;
	margin:0 auto;
	
	position:relative;
	background-color:#fff;

}

[data-pagetype="detail"] #contents_inner{
	width:100%;
	margin:0 auto;

	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

#main_contents{
	width:100%;
	margin:0 auto;
}

[data-pagetype="detail"] #main_contents{
	width:100%;

}



/*   list   */
body[data-pagetype="list"] #back-img{
	background-image: url(/europe/en/common/back-img/list_factory_top.jpg);
	min-height:520px;
}

#listtitle_area{
	width:100%;
	height:400px;
	
	margin:0 auto;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	align-content: center;
	align-items: center;
}

#listtitle_area h1{
	width:100%;
	
	font-family: 'Cormorant Garamond', serif;
	font-size:42px;
	font-weight:700;
	line-height:46px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0 1.0rem 30px 1.0rem;
}

#listtitle_area p{
	width:100%;
	
	font-size:15px;
	font-weight:500;
	line-height:46px;
	color:#000;
	letter-spacing: 0.3em;
	text-align:left;
	
	padding:0 1.0rem;
}

#main_contents .main_map_inner{
	width:100%;
	min-height:105vw;
	margin:0;
	padding:0;
	
	position:relative;
}

#main_contents .main_map_inner #main_copy_area{
	width:100%;
	margin:0;
	padding:0;
	
	position:absolute;
	z-index:100;
	
	top:40vw;
}

#main_contents .main_map_inner #main_copy_area p{
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	margin:35px 0 0 0;
	padding:0 1.0rem;

}

#main_contents .main_map_inner #factory_name_area{
	width:100%;
	height:475px;
	padding:0;
	
	position:absolute;
	z-index:50;
	top:30px;
	
	background-image: url(image/map_name.png);
	background-repeat:no-repeat;
	background-position:top center;
	background-size:100%;
}

#main_contents .main_map_inner #factory_map_area{
	width:100%;
	height:475px;
	
	margin:0;
	padding:0;
	
	position: absolute;
	z-index:25;
	top:30px;
	
	background-image: url(image/map_base.png);
	background-repeat:no-repeat;
	background-position:top center;
	background-size:100%;

}

#main_contents .main_list_inner{
	width:100%;
	margin:0 0 20px 0;
	padding:25px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
}

#main_contents .main_list_inner a{
	width:100%;
	padding:2px;
	margin:0 0 20px 0;
	border:solid 1px #ccc;
	
	display:block;
	
	transition: all 0.5s;
	background-color:rgba(255,255,255,1.0);
	filter:alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}

#main_contents .main_list_inner a:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	text-decoration:none;
}

#main_contents .main_list_inner a img{
	width:100%;
	height:auto;
}


#main_contents .main_list_inner a .main_name{
	width:100%;
	
	padding:5px 10px;
	margin:15px 0 5px 0;
	
	display:block;

	font-size:15px;
	font-weight:500;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	position: relative;
	
}

#main_contents .main_list_inner a:hover .main_name{
}

#main_contents .main_list_inner a .main_name::after{
	content: "";
	position: absolute;
	top: 0;
	bottom:0;
	right:22px;
	
	
	display:block;
	
	width: 24px;
	height: 24px;

	
	background-image: url(/europe/en/common/images/link_arrow_red.svg);
	margin:auto;
}

#main_contents .main_list_inner a .main_copy{
	width:100%;
	
	padding:5px 10px;
	margin:5px 0 15px 0;
	
	display:block;

	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.10em;
	text-align:left;
	
	position: relative;
	
}


#main_contents .main_list_inner .research_area{
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
	
	width:100%;
}

#main_contents .main_list_inner .research_area .research_copy_block{
	width:100%;
}

#main_contents .main_list_inner .research_area .research_photo_block{
	width:100%;
}

#main_contents .main_list_inner .research_area .research_photo_block img{
	vertical-align:top;
	width:100%;
	height:auto;
}



#main_contents .main_list_inner .research_area .research_copy_block .main_name{
	width:100%;
}




#main_contents .main_list_inner #title_area{
	width:100%;
	margin:0 0 20px 0;
	padding:25px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:nowrap;
	-ms-flex-wrap:nowrap;
	flex-wrap:nowrap;
	
	align-content: center;
	align-items: center;
	
	border-top:solid 1px #fff;
	border-bottom:solid 1px #fff;
}


#main_contents .main_listdetail_inner{
	width:100%;
	padding:0;
	margin:30px 50px 0 0;
	background-color:#fff;
}

#main_contents .main_listdetail_inner #list_link_area {
	margin:0 0 40px 0;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block {
	width:100%;
	margin:0 0 10px 0;
	
	border:solid 1px #ccc;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:nowrap;
	-ms-flex-wrap:nowrap;
	flex-wrap:nowrap;
	
	align-content: center;
	align-items: center;

}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .copy_box {
	display: block;

	font-size:13px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0 0 0 20px;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box {
	width:330px;
	
	display: block;
	margin:20px 0 20px auto;
	padding:8px 45px 8px 0;

	font-size:15px;
	font-weight:500;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:center;
	
	background-color:#f5ebec;
	
	position:relative;
	z-index:2;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_prodcut {
	width:265px;
	margin:20px 0 20px auto;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box::after{
	content: " ";
	display: inline-block;
	width: 24px;
	height: 24px;

	
	background-image: url(/europe/en/common/images/link_arrow_red.svg);
	background-position:center;
	background-size:cover;
	background-repeat:no-repeat;
	position:absolute;
	top:0;
	bottom:0;
	right:20px;
	
	margin:auto;
}

#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box:hover {
	text-decoration:none;
}


#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background-color:rgba(255,255,255,0.7);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .0s;
}
#main_contents .main_listdetail_inner #list_link_area .linkbt_block .bottan_box:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}



/*   detail   */
#main_contents .main_detail_inner{
	width:100%;
	padding:40px 0 0 0;
	background-color:#fff;
}

body[data-pagetype="detail"] #back-img{
	min-height:285px;
	background-image: url(/europe/en/common/back-img/list_factory_top.jpg);
}
#maintitle_area{
	width:100%;
	height:165px;
	
	margin:0 auto;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	align-content: center;
	align-items: center;
}

#maintitle_area h1{
	width:100%;
	
	font-family: 'Noto Serif JP', serif;
	font-size:32px;
	font-weight:500;
	line-height:32px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:0;
	
	background-color:rgba(255,255,255,0.7);
}

#maintitle_area p{
	width:100%;
	
	font-size:14px;
	font-weight:400;
	line-height:46px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	padding:10px 0 0 0;
	
	background-color:rgba(255,255,255,0.7);
}

#main_contents .main_detail_inner #title_area{
	width:100%;
	margin:0 0 20px 0;
	
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
	

}

#main_contents .main_detail_inner #title_area .title_copy_block,
#main_contents .main_detail_inner .spec_area .title_copy_block{
	width:100%;
}

#main_contents .main_detail_inner #title_area .research_title_copy_block{
	width:100%;
}

#main_contents .main_detail_inner #title_area .title_copy_block h2{
	font-size:30px;
	font-weight:900;
	line-height:30px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
	
	
	margin:0 0 25px 0;
	padding:20px 1.0rem;
	
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
}

#main_contents .main_detail_inner #title_area .title_copy_block h2 span{
	font-size:24px;
	letter-spacing: normal; 
	display:block;
}

#main_contents .main_detail_inner #title_area .research_title_copy_block h2{
	width:100%;
	margin:0;
}


#main_contents .main_detail_inner #title_area .title_copy_block ul,
#main_contents .main_detail_inner .spec_area .title_copy_block ul{
	list-style:none;
	padding:0 1.0rem;
}

#main_contents .main_detail_inner #title_area .title_copy_block li,
#main_contents .main_detail_inner .spec_area .title_copy_block li{
	padding:0;
	margin:0 0 10px 0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#e6002d;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner #title_area .title_copy_block li .title_th_box,
#main_contents .main_detail_inner .spec_area .title_copy_block li .title_th_box{
	width:100%;
	display:block;
	vertical-align:top;

}

#main_contents .main_detail_inner #title_area .title_copy_block li .title_td_box,
#main_contents .main_detail_inner .spec_area .title_copy_block li .title_td_box{
	width:100%;
	display:block;

}

#main_contents .main_detail_inner #title_area .title_photo_block{
	width:100%;
	margin:20px 0;
	text-align: center;
}


#main_contents .main_detail_inner #factory_copy_area{
	width:100%;
	margin:0 0 40px 0;
	padding:0 1.0rem;
}

#main_contents .main_detail_inner .spec_area #factory_copy_area{
	width:100%;
	margin:0;
}

#main_contents .main_detail_inner #factory_copy_area ul{
	list-style:none;
	margin:0 0 0 1.3rem;
}

#main_contents .main_detail_inner #factory_copy_area li{
	padding:0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
	

	position: relative;
}

#main_contents .main_detail_inner #factory_copy_area li::before {
	content: "◎";
	padding:0;
	
	display:block;
	position:absolute;
	
	top:0;
	left:-1.7rem;
}


#main_contents .main_detail_inner .spec_area {
	margin:0 0 60px 0;
}

#main_contents .main_detail_inner .spec_area h3 {
	background-color:#dddddd;
	border-left:solid 3px #000;
	
	padding:10px 15px;
	margin:0 0 10px 0;
	
	font-size:18px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.2em;
	text-align:left;
}
#main_contents .main_detail_inner .spec_area h3 span{
	letter-spacing: 0.1em;
	padding:0 0 0 20px;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle{
	list-style:none;
	margin:0 0 15px 1.8rem;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle li{
	padding:0;
	
	font-size:14px;
	font-weight:400;
	line-height:26px;
	color:#000;
	letter-spacing: 0.1em; 
	text-align:left;
	

	position: relative;
}

#main_contents .main_detail_inner .spec_area .list_doublecircle li::after {
	content: "◎";
	padding:0;
	
	display:block;
	position:absolute;
	
	top:0;
	left:-1.7rem;
}

#main_contents .main_detail_inner .spec_area .att_copy{
	font-size:12px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner .spec_area .right_copy{
	text-align:right;
}

#main_contents .main_detail_inner .spec_area p{
	font-size:14px;
	font-weight:400;
	line-height:22px;
	color:#000;
	letter-spacing: 0.05em; 
	text-align:left;
}

#main_contents .main_detail_inner .spec_area p.maU1{
	font-size:16px;
	padding:15px 0;
}

#main_contents .main_detail_inner .spec_area .midashi_copy {
	padding:40px 15px 10px 15px;
	margin:0 0 10px 0;
	
	font-size:18px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	border-bottom:solid 3px #ccc;
	display:inline-block;
}

#main_contents .main_detail_inner .spec_area p.main_copy{
	font-size:15px;
	padding:15px;
}

#main_contents .main_detail_inner .spec_area .spec_1wey_block {
	margin:0 0 15px 0;

}

#main_contents .main_detail_inner .spec_area .spec_1wey_block .specallimage{
	width:100%;
	height:auto;
}



#main_contents .main_detail_inner .spec_area .spec_2wey_block {
	display:-webkit-box;
	display: -webkit-flex;
	display:-ms-flexbox;
	display: flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	
	justify-content: space-between;
}

#main_contents .main_detail_inner .spec_area .spec_2wey_block .half_box{
	width: 100%;
}

#main_contents .main_detail_inner .spec_area .spec_2wey_block .spec240image{
	width:240px;
	height:auto;

}

#main_contents .main_detail_inner .spec_area table{
	border:solid 1px #ccc;
	border-collapse: collapse;
}

#main_contents .main_detail_inner .spec_area table + table{
	margin:30px 0 0 0;
}

#main_contents .main_detail_inner .spec_area th,
#main_contents .main_detail_inner .spec_area td{
	border:none 1px #ccc;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.1em;
	text-align:left;
	
	display:block;
}

#main_contents .main_detail_inner .spec_area th{
	padding:10px;
	background-color:#f2f2f2;
	
	width:100%;
}

#main_contents .main_detail_inner .spec_area td{
	border:none 1px #ccc;
	padding:10px 10px 20px 10px;
	width:100%;
}

#main_contents .main_detail_inner .spec_area td hr{
	border: dotted 1px #ccc;
	margin:15px 0;

}


#main_contents .main_detail_inner .spec_area .table_smartphone::-webkit-scrollbar{ /* スクロールバー全体 */
	width: 5px;
	height:5px;
}

#main_contents .main_detail_inner .spec_area .table_smartphone::-webkit-scrollbar-thumb{
	background: #555;
	border-radius: 5px;
}
#main_contents .main_detail_inner .spec_area .table_smartphone::-webkit-scrollbar-track-piece:start{
	background: #ddd;
}
#main_contents .main_detail_inner .spec_area .table_smartphone::-webkit-scrollbar-track-piece:end{
	background: #ddd;
}
#main_contents .main_detail_inner .spec_area .table_smartphone::-webkit-scrollbar-track{
	background: #ddd;
}

#main_contents .main_detail_inner .spec_area .table_smartphone table::-webkit-scrollbar{ /* スクロールバー全体 */
	width: 5px;
	height:5px;
}

#main_contents .main_detail_inner .spec_area .table_smartphone table::-webkit-scrollbar-thumb{
	background: #555;
	border-radius: 5px;
}
#main_contents .main_detail_inner .spec_area .table_smartphone table::-webkit-scrollbar-track-piece:start{
	background: #ddd;
}
#main_contents .main_detail_inner .spec_area .table_smartphone table::-webkit-scrollbar-track-piece:end{
	background: #ddd;
}
#main_contents .main_detail_inner .spec_area .table_smartphone table::-webkit-scrollbar-track{
	background: #ddd;
}

#main_contents .main_detail_inner .spec_area .table_smartphone table{
	width:100%;
	height:auto;
	padding:0;
	display: block;
	position: relative;
	overflow-x: auto;
	white-space: nowrap;
}


#main_contents .main_detail_inner .spec_area .table_smartphone table{
	border:solid 1px #ccc;
	border-collapse: collapse;
}

#main_contents .main_detail_inner .spec_area .table_smartphone th,
#main_contents .main_detail_inner .spec_area .table_smartphone td{
	border:solid 1px #ccc;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	display:table-cell;
}

#main_contents .main_detail_inner .spec_area .table_smartphone th{
	padding:10px;
	background-color:#f2f2f2;
}

#main_contents .main_detail_inner .spec_area .table_smartphone td{
	border:solid 1px #ccc;
	padding:10px 10px 10px 20px;
}

#main_contents .main_detail_inner .spec_area .table_smartphone td.subtitle_part{
	background-color:#ddd;
	padding:5px;
	text-align:center;
}


#menu_contents{
	width:100%;
	padding:0;
	
	background-color:#f8f8f8;
	border:solid 1px #d8d8d8;
	
	position: relative;
}

#menu_contents #menu_contents_inner{
	width:calc(100% - 2px);
	position: relative;
}

#menu_contents .sub_menu{
	width:100%;
}

#menu_contents .sub_menu .menu_are{
	width:100%;
	border-bottom:solid 1px #d8d8d8;
	display:none;
}

#menu_contents .sub_menu .menu_are.index_block{
	display:block;
	background-color:rgba(255,255,255,1.0);
}

#menu_contents .sub_menu .menu_are a{
	width:100%;
	display:block;
	
	padding:15px 1rem;
	
	font-size:14px;
	font-weight:400;
	line-height:20px;
	color:#000;
	letter-spacing: 0.05em;
	text-align:left;
	
	position:relative;
	z-index:2;
}


#menu_contents .sub_menu .menu_are a:hover {
	text-decoration:none;
}

#menu_contents .sub_menu .menu_are a.active{
	color:#e6002d;
	border-left:solid 1px #e6002d;
}

#menu_contents .sub_menu .menu_are a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background-color:rgba(250,227,227,1.0);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .0s;
}
#menu_contents .sub_menu .menu_are a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

#menu_contents .sub_menu .menu_are .promenu_block {
	list-style:none;
	display:none;
}

#menu_contents .sub_menu .menu_are .promenu_block li {
	border-bottom:solid 1px #d8d8d8;
}

#menu_contents .sub_menu .menu_are .promenu_block a{
	padding:15px 2rem;
	
	color:#515151;
	letter-spacing: 0.05em;
	
	background-color:rgba(253,244,244,1.0) !important;
}

#menu_contents .sub_menu .menu_are .promenu_block a.active{
	color:#515151;
	border-left:none 1px #e6002d;
	background-color:rgba(250,227,227,1.0) !important;
}


}

