
/* ----------------------------------------------------------------------

 ページレイアウト
	
---------------------------------------------------------------------- */



.bg_color_whi{
width:100%;
padding:20px 0 60px 0;
background-color:#fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.bg_color_whi_l{
width:100%;
padding:110px 0 110px 0;
background-color:#fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.bg_color_gra{
width:100%;
padding:30px 0 55px 0;
background-color:#F4F7FB;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.bg_color_gre{
width:100%;
padding:1px 0 60px 0;
background-color:#FFF9F0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.bg_color_gre_f{
width:100%;
padding:1px 0 60px 0;
background-color:#FFF9F0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}


.bg_color_gly{
width:100%;
padding:1px 0 60px 0;
background-color:#E1E7F5;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}


.table_equipment{
	width:100%;
	margin-top:40px;
	}
.table_equipment th {
 border: solid 1px #ccc;
 background-color: #ED7700;
 color: #fff;
	text-align:left;
	padding:15px 0 15px 30px;
	width:30%
}
.table_equipment td {
 border: solid 1px #ccc;
 background-color: #ffffff;
 color: #000;
	padding:15px 0 15px 30px;
		width:60%
}

.table_equipment td.units{
	text-align:center;
	padding:15px 0 15px 0;
		width:10%
	}

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {


.table_equipment th, .table_equipment td  {
    display: block;
				text-align:center;
  }
		
	.table_equipment{
	width:100%;
	margin-top:20px;
	}
.table_equipment th {
 border: solid 1px #ccc;
 background-color: #ED7700;
 color: #fff;
	text-align:left;
	padding:15px 0 15px 30px;
	width:100%;
	margin-top:15px;
	border-bottom:none;
}
.table_equipment td {
 border: solid 1px #999;
 background-color: #ffffff;
 color: #000;
	padding:15px 0 15px 30px;
		width:80%;
		text-align:left;
		float:left;
}

.table_equipment td.units{
	text-align:center;
	padding:15px 0 15px 0;
		width:20%;
		border-left:none;
	}	
		
		
}

.design_content{
	/*width:1060px;*/
	width:100%;
	max-width: 1080px;
	margin:0 auto;
	padding-top:1px;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
padding-bottom:10px;
	}
	
	.hierarchy_content{
	/*width:1060px;*/
	width:100%;
	max-width: 1080px;
	margin:0 auto;
	margin-top:110px;
	padding-top:1px;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	}
	
	
	
	
	
.design_content_wide{
	/*width:1060px;*/
	width:100%;
	padding-top:1px;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	}


.design_content_spw{
	/*width:1060px;*/
		width:100%;
	max-width: 1080px;
	margin:0 auto;
	padding-top:1px;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	}
	
	
.sub_content{
	width:1080px;
	margin:0 auto;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	}
	



.disp_pc{
	display:block!important;
	}
.disp_sp{
	display:none!important;
	}

.pc_br{
	display:inline-block!important;
	}
.sp_br{
	display:none!important;
	}
	
.ht40{
	display:block;
	height:40px;
	}
	
.txt_c{
	text-align:center!important;
	}
.txt_l{
	text-align:left!important;
	}
	.txt_r{
		text-align:right!important;

	}
	
.txt_lh{
	line-height:180%!important;
	}
	.txt_gree{
	color:#2BA739!important;
	}
	
.txt_gree_b{
	color:#2BA739!important;
	font-weight:600;
	}
.txt_bo{
	font-weight:600!important;
	}
	.txt_large {
		font-size:1.1rem;
	}
.txt_emp{
	font-family: "SF Pro JP", "SF Pro Text", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
	}
.txt_s{
	font-size:0.95rem!important;
	line-height:120%!important;
	}
.bg_home_top{
	display:block;
	height:190px;
	z-index:999;
	margin-top:0px;
}

.first_hd{
	margin-top:40px!important;
	}

.under_blu {
	display:inline-block;
	padding-top:4px;
border-bottom: dashed 1px #0A93E4;
/*background: linear-gradient(transparent 50%, #a8eaff 50%);*/
}

.marker_blu {
background: linear-gradient(transparent 30%, #21ff00 30%);
}



.mt5{
	margin-top:5px!important;
	}
.mt10{
	margin-top:10px!important;
	}
.mt15{
	margin-top:15px!important;
	}
.mt20{
	margin-top:20px!important;
	}
.mt30{
	margin-top:30px!important;
	}
.mt40{
	margin-top:40px!important;
	}
.mt50{
	margin-top:50px!important;
	}
.mt60{
	margin-top:60px!important;
	}
.mt70{
	margin-top:70px!important;
	}
.mt80{
	margin-top:80px!important;
	}
.mt90{
	margin-top:90px!important;
	}
.mt100{
	margin-top:100px!important;
	}
	.mt120{
	margin-top:120px!important;
	}
	.mt140{
	margin-top:134px!important;
	}
.mb0{
	margin-bottom:0px!important;
	}
.mb40{
	margin-bottom:40px!important;
	}
.pc_mb40{
	margin-bottom:40px!important;
	}

@media screen and (max-width:800px){
.bg_home_top {
    display: block;
    height: 96px;
    z-index: 999;
    margin-top: 0px;
}
}

/*■■■トップスライダーHeigh■■■t*/

@media screen and (min-width:1222px){

div#n2-ss-1 .n2-ss-slider-2 {
height: 730px;
    
}
}

@media screen and (max-width:1221px) {

div#n2-ss-1 .n2-ss-slider-2 {
height: 680px;
    
}
}


@media screen and (max-width:800px){

div#n2-ss-1 .n2-ss-slider-2 {
height: 660px;
    
}
}

