@charset "UTF-8";

section h2 {
	font-size: 1.6rem;
	line-height: 1.7rem;
}
section h2>span {
	font-size: 1rem;
}

section div.link-box {
	width: 100%;
	border: 1px solid #333;
	text-align: center;
	margin-bottom: 120px;
}
section div.link-box p {
	margin: 0;
}
section div.link-box a {
	color: #333;
	text-decoration: none;
	font-size: 1.1rem;
	display: inline-block;
	width: calc(100% - 20px);
	height: 100%;
	padding: 10px;
}

#about h2,
#menu h2,
#products h2,
#company h2,
#access h2 {
	font-weight: normal;
	margin-bottom: 30px;
}

#products h2, 
#company h2,
#access h2 {
	text-align: center;
}

#about h3,
#menu h3,
#products h3,
#access h3 {
	font-size: 1.3rem;
	font-weight: normal;
	margin-bottom: 30px;
	line-height: 2rem;
}

#about div.contents p {
	margin-bottom: 50px;
}

#about div.right {
	position: relative;
	width: 99%;
	border: 1px solid #000;
	padding-top: 56.25%;
	margin-bottom: 25px;
}
#about div.right iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

#about div.left h3 br.sp {
	display: none;
}


#menu div.left {
	width: 100%;
	margin-bottom: 25px;
}

#menu div.left img {
	width: 100%;
}

#menu h3 {
	font-size: 1.2rem;
	margin-bottom: 20px;
}

#menu div.right>div:nth-child(2) {
	margin-bottom: 30px;
}



#products ul {
	list-style-type: none;
	margin: 0;
}

#products ul li {
	width: 100%;
	margin-bottom: 60px;
}

#products ul li img {
	width: 100%;
}

#products h3 {
	font-size: 1.1rem;
	margin-bottom: 20px;
	text-align: center;
}

#products li>p:nth-child(3) {
	text-align: center;
}

#products li>p:nth-child(3) a {
	color: #333;
}


#company table {
	font-size: 1.1rem;
	margin-bottom: 20px;
}

#company table th {
	width: 4rem;
	font-weight: normal;
	text-align: left;
	padding: 5px;
}

#company table td {
	padding: 5px;
}

#company table td a {
	color: #333;
	text-decoration: none;
}

#company .right {
	margin-bottom: 120px;
}

#company .right iframe {
	width: 100%;
}


#access {
	margin-bottom: 120px;
}

#access div.info {
	margin-bottom: 50px;
}

#access div.tel-info {
	margin-bottom: 60px;
}

#access div.mail-info {
	margin-bottom: 60px;
}

#access p {
	font-size: 1.1rem;
	text-align: center;
}

#access h3 {
	width: 100%;
	margin: 0 0 20px 0;
	font-size: 0.95rem;
	text-align: center;
	border: 1px solid #333;
}

#access div.tel-info a, 
#access div.mail-info a {
	color: #333;
	/* text-decoration: none; */
}

#access div.tel-info p {
	font-size: 1.4rem;
	letter-spacing: 6px;
}



@media print, screen and (min-width:290px) {
	#access h3 {
		width: 230px;
		margin: 0 auto 20px auto;
	}
}

@media print, screen and (min-width:300px) {
	#menu div.right h3 br.sp1 {
		display: none;
	}
}

@media print, screen and (min-width:310px) {
	#access div.tel-info p {
		font-size: 2rem;
	}
}

@media print, screen and (min-width:320px) {
	#access div.info p br.sp {
		display: none;
	}
}

@media print, screen and (min-width:340px) {

	#about div.left h3 br.sp {
		display: inline;
	}

}

@media print, screen and (min-width:465px) {
	#company div.left td br.sp {
		display: none;
	}
}

@media print, screen and (min-width:450px) {
	#menu div.right h3 br.sp2 {
		display: none;
	}


}

@media print, screen and (min-width:493px) {

	section div.link-box {
		width: 430px;
		margin: 0 auto 120px 0;
	}
	section div.link-box.etc-item {
		margin: 0 auto 120px auto;
	}

	#products ul li {
		width: 428px;
		margin: 0 auto 60px auto;
	}

}

