.container {
	width: initial;
	padding-right: 15px;
	padding-left:  15px;
}

.view_pc {
	display: none;
}
.view_sp {
	display: block;
}

#toTop {
	bottom: 30px;
}

/****************************
  effect
*****************************/

.effect_slide_left {
	transform: translate(0, 0);
}

.effect .effect_each, 
.effect_scroll .effect_scroll_each {
	transition: all .4s ease-out 0s;
}
.effect .effect_each.delay1, 
.effect_scroll .effect_scroll_each.delay1 {
	transition-delay: 0.2s;
}
.effect .effect_each.delay2, 
.effect_scroll .effect_scroll_each.delay2 {
	transition-delay: 0.4s;
}
.effect .effect_each.delay3, 
.effect_scroll .effect_scroll_each.delay3 {
	transition-delay: 0.6s;
}
.effect .effect_each.delay4, 
.effect_scroll .effect_scroll_each.delay4 {
	transition-delay: 0.8s;
}
.effect .effect_each.delay5, 
.effect_scroll .effect_scroll_each.delay5 {
	transition-delay: 1.0s;
}
.effect .effect_each.delay6, 
.effect_scroll .effect_scroll_each.delay6 {
	transition-delay: 1.2s;
}

/****************************
  header
*****************************/

#header {
	width: 100%;
	height: 64px;
}
#logo {
	top:  0px;
	left: 0px;
	width: calc(100% - 64px);
	height: 64px;
	background-color: #fff;
}
#logo > a {
	margin: 9px 0 0 15px;
}

@media (max-width: 420px) {
	#logo > a {
		margin-top: 16px;
	}
	#logo img {
		width: 220px;
		height: 32px;
	}
}

#nav-toggle {
	display: block;
	position: absolute;
	z-index: 300;
	width:  64px;
	height: 64px;
	top:    0;
	right:  0;
	background-color: #231815;
	cursor: pointer;
}
#nav-toggle div {
	width:  34px;
	height: 36px;
	margin:  19px 0 0 15px;
	padding: 0;
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	width: 100%;
	height: 3px;
	background-color: #fff;
	left: 0;
	transition: .2s;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}

.open #nav-toggle span:nth-child(1) {
	top: 11px;
	transform: rotate(225deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	transform: rotate(-225deg);
}

#global_nav {
	z-index: 100;
	top: -900px;
	left:  0px;
	right: 0px;
	width: 100%;
	margin:  0;
	padding: 0;
	background-color: #243a94;
	text-align: center;
	transition: .5s ease-in-out;
}
#global_nav > ul {
	margin:  0;
	padding: 0;
}
#global_nav > ul > li {
	display: block;
	width: 100%;
	text-align: left;
}
#global_nav > ul > li.sp {
	display: block;
}
#global_nav > ul > li > a {
	display: block;
	width: 100%;
	height: initial;
	margin:  0;
	padding: 1em 0 1em 1em;
	border: none;
	background-color: #243a94;
	color: #fff;
}
#global_nav > ul > li > a:hover, 
#global_nav > ul > li > a.active {
	border: none;
	background-color: #1b3292;
}

#global_nav > ul > li:last-child > a {
	padding-bottom: 30px;
}

.open #global_nav {
	top: 64px;
}

#global_nav > ul > li > a.child {
	padding-left: 2.5em;
	font-size: 14px;
}

#global_nav > ul > li > a:link:before, 
#global_nav > ul > li > a:visited:before, 
#global_nav > ul > li > a:active:before {
	font-family: 'fontawesome';
	content: '\f04b';
	padding-right: .6em;
	vertical-align: .1em;
	color: transparent;
	font-size: 90%;
}

#global_nav > ul > li > a:hover:before, 
#global_nav > ul > li > a.active:before {
	font-family: 'fontawesome';
	content: '\f04b';
	padding-right: .6em;
	vertical-align: .1em;
	color: #fff;
	font-size: 90%;
}

.scroll-prevent {
	position: fixed;
	top: 64px;
	z-index: -1;
	width: 100%;
	height: 100%;
}

/****************************
  footer
*****************************/

#footer {
	height: initial;
	padding: 2em 0;
}

.footer_left, 
.footer_right {
	float: none;
	margin:  0;
	padding: 0;
	text-align: center;
}

h2.h2_footer img {
	width: 220px;
	height: 32px;
}

h3.h3_footer {
	padding: 0 0 1em;
}

#footer address {
	padding: 0 0 1em;
	line-height: 2;
}
#footer address span.zip {
	display: block;
	padding-right: 0;
}
#footer address span.tel {
	padding-right: 1em;
}

@media (max-width: 400px) {
	#footer address span.tel {
		display: block;
		padding-right: 0;
	}
}

ul.ul_footer, 
table.table_footer_products_nav {
	display: none;
}

#copy {
	padding: 1em 0 0;
	text-align: center;
}

/****************************
  home
*****************************/

#home_products {
	margin:  0;
	padding: 0;
	background-image: none;
	background-color: initial;
}

#home_products > .container {
	padding-right: 1px;
	padding-left:  1px;
}

.home_visualtop_sp {
	width:  100%;
	height: 450px;
	margin:  0;
	padding: 140px 0 0;
	background-image: url(../../files/home/bg_home_products_sp.jpg);
	background-color: #141c2b;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	text-align: center;
}
.home_visualtop_sp img {
	max-width: 300px;
}

@media (max-width: 400px) {
/* 	.home_visualtop_sp {
		height: calc(100vh - 60px);
	} */
	.home_visualtop_sp img {
		max-width: 250px;
	}
}