body { font-size:16px; padding-top:0.01rem;}
.single_title { font-size:28px; }
#page_header .catch, #page_header_small .catch { font-size:34px; }
.common_catch, .cb_free_space .post_content h2:not(.styled_h2) { font-size:32px !important; }
@media screen and (max-width:1221px) {
.common_catch,  .cb_free_space .post_content h2:not(.styled_h2) { font-size:26px  !important; }
#page_header .catch, #page_header_small .catch { font-size:28px; }
}
@media screen and (max-width:800px) {
body { font-size:16px; }
#page_header .catch, #page_header_small .catch { font-size:22px; }
.single_title { font-size:20px; }
.common_catch,  .cb_free_space .post_content h2:not(.styled_h2) { font-size:20px !important; }
}
.logo_text { font-size:20px; }
@media screen and (max-width:1201px) {
.logo_text { font-size:18px; }

.design_content{
	padding-left:20px;
	padding-right:20px;
	}
.design_content_f{
	padding-left:20px;
	padding-right:20px;
	}

}
.author_profile .avatar_area img, .animate_image img, .animate_background .image {
width:100%; height:auto; will-change:transform;
-webkit-transition: transform  0.5s ease;
transition: transform  0.5s ease;
}
.author_profile a.avatar:hover img, .animate_image:hover img, .animate_background:hover .image {
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
a { color:#000; }
:root {
--tcd-accent-color:147,121,96;
}
#comment_tab li.active a, .widget_tab_post_list_button div.active, #wp-calendar tbody a, .widget_categories a:before, #single_post_category, #header_slider_wrap .slick-dots .slick-active button::before, #side_icon_button a.no_icon, #drawer_icon_button .item.long a
{ background-color:#ECFBED; }
.schedule_content table, .schedule_content td, .splide__arrow, #header_slider_wrap .slick-dots button::before, #side_icon_button a.no_icon, #side_icon_button .item:first-of-type a.no_icon, #drawer_icon_button .item.long a
{ border-color:#2AA738; }
#side_icon_button a, #footer_icon_banner a:before, #footer_sns.color_type1 li a:before, #bread_crumb, #bread_crumb li.last, #related_post .headline, .news_category_button li.current a, .schedule_content table, #comments .headline, .splide__arrow:before, #treatment_list .header .catch, #page_contents .content_header .common_catch, #post_pagination p,


#global_menu > ul > li.current-menu-item > a, .megamenu_a .category_list li.active a, #global_menu > ul > li.active_megamenu_button > a, .faq_list .title.active, .page_navi span.current,  #drawer_icon_button .item.long a, .doctor_meta .item.name a:hover
{ color:#2D56A2;/*■■■■■■メガメニュー＾画像 hoverアクションリンクカラー■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
}


.cardlink .title a:hover { color:#6b5138 !important; }
.doctor_meta .pos { background-color:rgba(147,121,96,0.7); }
#global_menu ul ul a:hover { background-color:rgba(147,121,96,0.25); }
#side_icon_button a.no_icon:hover, .splide__arrow:hover, #single_post_category:hover, #p_readmore .button:hover, .c-pw__btn:hover, #comment_tab li a:hover, #submit_comment:hover, #cancel_comment_reply a:hover, #post_tag_list a:hover,  #wp-calendar #prev a:hover, #wp-calendar #next a:hover, #wp-calendar td a:hover, #comment_tab li a:hover, .tcdw_tag_list_widget ol a:hover,
.widget_tag_cloud .tagcloud a:hover, #wp-calendar tbody a:hover, #drawer_menu .menu li.menu-item-has-children > a > .button:hover:after, #drawer_menu .menu li.menu-item-has-children > a > .button:hover:before, #mobile_menu .child_menu_button:hover:after, #mobile_menu .child_menu_button:hover:before, #header_slider_wrap .slick-dots button:hover::before
{ background-color:#6b5138; }
#side_icon_button a.no_icon:hover, .splide__arrow:hover, #comment_textarea textarea:focus, .c-pw__box-input:focus, .tcdw_tag_list_widget ol a:hover, .widget_tag_cloud .tagcloud a:hover, #header_slider_wrap .slick-dots button:hover::before, #side_icon_button .item:first-of-type a.no_icon:hover
{ border-color:#6b5138; }
a:hover, #header_logo a:hover, #drawer_menu .menu ul ul a:hover, #drawer_menu .menu li > a:hover > span:after, #drawer_menu .menu li.active > a > .button:after, #featured_post a:hover, #drawer_menu .close_button:hover:before, #drawer_menu_search .button_area:hover:before, #drawer_lang_button li a:hover, .megamenu_b .splide__arrow:hover:before, #related_post .meta .news_category:hover,
#header.active #header_search_button:hover:before, #global_menu > ul > li > a:hover, #global_menu > ul > li.current-menu-parent > a, #global_menu > ul > li.current-menu-ancestor > a, 


#drawer_icon_button a:before{
	color:#2D56A2;
	}

#drawer_icon_button a{
		color:#2D56A2;
	}

#header_search_button:hover:before, #header_search .button:hover label:before, .single_post_nav:hover span:after, .faq_list .title:hover,
#drawer_menu .menu a:hover, #drawer_menu .menu > ul > li.active > a, #drawer_menu .menu > ul > li.current-menu-item > a, #drawer_menu .menu > li > a > .title:hover, .cb_news_list .news_category_sort_button li.active span, .cb_news_list .news_category_sort_button li:hover span, #searchform .submit_button:hover:before, #footer_social_link li a:hover:before, #next_prev_post a:hover, .tcdw_search_box_widget .search_area .search_button:hover:before,
#single_author_title_area .author_link li a:hover:before, .author_profile a:hover, #post_meta_bottom a:hover, .cardlink_title a:hover, .comment a:hover, .comment_form_wrapper a:hover, #tcd_toc.styled .toc_link:hover, .tcd_toc_widget.no_underline .toc_widget_wrap.styled .toc_link:hover, #news_list .category:hover, #single_post_title .meta .news_category:hover, #treatment_list .post_list a:hover, .mega_treatment_category a:hover .title
{
	color:#2D56A2;
	}

/*■■スマホテキストホバーカラー■■*/


#archive_blog, .breadcrumb_type2 #bread_crumb, .cb_carousel, .cb_free_space:before, #treatment_list, #mobile_menu li li a, #mobile_menu li ul, body.single-post #main_content, #page_contents .color_bg_content::before, .cb_two_column{

}


.post_content a, .widget_block a, .textwidget a, #no_post a, #page_404_header .desc a { color:#2AA738; }
.widget_block a:hover, .textwidget a:hover, #no_post a:hover, #page_404_header .desc a:hover { color:#ED7700; }

.styled_h2 {
font-size:28px!important;
text-align:center!important;
font-weight:600!important;
color:#000000;
border-color:#000000;
border-width:1px;
border-style:solid;
border-left:none;
border-right:none;
border-top:none;
border-bottom:none;
background-color:transparent;
}
@media screen and (max-width:800px) {
.styled_h2 { font-size:22px!important; }
}
.styled_h3 {
font-size:22px!important;
text-align:left!important;
font-weight:600!important;
color:#000000;
border-color:#000000;
border-width:2px;
border-style:solid;
padding-left:1em!important;
padding-top:0.5em!important;
padding-bottom:0.5em!important;
border-right:none;
border-top:none;
border-bottom:none;
background-color:transparent;
}
@media screen and (max-width:800px) {
.styled_h3 { font-size:20px!important; }
}
.styled_h4 {
font-size:22px!important;
text-align:left!important;
font-weight:400!important;
color:#000000;
border-color:#000000;
border-width:1px;
border-style:dotted;
border-left:none;
border-right:none;
border-top:none;
padding-bottom:0.8em!important;
background-color:transparent;

}
@media screen and (max-width:800px) {
.styled_h4 { font-size:18px!important; }
}
.styled_h5 {
font-size:20px!important;
text-align:left!important;
font-weight:400!important;
color:#000000;
border-color:#000000;
border-width:3px;
border-style:double;
border-left:none;
border-right:none;
border-top:none;
border-bottom:none;
background-color:#f2f2f2;
padding:0.8em 1em!important;
}
@media screen and (max-width:800px) {
.styled_h5 { font-size:16px!important; }
}
.q_custom_button1 { width:130px; height:40px; line-height:40px;border-radius:0px;color:#849bcc !important; border-color:#849bcc; }
.q_custom_button1:before { background-color:#849bcc;opacity:0; }
.q_custom_button1:hover { color:#fff !important; border-color:#849bcc; }
.q_custom_button1:hover:before { opacity:1; }
@media (max-width: 1200px) {
.q_custom_button1 { width:130px; }
}
@media (max-width: 800px) {
.q_custom_button1 { width:130px; }
}
.q_custom_button2 { width:280px; height:60px; line-height:60px;border-radius:0px;color:#2AA738 !important; border-color:#2AA738; }
.q_custom_button2:before { background-color:#7c6552;opacity:0; }
.q_custom_button2:hover { color:#fff !important; border-color:#7c6552; }
.q_custom_button2:hover:before { opacity:1; }
@media (max-width: 1200px) {
.q_custom_button2 { width:260px; }
}
@media (max-width: 800px) {
.q_custom_button2 { width:240px; height:50px; line-height:50px; }
}
.q_custom_button3 { width:400px; height:70px; line-height:70px;border-radius:0px;color:#fff !important; border-color:#000; }
.q_custom_button3:before { background-color:#000;opacity:1; }
.q_custom_button3:hover { color:#333 !important; border-color:#333; }
.q_custom_button3:hover:before { opacity:0; }
@media (max-width: 1200px) {
.q_custom_button3 { width:400px; }
}
@media (max-width: 800px) {
.q_custom_button3 { width:400px; }
}
.q_frame1 {
background:#ffffff;
border-radius:10px;
border-width:5px;
border-color:#afafaf;
border-style:double;
}
.q_frame1 .q_frame_label {
color:#000000;
}
.q_frame2 {
background:#ffffff;
border-radius:0px;
border-width:2px;
border-color:#000000;
border-style:dotted;
}
.q_frame2 .q_frame_label {
color:#000000;
}
.q_frame3 {
background:#ffffff;
border-radius:10px;
border-width:1px;
border-color:#f9b42d;
border-style:solid;
}
.q_frame3 .q_frame_label {
color:#f9b42d;
}
.q_underline1 {
font-weight:600;
background-image: -webkit-linear-gradient(left, transparent 50%, #fff799 50%);
background-image: -moz-linear-gradient(left, transparent 50%, #fff799 50%);
background-image: linear-gradient(to right, transparent 50%, #fff799 50%);
}
.q_underline2 {
font-weight:600;
background-image: -webkit-linear-gradient(left, transparent 50%, #99f9ff 50%);
background-image: -moz-linear-gradient(left, transparent 50%, #99f9ff 50%);
background-image: linear-gradient(to right, transparent 50%, #99f9ff 50%);
}
.q_underline3 {
font-weight:600;
background-image: -webkit-linear-gradient(left, transparent 50%, #ff99b8 50%);
background-image: -moz-linear-gradient(left, transparent 50%, #ff99b8 50%);
background-image: linear-gradient(to right, transparent 50%, #ff99b8 50%);
}
.speech_balloon1 .speech_balloon_text_inner {
color:#000000;
background-color:#ffeded;
border-color:#ffeded;
}
.speech_balloon1 .before { border-left-color:#ffeded; }
.speech_balloon1 .after { border-right-color:#ffeded; }
.speech_balloon2 .speech_balloon_text_inner {
color:#000000;
background-color:#ffffff;
border-color:#ff5353;
}
.speech_balloon2 .before { border-left-color:#ff5353; }
.speech_balloon2 .after { border-right-color:#ffffff; }
.speech_balloon3 .speech_balloon_text_inner {
color:#000000;
background-color:#f4f1ef;
border-color:#f4f1ef;
}
.speech_balloon3 .before { border-left-color:#f4f1ef; }
.speech_balloon3 .after { border-right-color:#f4f1ef; }
.speech_balloon4 .speech_balloon_text_inner {
color:#000000;
background-color:#ffffff;
border-color:#0789b5;
}
.speech_balloon4 .before { border-left-color:#0789b5; }
.speech_balloon4 .after { border-right-color:#ffffff; }
.qt_google_map .pb_googlemap_custom-overlay-inner { background:#2AA738; color:#ffffff; }
.qt_google_map .pb_googlemap_custom-overlay-inner::after { border-color:#2AA738 transparent transparent transparent; }</style><style id="current-page-style" type="text/css">#header_slider .item1 .overlay { background-color:rgba(0,76,102,0.2); }
#header_slider .item1 .catch { font-size:34px !important; }
@media screen and (max-width:1221px) {
#header_slider .item1 .catch { font-size:29px !important; }
}
@media screen and (max-width:800px) {
#header_slider .item1 .catch { font-size:24px !important; }
}
#header_slider .item2 .overlay { background-color:rgba(0,44,71,0.2); }
#header_slider .item2 .catch { font-size:34px !important; }
@media screen and (max-width:1221px) {
#header_slider .item2 .catch { font-size:29px !important; }
}
@media screen and (max-width:800px) {
#header_slider .item2 .catch { font-size:24px !important; }
}
#header_slider .item3 .overlay { background-color:rgba(35,22,0,0.2); }
#header_slider .item3 .catch { font-size:34px !important; }
@media screen and (max-width:1221px) {
#header_slider .item3 .catch { font-size:29px !important; }
}
@media screen and (max-width:800px) {
#header_slider .item3 .catch { font-size:24px !important; }
}
/** Page Custom CSS**/ 
.test { color:red; }


/**/


/*
.home_cachi{
	margin-top:0px;
	}


.swiper-container {
	height:500px!important;
}
*/


.swiper-wrapper .swiper-slide-1 video{
width: 100%!important;
height: 100%!important;
}

.content_mt{
margin-top:50px;
}
.content_mt_l{
margin-top:100px;
}

.txtl_catch {
padding: 0 !important;
margin-top: 50px;
text-align:center;
font-weight: 400;
font-size: 1.6rem;
line-height: 1.4;
font-feature-settings: "palt";
/*border-bottom:solid 1px #999;*/
}

.txtl_catch2 {
margin-top: 30px;
text-align:center;
font-weight: 300;
font-size: 1.5rem;
line-height: 150%;
  position: relative;
padding-bottom: 0.5em;
}

.txtl_catch2::after {
  content: '';
  background-color:#2D56A2;
  width: 4em;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}


.hierarchy_content p{
	line-height:170%;
	}


.txtl_catch_line {

margin-top: 50px;
text-align:center;
font-weight: 600;
font-size: 1.6rem;
line-height: 1.4;
font-feature-settings: "palt";
padding-bottom:50px;
}

.txtl_catch_line:before {
content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
    width: 1px;
    height: 45px;
    margin: auto;
    background-color: #000;
}


.txtl_catch i{
	display:block;
font-weight:200;
margin-top:0px;
margin-left:0;
padding-left:0;
font-size:1.3rem;
font-weight:600;
line-height:140%;
font-style:normal;
text-align:left;
font-feature-settings: "palt";
padding-bottom:10px;
}

.txtl_catch_c {
padding: 0 !important;
margin-top:32px;
font-weight:600;
font-size:2.2rem;
line-height:1.5;
text-align:center;
}



.txtl_catch_c i{
	display:block;
font-weight:200;
margin-top:4px;
font-size:0.8rem;
line-height:1;
font-style:normal;
text-align:center;
margin-top:20px;
}




.txtl_topcs_catch_c {
padding: 0 !important;
margin-top:40px;
font-weight:600;
font-size:2.2rem;
line-height:1.2;
text-align:center;
}



.txtl_topcs_catch_c i{
	display:block;
font-weight:600;
margin-top:4px;
font-size:1.2rem;
line-height:1;
font-style:normal;
text-align:center;
}


.txtl_catch_access {
padding: 0 !important;
margin-top:40px;
font-weight:600;
font-size:2.2rem;
line-height:1.5;
text-align:center;
}




.main_explanation{
	margin-top:5px;
	}
.main_explanation_l{
	margin-top:14px;
	}
.main_explanation_c{
	margin-top:35px;
	text-align:center;
	line-height:140%;
	}



/**/

.table_manufacturing {
  border-collapse: collapse;
  width: 100%;
  font-weight: bold;
		margin-top:40px;
}
.table_manufacturing thead th {
  padding: 1em .8em;
  border-right: 2px solid#fff;
}
.table_manufacturing td {
   padding: 1rem;
}
.table_manufacturing thead th:not(:first-child) {
  background: #2D56A2;
  color: #fff;
  font-size: 1rem;
  padding:1rem;

}
.table_manufacturing thead th span {
  font-size: .8rem;
}
.table_manufacturing thead th:nth-child(3) {
  background-color: #1E3868;
  position: relative;
}

.table_manufacturing tbody th, .table_manufacturing tbody td {
  border: 2px solid #fff;
}
.table_manufacturing tbody th {
  background-color: #777;
  color: #fff;
		width: 18%;
}
.table_manufacturing tbody th.pattern{
  background-color: #777;
  color: #fff;
			 background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAAXNSR0IArs4c6QAAAB1JREFUGFdjZMADGKkjuXf33v/Ors5w06hkLLrjAJbWBAiT+2hnAAAAAElFTkSuQmCC"),url("https://drive.google.com/uc?export=view&id=1D8WqoRgWao_Ac_xUh9cAmozt6JBE0LUx");
}


.table_manufacturing tbody td {
  background-color: #e6f1f6;
	width: 41%;

}

.table_manufacturing tbody td.pattern{
	 background-color: #e6f1f6;
		 background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAAXNSR0IArs4c6QAAAB1JREFUGFdjZMADGKkj2VDb8L+huQFuGpWMRXccAJP2BAhVSrd7AAAAAElFTkSuQmCC"),url("https://drive.google.com/uc?export=view&id=1D8WqoRgWao_Ac_xUh9cAmozt6JBE0LUx");
	}

.table_manufacturing td:nth-child(3) {
  background: #D7E9F0;
			width: 41%;
}

.table_manufacturing td.pattern:nth-child(3) {
  background: #D7E9F0;
			width: 41%;
					 background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAAXNSR0IArs4c6QAAAB1JREFUGFdjZMADGKkj2VDb8L+huQFuGpWMRXccAJP2BAhVSrd7AAAAAElFTkSuQmCC"),url("https://drive.google.com/uc?export=view&id=1D8WqoRgWao_Ac_xUh9cAmozt6JBE0LUx");
}


/*
.table_manufacturing td:hover {
    transform: scale(1.05);
    outline: 2px solid #4d9bc1;
}

.table_manufacturing td:nth-child(3):hover {
    transform: scale(1.05);
    outline: 2px solid #f88400;
}
*/
@media screen and (max-width: 787px) {
  .table-scroll {
    overflow-x: auto;
  }
}


	/*
.main_had_box{
	width:100%;
	text-align:center;
	}



h2.main_had{
position: relative;
  display: inline-block;
  padding: 0 55px;
		font-size:2.2rem;
		font-weight:600;
		font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
		color:#004A82;
		text-align:center;
		margin-top:30px;
}
h2.main_had:before, h2.main_had:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 2px;
  background-color: #999;
}

h2.main_had:before {
  left:0;
}
h2.main_had:after {
  right: 0;
}
*/


h2.main_had{
position: relative;
margin-top:60px;
margin-bottom:10px;
padding-bottom: 0.9rem;
border-bottom: 1px solid #999;
color:#2D56A2;
font-weight: 600;
font-size: 1.9rem;
text-align: center;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
letter-spacing: 0.05em;
}





h2.main_had_gly{
position: relative;
margin-top:80px;
margin-bottom:30px;
padding-bottom: 0.9rem;
border-bottom: 2px solid #999;
color:#4F9630;
font-weight: 600;
font-size: 1.9rem;
text-align: center;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
letter-spacing: 0.05em;
}

.txt_colr_gre {
    color: #2D56A2 !important;
}



/**/


.main_had_sub {
	display:inline-block;
    position: relative;
    padding: 0.9rem 0;
 	font-size:1.2rem;
		font-weight:400;
	text-align:center;
	line-height:160%;
	z-index: 2;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
/*
.main_had_sub::before {
    position: absolute;
    left: -5px;
    bottom: 7px;
    width: 100%;
    height: 6px;
    transform: skew(-45deg);
    background-image: repeating-linear-gradient(90deg, transparent 0 5px, #C2DBEE 5px 10px);
    content: '';
    z-index: 1;
}
*/

.main_had_sub_blu {
	display:inline-block;
    position: relative;
    padding: 0.7rem 0;
 	font-size:1.3rem;
	text-align:center;
	line-height:180%;
	color:#001E33;
	font-weight:500;
	z-index: 2;
}



.main_had_dots {
    color: #59AB36;
    font-size: 1.6rem;
				line-height:120%;
				text-align:center;
				margin-top:60px;
    padding: 10px 30px;
    display: block;
    border-bottom: 2px dashed #59AB36;
    position: relative;
}

.main_had_dots:before {
    content: "";
    display: block;
    position: absolute;
    bottom: -9px;
    left: 0;
    width: 15px;
    height: 15px;
    background: #59AB36;
    border-radius: 50%;
}

.main_had_dots:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -9px;
    right: 0;
    width: 15px;
    height: 15px;
    background: #59AB36;
    border-radius: 50%;
}


.main_had_blk{
	font-size:1.6rem;
	color:#fff;
	font-weight:500;
	text-align:center;
	padding:18px 0 14px 0;
	background-color:#404041;
	border-bottom:solid 5px #2D56A2;
	margin-top:60px;	
	}

.main_production{
	font-size:1.6rem;
	font-weight:600;
	text-align:center;
	margin-top:60px;
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        }
	}



.txt_colr_gre{
	color:#5CB531!important;
	}


.design_content .desc {
	line-height:2;
	margin-top:32px;

	font-size:1rem;
	}

.design_content .desc img{
	width:100%;
	height:auto;
}


.design_content .link_button, .design_content_f .link_button {
    margin: 0 auto;
    margin-top: 40px;
    width: 370px;
    text-align: center;
				padding:0;
}

.link_button, .design_content_f .link_button {
margin:0 auto;
margin-top:40px;
width:350px;
text-align: center;
}





.shaft_box_r .link_button {
margin:0 auto;
margin-top:80px;
width:350px;
text-align: center;
}

.design_button {
display: inline-block;
width: 100%;
color: #2D56A2;
background: #fff;
border: 1px solid #2D56A2;
padding: 0.8em 0.4em;
font-weight: 900;
text-decoration: none;
transition: 0.3s;
text-align: center;
font-size: 1.05rem;
line-height: 140%;
position: relative;
}
.design_button:hover {
color: #fff;
background: #2D56A2;
}



.main_towbox {
width: 100%;
display: flex;
margin-top:80px;
margin-bottom:40px;
}
.main_towbox02 {
width: 100%;
display: flex;
margin-top:50px;
margin-bottom:40px;
}

.main_towbox03 {
width: 100%;
display: flex;
margin-top:50px;
margin-bottom:40px;
}

.main_towbox04 {
width: 100%;
display: flex;
margin-top:60px;
margin-bottom:40px;
}

.main_towbox02 p{
	line-height:180%;
	}
.main_towbox div{
	width:50%;
	padding: 0px 0px 0px 0px;
	}
	
.main_towbox div.home_business_box{
	padding-right:7%;
	position: relative;
	}
.main_towbox img{
width: 100%;
height:auto;
}
.main_towbox div.home_business_box p{
	display:none;

}

.main_towbox div h3{
	font-size:1.4rem;
	font-weight:600;
	text-align:center;
	line-height:140%;
	margin:15px 0 15px 0;
	}
.main_towbox div p{

	line-height:180%;
	}


.main_towbox02 .about_l{
width: 57%;
padding:0!important;
}
.main_towbox02 .about_r{
width: 43%;
}
.main_towbox02 .about_l p{
	text-align:left;
	}
.main_towbox02 .about_r img{
width: 100%;
padding-left:40px;
height:auto;
}


.main_towbox03 .base_map_l{
width: 50%;
padding: 0 20px 0 0;
}
.main_towbox03 .base_map_r{
width: 50%;
padding-left:30px;
}
.main_towbox03 .base_map_l img{
	width:100%;
	height:auto;
	}

.main_towbox03 .base_map_r h4{
	font-size:1.15rem;
	line-height:160%;
	
}
.main_towbox03 .base_map_r p{
	text-align:left;
	margin-top:15px;
	line-height:160%;
}



.main_towbox03 .base_map_r h4 {
font-size: 1rem;
text-align:center;
line-height: 160%;
}


.main_towbox02 .about_l p.director{
	display:block;
	width:100%;
	text-align:right;
	margin-top:10px;
	padding-right:10px;
	}


.permit_box{
		overflow:auto;
			margin-top:-50px;
	}
.permit {

	float:right;
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 30%;
}
.permit_item {
width: calc(100% / 2 - 10px);

}
.permit_item img{
width:100%;
height:auto;
border:solid 1px #ccc;
}




.locations_list{
	width:100%;
	}

.locations_list h2.map_office{
	font-size:1.03rem;
	color:#254685;
	margin:30px 0 5px 0;
	}
	
.locations_list h2.map_base{
	font-size:1.03rem;
	color:#EC5F00;
		margin:15px 0 5px 0;
	}
	
.locations_list ul{
	list-style-position: inside;
	overflow:hidden;
list-style-type: disc;

	}
	
	
	.locations_list ul li{
		float:left;
			margin:10px 40px 5px 0px;
			padding-left:0px;
			line-height:100%;
			font-size:1rem;
	}
	
	.locations_list ul.base_list li{
		width:40%;
		font-size:1rem;
		}
	


.oem_flow{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 30px 0;
padding-top: 30px;
	}

.oem_flow .item{
width: calc(100% / 5 - 14px);
margin-bottom: 17px;
padding: 10px 0px 10px 0px;
text-align: center;
background-color:#7A9BC5;
border-radius: 10px;
position:relative;
	}

.oem_flow .item_st{
	width: calc(100% / 5 - 14px);
margin-bottom: 17px;
padding: 10px 0px 10px 0px;
text-align: center;
border-radius: 10px;
background-color:#C9BC9C;
position:relative;
	}


.oem_flow .item::after, .oem_flow .item_st::after{
content: "";
position: absolute;
top: 50%;
right:-29px;
transform: translateY(-50%);   /* 縦軸をセンタリングする */  
border: 13px solid transparent;
border-left: 12px solid #EEC500;   /* 好みで色を変えてください */  
}

.oem_flow .item_st:last-child::after{
	display:none;
}

.oem_flow .item:nth-child(5)::after{
	display:none;
}



.oem_flow .item .oem_flow_img{
	width:66%;
	margin:0 auto;
	padding:10px 0 20px 0;
	text-align:center;
	}
.oem_flow .item .oem_flow_img img{
		width:100%;
		height:auto;
	}
.oem_flow .item h2{
	width:100%;
	background-color:#193C7A;
		padding:10px 16px 10px 0px;
	color:#fff;
	font-size:1.1rem;
	}
	
	
	
.oem_flow .item_st .oem_flow_img{
	width:76%;
	margin:0 auto;
	padding:85px 0 20px 0;
	text-align:center;
	}
.oem_flow .item_st .oem_flow_img img{
		width:100%;
		height:auto;
	}
.oem_flow .item_st h2{
	width:100%;
	background-color:inherit;
		padding:10px 0px 10px 0px;
	color:#fff;
	font-size:1.45rem;
	}
	
	
	
	
.oem_flow .item ul {
	width:100%;
	margin-top:14px;
	margin-left:10px;
	}
.oem_flow .item ul li{
list-style: none;
line-height: 140%;
font-size:0.95rem;
font-weight:600;
letter-spacing: -0.06em;
text-align:left;
margin: 3px 0px 3px 0px;
	    margin-left: 0px;
				padding-left:10px;
width: 100%;
color:#fff;
padding-left:1em;
		text-indent:-1em;
}
.oem_flow .item ul li:before {
color:#fff;
content: "●︎";
margin-right:3px;
}



.oem_title{
margin-top:60px;
text-align:center;
}

.oem_title .bg_line {
width: 100%;
height: 1px;
border: none;
background: #3667C2;

}

.oem_title .nomber {
text-align: center;
background: #fff;
font-size: 2.7rem;
height: 40px;
line-height: 1;
font-weight: bold !important;
width: 140px;
margin: -46px auto .8em;

}
.oem_title .nomber em {
font-weight: bold;
font-style:normal;
color:#3667C2;
font-family: "Helvetica Neue", Helvetica, "Roboto", "NotoSansCJKjp-Jxck", "Noto Sans CJK JP", "Noto Sans", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif!important;
}

.oem_title .nomber .under_line {
width: 32px;
height: 2px;
margin: .2em auto;
border: none;
background: #3667C2;
}

.oem_title p {
font-size: 1rem;
color: #3667C2;
letter-spacing: 0.1em;
line-height: 2;
}
.oem_title h3 {
font-size:1.3rem;
font-weight:400;
color: #111;
letter-spacing: 0.1em;
margin-bottom: .6em;
}




/**/
.case_title{
margin-top:60px;
text-align:center;
}

.case_title .bg_line {
width: 100%;
height: 1px;
border: none;
background: #3667C2;

}

.case_title .nomber {
text-align: center;
background: #fff;
font-size: 1.6rem;
height: 30px;
line-height: 1;
font-weight: bold !important;
width: 140px;
margin: -32px auto .8em;

}
.case_title .nomber em {
font-weight: bold;
font-style:normal;
color:#3667C2;
font-family: "Helvetica Neue", Helvetica, "Roboto", "NotoSansCJKjp-Jxck", "Noto Sans CJK JP", "Noto Sans", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif!important;
}

.case_title .nomber .under_line {
width: 32px;
height: 2px;
margin: .4em auto;
border: none;
background: #3667C2;
}

.case_title p {
font-size: 1rem;
color: #3667C2;
letter-spacing: 0.1em;
line-height: 2;
}
.case_title h3 {
font-size:1.3rem;
font-weight:400;
color: #111;
letter-spacing: 0.1em;
margin-bottom: .6em;
}


.case_flow_l{
width: 25%;
padding: 0;
text-align:left;
}
.case_flow_r{
width: 75%;
padding-top:18px;
padding-right:20px;
overflow:hidden;
}
.case_flow_r h3{
	font-size:1.4rem;
	font-weight:400;
}
.case_flow_r p{
	margin-top:15px;
}

.case_flow_l img {
width: 60%;
height: auto;

}


.topic_area{
	padding:0 20px 0 20px;
		}
.topics_list {
    margin-top: 20px;
    line-height: 160%;
}
.topic_content{
	margin-top:20px;
	padding-top:50px;
	border-top:solid 1px #ccc;

	}


/**/








.strengths_box {
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
padding-top: 20px;
}

.oem_flow_f{
	margin-top:90px;
	}

.oem_flow_l{
width: 65%;
padding: 0;
}
.oem_flow_r{
width: 35%;
overflow:hidden;
}

.oem_flow_l h3 {
font-size: 1.35rem;
font-weight: 400;
color: #111;
letter-spacing: 0.1em;
margin-top:20px;
margin-bottom:20px;
}
.oem_flow_l p {
text-align: left;
}
.oem_flow_r img {
width: 64%;
height: auto;
float:right;
padding-left: 40px;

}



/**/

.oem_flow_l2{
width: 62%;
overflow:hidden;
}
.oem_flow_r2{
width: 38%;
overflow:hidden;
}

.oem_flow_l2 h3 {
    font-size: 1.35rem;
    font-weight: 400;
    color: #111;
    letter-spacing: 0.1em;
    margin-top: 10px;
    margin-bottom: 20px;
}
.oem_flow_r2 img {
width: 90%;
padding-top:12px;
height: auto;
float:right;
padding-left: 10px;

}

/**/


.strengths_box .item {
width: calc(100% / 2 - 15px);
margin-bottom: 25px;
text-align: center;
}

.strengths_box .item a{
  display: block;
  height: 100%;
		padding: 55px 0px;
}

.strengths_box .item p{
 position: relative;
  display: inline-block;
  font-size: 2rem;
		color:#fff;
		padding-bottom:35px;
}
.strengths_box .item h2{
font-size:1.35rem;
color:#fff;
line-height:155%;
font-weight:normal;
position: relative;
}
.strengths_box .item p::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5px;
  width: 1px;
  height: 25px;
  margin: auto;
  background-color: #fff;
}

.strengths_box .item:nth-child(1){
background: url(/img/strengths01.jpg) no-repeat bottom center;
background-size:cover;
transition: 0.5s;
}
.strengths_box .item:nth-child(2){
background: url(/img/strengths02.jpg) no-repeat bottom center;
background-size:cover;
transition: 0.5s;
}
.strengths_box .item:nth-child(3){
background: url(/img/strengths03.jpg) no-repeat bottom center;
background-size:cover;
transition: 0.5s;
}
.strengths_box .item:nth-child(4){
background: url(/img/strengths04.jpg) no-repeat bottom center;
background-size:cover;
transition: 0.5s;
}

.strengths_box .item:hover{
opacity: 0.7;
}

.home_case_study_box{
	width:800px;
	margin:0 auto;
	margin-top:60px;
	padding-top:1px;
	background: url(/img/home_case_study.jpg) no-repeat bottom center;
background-size:cover;
text-align:center;
transition: 0.5s;

	}


.home_case_study_box a{
  display: block;
  height: 100%;
padding:10px 0 50px 0;
}

.home_case_study_box:hover{
	background: url(/img/home_case_study.jpg) no-repeat bottom center;
	background-size:cover;
opacity:0.7;
}
.home_case_study_box h2{
	font-size:2rem;
	letter-spacing: 0.3rem;
	color:#F1BC1A;
	margin:35px 29% 0 29%;
	padding:15px 10px 15px 10px;
	border-top: solid 3px #F1BC1A;
	border-bottom: solid 3px #F1BC1A;
	}
.home_case_study_box h3{
	font-size:1.6rem;
	font-weight:normal;
	color:#fff;
	margin:20px 0 0 0;
	line-height:170%;
	}

.home_case_study_box p{
	font-size:1.4rem;
	font-weight:normal;
	color:#fff;
	margin:15px 0 0 0;
	line-height:150%;
	}

.design_button_gly {
    display: inline-block;
    width: 100%;
    background: #fff;
    border: 1px solid #666;
    padding: 0.5em 0.5em;
    font-weight: 900;
    text-decoration: none;
    transition: 0.3s;
    text-align: center;
    font-size: 1.05rem;
    line-height: 140%;
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    border-radius: 4px;
    position: relative;
}
.design_button_gly:hover {
color: #fff; /* 文字色 */
background: #666; /* 背景色 */
}


.bt_more{
	font-size:0.5rem;
	padding-right:15px;
	line-height:100%;
	margin-top:-3px!important;
	text-align:right;
	}

/**/
.design_content .link_button_l, .design_content_f .link_button_l {
margin:0 auto;
margin-top:40px;
width:100%;
text-align: center;
}


.design_button_l {
 display: inline-block;
  width: 100%;
  max-width: 600px; /* ボタン幅 */
  color: #31AB39; /* 文字色 */
  border: 1px solid #31AB39; /* 線幅・種類・色 */
  background: #fff; /* 背景色 */
  padding: 1em 1em;
  font-weight: bold; /* 文字の太さ */
  text-decoration: none;
  text-align: center;
  transition: 0.3s;
		font-size:1.15rem!important;
}

.design_button_l:hover {
  color: #fff; /* 文字色 */
  background: #31AB39; /* 背景色 */
}



.bt_more, .design_content_f .bt_more{
	width:100%;
	padding-top:6px;
	text-align:right;
	display:block;
	line-height:100%;
	font-size:0.75rem!important;
	letter-spacing:0.1rem;
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , 
	}

.bnn_box_safety{
	width:100%;
	background:#ddd url(/img/bg_safety.jpg) no-repeat top center;
background-size:cover;
padding:100px 0 100px 0;
margin-top:50px
	}

.bnn_box_safety p{
	text-align:center;
	color:#fff;
	font-size:2.2rem;
	line-height:150%;
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , f;
	font-weight:600;
	}

.bnn_box_technology_area {
    width: 100%;
    display: block;
    box-sizing: border-box;
				margin-top:50px;
}



	
.bnn_box_recruit{
	width:100%;
	background:#ddd url(/img/bg_recruit.jpg) no-repeat center center;
background-size:cover;
padding:100px 0 100px 0;
margin-top:70px
	}

.bnn_box_recruit p{
	text-align:center;
	color:#fff;
	font-size:2.2rem;
	line-height:150%;
	font-weight:600;
	}


p.recruit_txt{
	margin:20px 0 0 0;
	text-align:center;
	line-height:160%;
	}
	
table.tabl_recruit {
    border-collapse: separate;
    border-spacing: 5px;
    width: 100%;
    margin-top: 40px;
}
table.tabl_recruit th {
    width: 25%;
    background-color: #F4F8FD;
    color: #162316;
    border: solid 1px #DDE6F7;
    vertical-align: middle;
				padding:25px 0 25px 0;
}
	table.tabl_recruit td {
    width: 75%;
    background-color: #F6F6F6;
    border: solid 1px #E3E3E3;
    vertical-align: middle;
					padding:25px 0 25px 25px;
}



p.recruit_txt_not{
	margin:20px 0 0 0;
	text-align:center;
	line-height:175%;
	}
	/**/
	
	.bnn_box_technology2{
	width:100%;
	background:#ddd url(/img/bg_about.jpg) no-repeat center center;
background-size:cover;

padding:60px 0 60px 0;
margin-top:40px
	}

.bnn_box_technology2 p{
	text-align:center;
	color:#fff;
	font-size:2.2rem;
	line-height:150%;
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , f;
	font-weight:600;
	}
	/**/
	
.bnn_box_technology_p{
		text-align:center;
	color:#fff;
	font-size:1.1rem!important;
	line-height:150%;
	font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif!important;
	font-weight:600;
	}

.bnn_box_product{
width:100%;
display: flex;
margin-top:40px;
}
.bnn_box_product>div{
width: 50%;
background: #FFF;
padding-right:1px;
}

.bnn_box_product>div:first-child {
border-right:solid 1px #ccc;
}

.bnn_box_product>div img{
width: 100%;
height:auto;
}
.bnn_box_product > div > h3{
font-size:1.45rem;
color:#0068B6;
margin-top:30px;
text-align:center;
}

.bnn_box_product > div > p{
font-size:1rem;
line-height:155%;
padding:15px 15px 15px 15px;
font-weight:400;
text-align:center;
}

/**/

.bnn_box_service{
width:100%;
display: flex;
margin-top:40px;
}
.bnn_box_service>div{
width: 50%;
background: #FFF;
padding-right:1px;
}

.bnn_box_service>div:first-child {
border-right:solid 1px #ccc;
}

.bnn_box_service>div img{
width: 100%;
height:auto;
}
.bnn_box_service > div > h3{
font-size:1.45rem;
color:#2AA738;
margin-top:30px;
text-align:center;
}

.bnn_box_service > div > p{
font-size:1rem;
line-height:155%;
padding:15px 15px 15px 15px;
font-weight:400;
text-align:center;
}

/**/


.bnn_box_result{
max-width:1460px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
padding:0 15px 0 15px;
margin-top:50px;
}
.bnn_box_result > div {
    width: calc(25% - 12px);
    margin: 6px;
    padding: 0px;
}

.bnn_box_result > div img{
width: 100%;
height:auto;
}
.bnn_box_result > div > h3{
font-size:1rem;
color:#2AA738;
margin-top:15px;
text-align:center;
}

.bnn_box_result > div > p{
font-size:1.1rem;
text-align:center;
line-height:155%;
padding:7px;
font-weight:600;

}





.company_photo{
	margin-top:30px;
	}



.gmap {
    position: relative;
    width: 100%;
    height: 0;
    margin-top: 0px;
    padding-top: 80%;
}
 
/* Google Mapのiframe */
.gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*
.gmap iframe{
  filter: grayscale(95%);
  -webkit-filter: grayscale(95%);
  transition: 0.7s;
}
iframe:hover{
  filter: none;
  -webkit-filter: none;
}
*/

	@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}





/*
.access_gmap iframe{
  filter: grayscale(95%);
  -webkit-filter: grayscale(95%);
  transition: 0.7s;
}
.access_gmap iframe:hover{
  filter: none;
  -webkit-filter: none;
}




.scroll-infinity{
/*margin-top:95px;
		}


.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
		margin-top:0px;
}
.scroll-infinity__list {
  display: flex;
		justify-content: space-between;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(100vw / 6);
		margin-bottom:-3px;
}



.scroll-infinity__item>img {
  width: 100%;
		height:auto;
}

*/

.fade {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.5s, transform 1s;
}.fade.active {
	opacity: 1;
	transform: translateY(0px);
}
.modal-video {
background-color: rgba(0, 0, 0, 0.9)!important;
		}

.company_photo{
	width:100%;
	overflow:hidden;
	}

.company_photo_l{
	width:50%;
	float:left;
	padding-right:3px;
	}

.company_photo_r{
	width:50%;
	float:right;
	padding-left:3px
	}



.site-footer{
	display:none;
	}
		
	.swiper-container {
		margin-top:40px;
  position: relative; /* ← swiper.cssに含まれています */
}

.swiper-container:before {
  content: "";
  display: block;
  padding-top: calc(9/16*100); /* 縦/横*100の値を書く */
}

.swiper-wrapper {
  position: absolute; /* ← swiper.cssと優先順位が干渉するときは工夫してください */
  top: 0;
  left: 0;
}

.swiper-wrapper img {
    width: 100%;
    height: auto;
}

@keyframes zoomUp {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 7s linear 0s 1 normal both;  
}

//imgタグだと下に隙間ができるのでblockに。
.slide-img img{
  display: block;
}

/**/
.s-right-wrap {
  position: relative;

  margin: 0 auto;
}
.s-right-text {
  position: absolute;
  top: 28%;
  left: calc(50% - 195px);
  width: 390px;
		height:124px;
  text-align: center;
  color: white;
  font-size: 5vw;
}
.s-right-text img{
	width:100%;
	height:auto;
	}

.swiper-slide-active .s-right-text {
  animation: slideFromRight 3.0s ease 0s 1 normal;
}



@keyframes slideFromRight {
  0%, 25% {
    transform: translateY(25px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}




/**/
.about_box {
    width: 100%;
    display:block;
    margin-top: 20px;

}
.about_box > div {
    width: 100%;
    background: #FFF;
				padding:0px 0px 0px 0px;
}


.about_box > div p{
	line-height:180%;

	}


.center_img{
	width:100%;
	margin-top:45px;
	}

.access_box {
    width: 100%;
    display: flex;
    margin-top: 25px;
				background-color:#EEF2FB;
				padding:10px;
				border:solid 1px #fff;
}
.access_box > div {
    width: 30%;
				padding:0px 0px 0px 0px;
				margin:0px 0px 0px 20px;
				line-height:160%;
}

.access_box > div:first-child{
	width: 70%;
	margin:0px 20px 0px 0px;
padding:0px 0px 0px 0px;
	}

.access_box > div h2{
	font-size:1.1rem;
	margin-top:10px;
	padding-bottom:10px;
	border-bottom:solid 1px #ccc;
	}
.access_box > div p{
	font-size:1rem;
	line-height:190%;
	margin-top:20px;
	}
	
	
.access_gmap {
position: relative;
    width: 100%;
    height: 0;
    margin-top: 0px;
    padding-top: 45%;
}
 
/* Google Mapのiframe */
.access_gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.about_box2 {
    width: 100%;
    display: flex;
    margin-top: 40px;
}

.about_box2 > div {
    width: 50%;
    background:none;
    padding: 0px 0px 0px 50px;
				line-height:160%;
}
.about_box2 > div:first-child {
    width: 50%;
    background:none;
    padding: 0px 20px 0px 0px;
}




.about_box2s {
    width: 100%;
    display: flex;
    margin-top: 40px;
}

.about_box2s > div {
    width: 50%;
    background:none;
    padding: 0px 0px 0px 50px;
				line-height:160%;
}

.about_box2s > div:first-child {
    width: 50%;
    padding: 0px 50px 0px 0px;
}


.high_steel_pipe_area{
	width:100%;
	margin: 50px 0px 80px 0px;
	}



/*　swiper　ページネーション*/


.swiper-pagination {

    position: absolute!important;
    left: calc(50% - 35px)!important;
				margin-top:-35px;

}

.swiper-pagination-bullet {
    width: 11px!important;
    height: 11px!important;
				border:solid 1px  #2D56A2!important;
    display: inline-block;
    border-radius: 100%;
   	background-color: #fff!important;
    opacity: 1!important;
				margin:5px;

}


.swiper-pagination-bullet-active {
    opacity: 1;
				border:solid 1px #2D56A2!important;
				background-color: #2D56A2!important;

}


.contact_comme{
width:100%;
box-sizing: border-box;
padding:0 10px 0 10px ;
}

.contact_comme h3{
font-size:1.4em;
color:#1A5DA0;
line-height:150%;
margin-top:60px;
}
.contact_comme p{
font-size:1.15em;
margin:12px 0 0 0;
}


.contact_from input{

border:0;
outline:0;
padding:10px;
border:solid 1px #aaa;
width:100%;
margin-bottom:4px;
}


.contact_from input::placeholder{
	color:#ccc;
	}

.contact_from textarea{
	padding:10px;
	border:solid 1px #aaa;
	width:100%;
	}

.contact_from textarea::placeholder{
	color:#aaa;
	}



form#mailformpro input,form#mailformpro textarea {
	padding: 3px;
	vertical-align: middle;
}

.from_input_name{
width:100%;
}
.from_input_zip{
width:30%!important;
border-right:solid 1px #DDD;
}
.from_input_address{
width:72%;
}

textarea.from_input_come{
width:100%;
height: 12em;
line-height: 1.5em;
border:0;
border:solid 1px #ccc;
padding:10px;
}

form#mailformpro select {
	vertical-align: middle;
	font-size: 14px;
}


.form_exp{
	text-align:center;
	margin-top:20px;
	}

table.contact_from{
border-collapse: collapse;	border-spacing: 0;
width: 1000px;
margin-bottom: 30px;
margin:0 auto;
margin-top:40px;
border-top:solid 2px #bbb;
}


.contact_from th	{
	border-bottom: 2px solid #1D5C79;
}
.contact_from td	{
padding: 20px 20px 20px 20px;
color: #59AB36;
font-size:0.9em;
text-align:left;
	border-bottom: 1px solid #DDD;
	width:50%;
}
.contact_from td p{
text-align:left;
margin-bottom:12px;
font-size: 0.95rem;
}

table .tdl{
border-right: solid 1px #DDD;
}

.contact_req {
font-size: 0.8em;
color: #FFF;
background: #F1BC18;
display:inline-block;
vertical-align: middle;
padding: 4px;
line-height:100%;
margin-left:10px;
}

.contact_from input[type="submit"] {
width: 240px;
height: 45px;
font-size: 15px;
border: 0;
outline: 0;
padding: 4px;
background-color: #2D56A2;
color: #fff;
border-bottom: 3px solid #2D56A2;
cursor: pointer;
margin:22px 0 22px 0;
}

.employ_status{
position: relative;
display: inline-block;
padding: 0 55px;
font-size:2em;
margin-bottom:0;
}

.employ_status:before, .employ_status:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 100px;
height: 2px;
border-top: solid 1px black;
border-bottom: solid 1px black;
}

.employ_status:before {left:-70px;}
.employ_status:after {right: -70px;}

select {
/*　矢印を消す　*/
-webkit-appearance:none;
-moz-appearance:none;
text-indent: .01px; /* Firefox用 */
text-overflow: ""; /* Firefox用 */
appearance:none;

/*　背景画像の指定　*/
width:80%;
height:50px;
padding-left:10px;
border:2px solid #CCC;
border-radius:8px;
padding-right:30px;
background-color:#FFF;
background-image:url(背景画像.gif);
background-repeat:no-repeat;
background-size:25px 54px;
background-position:right center;
cursor:pointer;
margin:10px 0 10px 0;
color:#1D5C79;
}

.form_bt{
text-align:center;
}

table.contact_from02{
border-collapse: collapse;	border-spacing: 0;
width: 720px;
margin-bottom: 30px;
margin:0 auto;
margin-top:40px;
border-top:solid 3px #999;
}

input[type="button"] {
width: 180px;
height: 45px;
font-size: 15px;
border: 0;
outline: 0;
padding: 4px;
background-color: #999;
color: #fff;
border-bottom: 3px solid #055074;
cursor: pointer;
margin:22px 0 22px 0;
}

.wpcf7-not-valid-tip{
	display:inline-block;
	color:#F00;
	font-size:1rem;
	font-weight:600;
	margin-top:5px;
	}
.screen-reader-response{
	display:none;
	}



.clicktxt {
color:#ffffff;
background-color: #4169e1;
padding:15px;
border-radius: 10px;
}

.switchdsp input {
display: none;
}

.switchdsp .dsp {
padding: 0px 10px 0px 10px;
height: 0;
overflow: hidden;
transition: 0.9s;
opacity: 0;
}

.switchdsp input:checked ~ .dsp {
padding: 0px 25px 0px 25px;
height: auto;
opacity: 1;
}

/**/





/**/

.check{
  display: none;
}

/* 通常時表示されるテキスト */
.label{
  background: #ffbb1e;
  display: block;
  align-items: center;
  margin-bottom: 10px;
  height: 30px;
  padding: 20px;
}

/* クリック時に表示されるテキスト */
.text{
  background: #ff9158;
  align-items: center;
  margin-bottom: 10px;
  /*通常時は見えなくする*/
  overflow: hidden;
  /*  通常時は高さ0を指定  */
  height: 0;
  transition: 0.5s;

}

/* クリック時のスタイル */
.check:checked + .label + .text{
  height:auto;
  padding: 20px;
}


.error{
	color:#F00;
	margin-top:7px;
	margin-left:5px;
	font-size:0.92rem;
	}


/**/

.toggle_contents {
	border: 1px solid #d9d9d9;
}
.toggle_title {
	position: relative;
	padding: 15px;
	cursor: pointer;
	font-size: 1.2rem;
	font-weight:600;
	text-align: center;
	line-height: 1;
	color:#333;
	background-color:#F3F3F3;
}
.toggle_btn {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: #2D56A2;
	display: block;
	width: 18px;
	height: 18px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
}
.toggle_btn:before, .toggle_btn:after {
	display: block;
	content: '';
	background-color: #fff;
	position: absolute;
	width: 10px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.toggle_btn:before {
	width: 2px;
	height: 10px;
}
.toggle_title.selected .toggle_btn:before {
	content: normal;
}
.toggle_contents dd {
	display: none;
}


.poly{
	padding:30px 20px 20px 20px;

	color:#333;
	text-align:left;
	}

.poly h2{
	margin-top:45px;
	margin-bottom:15px;
	font-size:1.3rem;
	border-bottom:solid 1px #F1BC18;
	padding-bottom:8px;
	}
.poly h3{
	margin-top:30px;
	margin-bottom:0px;
	font-size:1rem;
	padding-bottom:8px;
	text-align:left;
	line-height:150%;
	}
.poly p{
	font-size:1rem!important;
	line-height:160%;
	}
	
.poly ol{
	margin-left:20px;
	margin-top:5px;
	 counter-increment: cnt;list-style-type: decimal;
	}
.poly ol li{
	line-height:144%;
	margin-bottom:12px;
	font-size:1rem;
	}


.policy{
	padding:0px 20px 20px 20px;
	color:#333;
	}
.policy h2{
	margin-top:40px;
	margin-bottom:30px;
	font-size:1.6rem;
	border-bottom:solid 1px #069;
	padding-bottom:8px;
	}
.policy h3{
	margin-top:30px;
	margin-bottom:0px;
	font-size:1.2rem;
	padding-bottom:8px;
	text-align:left;
	line-height:150%;
	}
.policy h3.title_s{
	margin-top:30px;
	margin-bottom:0px;
	font-size:1.1rem;
	padding-bottom:8px;
	text-align:left;
	line-height:100%;
	}

.policy p{
	font-size:0.95rem;
	line-height:180%;
	margin-top:20px;
	}
	
.policy ol{
	margin-left:14px;
	margin-top:25px;
	 counter-increment: cnt;list-style-type: decimal;
	}
.policy ol li{
	line-height:144%;
	margin-bottom:12px;
	font-size:0.95rem;
	}

.table_privacy table {
  border-collapse: separate;
  box-shadow: inset 0 1px 0 #fff;
  font-size: 1rem;
  line-height: 24px;
  margin: 30px auto;
  text-align: left;
  width: 100%;
		border-right: 1px solid #e8e8e8;
} 

.table_privacy th {
		background-color:#999;
  border-left: 1px solid #666;
  border-right: 1px solid #666;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
  color: #fff;
  font-weight: bold;
  padding: 8px 15px;
  position: relative;
  text-shadow: 0 1px 0 #000;
		text-align:center;
}

.table_privacy th:nth-child(2){
	  border-left: none;
  border-right: none;
	}
	


.table_privacy th.reception_method{
	width:10%;
	}

.table_privacy th.applicant{
	width:20%;
	}

.table_privacy th:after {
  background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,.08));
  content: '';
  display: block;
  height: 25%;
  left: 0;
  margin: 1px 0 0 0;
  position: absolute;
  top: 25%;
  width: 100%;
}



.table_privacy td {
  border-right: 1px solid #fff;
  border-left: 1px solid #e8e8e8;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #e8e8e8;
  padding: 10px 15px;
  position: relative;
  transition: all 300ms;
		font-size: 1rem;
}



.support_box {
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-top:40px;
}


.support_box .support_box_inner {
padding: 10px 10px 15px 10px;
width: 32.5%;
background-color: #EDFBE6;
}

.support_box_inner p{
width:100%;
text-align:center;
margin-top:14px;
font-weight:600;
}

.support_txt{
width:100%;
margin-top:30px;
text-align:center;
font-size:1rem;
line-height:160%;

}


table.support_table{
	margin-top:30px;
	background-color:#fff;
border-collapse:  collapse; 
}

table.support_table th,table.support_table td {
border:solid 1px #666;
padding: 5px 10px 5px 10px;
line-height:150%;
text-align:center;
}

table.support_table th{
	background-color:#EDFBE6;
}

.support_table td.support_table_l{
	text-align:left;
	}

table.support_table th:nth-child(1){
	width:4%
	}
table.support_table th:nth-child(2){
	width:40%
	}
table.support_table th:nth-child(3){
	width:10%
	}
table.support_table th:nth-child(4){
	width:10%
	}
table.support_table th:nth-child(5){
	width:16%
	}
table.support_table th:nth-child(6){
	width:20%
	}
	
	
table.support_table_exp{
	margin-top:14px;
border-collapse:  collapse;
text-align:left;
}

table.support_table_exp th{
	width:4%;
	padding:0 0 0 1%;
	}
table.support_table_exp td{
	line-height:150%;
	padding:0;
	}



@media screen and (max-width:800px){
.support_box {
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-top:40px;
}


.support_box .support_box_inner {
padding: 10px 10px 15px 10px;
width: 99.5%;
margin: 8px 0px 8px 0px;
background-color: #EDFBE6;
}
}



/**/

@media screen and (max-width: 640px) {

.table_privacy table {
    width: 750px;
  }

}


/*
.table_privacy tbody:hover td {
  color: transparent;
  text-shadow: 0 0 3px #aaa;
}

.table_privacy tbody:hover tr:hover td {
  color: #444;
  text-shadow: 0 1px 0 #fff;
}
*/


.agree_box{
	width:100%;
	text-align:center;
	margin-top:20px;
	}


input[type="checkbox"] {
    cursor: pointer;
    padding-left: 30px;
    vertical-align: middle;
    position: relative;
    width: 20px;
}




input[type="radio"] {
    cursor: pointer;
    padding-left: 30px;
    vertical-align: middle;
    position: relative;
    width: 20px;
}

input[type="radio"] {
    width: 20px;
    height: 20px;
    border-radius: 100px;
    position: relative;
    vertical-align: sub;
    margin-right: 5px;
  }
  input[type="radio"]::before, input[type="radio"]::after{
    content: "";
    display: block;
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  input[type="radio"]::before {
    background-color: #fff;
    border: 1px solid #c2c1c1;
    height: 20px;
    width: 20px;
    left: 0px;
  }
  input[type="radio"]::after {
    background-color:#09C;
    opacity: 0;
    height: 12px;
    width: 12px;
    left: 4px;
  }
  input[type="radio"]:checked::after {
    opacity: 1;
  }






table.contact_from02 {
    border-collapse: collapse;
    border-spacing: 0;
    width: 60%;
     margin: 0 auto;
    margin-top: 80px;
    border-top: solid 3px #999;
				margin-bottom: 160px;
}
.contact_from td {
    padding: 30px 20px;
    color: #2D56A2;
    font-size: 0.9em;
    text-align:center;
    border-bottom: 1px solid #DDD;
}

.contact_from02 h3{
font-size:1.5em;
margin-top:20px;
text-align:center;
}
.contact_from02 p{
line-height:180%;
text-align:center;
}






	

.list3 {
    position: relative;
				width:94%;
				margin:0 auto;
				margin-top:40px;
				padding-bottom:20px;
    border: solid 4px #E8E8E8;
    border-radius:5px;
				
}
.list3 .title{
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 0.5rem;
    background: #FFF;
				font-weight:600;
    font-size:1.2rem;
    color:#333;
}
.list3 ul{
    color:#333;
    padding:0px 1rem;
				margin-top:30px;
				overflow:hidden;
}
.list3 ul li{
    list-style: none;
				line-height:140%;
				margin:3px 0px 3px 0px;
				width:50%;
				float:left;
}

.list3 ul li.list_iot{
	width:100%;
	}

.list3 ul li:before{
    color:#396;
    content:"◇︎ "
}

.Consignment_item_box{
	width:91%;
	margin:0 auto;
	}

@media screen and (max-width:480px) {

.Consignment_item_box {
    width: 96%;
    margin: 0 auto;
}
}


.Consignment_item_box p{
	line-height:140%;
	margin-top:5px;
	}
.Consignment_item_box a, .list3 ul li a{
	color:#228A2D;
	}
	
	

	/*
.Consignment_item_box a:before{
    color:#396;
    content:"❖︎ "
}*/
.Consignment_item_box a:after, .list3 ul li a:after{
    color:#396;
  vertical-align: middle;
		display: inline-block;
  width: 15px;
  height: 15px;
		margin-left:8px;
  content: '';
		background: url(/img/ico_link.png) no-repeat;
  background-size: contain;
}

.Consignment_item_box .pdfico a:after{
    color:#396;
  vertical-align: middle;
		display: inline-block;
  width: 21px;
  height: 22px;
		margin-left:5px;
		margin-top:-2px;
  content: '';
		background: url(/img/ico_pdf.png) no-repeat;
  background-size: contain;
}



.philosophy_top{
	width:100%;
	padding: 30px 40px 30px 40px;
	background-color:#F4EFEB;
	overflow:hidden;
	margin-top:30px;
	}
	
	.philosophy_top_l{
	width:16%;
	padding:10px;
	background-color:#F4EFEB;
	overflow:hidden;
	float:left;
	}
	.philosophy_top_r{
	width:82%;
	padding:10px;
	float:left;
	}

.philosophy_top h2{
	font-size:1.7rem;
	color:#2BA739;
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	}


.philosophy_top p{
	padding: 7px 0 0 0;
	}



/**/

.philosophy_declaration {
	width:100%;
	text-align:center;
	margin-top:60px;
	}

.philosophy_declaration h3{
  position: relative;
  display: inline-block;
  padding: 0 105px;
		color:#2BA739;
		font-size:2.8rem;
		font-weight:normal;
					font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}

.philosophy_declaration h3 img{
	width:236px;
	height:auto;
	}

.philosophy_declaration h3:before, .philosophy_declaration h3:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 85px;
  height: 1px;
  background-color: #2BA739;

}

.philosophy_declaration h3:before {
  left:0;
}
.philosophy_declaration h3:after {
  right: 0;
}


.link_ant{
	width:100% !important; 
	}
.link_ant{

	cursor: pointer;
	}
	
#modalOpen{
	color:#2AA738;
}


/*--------------------------------------
  モーダル表示
--------------------------------------*/

.modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  overflow: auto;
		z-index:999;
  background-color: rgba(0,0,0,0.7);
}

.modal-content {
  margin: 3% auto;
width: 85%;
max-width:1000px;
  animation-name: modalopen;
  animation-duration: 1s;
				-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

@keyframes modalopen {
  from {opacity: 0}
  to {opacity: 1}
}

.modal-header h1 {
  margin: 1rem 0;
}

.modal-header {
  padding:8px 1px 0 0;;

		text-align:right;
  justify-content: space-between;
}

.modalClose {
  font-size: 3rem;
		color:#fff;
}

.modalClose:hover {
  cursor: pointer;
}

.modal-body {
  padding:0px;
  color: black;
		background-color:#fff;
		box-shadow: 0 5px 8px 0 rgba(0,0,0,0.2),0 7px 20px 0 rgba(0,0,0,0.2);
		-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.modal-body img{
	width:90%;
	height:auto;
	margin:0 auto;
	}
.modal-body p{
	font-size:1.15rem;
		width:90%;
	margin:0 auto;
}


.regi_mark{
	font-size:0.5em;
	vertical-align:-5%;
	margin-left:2px;
	}


.service_box{
	width:100%;
	display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
	}

.service_box .service_box_inner{
	padding: 17px 15px 20px 15px;
  width: 32%;
  background-color:#F4EFEB;
	}

.service_box_inner ul{
    color: #333;
    padding: 0px;
    margin-top: 30px;
    overflow: hidden;
	}
.service_box_inner ul li {
    list-style: none;
    line-height: 140%;
    margin: 3px 0px 3px 0px;
    width: 50%;
    float: left;
				padding-left: 1.3em;
    text-indent: -1.3em;
}


.service_box_inner ul li:before {
    color: #396;
    content: "◇︎ ";
}



.service_box_inner h2 {
	font-size:1.2rem;
	font-weight:normal;
	color:#2AA738;
	font-weight:600;
  border-bottom: 3px solid #2AA738;
  padding: 0.3em;
		padding-bottom:13px;
  margin-bottom: 10px;
  position: relative;
}
.service_box_inner h2::before {
  content: '';
  background-color: #F4EFEB;
  width: 20px;
  height: 3px;
  position: absolute;
  left: 30px;
  bottom: -3px;
}
.service_box_inner h2::after {
  content: '';
  background-color: #2AA738;
  width: 20px;
  height: 3px;
  transform: rotate(50deg);
  position: absolute;
  left: 25px;
  bottom: -10px;
}





.txtl_catch_c_card {
    text-align: center !important;
    padding: 0 !important;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-weight: 600;
    font-size: 1.9rem;
    line-height: 1.5;
    margin-top: 32px;
}


.feature_description{
	    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
				margin-top:40px;
	}
.feature_description::after{
  content:"";
  display: block;
  width: 32%;
}
.feature_description_box{
    width: 32%;
    background-color: #fff;
				padding:20px;
				text-align:center;
				margin:10px 0 10px 0px;
				background:transparent url(/img/feature_description_bg.png) no-repeat scroll right top;
				background-color:#fff;
display:table;
	}
.feature_description_box p{
	line-height:180%;
	display:table-cell;
	font-weight:600;
  vertical-align:middle;
	}




.storage_example{
	    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
				margin-top:40px;
	}
.storage_example::after{
  content:"";
  display: block;
  width: 19%;
}
.storage_example_box{
    width: 19%;
    background-color: #fff;
				padding: 30px 20px 30px 20px;
				text-align:center;
				margin:10px 0 10px 0px;
				background-color:#F8FEF8;
display:table;
border-radius: 6px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
	}
.storage_example_box h2{
line-height:170%;
margin-top:20px;
  padding: 30px 0;
  border-top: solid 2px #2BA739;
  border-bottom: solid 2px #2BA739;
	}


.storage_ico{
	width:70%;
	margin:0 auto;
	}






.map_route ol {
  list-style: none;
  counter-reset: number;
		margin-top:15px;
}
.map_route li {
  position: relative;
  padding-left: 1.5em;
		line-height:160%;
}
.map_route li::before {
  counter-increment: number;
  content: counter(number);
  position: absolute;
  top: 5px;
  left: 0;
  width: 12px;
  height: 12px;
  border: 1px solid #000;
  border-radius: 50%;
  font-size: 10px;
  text-align: center;
  line-height: 1.2;
}

.map_route p{
	margin-left:0px;
	padding-left:0px;
	line-height:180%;
	}


.sitemap-container {
    -js-display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
				margin-top:30px;
}
.sitemap-container > .col {
    margin: 0 13px;
    width: calc((99.99% - 13px * 2 * 3) / 2);
}

.list-sitemap > li {
    margin: 22px 0 0 0;
}
.list-sitemap > li > a, .list-sitemap > li > .alta {
    display: table;
    width: 100%;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #ccc;
    border-left: 3px solid #2D56A2;
    font-weight: bold;
    text-decoration: none;
    padding: 16px 14px 14px 12px;
    position: relative;
}
.list-sitemap > li > a > span, .list-sitemap > li > .alta > span {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}

.list-sitemap > li > a::after, .list-sitemap > li > .alta::after {
position:absolute;
right:10px;
top:27%;
vertical-align: middle;
display: inline-block;
width: 23px;
height: 23px;

}
.list-sitemap > li > ul {
    margin: 12px 0px 0px 0px;
    font-size: 87.5%;
    font-size: 1.4rem;

}
.list-sitemap > li > ul > li {
    margin: 5px 5px 5px 0px;
				padding:0px;
    line-height: 1.5;
    position: relative;
    padding-left: 0.5em;
						
}


.list-sitemap > li > ul > li > a{
	display:block;
	padding-left:10px;
	font-size:1rem;
	}

.list-sitemap > li > ul > li > a::before {
color: #396;
vertical-align: middle;
display: inline-block;
width: 10px;
height: 12px;
margin-left: 0px;
margin-right:5px;
content: '';
background: url(/img/sitemap_ico02.png) no-repeat;
background-size: contain;
margin-top:-3px;
margin-left:-12px;
}

.list-sitemap > li > ul > li.site_map_sub a{
	padding-left:20px;
	}

.list-sitemap > li > ul > li.site_map_sub a::before {
	vertical-align: middle;
display: inline-block;
	width: 10px;
height: 10px;
content: '';
margin-right:5px;
margin-top:-10px;
background: url(/img/lower_level.png) no-repeat;
background-size: contain;   
				
/*content: none;*/
}

ul.sitemap_list{
overflow:hidden;
}

ul.sitemap_list li{
overflow:hidden;
float:left;
width:49%;
}


.error-info__title{
	width:100%;
	margin-top:60px;
	text-align:center;
	}
	.error-info__title {
    color: #333;
    font-family: "Open Sans",Hiragino Sans,"ヒラギノ角ゴシック",Hiragino Kaku Gothic ProN,"ヒラギノ角ゴ ProN W3",Meiryo,メイリオ,sans-serif;
}

.error-info__code{
	font-size: 7.8rem;
	color:#3E8DC8
	}

	.error-info__status {
    font-size: 2.3rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.02em;
    display: block;
    padding-left: 4px;
}

.error-info__content{
	width:100%;
	text-align:center;
	margin-top:20px;
	}
	.error-info__content p{
		line-height:180%;
		}
		
.search_content h1{
	margin-top:60px;
	font-size:2.2rem;
	color:#555;
	padding-bottom:15px;
	border-bottom:dotted 1px #ccc;
	}		
	
	.search_content h1 span{
	margin-top:60px;
	font-size:2.2rem;
	color:#555;
	padding-bottom:15px;
	border-bottom:dotted 1px #ccc;
	}		
	
		.search_content p{
	margin-top:20px;
	font-size:1rem;
	line-height:170%;
	color:#555;
	}		
		
.sidebar-search-form{
	margin-top:20px;
	margin-bottom:100px;
	}
.search-field {
    background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0));
    -webkit-appearance: none;
    border-radius: 0;
				border:solid 1px #CCC;
				padding:8px;
				vertical-align:middle;
				width:70%;
}

.sidebar-search-form button, input, select, textarea {
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 100%;
    vertical-align: middle;
}


.search-article{
	margin:30px 0 5px 0;
	line-height:170%;
	}




/**/
.product_item {
    width: 100%;
    display: flex;
    margin-top: 40px;

}
.product_item > div {
    width: 65%;
    background: #FFF;
				padding:0px 0px 0px 0px;
					line-height:160%;
}

.product_item > div:first-child{
	width: 45%;
    background: #FFF;
				padding:0px 80px 0px 0px;
	}

.product_cautionary_note{
	font-size:0.95rem;
	
	}
.product_indent {
  text-indent: -1em;
  padding-left: 1em;
		font-size:1rem!important;
		line-height:155%!important;
		font-feature-settings: "palt";
　letter-spacing: 5px;
}



.product_item_list ul {
	padding: 0.5em;
	list-style-type: none;
	margin-top:40px;
}
.product_item_list ul li {
	position: relative;
	padding: 15px 0px 15px 36px;
	margin-bottom:5px;
	font-size:1.2rem;
	border-bottom: 1px solid #5FD86A;
}
.product_item_list ul li:after,
.product_item_list ul li:before{
	content:'';
	position: absolute;
	border-radius: 50%;
}
.product_item_list ul li:before {
	top: 50%;
	left: 0.2em;
	width: 17px;
	height: 17px;
	background: rgba(42, 167, 56, 1);
	transform: translateY(-50%);
}
.product_item_list ul li:after {
	top: 1.3em;
	left: 0.7em;
	width: 14px;
	height: 14px;
	background: rgba(42, 167, 56, 0.5);
}

/**/
/**/



.cent_bt{
	width:100%;
	text-align:center;
	margin-top:50px;
	}

.background_btn01 {
  display: inline-block;
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #2AA738; /* 背景色 */
  border: 2px solid #fff;
  padding: 0.9em 1em 0.9em 3.5em;
  font-weight: bold;
  color: #fff; /* 文字色 */
  text-decoration: none;
  text-align: center;
  transition-duration: 0.3s;
		border-radius: 100vh;
		font-size:1.25rem;
		box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .2);
}

.background_btn01:before {
  content: '';
		background-image: url(/img/pdf_bt_ico.png);
		background-repeat: no-repeat;
background-size: contain;
  width: 19px;
  height: 22px;
  border: 0;
  position: absolute;
  top: 50%;
  left: 34px;
		margin-right:16px;
  margin-top: -10px;
		}

/* マウスオーバーした際のデザイン */
.background_btn01:hover {
  background: #fff; /* 背景色 */
  color: #2AA738; /* 文字色 */
		border: 2px solid #2AA738;
}

.background_btn01:hover:before{
  content: url(/img/pdf_bt_ico_green.png);
  width: 19px;
  height: 22px;
  border: 0;
  position: absolute;
  top: 50%;
  left: 34px;
		margin-right:16px;
  margin-top: -10px;
		}



/*トップ フロー*/


.top_flow {
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin-top:50px;
}
.top_flow .item {
	position:relative;
width: calc(100% / 5 - 40px);
text-align: center;

}

.item_title{
	display:none;
	}

.top_flow .item:after{
  position: absolute;
  top: 0;
  bottom: 0;
  right: -40px;
  margin: auto;
  content: "";
  vertical-align: middle;
  height: 28px;
  aspect-ratio: cos(30deg);
  clip-path: polygon(0 0,70% 50%,0 100%);
  background: #FD9417;
}

.top_flow .item:last-child::after{
	display:none;
	background: #fff;
	}

.topics_area{
	width:100%;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
padding: 0px 0px 30px 0px;
	}


	/*トップ タブ ココまで*/
	
	

.flex_area{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
margin:0 0 0 0;
padding:0;
}	
	
	
.flex_2box{
width: calc(100% / 2);
box-sizing: border-box;
}
	
.flex_area_spw{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
margin:0 0 0 0;
padding:0;
}	
	
	
.flex_2box_spw{
width: calc(100% / 2);
box-sizing: border-box;
}
		
	

.inventory_list_box{
	width:100%;
	padding:40px 30px 40px 0;
	}
	
.faq_box{
	width:100%;
	padding:40px 0 40px 30px;
	}

.inventory_list_box img, .faq_box img{
	width:100%;
	height:auto;
	}
	

.design_button_lg{
display: inline-block;
width: 100%;
color: #fff;
margin-top:15px;
border: 1px solid #343565;
background: #343565;
padding: 0.7em 0.5em;
font-weight: bold;
text-decoration: none;
transition: 0.3s;
text-align: center;
font-size: 1.15rem;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.inventory_list_box a:hover .design_button_lg, .faq_box a:hover .design_button_lg  {
color: #343565;
background: #fff;
border:solid 1px #343565;
}


/*画像拡大*/
.expansionimg_box{
overflow:hidden;
}
.expansionimg_box img{
transition:0.6s all;
}
.expansionimg_box img:hover{
transform:scale(1.1,1.1);
overflow:hidden;
}

.high_material_box{
	width:100%;
	padding:40px 0px 40px 0px;
	}

.top_highly_material_imgbox{
	width:100%;
	padding:0;
	}
.top_highly_material_imgbox img{
	width:100%;
	height:auto;
	}


.top_how_make_box_l{
	width:100%;
	padding:0 25px 0 0;
	}
.top_how_make_box_r{
		width:100%;
			padding:0 0 0 25px;
	}
	
.top_how_make_box_l img, .top_how_make_box_r img{
	width:100%;
	height:auto;
	}

.top_how_make{
	font-size:1.2rem;
	font-weight:600;
	margin-top:15px;
	text-align:center;
	}	
	
	

/*お知らせ*/

.posted_article_area{
	width:100%;
max-width: 900px;
margin:0 auto;
	margin-top:0px;

	}

.topics_box{
width:100%;
max-width: 1000px;
margin:0 auto;
	margin-top:40px;
	overflow:hidden;

	}

.topics_article{
	width:100%;
max-width: 950px;
margin:0 auto;
	margin-top:50px;
	overflow:hidden;

	}


.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.alignright{
	float: right;
	margin-left: 1.5em;
}
.alignleft{
	float: left;
	margin-right: 1.5em;
}
	
.topics_box p{
	line-height:160%;
	font-size:1em;
	}

.topics_box dt{
font-size:0.9rem;
color:#999;
margin:15px 0 0 0;
padding:0;
}
.topics_box dd{
line-height:150%;
margin-top:5px;
display: flex;
flex-wrap:nowrap;
margin:0;
padding:0;
}

.topics_txt{
width:86%;
padding-top:7px;
}
.topics_img{
width:14%;
margin-top:-15px;
}


.topics_box hr{
margin:10px 0 10px 0;
}

.topics_list_img{
width:100%;
height:auto;
   position: relative;
   overflow: hidden;
   padding-top: 50%;
}


.topics_list_img img{
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%,-50%);
   width: 100%;
   height:auto;
   object-fit: cover;
}




.newmark{
	font-size:0.9rem;
	margin-left:1px;
	color:#FF9900;
	}


.map_route{
	width:100%;
	padding:0 20px 0 0px;
	}
	
	.map_route h3{
	width:100%;
	margin-top:18px;
	font-weight:normal;
	line-height: 170%;
	}
	.map_route p{
	width:100%;
		margin-top:0px;
		line-height:145%;
		font-size:0.9rem;
	padding:5px 0 0 0px;
	}

.indent{
	display:block;
  padding-left: 1em;
  text-indent: -1em;
}


 



.topics_txt h3{
	font-size:0.9rem;
	font-weight:600;
}


.inpage_ink_wrap{
	background-color:#F9F9F9;
	padding:20px 0 20px 0;
	margin-top:0px;
	border-bottom:solid 1px #E5E5E5;
box-shadow: 0px -2px 12px 0px rgba(0, 0, 0, 0.2);
position:relative;
	}

.inpage_ink_area{
width: 100%;
max-width: 1120px;
display: flex;
flex-wrap: wrap;
margin: 0 auto;

}

.inpage_ink_area div{
	width:25%;
	padding: 6px 4px 6px 4px;
}
			
.inpage_ink_area_3l{
width: 100%;
max-width: 1120px;
display: flex;
flex-wrap: wrap;
margin: 0 auto;

}

.inpage_ink_area_3l div{
	width:50%;
	padding: 6px 4px 6px 4px;
}
			


.inpage_ink_bt{
	width:100%;
	display:block;
	padding:10px 4px 8px 4px;
	border:solid 1px #bbb;
	text-align:center;
	position:relative;
	border-radius: 3px;
	}

.inpage_ink_area div a{
font-weight:400!important;
font-size:0.8rem;
transition: all 0.6s  ease-in-out;	
}

.inpage_ink_bt:after{
content: '';
width: 7px;
height: 7px;
border: 0;
border-bottom: solid 1px #069;
border-right: solid 1px #069;
transform: rotate(45deg);
position: absolute;
top: 87%;
left: 49.6%;
bottom: 0;
margin: auto;
background-color:#F9F9F9;
transition: all 0.3s  ease-in-out;	
}

.inpage_ink_bt:before{
content: '';
width: 17px;
height: 10px;
position: absolute;
top: 100%;
left: 47.5%;
bottom: 0;
margin: auto;
background-color:#F9F9F9;

}
.inpage_ink_area div a:hover:after{
top: 104%;
border-bottom: solid 2px #069;
border-right: solid 2px #069;
}



/**/

.inpage_ink_bt2{
	width:100%;
	display:block;
	padding:10px 4px 8px 4px;
	border:solid 1px #bbb;
	text-align:center;
	position:relative;
	border-radius: 3px;
	}

.inpage_ink_area_3l div a{
font-weight:400!important;
font-size:0.8rem;
transition: all 0.6s  ease-in-out;	
}

.inpage_ink_bt2:after{
content: '';
width: 7px;
height: 7px;
border: 0;
border-bottom: solid 1px #069;
border-right: solid 1px #069;
transform: rotate(45deg);
position: absolute;
top: 87%;


left: 49.6%;
bottom: 0;
margin: auto;
background-color:#F9F9F9;
transition: all 0.3s  ease-in-out;	
}

.inpage_ink_bt2:before{
content: '';
width: 17px;
height: 10px;
position: absolute;
top: 100%;
left: 48.7%;
bottom: 0;
margin: auto;
background-color:#F9F9F9;

}
.inpage_ink_area_3l div a:hover:after{
top: 104%;
border-bottom: solid 2px #069;
border-right: solid 2px #069;
}





.design_headline {
font-weight: 600;
margin: 60px 0px 20px 0 ;
padding: 0 0px 0 0 ;
/*border-top: 2px solid #ccc;*/
border-bottom: 1px solid #bbb;
text-align: center;
font-weight:500;
width:100%;
}


.design_headline span.title {
border-color: #CCC;
font-size: 1.5rem;
font-weight:600;
/*
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
*/
color:#2D56A2;
display: inline-block;
    /* border-top: 4px solid #59AB36; */
    border-bottom: 2px solid #ED7700;
    /* padding-top: 20px; */
    padding-bottom: 10px;
    margin-bottom: -2px;
}


.design_headline_mtn {
font-weight: 600;
margin: 10px 0px 33px 0 ;
padding: 0;
/*border-top: 2px solid #ccc;*/
border-bottom: 1px solid #bbb;
text-align: center;
width:100%;
}


.design_headline_mtn span.title {
border-color: #CCC;
font-size: 1.5rem;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
display: inline-block;
    /* border-top: 4px solid #59AB36; */
    border-bottom: 2px solid #59AB36;
    /* padding-top: 20px; */
    padding-bottom: 15px;
    margin-bottom: -2px;
}




.side_diagram{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
padding-top: 10px;
}

.diagram_item_two {
width: calc(100% / 2 - 30px);
margin-bottom: 30px;
padding: 10px 10px;
text-align: center;
}


.content_slide_area{
	width:100%;
	margin-top:40px;
	padding: 10px 12% 10px 12%;
	background-color:#fff;
	border-radius: 4px; 
	}

.n2-ss-slider .n2-ss-layer {
    --margin-top: 50%!important;
 }


.ultra_metal_tube_features_area {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin-top:20px;
padding: 30px;
background-color:#F6F6F6;
border-radius: 10px;
}
.ultra_metal_tube_features_box {
width: calc(100% / 3 - 30px);
padding: 0;
text-align: center;
background-color:#fff;
border-radius: 10px;
border:solid 4px #fff;
}

.ultra_metal_tube_features_box img{
	border-radius: 10px 10px 0px 0px;
}
.ultra_metal_tube_features_box p{
	padding: 15px 15px 15px 15px;
	line-height:160%;
	text-align:left;
}


.ultra_metal_tube_features_area02 {
display:block;
width: 100%;
margin-top:20px;

}

.ultra_metal_tube_features_area02 h4 {
  border-bottom: solid 1px #ccc;
  position: relative;
		font-size:1.4rem;
		font-weight:500;
		margin-top:50px;
		padding-bottom:5px;
}


.ultra_metal_tube_features_area02 h4:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #59AB36;
  bottom: -3px;
  width: 12%;
}


.headline_sl {
    border-bottom: solid 1px #ccc;
    position: relative;
    font-size: 1.4rem;
    font-weight: 500;
    margin-top: 50px;
    padding-bottom: 5px;
}
.headline_sl:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #59AB36;
  bottom: -3px;
  width: 12%;
}

.ultra_metal_tube_features_area02 ul{
	width:100%;
	overflow:hidden;
	list-style-type: disc;
	margin-top:10px;
	}

.ultra_metal_tube_features_area02 ul li{
	width:48%;
	margin-left:20px;
	float:left;
	line-height:150%;
	margin-top:15px;

	}




.bracket_heading {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
		margin-top:10px;
}

.bracket_heading:before, .bracket_heading:after { 
  position: absolute;
  top: 4px;
  content:'';
  width: 8px;
  height: 65%;
  display: inline-block;
}
.bracket_heading:before {
  border-left: solid 1px #888;
  border-top: solid 1px #888;
  border-bottom: solid 1px #888;
  left: 0;
}
.bracket_heading:after {
  content: '';
  border-top: solid 1px #888;
  border-right: solid 1px #888;
  border-bottom: solid 1px #888;
  right: 0;
}


.side_three_diagram {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 100%;
    padding-top: 10px;
}

.diagram_item_three{
width: calc(100% / 3 - 10px);
    margin-bottom: 30px;
    padding: 10px 10px;
    text-align: center;
	}
	
	
.heading_top_bottom_line {
		margin-top:20px;
		font-size:1.1rem;
}	

.flow_img_c{
	width:100%;
	margin-top:40px;
	padding:30px 10% 30px 10%;
	background: url(/img/manufacturing_process_flow_bg.png) ,url(/img/manufacturing_process_flow_bg2.png);	
background-repeat: no-repeat,  no-repeat;
background-size: auto, auto;
background-position: right 20px center, left 30px bottom 65px;
background-color:#F7F7F7;
border-radius: 10px;
	}
	
.flow_img_c img{
	width:100%;
	height:auto;

	}

.subheading_bul{
font-size:1.1rem;
font-weight:500;
color:#00508A;
line-height:100%;
}


.side_diagram_w{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin-top:40px;
}

.diagram_item_two_w {
width: calc(100% / 2 - 40px);
margin-bottom: 30px;

}

.process_flow{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin-top:40px;
	}
.process_flow_box {
width: calc(100% / 6);
padding:25px 0 0 0;
text-align:center;

}

.process_flow_box_bg01{
background:#ddd url(/img/three_roll_flow_bg01.png) no-repeat center left;
background-size:cover;
	}
.process_flow_box_bg02{
background:#ddd url(/img/three_roll_flow_bg02.png) no-repeat center left;
background-size:cover;
	}
.process_flow_box_bg03{
background:#ddd url(/img/three_roll_flow_bg03.png) no-repeat center left;
background-size:cover;
	}
.process_flow_box_bg04{
background:#ddd url(/img/three_roll_flow_bg04.png) no-repeat center left;
background-size:cover;
	}

.process_flow_box h3{
	margin-top:26px;
	font-size:1.1rem;
	color:#112C39;
	}

.process_flow_box .step_img{
	width:100%;
	padding: 0px 10px 10px 10px;
	}
.process_flow_box .step_img img{
	width:100%;
	height:auto;
	margin-top:20px;
	}



.inquiries_area{
	background:#ddd url(/img/inquiries_bg.jpg) no-repeat center center;
background-size:cover;
padding:35px 0 35px 0;
margin-top:40px;
	}
.inquiries_box{
	width:800px;
	padding: 30px 50px 30px 60px;
	border-radius: 6px; 
	margin:0 auto;
background-color: rgba(255,255,255,0.85);
	}

.inquiries_box h2{
	font-size:1.3rem;
	font-weight:600;
	text-align:center;
	color:#003359;
	line-height:130%;
	}
	
	
.inquiries_box ol{
display: flex;
justify-content:space-between;
flex-wrap: wrap;
list-style-type:decimal;
font-weight:300;
margin-top:20px;
margin-left:14px;
	}
.inquiries_box li{
	width:45%;
	margin-left:14px;
	margin:5px;
	font-size:1.1rem;
	font-weight:500;
	}



a.inq_bt01{
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 65%;
	margin: auto;
	margin-top:20px;
	padding: 1rem 4rem;
	font-size:1.1rem;
	font-weight: bold;
	border: 2px solid #0068B6;
	background: #0068B6;
	color: #fff;
	transition: 0.5s;
}
a.inq_bt01:hover {
	color: #0068B6;
	background: #fff;
}



/*FAQ*/


.faq_tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
   width: 100%;
  margin: 0 auto;}

/*タブのスタイル*/
.faq_tab_item {
  width: calc(100%/3);
  height: 70px;
  border-bottom: 3px solid #59AB36;
  background-color: #d9d9d9;
  line-height: 70px;
  font-size: 1.05rem;
  text-align: center;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
			border-left:solid 1px #fff;
	border-right:solid 1px #fff;
}


.faq_tab_item:nth-child(2) {

	}

.faq_tab_item:hover {
  opacity: 0.75;
		cursor:pointer;
}

/*ラジオボタンを全て消す*/
input[name="faq_tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.faq_tab_content {
  display: none;
  padding: 20px 0 0px 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#faq_tohsei:checked ~ #faq_tohsei_content,
#faq_pipe:checked ~ #faq_pipe_content,
#faq_others:checked ~ #faq_others_content

{
  display: block;
}

/*選択されているタブのスタイルを変える*/
.faq_tabs input:checked + .faq_tab_item {
  background-color: #59AB36;
  color: #fff;
}



.faq_area{
border-radius: 10px;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
background-color:#fff;
margin-top:40px;
border: solid 2px #ccc;
}
/*アコーディオン全体*/
.faq-area{
display:block;
list-style: none;
width: 100%;
margin-top:10px;
line-height:160%;
}

.faq-area li{
margin: 10px 0;
}

.faq-area section {

}

/*アコーディオンタイトル*/
.faq_title {
display:block;
position: relative;/*+マークの位置基準とするためrelative指定*/
cursor: pointer;
font-size:1rem;
font-weight: normal;
padding: 20px 43px 18px 54px;
transition: all .5s ease;
border: 1px solid #ccc;
margin-top:20px;
text-align:left;

background:url(/img/ico_q.png) no-repeat left 12px center;
background-color:#fff;
}

.faq_title img{
margin-right:16px;
}

/*アイコンの＋と×*/
.faq_title::before,
.faq_title::after{
position: absolute;
content:'';
width: 15px;
height: 2px;
background-color: #333;

}
.faq_title::before{
top:48%;
right: 15px;
transform: rotate(0deg);
background-color:#2D56A2;

}
.faq_title::after{    
top:48%;
right: 15px;
transform: rotate(90deg);
background-color:#2D56A2;
}
/*　closeというクラスがついたら形状変化　*/
.faq_title.close::before{
transform: rotate(45deg);
background-color:#FF9933;
}

.faq_title.close::after{
transform: rotate(-45deg);
background-color:#FF9933;
}

/*アコーディオンで現れるエリア*/
.faq-area_box {
    display: none;
    width: 100%;
    box-sizing: border-box;
    border-radius: 3px;
    padding: 40px 40px 40px 60px;
    border: solid 1px #ccc;
    overflow-wrap: break-word;
    font-size: 1rem;
    background: url(/img/ico_a.png) no-repeat left 8px center;
    background-color: #F7F9FD;
}

.faq-area_box p{
color:#0079A2;
padding:30px 20px 30px 58px;
border:solid 1px #FFE399;
border-radius: 6px;
background: #ddd url(/img/ico_a.png) no-repeat left 12px top 34px;
background-color:#fff;
}

.faq-area_box_l {
margin-left:-48.5%;
}


a.btn_04 {
display: block;
text-align: center;
vertical-align: middle;
text-decoration: none;
width: 310px;
margin: auto;
margin-top:15px;
padding: 0.3rem 1.5rem;
font-weight: bold;
border: 2px solid #59AB36;
background: #59AB36;
color: #fff;
border-radius: 100vh;
transition: 0.5s;

}
a.btn_04:hover {
color: #27acd9;
background: #fff;
}


.electrolytic_polishing_img{
	width:100%;
	padding:0 25px 0 25px;
	}

.diagram_features ol{
	list-style-type: decimal;
	margin:40px 0 0 15px;
	}
	
	.diagram_features ol li{
	width:100%;
	margin: 15px 0px 15px 3px;
	}
	
	.diagram_features02 ol{
	list-style-type: decimal;
	margin:0px 0 0 15px;
	}
	
	.diagram_features02 ol li{
	width:100%;
	margin: 10px 0px 10px 3px;
	font-size:0.9rem;
	}
	
	
	
.achievements_box {
    width: 100%;
    display: flex;
    margin-top: 40px;
}

.achievements_box_l{
    width: 40%;

}
.achievements_box_r {
    width: 60%;
    background:none;
    padding: 0px 0px 0px 50px;
				line-height:160%;
}



.plasma_sample{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
margin: 30px 0;
padding-top: 30px;
}
.plasma_sample .item {
width: calc(100% / 4 - 20px);
margin-bottom: 30px;
}
.plasma_sample::before{
  content:"";
  display: block;
width: calc(100% / 4 - 20px);
  order:1;
}
.plasma_sample::after{
  content:"";
  display: block;
width: calc(100% / 4 - 20px);
}


.plasma_sample .item img{
	width:100%;
	height:auto;
padding: 10px 10px;
text-align: center;
border:solid 1px #ccc;
border-radius: 5px; 
	}

.plasma_sample .item p{
	text-align:center;
	font-size:0.8rem;
	font-weight:600;
	margin-top:7px;
	}


.plasma_explanation{
	width:100%;
word-wrap: break-word;
    margin:40px 0 0 0;
    padding: 30px;
    border: 1px solid #ddd;
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
				color:#002037;
	}

ol.number_list {
list-style-type: decimal;
margin-left:20px;
}
ol.number_list li  {
	margin:8px 0 8px 0;
	line-height:150%;
	
}



/*在庫リスト表スタイル*/


.inventory_list_area{
	width:100%;
	text-align:center;
	background-color:#F8F8F8;
	padding: 20px;
	border:solid 1px #D9D9D9;
	 border-radius: 4px;
	}

.inventory_list_area table{
	margin:0 auto;
	}

table.inventory_list_area_table {
    margin-right: auto;
    margin-left: auto;
    border: 1px solid #999;
    border-spacing: 0;
    width: 100%!important;

				border-collapse: collapse; 
    color: #333;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
}

.steel_pipe_flows_area{
display: flex;
flex-wrap: wrap;
justify-content:center;
width: 100%;
margin: 30px 0;
padding-top: 30px;
	}


.steel_pipe_flows_area .item {
width: calc(100% / 2);
margin: 0px;
padding:0px;
text-align: center;
}	
	
.president_message_area{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 30px 0;
padding-top: 30px;
}

.president_message_l{
width:60%;
margin-bottom: 30px;

}
.president_message_r{
width:32%;
margin-bottom: 30px;

text-align: center;
}

.president_message_r img{
	border:solid 1px #F2F2F2;
 border-radius: 10px;
}

.president_message_l h2{
	font-size:1.1rem;
	line-height:145%;
	}
	
	.president_message_l p{
	line-height:145%;
	margin-top:14px;
	}
	
	
.president_name{
	margin-top:16px;
	font-size:1.1rem;
	line-height:100%;
	text-align:right;
	}
	.president_name i{
	margin-top:16px;
	font-size:0.8rem;
	display:block;
	margin-bottom:-3px;
	font-style:normal;
	}
	
	

.company_profile{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 30px 0;

padding-top: 30px;	
	}
	
.company_profile_l{
width:100%;
}
/*
.company_profile_r{
width:30%;
overflow: hidden;
position: relative;
}
*/

.company_profile_r{
width: 30%;
background-position: center;
background-size: cover;
background-image: url(/img/company_entrance.jpg);
transform: translate3d(-10.2116px, 0px, 0px);
}


li.s-company_item {
padding: 20px 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
border-top:dotted 1px #ccc;

}

li.s-company_item:nth-child(odd){
	background-color:#F8F2EB;
	}


li.s-company_item:last-child{
	border-bottom:dotted 1px #ccc;
	
	}

.s-company_label {
font-size: 1rem;
line-height: 2;
width: 28%;
display:inline-block;
}
.s-company_body{
width:72%;
margin: 0;

display:inline-block;
}
				
				
.s-company_text{
	width:100%;
	display:block;
	word-wrap: break-word;
	}			


.location_area{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
padding-top: 30px;	
	}
.location_box{
width: calc(100% / 3 - 5px);
margin:15px 0 15px 0;
background-color:#FAF8F5;

	}
.location_details{
	width:100%;
	padding:20px;
	
	}	
.location_details h2{
	margin-bottom:8px;
	font-size:1.15rem;
  padding: 0.5em 0;
		margin-bottom:10px;
  border-bottom: solid 2px #999;
}


	

.g_map_btn a {
display: block;
padding: 0.5em 2em;
width: 100%;
color: #fff;
text-align:center;
font-size:0.9rem;
letter-spacing: 0.12em;
background: url(/img/blank_link_w.png) right 20px center no-repeat;
background-color: #ED7700;
margin-top:10px;
border-radius: 3px;
border:solid 1px #ED7700;
}


.g_map_btn a:hover {
display: block;
padding: 0.5em 2em;
width: 100%;
color: #ED7700;
text-align:center;
font-size:0.9rem;
background: url(/img/blank_link_b.png) right 20px center no-repeat;
background-color: #fff;
border:solid 1px #ED7700;
}


.location_gmap {
    position: relative;
    width: 100%;
    height: 0;
    margin-top: 0px;
    padding-top: 65%;
}

.location_gmap iframe {
    width: 100%;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    transition: 0.7s;
}

.location_gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


.location_gmap iframe:hover{
  filter: none;
  -webkit-filter: none;
}



.delivery_record{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
padding-top: 30px;	
	}
.delivery_record .item{
width: calc(100% / 3 - 5px);
margin:10px 0 10px 0;
	}

.delivery_record .item ul{
	}
.delivery_record .item ul li{
	padding:7px 0 7px 0;
	font-size:1rem;
	letter-spacing: -0.03em;
	}

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

.company_history_box{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
margin: 0px 0;
position: relative;
padding:12px 0 12px 5px;

}
.company_history_box_l{
width:20%;
padding-top:6px;
padding-left:3px;
}
.company_history_box_r{
width:80%;
padding-left:10px;
}


.company_history_box::before {
background-color: rgba(238, 237, 230, 0.9);
}
/*
.company_history_box::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 15px;
height: 100%;
background-color: rgba(255, 255, 255, 0.9);
}
*/
.company_history_box:first-child::before {
border-radius: 50px 50px 0px 0px; 
}
.company_history_box:last-child::before {
border-radius: 0px 0px 50px 50px; 
}

.company_history_box_l h3{
	color:#ED7700;
	}
/*
.company_history_box_l h3::before {
content: "";
position: absolute;
top: 22px;
left: 3px;
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #0066CC;

}
*/





.recruit_tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
   width: 100%;
  margin: 0 auto;}

/*タブのスタイル*/
.recruit_tab_item {
  width: calc(100%/2);
  height: 70px;
  border-bottom: 3px solid #ED7700;
  background-color: #d9d9d9;
  line-height: 70px;
  font-size: 1.2rem;
  text-align: center;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.recruit_tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="recruit_tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.recruit_tab_content {
  display: none;
  padding: 40px 0 40px 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #career_content,
#programming:checked ~ #new_graduate_content
{
  display: block;
}

/*選択されているタブのスタイルを変える*/
.recruit_tabs input:checked + .recruit_tab_item {
  background-color: #ED7700;
  color: #fff;
}


.recruit_tab_content h4 {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    font-size: 1.2rem;
    height: 2.2em;
    padding: 25px 15px;
    margin: 50px 0px 0px 0px;
    color:#fff;
    background-color: #D96C00;
}



.recruit_requirements {
  border-collapse: collapse;
  width: 100%;
		margin-top:20px;
}
.recruit_requirements td {
  padding: 20px 20px 20px 50px;
		line-height:150%;
		border:none;
}
.recruit_requirements th {
  color: #ED7700;
  font-weight: bold;
  text-align: left;
  width: 20%;
  min-width: 4em;
  position: relative;
		padding: 20px 20px 20px 20px;
}
.recruit_requirements th::after {
  content: '';
  background-color: #c1c7c6;
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  width: 1px;
  height: 60%;
}



.preparation{
	width:100%;
	text-align:center;
	margin-top:50px;
	margin-bottom:80px;
	}
.preparation p{
	font-size:1.1rem;
	color: #666;
	}
.preparation h2{
	display:inline-block;
	margin:0 auto;
	font-size:2.8rem;
	color: #666;
	letter-spacing: 0.4rem;
	padding: 30px 70px 30px 70px;
	margin-top:25px;
	border:solid 1px #666;
	font-weight:normal;
	}
.preparation h3{
	font-size:1.1rem;
		margin-top:20px;
		font-weight:normal;
		color: #666;
	}

.preparation h3 {
    display: inline-block;
    position: relative;
    padding: 0 2.5em;
    color: #666;
				margin-top:40px;
}

.preparation h3::before,
.preparation h3::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 45px;
    height: 1px;
    background-color: #666;
}

.preparation h3::before {
    left: -10px;
}

.preparation h3::after {
    right: -10px;
}



.page-numbers{
text-align: center;
list-style-position: inside;
list-style-type: none;
margin-top:20px;
}

.page-numbers li {
display: inline-block;
margin:0;


}
.page-numbers a {
display: inline-block;
border: 1px solid #ccc;
background: #fff;
color:#333;
padding: 12px 12px 12px 12px;
}

.pagination a.next{
background-color:transparent;
background:none !important;
border:none!important;
}

.pagination a.prev{
background-color:transparent;
background:none !important;
border:none!important;
}

.page-numbers	.current{
color:#fff;
background-color:#59AB36;
border: 1px solid #59AB36;
padding: 10px 12px 10px 12px;
}







.welding_achieve{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
margin: 30px 0;
padding-top: 30px;
}
.welding_achieve .item {
width: calc(100% / 3 - 20px);
margin-bottom: 30px;
}
.welding_achieve::before{
  content:"";
  display: block;
width: calc(100% / 3 - 20px);
  order:1;
}
.welding_achieve::after{
  content:"";
  display: block;
width: calc(100% / 3 - 20px);
}


.welding_achieve .item img{
	width:100%;
	height:auto;
padding: 10px 10px;
text-align: center;
border:solid 1px #ccc;
border-radius: 5px; 
	}

.welding_achieve .item p{
	text-align:center;
	font-size:0.8rem;
	font-weight:600;
	margin-top:7px;
	}


.listfaq_area{
	margin:50px 0 70px 0
	}



.hierarchy_main_catch {
width: 100%;
margin: 0 -1px;
height:auto;
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
object-position: 0px 0px;
}

.hierarchy_main_catch .hierarchy_main_direction{
display: inline-block;
width:100%;
text-align:center;
font-size:1.1rem;
font-weight:500;
letter-spacing: 0.05em;
color:#fff;
position: absolute;
bottom:0px;
z-index: 2;
text-shadow: 3px 3px 2px #333, -3px 3px 2px #333;
background: rgba(0, 46, 66, 0.85);
padding:16px 0 16px 0;
}


.hierarchy_main_catch .hierarchy_main_direction_home{
display: inline-block;
width:100%;
text-align:center;
font-size:1.2rem;
font-weight:500;
letter-spacing: 0.05em;
color:#fff;
position: absolute;
bottom:0px;
z-index: 2;
text-shadow: 3px 3px 2px #333, -3px 3px 2px #333;
background: rgba(52, 53, 101, 0.9);
padding:16px 0 16px 0;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.hierarchy_main_catch .hierarchy_main_direction_home a{
	font-size:1.2rem;
font-weight:500;
letter-spacing: 0.05em;
color:#fff;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	}


.faq_tl{
	font-size:1.35rem;
vertical-align:middle;
font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;

	}
.faq_ts{
	font-size:0.75rem;
		
		margin-top:-5px;
		padding-left:12px;
	}
.faq_tsa{
	font-size:1.2rem;
	vertical-align:bottom;
	}


.hierarchy_main_catch .hierarchy_main_direction_s{
display: inline-block;
width:100%;
text-align:center;
font-size:1rem;
font-weight:500;
letter-spacing: 0.1em;
line-height:120%;
color:#fff;
position: absolute;
bottom:0px;
z-index: 2;
text-shadow: 3px 3px 2px #333, -3px 3px 2px #333;
background: rgba(0, 46, 66, 0.85);
padding:6px 10px 6px 10px;
}



.hierarchy_main_catch .hierarchy_main_img{
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
z-index: 1;
}

.hierarchy_main_catch .hierarchy_main_img img{
width: 100%;
height: 100%;
display: block;
margin: 0;
object-fit: cover;

}

ul.inventory_list_bt {
    position: relative;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

ul.inventory_list_bt li {
    margin: 10px 5px 5px 5px;
    display: block;
    width: 32% !important;
    border: solid 1px #999;
    background-color: #fff;
    font-size: 0.9rem;
    transition: all 0.2s ease-in-out;
    border-radius: 3px;
    vertical-align: middle;
}

ul.inventory_list_bt li a {
    width: 100%;
    height: 100%;
    display: block;
    padding: 14px 9px 12px 9px;
    display: inline-block;
    font-size: 0.8rem;
    text-align: center;
    transition: all 0.2s ease-in-out;
    line-height: 130%;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}



ul.inventory_list_bt li a:hover{
	color:#fff;
	}


.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-flat {
  overflow: hidden;
  padding: 1.5rem 6rem;
  border-radius: 0;
  background: #fff;
}



a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 30px;
  width: 150%;
  height: 600%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-80%) translateY(-70%) rotate(135deg);
  transform: translateX(-80%) translateY(-70%) rotate(135deg);
  background: #00508A;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(-27%) translateY(-25%) rotate(135deg);
  transform: translateX(-27%) translateY(-25%) rotate(135deg);
		color:#fff;
}

/**/

a.btn-flat02 {
  overflow: hidden;
  padding: 1.5rem 6rem;
  border-radius: 0;
  background: #fff;
}


a.btn-flat02 span {
  position: relative;
}

a.btn-flat02:before {
  position: absolute;
  top: 0;
  left: 30px;
  width: 150%;
  height: 600%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-91.3%) translateY(-70%) rotate(135deg);
  transform: translateX(-91.3%) translateY(-70%) rotate(135deg);
  background: #00508A;
}

a.btn-flat02:hover:before {
  -webkit-transform: translateX(-17%) translateY(-25%) rotate(135deg);
  transform: translateX(-17%) translateY(-25%) rotate(135deg);
		color:#fff;
}



.achievement_area{
	width:900px;
	margin:0 auto;
	margin-top:40px;
	}
	
.img_achievement_box{
	width:100%;
		max-width: 860px;
		margin:0 auto;
		margin-top:40px;
	height:auto;
	
	padding: 20px 10% 20px 10%;
	border-radius: 10px;
/*background-image: linear-gradient(#ffffff, #D0D0D0);*/
background-color:#fff;
	}
	
.img_achievement_box img{
	width:100%;
	height:auto;
	border-radius: 6px;
	
	}
	
.img_achievement_box p{
	font-size:1.15rem;
	line-height:150%;
	margin-top:15px;
	}
	
.table_achievement_box{
	width:100%;
			max-width: 860px;
					margin:0 auto;
	padding:10px;
	margin-top:20px;
	background-color:#fff;
	border-radius: 10px;
	box-shadow: 0 0 8px #E5E5E5;
	}

.table_achievement {
  border-collapse: collapse;
  width: 100%;
}
.table_achievement th, .table_achievement td {
  border: 2px solid #fff;
  background-color: #E9F7E1;
		font-size:1.05rem;
		font-weight:200;
  padding: 0.5em;
}
.table_achievement th {
  background-color: #5BB431;
		font-size:1.05rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  width: 20%;
  min-width: 4em;
}

.pagination {
display: flex;
justify-content: center;
text-align: center;
margin-top:20px;


}

.page-numbers{
text-align: center;
list-style-position: inside;
list-style-type: none;
padding:12px 0 12px 0;
}

.page-numbers li {
display: inline-block;
margin:0;


}
.page-numbers a {
display: inline-block;
padding: 2px 8px 2px 8px;
border: 1px solid #ccc;
background: #fff;
color:#333;

}
.page-numbers span {

}

.pagination a.next{
background-color:transparent;
background:none !important;
border:none!important;
}

.pagination a.prev{
background-color:transparent;
background:none !important;
border:none!important;
}

.page-numbers	.current{
color:#fff;
background-color:#ED7700;
padding: 4px 8px 4px 8px;
border: 1px solid #ED7700;
}

.purchaselist_pagenation{
	width:100%;
	text-align:center;
	}
.purchaselist_pagenation .page-numbers{
	border:solid 1px #E6E6E6;
	padding: 3px 10px 3px 10px;
	}

.purchaselist_pagenation .current{
	background-color:#3C6;
	color:#fff;
	}

.purchaselist_pagenation .next{
		border:solid 1px #E6E6E6!important;
	padding: 3px 10px 3px 10px;
	}



.move_bg{
	position:relative;
  width: 100%;
	background: linear-gradient( 135deg, rgba(29,55,17, 0.8), rgba(0,0,0, 0.9)),
  url(/img/move_bg.jpg);
  background-size: cover;
}
.move_bg::before {
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    background: inherit;
    filter: blur(2px) brightness(85%);
    content: '';
    z-index: 1;
}
.design_move_content{
	/*width:1060px;*/
	width:100%;
	max-width: 860px;
	margin:0 auto;
	padding:60px 0 60px 0;
	display:block;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
	}
.mv {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
}
.mv-wrap {
position: relative;
height: 490px;
cursor: pointer;
}
.mv-bg {
display: block;
width: 100%;
height: 490px;
position: absolute;
top: 0;
left: 0;
background-color: rgba(0, 30, 0, 0.1);
z-index: 1;
}
video {
display: block;
width: 100%;
height: 490px;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
z-index: 2;
border:solid 2px #333;
border-radius: 10px;
}
.mv:after {
position: absolute;
content: "";
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.2);
background-image: radial-gradient(black 20%, transparent 20%), radial-gradient(black 20%, transparent 20%);
background-size: 4px 4px;
background-position: 0 0, 2px 2px;
}


.top_equipment {
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
padding-top: 40px;
}
.top_equipment .item{
width: calc(100% / 2 - 40px);
margin-bottom: 30px;
padding: 0px 0px;
text-align: center;
}
.top_equipment .item h3{
	font-size:1.5rem;
	border-bottom:solid 1px #666;
	padding-bottom:10px;
	}
	.top_equipment .item p{
		margin-top:20px;
		height:96px;
		line-height:160%;
		text-align:left;
	}
	
	


.production_bg{
	width:100%;
	padding:10px 40px 20px 40px;
	background-color:	#F4F3EB;
border-radius: 10px;
margin-top:30px;
	}

.production_bg h2 {
padding: 15px 10px 15px 20px;
font-size: 1.05rem;
color: #4F9630;
background:#F0FAEB;
margin-top:15px;
border: solid 1px #D7F2CA;
}

ul.cp_list {
  padding: 0.5em;
		margin-top:15px;
  list-style-type: none;
}
ul.cp_list li {
  position: relative;
  padding: 15px 10px 15px 40px;
  margin-bottom:5px;
  border-bottom: 1px solid #bbb;
		line-height:150%;
}
ul.cp_list li:after,
ul.cp_list li:before{
  position: absolute;
  content:'';
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
ul.cp_list li:before {
top: 1.1em;
  left: 0;
  width: 15px;
  height: 15px;
  background: #59AB36;
}
ul.cp_list li:after {
  top: 1.55em;
  left: 0.55em;
  width: 10px;
  height: 10px;
  background: #AFDF9B;
}



/**/

ul.pdt{
  counter-reset:list;
  list-style-type:none;

  font: 14px/1.6 'arial narrow', sans-serif;
  padding: 0 5px 0 5px;
		margin-top:15px;
}
ul.pdt li{
  position:relative;
  padding: 6px 0 6px 20px;
  margin: 7px 0 7px 0px;
    font-size:1rem;
  line-height: 150%;
		text-align:left;
  border-bottom: dashed 1px #F6A38B;
}
ul.pdt li:before{
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #F6A38B;
  top: 17px;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/**/




.technical_box{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 30px 0 30px 0;
}

.technical_box .item {
width: calc(100% / 3 - 15px);
margin-bottom: 30px;
padding: 20px 20px 20px 20px;
background-color: #F4F3EB;
border-radius: 10px;
}



.technical_box .item h2{
padding: 10px 10px 10px 0px;
    font-size: 1.05rem;
    font-weight: 500;
    line-height: 130%;
    text-align: center;
    color: #4F9630;
    background: #F9FDF7;
    margin-top: 5px;
    border: solid 1px #D7F2CA;
				}

.technical_box:before{
	content:"";
display: block;
width: calc(100% / 3 - 15px);
margin-bottom: 0px;
padding: 0px 10px;
order:1;
}


.technical_box:after{
content:"";
display: block;
width: calc(100% / 3 - 15px);
margin-bottom: 0px;
padding: 0px 10px;
}

.technical_titles {
position: relative;
padding: 10px 10px 10px 20px;
border-bottom: 1px solid #ccc;
font-size:1.3rem;
font-weight:500;
margin-top:50px;
margin-bottom:20px;
font-weight:600;
}

.technical_titles::before {
position: absolute;
top: 0;
left: .3em;
transform: rotate(55deg);
height: 11px;
width: 12px;
background: #AFDF9B;
content: '';
}

.technical_titles::after {
position: absolute;
transform: rotate(15deg);
top: .6em;
left: 0;
height: 8px;
width: 8px;
background: #59AB36;
content: '';
}

.technical_titless {
position: relative;
padding: 10px 10px 0px 0px;
font-size:1.2rem;
margin-top:30px;
margin-bottom:10px;
font-weight:500;
}

/**/

.technical_titles02 {
position: relative;
padding: 10px 10px 10px 20px;
border-bottom: 1px solid #ccc;
font-size:1.2rem;
font-weight:600;
color: #333333;
margin-top:-10px;
margin-bottom:20px;
}

.technical_titles02::before {
position: absolute;
top: 0;
left: .3em;
transform: rotate(55deg);
height: 11px;
width: 12px;
background: #AFDF9B;
content: '';
}

.technical_titles02::after {
position: absolute;
transform: rotate(15deg);
top: .6em;
left: 0;
height: 8px;
width: 8px;
background: #59AB36;
content: '';
}

/**/
.technical_titles03 {
position: relative;
padding: 10px 10px 10px 20px;
font-size:1.2rem;
color: #333333;
margin-top:40px;
margin-bottom:0px;
border-bottom:dotted 2px #ccc;

}


.technical_titles03::before {
position: absolute;
top: 0;
left: .3em;
transform: rotate(55deg);
height: 11px;
width: 12px;
background: #AFDF9B;
content: '';
}

.technical_titles03::after {
position: absolute;
transform: rotate(15deg);
top: .6em;
left: 0;
height: 8px;
width: 8px;
background: #59AB36;
content: '';
}



.technical_titles03_f{
position: relative;
padding: 10px 10px 10px 20px;
font-size:1.2rem;
color: #333333;
margin-top:30px;
margin-bottom:0px;
border-bottom:dotted 2px #ccc;

}
.technical_titles03_f::before {
position: absolute;
top: 0;
left: .3em;
transform: rotate(55deg);
height: 11px;
width: 12px;
background: #AFDF9B;
content: '';
}

.technical_titles03_f::after {
position: absolute;
transform: rotate(15deg);
top: .6em;
left: 0;
height: 8px;
width: 8px;
background: #59AB36;
content: '';
}





.colum_equal2{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 0px 0;
padding-top: 20px;

	}
.colum_equal2 .item {
width: calc(100% / 2 - 30px);
margin-bottom: 0px;
padding: 0px;

}
.colum_equal2 .item img{
	width:100%;
	height:auto;

}




.colum_equalrs{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 0px 0;
padding-top: 4px;

	}
.colum_equalrs .item_l {
width: 69%;
margin-bottom: 0px;
padding: 0px;
}

.colum_equalrs .item_r {
width: 28%;
margin-bottom: 0px;
padding: 0px;
}

.colum_equalrs .item img{
	width:100%;
	height:auto;

}



.Inspection_txts{
	font-size:0.85rem;
	color:#285115;
	margin:4px 0 0 0;
	font-weight:600;
	line-height:100%!important;
	}


.colum_inspection{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 0px 0;
padding-top: 30x;

	}
.colum_inspection .item {
width: 100%;
margin-bottom: 0px;
padding: 0px;
overflow:hidden;
}
.colum_inspection .item img{
	width:30%;
	height:auto;
	margin-top:0px;
	float:right;
}
.colum_inspection .item p{
	display:block;
	width:58%;
	height:auto;
	margin-top:0px;
	float:left;
}

.colum_inspection{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 0px 0;
padding-top: 0px;
	}


.technical_titles_s {
    position: relative;
    padding: 10px 10px 10px 20px;
 			font-size:1.3rem;
font-size:1.3rem;
font-weight:500;
				margin-top:40px;
				margin-bottom:20px;
				border-bottom:solid 1px #ccc;
}

.technical_titles_s::before {
    position: absolute;
    top: 0;
    left: .3em;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #AFDF9B;
    content: '';
}

.technical_titles_s::after {
    position: absolute;
    transform: rotate(15deg);
    top: .6em;
    left: 0;
    height: 8px;
    width: 8px;
    background: #59AB36;
    content: '';
}




.technical_titles_ss {
    position: relative;
    padding: 10px 10px 10px 0px;
font-size:1.1rem;
font-weight:500;
				margin-top:10px;
				margin-bottom:30px;
				border-bottom:solid 1px #ccc;
}

.technical_titles_ss_f{
    position: relative;
    padding: 10px 10px 10px 0px;
font-size:1.1rem;
font-weight:500;
				margin-top:20px;
				margin-bottom:30px;
				border-bottom:solid 1px #ccc;
}




.colum_equipment2{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 40px 0 0px 0;
padding-top: 0px;

	}
.colum_equipment2 .item {
width: calc(100% / 2 - 30px);
margin-bottom: 0px;
padding: 0px;

}


.equipment_bfaf{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 50px 0 50px 0;
padding-top: 0px;
background-color:#EFEFEF;
border-radius: 10px;
padding:15px;
	}

.equipment_bfaf .item_l {
width:48%;
text-align:center;
margin-bottom: 0px;
padding: 0px;
background-color:#B4D7EC;
padding:20px;
border-radius: 6px;
}
.equipment_bfaf .item_c {
width:4%;
text-align:center;
margin-bottom: 0px;
padding: 0px;
position: relative;
}
.equipment_bfaf .item_r {
width:48%;
text-align:center;
margin-bottom: 0px;
padding: 0px;
background-color:#F7DFDF;
padding:20px;
border-radius: 6px;
}

.arrow-right {
	position:absolute;
  display: inline-block;
  width: 22px;
  height: 22px;
  border-top: 6px solid #F90;
  border-right: 6px solid #F90;
  transform: rotate(45deg);
		top:45%;
		left: calc(50% - 16px);
}


.titles_fbb {
  				font-size:1.3rem
}

.titles_fbb:first-letter {
    color: #2874A2;
    font-size: 1.5em;
}

.titles_fbo {
  				font-size:1.3rem
}

.titles_fbo:first-letter {
    color: #D86363;
    font-size: 1.5em;
}

.equipment_bfaf p{
	margin-top:10px;
	background-color: rgba(255,255,255,0.65);
	padding:10px;
	line-height:130%;
	}

.heat_exchange{
	display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 30px 0 30px 0;
padding-top: 0px;
	}
	
	
	.heat_item{
width: calc(100% / 3 - 14px);
text-align: center;
padding-bottom:15px;
background-color:#F6F6F6;
		}
.heat_item h4{
	font-size:1.15rem;
	margin-top:10px;
	}
.heat_item p{
	font-size:1rem;
	line-height:140%;
	margin-top:10px;
	text-align:left;
	padding:0px 10px 0px 10px;
	}
	
	
table.equipment_list_table{
  border-collapse: collapse;
		margin-top:15px;
}
table.equipment_list_table th {
  background: #ccc;
}

table.equipment_list_table th, td {
  padding: 12px 15px 12px 15px;
		line-height:130%;
}

table.equipment_list_table th, td + td + td {
	text-align:right;
}

table.equipment_list_table tr:nth-child(even) {
  background: #efefef;
}




.equipment_img{
	margin-top:10px!important;
	}

.equipment_img_bg{
background:transparent url(/img/transportation01.jpg) no-repeat center center;
background-size:cover;
}




.large_pipe_list ul {
  list-style: none;
		width:100%;
}
.large_pipe_list li {
  position: relative;
		padding:5px 0 5px 14px;
}
.large_pipe_list li::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #666;
  border-radius: 5px;
}


.large_pipe_list{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;

	}

.large_pipe_list .item{
	position:relative;
width: calc(100% / 3 - 35px);
margin-bottom: 10px;
padding: 10px 0px;
text-align: center;
	}



.large_pipe_list::before{
content:"";
display: block;
width: calc(100% / 3 - 35px);
margin-bottom: 0px;
padding: 0px 10px;
order:1;
}
.large_pipe_list::after{
content:"";
display: block;
width: calc(100% / 3 - 35px);
margin-bottom: 0px;
padding: 0px 10px;
}



.large_pipe_list .item:after {
position: absolute;
top: 0;
bottom: 0;
right: -46px;
margin: auto;
content: "";
vertical-align: middle;

display: inline-block;
width: 36px;
height: 61.3px;
background: #71d591;
clip-path: polygon(0 21.4%, 35.7% 21.4%, 35.7% 0, 100% 50%, 35.7% 100%, 35.7% 78.6%, 0 78.6%);
}

.large_pipe_list .item:nth-child(3)::after,.large_pipe_list .item:nth-child(6)::after,.large_pipe_list .item:nth-child(8)::after{
	display:none;
	background: #fff;
	}

.large_pipe_list .item h3{
	font-size:1.1rem;
	margin-top:5px;
	}



.various_structure_list{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
padding-top: 20px;
	}

.various_structure_list .item{
	position:relative;
width: calc(100% / 4 - 20px);
margin-bottom: 10px;
padding: 7px;
    border: solid 1px #ccc;
    border-radius: 5px;
text-align: center;
	}
	
	.various_structure_list .item h3{
		padding:10px 0 10px 0;
				background-color: #eee;
				font-size:0.85rem;
				
}

.various_structure_list::before{
content:"";
display: block;
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 10px;
order:1;
}
.various_structure_list::after{
content:"";
display: block;
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 10px;
}





.refine_search{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
padding-top: 20px;
	}

.refine_search .item{
	position:relative;
width: calc(100% / 4 - 10px);
margin-bottom: 10px;
padding: 0px;
text-align: center;
border-left:solid 1px #999;
border-bottom:solid 1px #999;
border-right:solid 1px #999;
	}


.refine_search .item h2{
	font-size:1.2rem;
	color:#fff;
	background-color:#333;
	border-left:solid 1px #333;
	border-right:solid 1px #333;
	padding:10px 0 10px 0;
	margin-top:0px;
	}

.refine_search .item select{
      width:90%;
						margin:0 auto;
						margin: 20px 0 20px 0; 
    }
				
.refine_search_button {
  display       : inline-block;
  border-radius : 6px;  
  font-size     : 1.1rem; 
  text-align    : center; 
  cursor        : pointer;
  padding       : 12px 56px;
  background    : #59AB36;
  color         : #ffffff;
  line-height   : 1em; 
  transition    : .3s;
  border        : 2px solid #59AB36; 
}
.refine_search_button:hover {
  color         : #59AB36;
  background    : #ffffff;
}

.refine_search_bt{
	display:block;
	width:100%;
	text-align:center;
	margin-top:30px;
	}
	
	
	/**/
	
.searchform_box{
	height:48px;
	width:300px;
  padding:0.5em;
  border:1px solid #ddd;
  font-size:1em;
	}
	
	.searchform__btn{
		height:48px;
  padding:0.5em;
  border:1px solid #ddd;
  font-size:1em;
		}
.refine_btm{
	margin-bottom:70px!important;
	}

/*
.achieve_hd{
	background-color:#555;
	color:#fff;
	margin-top:25px;
	font-size:1.1rem;
	padding: 7px 0px 5px 30px;
	}
*/	

.achieve_hd {
    font-weight: bold;
    padding: 0.5em 1em;
				border:solid 5px #333;
    background-color: #333;
    color: #fff;
    margin-top: 25px;
    outline-offset: 5px;
    background: linear-gradient(-45deg, transparent 0 20px, #333 20px calc(100% - 20px)), repeating-linear-gradient(-45deg, #fff 0 2px, #333 2px 6px);
}

.achieve_bt_link{
display: flex;
flex-wrap: wrap;
justify-content:space-between;
width: 100%;
margin: 0px 0 0px 0;
padding: 3px 15px 15px 15px;
background-color:#F5FCF3;
border:solid 1px #C6EFB6;
border-top:none;
}
.achieve_bt_link .item {
width: calc(100% / 3 - 10px);
margin-bottom: 0px;
padding: 5px;
margin-top:10px;
background-color:#F1F1F1;
text-align: center;
	display:block;
	border:solid 1px #999;
	overflow:hidden;
	transition: 0.5s; 
}
.achieve_bt_link::after{
content:"";
display: block;
width: calc(100% / 3 - 10px);
margin-bottom: 0px;
padding: 0px 10px;
}

.achieve_bt_link .item img{
	display:block;
	float:left;
	width:35%;
}

.achieve_bt_link .item .txtbox{
		display:block;
position:relative;
	float:left;
	width:65%;
	height:100%;
	}
.achieve_bt_link .item p{
		display:inline-block;
		width:85%;
		font-weight:600;
position: absolute;
line-height:130%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
	background-image: linear-gradient(#fff, #fff);
  background-repeat: no-repeat;
  background-position: bottom right; /* 下線の初期位置 */
  background-size: 0 1px; /* 下線のサイズ（横幅、高さ） */
		transition: background-size 0.6s;
}

.achieve_bt_link .item img{
	border:solid 1px #F1F1F1;
	}

.achieve_bt_link .item:hover{
	background-color:#666;
		border:solid 1px #666;
	}
.achieve_bt_link .item:hover p{
	color:#fff;
	background-position: bottom left; /* 下線のホバー時位置 */
  background-size: 100% 1px; /* 下線の横幅を100%にする */
	}
	
	
.achieve_bt_link .item:hover img{
	border:solid 1px #ccc;
	}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


.page_catch {
    width: calc(100% + 2px);
    margin: 0 -1px;
    height: 400px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

/*
.page_catch{
	width: calc(100% + 2px);
    margin: 0 -1px;
    height: 326px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
*/




.page_catch {
width: calc(100% + 2px);
margin: 0 -1px;
height: 210px;
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-top: 80px;
object-position: 0px 0px;
}




.page_catch .page_catch_direction{
display: inline-block;
text-align:center;
font-size:2.4rem;
font-weight:normal;
letter-spacing: 0.05em;
color:#fff;
position: absolute;
top: 45%;
z-index: 2;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
text-shadow: 3px 3px 2px #333, -3px 3px 2px #333;
}

.page_catch .page_catch_direction{
	display:none;
	}


.page_catch .page_catch_img{
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
z-index: 1;
}

.page_catch .page_catch_img img{
width: 100%;
height: 100%;
display: block;
margin: 0;
object-fit: cover;

}



.content_header {
	width:100%;
    display: flex;
  justify-content: space-between;
    flex-wrap: wrap;
				margin-top:50px;
}

.content_header .content_header_title{
width: 65%;
    line-height: 150%;
    font-size: 2.2rem;
    font-weight: 600;
    margin: 0 !important;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}



.content_header .txt_content {
    width: 24%;
    padding-right: 45px

}



.content02_header {
	width:100%;
    display: flex;
  justify-content: space-between;
    flex-wrap: wrap;
				margin-top:50px;
}

.content02_header .content02_header_title{
width: 60%;
    line-height: 150%;
    font-size: 2.3rem;
    font-weight: 600;
    margin: 0 !important;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}



.content02_header .txt02_content {
    width: 32%;

}










.messag_box{
	width:90%;
	margin:0 auto;
	margin-top:80px;
	}
	/*
.messag_box h2 {
    clear: both;
    font-size: 1.6rem;
    line-height: 130%;
    letter-spacing: 0.05em;
    font-weight: normal;
    margin: 60px 0 30px;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: subpixel-antialiased;
    transform: rotate(0.028deg);
    -o-transform: rotate(0.028deg);
    -ms-transform: rotate(0.028deg);
    -moz-transform: rotate(0.028deg);
    -webkit-transform: rotate(0.028deg);
				font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
}
*/
.messag_box p{
	font-size:1.1rem;
	line-height:190%;
	margin-top:25px;
 font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	}


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

.company_overview dl {
    width: 1050px;
    margin: 0 auto;
				
}

.company_overview dt {
    float: left;
    width: 32%;
    padding-top: 40px;
    padding-left: 40px;
    font-size: 1rem;
				font-weight:600;
				line-height:160%;
}


.company_overview dd {
	width: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 32%;
    border-bottom: 1px dotted #999999;
    font-size: 1rem;
				line-height:160%;
}


.overview_txt_gree{
	color:#096;
	}

.company_list{
	width:100%;
	margin-top:16px;
	}

.company_list ul{
	 list-style:  none;      /* デフォルトのアイコンを消す */
    margin:  0;             /* デフォルト指定上書き */
    padding: 0;      
	}

.company_list ul li{
	line-height:160%;
	padding-left:13px;
	position: relative;
	margin:7px 0 7px 0;
	}
	
.company_list ul li:before {
    content:  "";
				position:absolute;
    width:  8px;
    height:  8px;
    display:  inline-block;
    background-color: #666;
    border-radius:  50%;
				margin-right:5px;
top: .5rem;
left:0;

				}
	
	
	

/* ==========================
  モーダル（ポップアップ）
========================== */


 @keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }



.modal-span {
cursor: pointer;
text-decoration: underline;
text-decoration:none;
color:#2AA738;
}
.modal-outer {
position: fixed;
top: 0;
left: 0;
display: none; 
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.8);
z-index: 10000; 
animation: fadeIn .5s ease-in-out;
}
.modal-inner {
position: absolute;
top: 6%;
bottom: 5%;
left: 0;
right: 0;
margin: auto;
overflow-y: auto;
width: 85%;
max-width:1000px;
height:auto;
padding: 0px 0px; 
}


.modal-inner::-webkit-scrollbar {
 display:none;
}


.modal-inner-container{
	width:100%;
	}
	.modal-inner-container img{
	width:100%;
	height:auto;
	}

.show {
display: block; 
}
.modal-inner-header {
margin-bottom: 35px;
}
.close-btn-top {
cursor: pointer;
color: #fff;
font-size: 3em;
position: absolute;
top: 0px;
right: 5px;
}
.close-btn-bottom {
margin-bottom: 0;
width:150px;
margin:0 auto;
text-align: center; 
}
.close-btn-bottom button {
padding: 5px 10px; 
cursor: pointer;
}
.bold {
  font-weight: bold; 
}
	


.login h1 a {
    background-image: url(/img/logo01.png);
    background-size: contain;
    height: 56px;
    width: 200px;
}

.conf_txt{
	font-size:1.15rem!important;
	color:#333!important;
	line-height:160%;
	}
.topics_list{
	margin-top:20px;
	padding-top:20px;
	border-top:solid 1px #ccc;
	line-height:160%;
	}
.topics_list li{
	margin: 8px 0px 8px 0px;
	padding: 8px 0px 8px 0px;
	border-bottom:solid 1px #ccc;
		}
.topics_list li a{
	padding-bottom:20px;
	}	

.article_date{
	margin-top:-1px;
	margin-bottom:23px;
	font-size:0.9rem;
	color:#666;
	width:100%;
	text-align:right;
	}
		
.topics_area p{
	margin:15px 0 7px 0;
	line-height:170%;
	}
	
table.tabl_own_products {
display: table;
border-collapse: separate;
border-spacing: 5px;
width: 100%;
margin-top: 40px;
}

.tabl_own_products tr {
width:100%;
}

.tabl_own_products th {
background-color: #DCE9DC;
color: #162316;
border: solid 1px #9ABC9A;
vertical-align: middle;
border-radius: 5px;
}

.tabl_own_products td {
background-color: #F2F2F2;
border: solid 1px #CCCCCC;
vertical-align: middle;
line-height:150%;
}

/**/



.warning_action {
display: table;
border-collapse: separate;
border-spacing: 5px;
width: 100%;
margin-top: 10px;

}

.warning_action tr {
width:100%;
}

.warning_action th {
background-color: #DCE9DC;
color: #162316;
border: solid 1px #9ABC9A;
vertical-align: middle;
padding:20px 0 20px 0;
border-radius: 5px;
}

.warning_action td {
background-color: #F2F2F2;
border: solid 1px #CCCCCC;
vertical-align: middle;
line-height:150%;
text-align:center;
padding:15px 12px 15px 12px;
}

/**/

.js-scrollable {
display: table;
border-collapse: separate;
width: 100%;


}

.js-scrollables tr {
width:100%;
}

.js-scrollable th {

}

.js-scrollable td {

}



.production_results_area{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
padding-top: 30px;
	}

.production_results_box{
width: calc(100% / 4 - 20px);
margin-bottom: 30px;
padding: 10px 10px 15px 10px;
text-align: center;
background-color:#ececec;
}

.production_results_box2{
width: calc(100% / 3 - 20px);
margin-bottom: 30px;
padding: 10px 10px 15px 10px;
text-align: center;
background-color:#ececec;
}
	
.production_results_area::before{
content:"";
display: block;
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 0px;
order:1;
}
	.production_results_area::after{
content:"";
display: block;
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 0px;
}

.production_results_box_empty{
width: calc(100% / 4 - 20px);
}


.img__card {
width: 100%;
}

.img-item {
width: 100%;
aspect-ratio: 4 / 3.08;
object-fit: cover; /* width, heightといっしょに使います */
}

.purchaselist_item_title h3{
	font-size:0.95rem;
	font-weight:600;
	line-height:120%;
	letter-spacing: 0.03em;
	margin-top:6px;
	background-color:#FACD97;
	color:#A95824;
	padding:6px 0 6px 0;
	}
	
.purchaselist_item_title h3 i{
	font-size:0.85rem;
	display:block;
	font-weight:600;
	line-height:120%;
	font-style:normal;
	letter-spacing: 0.03em;
	margin-top:3px;
	margin-bottom:2px;
	}

.production_results_cate{
background-color:#fff;
margin-top:6px;
min-width: 90px;
padding: 6px 15px  4px 15px;
border:solid 1px #999;
border-radius: 3px;
height:50px;
position:relative;
}	

.production_results_cate p{
	font-size:0.75rem;
font-weight:normal;
line-height: 120%;
text-align: left;
color:#666;
position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:90%;
		letter-spacing: -0.07rem;
	}


/*２つ目以降は「・」をつける（実際は１つ目は・を付けない処理）*/
.cate_name::before {
  content: "・";
}
.cate_name:first-child::before {
content:none;
}


.production_classification_area{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 30px 0;
padding-top: 30px;
	}

.production_classification_box{
width: calc(100% / 4 - 15px);
margin-bottom: 30px;
padding: 20px 0px;
text-align: center;
background-color:#fff;
padding:7px;
border:solid 1px #ccc;
 border-radius: 5px;
	}
	
	
/*最終行左寄せ-空の要素*/
.production_classification_box_sp{
width: calc(100% / 4 - 20px);
padding:0px;
height:1px;
	}

.production_classification_box img {
  width: 100%;
  height: 170px;
  object-fit: cover; /* この一行を追加するだけ！ */
}	

.production_classification_title{
	width:100%;
	height:40px;
	font-size:0.9rem;
	font-weight:900;
	margin-top:0px;
	margin-right: auto;
	margin-left: auto;
	display: grid;
	place-items: center center;
	background-color:#eee;
	transition: all 0.5s ease-in-out;
	}


.oya2:hover .ko2{
    background-color: seagreen;
}

.production_classification_box:hover .production_classification_title{
	background-color:#59AB36;
	color:#fff;
	}

.production_classification_title h3{
	font-size:0.9rem;
	letter-spacing: -0.05em;

		transition: all 0.2s ease-in-out;
	}
	
.production_classification_box:hover .production_classification_title h3{
	color:#fff;
	}

.production_classification_area::after {
content:"";
display: block;
order:1;	
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 0px;
}

.production_classification_area::before{
content:"";
display: block;
order:1;	
width: calc(100% / 4 - 20px);
margin-bottom: 0px;
padding: 0px 0px;
}




/**/







.operation_exa{
	width:100%;
	text-align:center;
	font-size:1.25rem;
	font-weight:600;
	margin-top:30px;
	line-height:160%;
	color:#2BA739!important;
	}


.use_example_box{
width:100%;
display: flex;
flex-wrap: wrap;
margin-top:30px;
}

.use_example{
width: calc(100% / 3);
padding: 20px 10px;
text-align: center;
}


.product_stitle {
color: #2AA738;/*文字色*/
  /*線の種類（点線）2px 線色*/
  border-bottom: dashed 1px #2AA738;
		margin-top:15px!important;
		font-size:1.1rem;
		font-weight:600;
		margin-bottom:15px;
		padding-bottom:4px;
		margin-left:-5px;
}

video {
    object-fit: contain;
    overflow-clip-margin: content-box;
    overflow: clip;
				background-color:transparent!important;
}

video:-webkit-full-page-media {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    max-height: 100%;
    max-width: 100%;
    margin: auto;
				background-color:transparent!important;
}



.anchor:before {
    content: "";
    display: block;
    height: 1px; /* 調整したい高さ（固定ヘッダーの高さ） */
 margin-top: -80px;
    padding-top: 80px;
				visibility: hidden;
}

.anchor_ori:before{
    content: "";
    display: block;
    height: 1px; /* 調整したい高さ（固定ヘッダーの高さ） */
 margin-top: -70px;
    padding-top: 70px;
				visibility: hidden;
}



a.anchor{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}


@media screen and (max-width: 640px) {
table.tabl_spec_products {

    border-collapse: separate;
    border-spacing: 5px;
    width: 400px;
    margin-top: 10px;
}


.cent_bt{
	width:100%;
	text-align:center;
	margin-top:50px;
	}

.background_btn01 {
  display: inline-block;
  width: 80%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #2AA738; /* 背景色 */
  border: 2px solid #fff;
  padding: 0.9em 0.5em 0.9em 2.9em;
  font-weight: bold;
  color: #fff; /* 文字色 */
  text-decoration: none;
  text-align: center;
  transition-duration: 0.3s;
		border-radius: 100vh;
		font-size:1.05rem;
		box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .2);
}
.background_btn01:before {
  content: '';
		background-image: url(/img/pdf_bt_ico.png);
		background-repeat: no-repeat;
background-size: contain;
  width: 15px;
  height: 18px;
  border: 0;
  position: absolute;
  top: 53%;
  left: 26px;
		margin-right:16px;
  margin-top: -10px;
		}
		
		
/* マウスオーバーした際のデザイン */
.background_btn01:hover {
  background: #2AA738; /* 背景色 */
  border: 2px solid #fff;
  padding: 0.9em 0.5em 0.9em 2.9em;
  font-weight: bold;
  color: #fff; /* 文字色 */
}

.background_btn01:hover:before{
  content: '';
		background-image: url(/img/pdf_bt_ico.png);
		background-repeat: no-repeat;
background-size: contain;
  width: 15px;
  height: 18px;
  border: 0;
  position: absolute;
  top: 50%;
  left: 34px;
		margin-right:16px;
  margin-top: -10px;
		}

.pdf_link {
    width: 100%;
    text-align: center;
    font-size: 1.05rem!important;
    font-weight: 600;
}


}
		
/**/