@media print, screen and (min-width:543px) {

	/* #company h2 {
		text-align: center;
	} */

	#company .left {
		width: 483px;
		margin: 0 auto;
	}
	
	#company .right {
		width: 483px;
		height: 363px;
		margin: 0 auto 120px auto;
	}

	#access div.tel-info p {
		font-size: 2.8rem;
		letter-spacing: 7px;
	}

	#access div.mail-info p {
		font-size: 1.3rem;
		letter-spacing: 3px;
	}




}

@media print, screen and (min-width:560px) {

	#access {
		margin-bottom: 220px;
	}

}

@media print, screen and (min-width:994px) {
	#about div.right {
		width: 924px;
		height: calc((520px * 924) / 915);
		margin: 0 auto 25px auto;
	}

	#about div.right {
		padding-top: 0;
	}

	#about div.left {
		width: 924px;
		margin: 0 auto 0 auto;
	}

	#menu div.left {
		width: 924px;
		margin: 0 auto 25px auto;
	}

	#menu div.right {
		width: 924px;
		margin: 0 auto 0 auto;
	}

}

@media print, screen and (min-width:1400px) {

	#about {
		position: relative;
		margin-bottom: 100px;
		margin-top: -10px;
		padding-top: 10px;
	}

	#about div.left {
		position: absolute;
		left: 100px;
		top: 40px;
		width: calc(100vw - 900px);

		/* width: 924px;
		margin: 0 auto 0 auto; */
	}

	#about div.right {
		width: calc(100vw / 2.5);
		height: 380px;
		margin: 100px 100px 25px auto;
		padding-top: 0;
	}

	#about div.contents p {
		margin-bottom: 80px;
	}

	#menu {
		position: relative;
		margin-bottom: 140px;
		margin-top: -10px;
		padding-top: 10px;
	}

	#menu div.right {
		position: absolute;
		/* left: 750px; */
		left: calc(100vw / 2 + 100px);
		top: 40px;
		width: auto;
		/* margin: 0 auto 0 auto; */
	}

	#menu div.left {
		/* width: 660px; */
		width: calc(100vw / 2 + 0px);
		margin: 100px auto 25px 0;
	}

	#menu div.right > div:nth-child(2) {
		margin-bottom: 80px;
	}

	#products ul {
		width: 1344px;
		margin: 0 auto 0 auto;
	}

	#products ul li {
		float: left;
		margin: 0 30px 80px 0;
	}
	#products ul li:last-child {
		margin: 0 0 80px 0;
	}

	#products h2 {
		margin-bottom: 50px;
	}

	#products h3 {
		margin-top: 30px;
		margin-bottom: 30px;
		font-size: 1.5rem;
	}
	#products h3 span {
		font-size: 1.1rem;
	}

	section div.link-box.etc-item {
		clear: left;
		margin: 0 auto 150px auto;
	}

	#company {
		position: relative;
		margin-bottom: 180px;
	}

	#company h2 {
		margin-bottom: 60px;
	}

	#company .left {
		position: absolute;
		left: calc(100vw / 2 - 450px);
		top: 180px;
		/* width: 483px; */
		margin: 0;
	}

	#company table th {
		width: 5rem;
		padding: 5px 5px 8px 5px;
	}

	#company .right {
		/* width: 483px;
		height: 363px; */
		margin: 0 auto 50px calc(100vw / 2 + 50px);
	}

	#access h2 {
		margin-bottom: 50px;
	}

}

@media print, screen and (min-width:1800px) {

	#products ul {
		width: 1455px;
	}

	#products ul li {
		margin: 0 80px 80px 0;
	}






}


@media print, screen and (min-width:1900px) {

	#about {
		margin-bottom: 240px;
	}

	#about h2 {
		margin-bottom: 100px;
	  }


	#about div.right {
		width: 924px;
		height: 518px;
		margin: 150px 100px 25px auto;
		/* padding-top: 0; */
	}

	#menu {
		margin-bottom: 200px;
	}

	#products h2 {
		margin-bottom: 80px;
	}



}


@media print, screen and (min-width:1980px) {

	#about {
		width: 1780px;
		margin: 0 auto 240px auto;
	}

	#about div.right {
		margin: 150px 0 25px auto;
	}

	#about div.left {
		left: 0;
		width: auto;
	}

}

