@charset "UTF-8";

/* Base Settings 
-------------------------------------------------- */

/* Fonts */

html {
	font-size: 62.5%; /* 10px */
}

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-family: "A1明朝"; /* WEBフォント */
	line-height: 1;
	letter-spacing: 0.13em; /* 八分アキ相当 */
	color: #333333;
}

body {
	font-size: 1.5rem;
}

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

	body {
		font-size: 1.5rem;
	}
	
}

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

	body {
		font-size: 1.5rem;
	}
	
}

/* Links */

a {
	color: #333333;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

/* For Responsive */

* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto; /* アスペクト比を維持 */
}

/* Others*/

ul {
	list-style: none;
}

main {
	display: block; /*IE11対策*/
}

/*  Header
-------------------------------------------------- */


#header {
	width: 100%;
	height: 100vh;
	background-position: center;
	background-size: cover;
	position: relative;
	overflow: hidden;
}

h1 {
	color: #ffffff;
	line-height: 1.2;
	letter-spacing: 0.26em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: 50px;
	left: 50%;
	margin-left: -15px;
}

h1 span {
	font-size: 3.0rem;
	margin-top: -2px;
}

#pageDown {
	width: 50px;
	height: 50px;
	position: absolute;
	left: 50%;
	bottom: 50px;
	margin-left: -12.5px;
}

#pageDown a {
	display: block;
	width: 40px;
	height: 40px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	z-index: 1000;
}

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

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

/*  Main Contents
-------------------------------------------------- */

#main {
	width: 100%;
	overflow: hidden;
}

.section {
	width: 960px;
	padding: 0 20px;
	margin: 100px auto;
}

.section h2 {
	font-size: 2.0rem;
	text-align: center;
	margin-bottom: 50px;
}

.section p {
	line-height: 2;
	text-align: center;
}

.section:after {
	display: block;
	content: "";
	width: 33.3%;
	height: 1px;
	background: #333333;
	margin: 100px auto 0;
}

.frexWrap {
	display: flex;
}

.attention {
	color: #CC0000;
}

.attention a {
	color: #CC0000;
	text-decoration: underline;
}

#section01 h2 {
	font-size: 3.0rem;
	margin-right: -15px;
}

#section01 p {
	text-align: justify;
	text-indent: 1.13em;
}

#section02 p {
	margin-bottom: 10px;
}

#section03 .frexWrap {
	flex-direction: row-reverse;
}

#companyInfo,
#companyPic {
	width: 50%;
}

#companyInfo {
	padding-left: 10px;
}

#companyPic {
	padding-right: 10px;
}

#companyInfo th,
#companyInfo td {
	line-height: 2;
	padding: 2px 0;
}

#companyInfo th {
	width: 100px;
	text-align: left;
}

#section04 {
	width: 100%;
	padding: 0;
	margin-bottom: 0;
}

#section04 p {
	width: 960px;
	padding: 0 20px;
	margin: 0 auto 50px;
}

#map {
	width: 100%;
	height: 512px;
}

#map iframe {
	width: 100%;
	height: 100%;
}

#section04:after {
	display: none;
}

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

	.section {
		width: 100%;
	}

	#section04 p {
		width: 100%;
		text-align: justify;
	}
	
}
	
@media screen and (max-width: 767px) {

	#section03 .frexWrap {
		flex-direction: column-reverse;
	}

	#companyInfo,
	#companyPic {
		width: 100%;
	}

	#companyInfo {
		padding: 0;
	}
	
	#companyPic {
		padding: 0;
		margin-bottom: 20px;
	}
	
}

/*  Footer
-------------------------------------------------- */

#footer {
	width: 100%;
}

#copyright {
	display: block;
	font-size: 1.3rem;
	text-align: center;
	margin: 20px auto;
}

#pageNav {
	width: 30px;
	height: 30px;
	position: fixed;
	right: 20px;
	bottom: 0px;
}

#pageNav a {
	display: block;
	width: 20px;
	height: 20px;
	border-right: 1px solid #333;
	border-top: 1px solid #333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	z-index: 1000;
}

/*  Plugins
-------------------------------------------------- */