.wrapper_home_products_contents {
	margin-top: -45px;
	padding-top: 0;
	background-image: none;
}

ul.ul_home_products {
	width: 100%;
	margin: 0 0 0 -10px;
	text-align: center;
}
ul.ul_home_products > li {
	margin: 0 0 20px 20px;
}
ul.ul_home_products > li.li_left {
	margin-left: 20px;
}
ul.ul_home_products > li.li_title {
	display: none;
}

@media (max-width: 320px) {
	ul.ul_home_products {
		margin: 0;
	}
	ul.ul_home_products > li, 
	ul.ul_home_products > li.li_left {
		margin-left: 0px;
	}
}

/****************************
  contents
*****************************/

.visual_top_pc {
	display: none;
}

.visual_top_sp {
	display: block;
	width: 100%;
	height: 280px;
	margin:  0;
	padding: 0 0 ;
	background-color: #141c2b;
	background-image: url(../../files/home/bg_home_products.png);
	background-repeat: no-repeat;
	background-position: -250px -200px;
}
.visual_top_sp > span {
	display: block;
	width:  100%;
	height: calc(100% - 130px);
	margin:  0;
	padding: 0;
	background-repeat: no-repeat;
	background-position: 15px 30px;
	background-size: 400px 118px;
}

.visual_top_sp > span#visual_top_sp_services {
	background-image: url(../../files/contents/visual_top/sp/title_sp_services.jpg);
}
.visual_top_sp > span#visual_top_sp_all {
	background-image: url(../../files/contents/visual_top/sp/title_sp_all.jpg);
}
.visual_top_sp > span#visual_top_sp_chemical {
	background-image: url(../../files/contents/visual_top/sp/title_sp_chemical.jpg);
}
.visual_top_sp > span#visual_top_sp_hygienic {
	background-image: url(../../files/contents/visual_top/sp/title_sp_hygienic.jpg);
}
.visual_top_sp > span#visual_top_sp_metal {
	background-image: url(../../files/contents/visual_top/sp/title_sp_metal.jpg);
}
.visual_top_sp > span#visual_top_sp_construction {
	background-image: url(../../files/contents/visual_top/sp/title_sp_construction.jpg);
}
.visual_top_sp > span#visual_top_sp_textile {
	background-image: url(../../files/contents/visual_top/sp/title_sp_textile.jpg);
}
.visual_top_sp > span#visual_top_sp_electirc {
	background-image: url(../../files/contents/visual_top/sp/title_sp_electirc.jpg);
}
.visual_top_sp > span#visual_top_sp_profile {
	background-image: url(../../files/contents/visual_top/sp/title_sp_profile.jpg);
}
.visual_top_sp > span#visual_top_sp_suppliers {
	background-image: url(../../files/contents/visual_top/sp/title_sp_suppliers.jpg);
}
.visual_top_sp > span#visual_top_sp_contact {
	background-image: url(../../files/contents/visual_top/sp/title_sp_contact.jpg);
}

.wrapper_h1_article {
	height: 160px;
	margin:  30px 0 0 15px;
	padding: 12px 0 0 15px;
}

.article_contents {
	width: 100%;
	padding: 0 15px 50px;
}
.article_nav {
	display: none;
}
.article_main {
	float: none;
	width: 100%;
}

#profile_nav {
	display: none;
}

h2.h2_article {
	text-align: center;
}

/****************************
  profile
*****************************/

h3.h3_profile {
	text-align: center;
}

dl.dl_profile {
	display: block;
	margin:  0;
	padding: 1em 0;
}
dl.dl_profile > dt,
dl.dl_profile > dd { 
	display: block;
}
dl.dl_profile > dd { 
	padding: .5em .5em 0 1.5em;
}

.map_access {
	height: 100vw;
}

.wrapper_link_googlemap {
	padding: 1em 0 2em;
	text-align: center;
}

@media (max-width: 440px) {
	dl.dl_profile > dd { 
		padding: .5em 0 0 1em;
	}
	dl.dl_profile > dd span {
		display: block;
		padding-right: 0;
	}
}

/****************************
  suppliers
*****************************/

.article_main.suppliers {
	float: none;
	width: 100%;
}

@media (max-width: 600px) {
	.wrapper_suppliers_list {
		display: block;
		margin:  80px 0 0;
		padding: 2em;
	}
	ul#ul_suppliers1, 
	ul#ul_suppliers2 {
		display: block;
		width: 100%;
	}
	ul#ul_suppliers2 {
		border-left: none;
	}
	ul#ul_suppliers1 > li {
		padding: 0;
	}
	ul#ul_suppliers2 > li {
		padding: 0;
	}
}

/****************************
  products
*****************************/

.wrapper_h1_article.products {
	padding-top: 0;
}

h1.h1_article > div {
	margin-left: -0.5em;
	padding-top:  0.5em;
}

p.p_products_summary {
	margin:  0;
	padding: 30px 0 0 1.5em;
	text-align: justify;
	color: #000;
	font-size: 1em;
	line-height: 1.5;
}

.article_main_products_link {
	padding: 30px 0 30px;
}

ul.ul_products_index {
	margin:  0;
	padding: 0px 0 ;
	text-align: center;
}

ul.ul_products_index > li:nth-child(even) {
	margin-left: 30px;
}

@media (max-width: 590px) {
	ul.ul_products_index > li:nth-child(even) {
		margin-left: 0px;
	}
}
