@charset "utf-8";
@media screen and (max-width : 480px), screen and (max-width : 740px) and (orientation: landscape) {
/* ==================================================
reset
================================================== */
body {
	background: none;
	font-size: 100%;
	line-height: 1.5;
	-webkit-text-size-adjust: none;
}
li,
dt,
dd,
table {
	line-height: 1.5;
}
input[type="text"],
textarea,
select {
	width: 100%;
	height: auto;
	box-sizing: border-box;
	-moz-appearance: none;
	-webkit-appearance: none;
}
.sp_only {
	display: block;
}
.pc_only {
	display: none !important;
}
/* ==================================================
layout
================================================== */
#wrap {
	padding: 0 0 120px;
	min-width: 375px;
}
#strengths,
#contact,
#equipment,
#machining,
#responsiveness,
#about,
#footer {
	width: auto;
	margin: 0 15px 25px;
}
/* ==================================================
header
================================================== */
header {
	height: 59px;
	padding: 5px 15px 0;
	background-color: #ffffff;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
#hlogo img {
	width: auto;
	height: 40px;
	margin-right: 1em;
	vertical-align: -0.4em;
}
/* hinfo
--------------------------- */
#hinfo p.tel {
	font-size: 80%;
	line-height: 1.3;
	padding: 0 0 0 20px;
	background-position: left top 2px;
	background-size: auto 20px;
}
#hinfo p.tel span {
	display: block;
	font-size: 135%;
}
/* hnavi
--------------------------- */
#hnavi {
	display: none;
}
/* ==================================================
main
================================================== */
h2 {
	font-size: 125%;
	padding: 0 0 8px;
	margin: 0 0 1em;
}
h2::before {
	width: 50px;
}
/* main
--------------------------- */
#main {
	margin: 0 0 120px;
}
#main p.img {
	height: auto;
}
#main p.img img {
	width: 100%;
	height: auto;
}
#main div.txt {
	top: 240px;
	left: 15px;
	right: 15px;
}
#main p.logo {
	margin: 0 10px 20px;
}
#main p.logo img {
	width: 200px;
	height: auto;
}
#main p.desc {
	margin: 0 10px 57px;
	font-size: 100%;
	line-height: 1.5;
	text-shadow: 5px 5px 5px rgba(0,0,0,0.5);
}
#main p.desc span {
	display: inline-block;
	font-size: 120%;
	margin-bottom: 0.3em;
}
#main div.contact a {
	display: block;
	font-size: 100%;
	padding: 10px 20px 10px 80px;
	line-height: 1.5;
	background-size: auto 25px;
	background-position: left 25px center;
	border: 1px solid #ffffff;
}
#main div.contact a span {
	font-size: 150%;
}
/* strengths
--------------------------- */
#strengths h2 {
	margin: 0 0 0.5em;
}
#strengths ul li:nth-of-type(1n) {
	width: 100%;
	padding: 10px 0 10px 80px;
	background-size: auto 50px;
	margin: 0;
	text-align: left;
	border-left: none;
	border-bottom: 1px solid #cccccc;
}
#strengths ul li:nth-of-type(1) {
	background-position: left 9px top 14px;
}
#strengths ul li:nth-of-type(2) {
	background-position: left 16px top 13px;
}
#strengths ul li:nth-of-type(3) {
	background-position: left 12px top 12px;
}
#strengths ul li:nth-of-type(4) {
	background-position: left 8px top 12px;
}
#strengths ul li:nth-of-type(5) {
	background-position: left top 13px;
}
#strengths ul li h3 {
	font-size: 120%;
}
#strengths ul li p {
	font-size: 80%;
}
#strengths ul li p br {
	display: none;
}
/* contact
--------------------------- */
#wrap_contact {
	margin: 25px 0;
	padding: 5px 0 15px;
}
#contact {
	padding: 0;
	margin: 0 15px;
	display: block;
}
#contact p.txt {
	font-size: 100%;
	margin: 0 0 15px;
}
#contact p.txt span.big {
	font-size: 125%;
}
#contact p.more a {
	font-size: 100%;
	padding: 10px 70px 10px 85px;
	background-size: auto 20px;
	background-position: left 25px center;
}
#contact p.more a::after {
	right: 0.8em;
	top: 50%;
	left: auto;
	bottom: auto;
	transform: translateY(-50%);
	font-size: 130%;
}
/* equipment
--------------------------- */
#equipment ul li {
	width: 46%;
	margin: 0 2% 10px;
}
#equipment ul li p.img {
	width: 100%;
}
#equipment ul li p.img img {
	width: 100%;
	height: auto;
}
#equipment ul li p.ttl {
	flex-grow: 1;
	font-size: 88%;
	font-weight: 500;
	padding: 5px;
}
#equipment ul li p.ttl span {
	font-size: 120%;
	font-weight: 600;
	margin: 0;
}
#equipment p.lead {
	margin: 0 -15px 0;
	padding: 10px 0 10px;
	font-size: 119%;
}
/* machining
--------------------------- */
#machining ul li {
	width: 46%;
	margin: 0 2% 10px;
}
#machining ul li p.img {
	margin: 0 0 5px;
}
#machining ul li p.img img {
	width: 100%;
	height: auto;
}
#machining ul li p.ttl {
	font-size: 100%;
}
#machining p.lead {
	margin: 0 -15px 0;
	padding: 10px 0 10px;
	font-size: 119%;
	line-height: 1.3;
}
/* responsiveness
--------------------------- */
#responsiveness p.lead {
	font-size: 113%;
	color: #133b9b;
	line-height: 1.3;
	margin: 0 0 15px;
}
#responsiveness ul li {
	width: 33.3%;
	margin: 0;
}
#responsiveness ul li img {
	width: 100%;
	height: auto;
}
/* about
--------------------------- */
#about {
	display: block;
	padding: 15px;
}
#about div.txt {
	margin: 0 0 10px;
}
#about div.txt h2 {
	margin: 0 0 10px;
}
#about div.txt p {
	font-size: 100%;
	line-height: 1.5;
}
#about p.img img {
	width: 100%;
	height: auto;
}
/* ==================================================
footer
================================================== */
footer {
	border-bottom: none;
	padding: 15px;
	z-index: 9999;
}
#footer {
	display: block;
	margin: 0 auto;
}
#footer p.txt {
	font-size: 77%;
	font-weight: 600;
	text-align: center;
	margin: 0 0 10px;
}
#footer p.more {
	margin: 0;
}
#footer p.more a {
	font-size: 100%;
	padding: 10px 70px 10px 85px;
	background-size: auto 20px;
	background-position: left 25px center;
}

}
