﻿@charset "UTF-8";

* {

	margin: 0;
	padding: 0;
	box-sizing: border-box;

}

img {
	
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border: none;
	
}

li {

	list-style: none;
	
}

a {

	color: #333;
	text-decoration: none;

}

::-moz-selection {
	
	color: #fff;
	background: #c96236;
	
}

::selection {
	
	color: #fff;
	background: #c96236;
	
}

/* AdobeFontの読み込み */
/*

html * {
	
  visibility: hidden;
  
}

html.wf-active * {

  visibility: visible;
  
}

*/

/* HTML */
html {

	min-width: 320px;
	font-size: 62.5%;
	text-size-adjust: 100%;  
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	
}

/* ボディ */
body {

	min-width: 320px;
	font-family: "source-han-sans-jp-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-size: 15.5px;
	line-height: 1.7;
	color: #333;
	letter-spacing: 0.04em;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	
	/*
	padding-top: 7.9rem;
	*/
	
	/*margin-bottom: 7.9rem;*/

}

/* メイン */
main {
	
	display: block;

}

/* ヘッダー */
header {
	
	position: fixed;
	top:  0;
	left: 0;
	z-index: 100;
	width: 100%;
	background: #C1C2BF;

}

header .inner {

  display: flex;
  justify-content: space-between;
	width: 152.4rem;
	margin: 0 auto;

}

header .logo {

	width: 15rem;
	margin-top: 1.1rem;
	line-height: 1;

}

header nav {

	margin-top:    3.3rem;
	margin-bottom: 2.0rem;

}

header nav ul li {
	
	position: relative;
	display: inline-block;
	margin-left: 3.6rem;
	font-weight: 500;

}

header nav ul li span {

	position: relative;

}

header nav ul li.on span:after {
	
	position: absolute;
	bottom: -0.8rem;
	left: 50%;
	content: "";
	width: 3.8rem;
	height: 0.2rem;
	background: #c96236;
	transform: translateX(-50%);
	transition: all 0.2s;
	
}

header nav ul li a {
	
	font-size: 1.5rem;
	font-weight: 700;
	color: #404242;
	letter-spacing; 0;

}

header nav ul li:hover a {

	color: #c96236;

}

.mainimg {
	
	position: relative;
	width:  100%;
	height: 79.5rem;
	margin-bottom: 2.4rem;
	
	margin-top: 7.9rem;

	/*
	background-image: url('../img/mainimg.webp');
	background-size: cover;
	background-position: center center;
	*/
	
}

.mainimg:after {

	position: absolute;
	top:  0;
	left: 0;
	content: "";
	width:  100%;
	height: 100%;
	background-image: url('../img/mainimg.webp');
	background-size: cover;
	background-position: center center;
	transform: scale(1.25);
	
}

.mainimg.active:after {

	transform: scale(1);
	transition: transform 1.4s;

}

.mainimg .catch1 {
	
	position: absolute;
	bottom: 5rem;
	left:   18.8rem;
	z-index: 2;
	width:  21.8rem;
	height: 29rem;
	padding: 1.8rem;
	
}

.mainimg .catch1:after {
	
	opacity: 0.8;
	position: absolute;
	top:  0;
	left: 0;
	content: "";
	width:  100%;
	height: 100%;
	background: #c96236;

}

.mainimg .catch1 img {
	
	position: absolute;
	z-index: 2;
	top: 2.4rem;
	width: 17.8rem;

}

.mainimg .catch2 {

	position: absolute;
	top:  33.4rem;
	left: 74.6rem;
	z-index: 2;
	width: 41.2rem;

}

#sou {

	overflow-x: hidden;

}

#sou .inner {

	width: 152.4rem;
	margin: 0 auto;

}

#sou .inner h2 {
	
	height: 8rem;
	margin-bottom: 5.2rem;
	padding-top: 0.2em;
	text-align: center;
	font-size: 3.7rem;
	color: #fff;
	letter-spacing: 0;
	background-image: url('../img/sou_h.webp');
	background-size: cover;
	background-position: center center;

}

#sou .inner h2 span {

	margin-left: 0.45em;

}

#sou .inner .rec_banner {

	display: block;
	width:  66.4rem;
	height: 10.6rem;
	margin-bottom: 4.6rem;
	margin-left: auto;
	padding-left: 1.2rem;
	font-size: 6.5rem;
	font-weight: 600;
	line-height: 1.5;
	color: #fff;
	background: #1676B7;

}

#sou .inner .rec_banner .wrap {

  display: flex;
  justify-content: space-between;

}

#sou .inner .rec_banner .wrap p img {
	
	display: inline-block;
	width: 0.8em;
	margin-left: 2rem;
	margin-bottom: 2rem;
	transition: all 0.6s;
	
}

#sou .inner .rec_banner:hover .wrap p img {

	transform: translateX(0.1em) rotateX(360deg);

}

#sou .inner .rec_banner .wrap .logo {

	width: 20.5rem;
	margin-right: 1.9rem;
	transform: translateY(-1.7rem);

}

#company {

	padding-top:    4.6rem;
	padding-bottom: 12rem;
	color: #fff;
	background-image: url('../img/company_bg.webp');
	background-size: cover;
	background-position: center center;
	overflow-x: hidden;

}

#company .inner {

	width: 152.4rem;
	margin: 0 auto;

}

#company .banner_wrap {
	
	margin-bottom: 12.2rem;

}

#company .banner_wrap .banner {
	
	opacity: 0;
	position: relative;
	display: block;
	width:  102rem;
	height: 12.6rem;
	margin-left: auto;
	margin-bottom: 4.1rem;
	padding-top: 0.8rem;
	padding-left: 2.9rem;
	color: #fff;
	transform: translateX(4em);

}

#company .banner_wrap .banner.active {
	
	opacity: 1;
	transform: translateX(0);
	transition: all 0.4s;

}

#company .banner_wrap .banner:before {
	
	opacity: 0.8;
	position: absolute;
	top:  0;
	left: 0;
	content: "";
	width:  100%;
	height: 100%;
	background: #c96236;

}

#company .banner_wrap .banner.line2:after {
	
	opacity: 0.8;
	position: absolute;
	top: 0;
	left: -4.6rem;
	width: 4.6rem;
	content: "";
	height: 100%;
	background: #c96236;

}

#company .banner_wrap .banner.line3:after {

	opacity: 0.8;
	position: absolute;
	top: 0;
	left: -9.4rem;
	width: 9.4rem;
	content: "";
	height: 100%;
	background: #c96236;

}

#company .banner_wrap .banner.line4:after {

	opacity: 0.8;
	position: absolute;
	top: 0;
	left: -14rem;
	width: 14rem;
	content: "";
	height: 100%;
	background: #c96236;

}

#company .banner_wrap .banner .ja {
	
	position: relative;
	z-index: 3;
	font-family: "fot-chiaro-std", sans-serif;
	font-size: 5.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.11em;

}

#company .banner_wrap .banner .en {
	
	opacity: 0.5;
	position: relative;
	z-index: 3;
	margin-top: -0.08em;
	margin-left: 1.96em;
	font-family: "futura-pt", sans-serif;
	font-size: 6rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.143em;

}

#company .banner_wrap .banner .man {

	position: absolute;
	top:   0;
	right: 2rem;
	z-index: 4;
	width: 12.9rem;
	transform-origin: bottom;
	transition: all 0.15s;

}

#company .banner_wrap .banner:hover .man {

	transform: scale(1.2);

}

#company .weare {
	
	opacity: 0;
	margin-bottom: 11.4rem;
	border: 0.2rem solid #fff;
	transform: translateY(3em);

}

#company .weare.active {
	
	opacity: 1;
	transform: translateY(0);
	transition: all 0.4s;

}

#company .weare p {
	
	padding: 1.04em;
	padding-left: 10em;
	font-size: 3.8rem;
	font-weight: 600;
	line-height: 1.25;
	color: #fff;
	letter-spacing: 0.12em;

}

#company h2 {
	
	opacity: 0;
	margin-bottom: 6rem;
	text-align: center;
	font-size: 3.5rem;
	letter-spacing: 0.18em;
	transform: translateX(0.2em) translateY(1.2em);

}

#company h2.active {
	
	opacity: 1;
	transform: translateX(0.2em) translateY(0em);
	transition: all 0.4s;

}

#company .table_wrap {
	
	position: relative;
	padding-top:    8rem;
	padding-bottom: 0.15rem;

}

#company .table_wrap:after {

	position: absolute;
	top:  0;
	left: 0;
	z-index: 1;
	content: "";
	width:  100%;
	height: 100%;
	background: rgba(255,255,255, 0.15);

}

#company table {

	position: relative;
	z-index: 5;
	width: 75.6rem;
	margin: 0 auto;
	border-collapse: collapse;

}

#company .table1 {
	
	position: relative;
	margin-bottom: 5rem;

}

#company .table1:before {

	position: absolute;
	top:  -1rem;
	left: -5rem;
	content: "";
	width:  85.6rem;
	height: 0.2rem;
	background: #d36922;

}

#company .table1:after {

	position: absolute;
	top:  -3rem;
	left: -2.5rem;
	content: "";
	width:  0.2rem;
	height: 85.4rem;
	background: #d36922;

}

#company table tr th {
	
	width: 7.1em;
	padding-bottom: 2.2rem;
	text-align: left;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.12em;

}

#company table tr td {
	
	padding-bottom: 2.2rem;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.12em;

}

#company table .map {

	display: inline-block;
	margin-left: 0.5em;
	padding: 0 0.7em;
	line-height: 1.25;
	color: #fff;
	background: #c96236;

}

#company .table2 {

	margin-bottom: 10.2rem;

}

#company .table2 .line {

	padding-bottom: 1rem;

}

#company .gaikan {
	
	opacity: 0;
	position: relative;
	z-index: 5;
	width:  60.6rem;
	height: 41.3rem;
	margin-left: 35.6rem;
	margin-bottom: 11rem;
	padding: 1.4rem;
	background: rgba(255,255,255, 0.7);
	background: #a8a6a5;
	transform: translateY(4em);

}

#company .gaikan.active {

	opacity: 1;
	transform: translateY(0em);
	transition: all 0.4s;
	
}

footer {
	
	width: 100%;
	padding-top:    7rem;
	padding-bottom: 1.9rem;
	color: #000;
	background: #C1C2BF;

}

footer .logo {
	
	display: block;
	width: 23.3rem;
	margin: 0 auto;
	margin-bottom: 4rem;

}

footer .hon {

	width: 41.6rem;
	margin: 0 auto;
	margin-bottom: 2.8rem;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
	white-space: nowrap;

}

footer .hon .addr span {
	
	display: inline-block;
	transform: translateX(-0.4em);
	
}

footer .hon .tel span {

	letter-spacing: 0.16em;

}

footer .hon .fax span {

	letter-spacing: 0.16em;

}

footer .yao {

	width: 41.6rem;
	margin: 0 auto;
	margin-bottom: 4.6rem;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
	white-space: nowrap;

}

footer .yao .addr span {
	
	display: inline-block;
	transform: translateX(-0.4em);
	
}

footer .yao .tel span {

	letter-spacing: 0.16em;

}

footer .yao .fax span {

	letter-spacing: 0.16em;

}

footer nav {
	
	margin-bottom: 10.4rem;
	text-align: center;

}

footer ul li {
	
	position: relative;
	display: inline-block;
	margin: 0 0.85em;

}

footer ul li:after {

	position: absolute;
	top: 25%;
	left: -1.1em;
	content: "";
	width: 0.3rem;
	height: 50%;
	background: #000;

}

footer ul li:first-child:after {

	display: none;

}

footer ul li a {

	font-size: 2rem;
	color: #000;

}

footer .copy {
	
	display: block;
	width: 100%;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.14em;
	

}

/* トグル */
#menu {

	display: none;

}

/* スマホ改行 */
.sp_break {

	display: none;

}


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

	html {
		
		font-size: 61.8489583%;
		
	}

}


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

	html {
		
		font-size: 61.5234%;
		
	}

}


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

	html {
		
		font-size: 60.5468%;
		
	}

}


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

	html {
		
		font-size: 59.89583%;
		
	}

}


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

	html {
		
		font-size: 59.25%;
		
	}

}


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

	html {
		
		font-size: 58.59375%;
		
	}

}


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

	html {
		
		font-size: 58.2682%;
		
	}

}


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

	html {
		
		font-size: 57.6171%;
		
	}

}


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

	html {
		
		font-size: 56.96614%;
		
	}

}


/* MacBook Pro16 */
@media only screen and (max-width: 1728px) {

	html {
		
		font-size: 56.25%;
		
	}

}


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

	html {
		
		font-size: 55.33854%;
		
	}

}


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

	html {
		
		font-size: 54.375%;
		
	}

}


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

	html {
		
		font-size: 53.3854%;
		
	}

}


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

	html {
		
		font-size: 52.75%;
		
	}

}


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

	html {
		
		font-size: 52.0833%;
		
	}

}


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

	html {
		
		font-size: 51.125%;
		
	}

}


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

	html {
		
		font-size: 50.1302%;
		
	}

}


/* MacBook Pro14 */
@media only screen and (max-width: 1512px) {

	html {
		
		font-size: 49.25%;
		
	}

}


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

	html {
		
		font-size: 48.5026%;
		
	}

}


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

	html {
		
		font-size: 47.526%;
		
	}

}


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

	html {
		
		font-size: 46.875%;
		
	}

}


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

	html {
		
		font-size: 46.223958%;
		
	}

}


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

	html {
		
		font-size: 45.562%;
		
	}

}


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

	html {
		
		font-size: 44.9218%;
		
	}

}


/* 中サイズ */
@media only screen and (max-width: 1366px) {

	html {
		
		font-size: 44.4375%;
		
	}

}


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

	html {
		
		font-size: 43.61979%;
		
	}

}


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

	html {
		
		font-size: 43%;
		
	}

}


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

	html {
		
		font-size: 42.3177%;
		
	}

}


/* MacBook Air */
@media only screen and (max-width: 1280px) {

	html {
		
		font-size: 41.6875%;
		
	}

}


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

	html {
		
		font-size: 41.0156%;
		
	}

}


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

	html {
		
		font-size: 40.375%;
		
	}

}


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

	html {
		
		font-size: 39.71354%;
		
	}

}


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

	html {
		
		font-size: 39.0625%;
		
	}

}


/* iPad Pro11の横 */
@media only screen and (max-width: 1194px) {

	html {
		
		font-size: 38.875%;
		
	}

}


/* iPad 5th Airの横 */
@media only screen and (max-width: 1180px) {

	html {
		
		font-size: 38.4375%;
		
	}

}


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

	html {
		
		font-size: 37.7604%;
		
	}

}


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

	html {
		
		font-size: 37.434895%;
		
	}

}


/* iPad 6th Miniの横 */
@media only screen and (max-width: 1133px) {

	html {
		
		font-size: 36.875%;
		
	}

}


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

	html {
		
		font-size: 36.4583%;
		
	}

}


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

	html {
		
		font-size: 35.8125%;
		
	}

}


/* iPad 9thの横 */
@media only screen and (max-width: 1080px) {

	html {
		
		font-size: 35.8125%;
		
	}

}


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

	html {
		
		font-size: 34.5052%;
		
	}

}


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

	html {
		
		font-size: 34.17968%;
		
	}

}


/* iPadPro */
@media only screen and (max-width: 1024px) {

	html {
		
		font-size: 33.3125%;
		
	}
	
	.sp_break {

		display: block;

	}
	
	body {

		line-height: 1.7;
		letter-spacing: 0.04em;
		/*padding-top: 23rem;*/

	}

	header {
		


	}

	header .inner {

	  display: flex;
	  justify-content: space-between;
		width: 96%;
		padding: 3rem;
		
	}

	header .logo {

		width: 56rem;
		margin: 0;

	}

	header nav {
		
		margin-top:    3.3rem;
		margin-bottom: 2.0rem;

	}

	header nav ul li {
		
		margin-left: 0;

	}

	header nav ul li.on span:after {
		
		bottom: -0.8rem;
		left: 50%;
		width:  0rem;
		height: 0rem;
		transform: translateX(-50%);
		
	}
	
	header nav {
		
		position: fixed;
		top:  0;
		left: 0;
		width:  100%;
		height: 100%;
		z-index: 101;
		background: #fff;
		background: #C1C2BF;
		float: none;
		margin: 0;
	 	overflow-x: hidden;
		overflow-y: auto;
		-ms-overflow-style: none; /* IE, Edge */
	  scrollbar-width: none;    /* Firefox  */
	  transform: translateX(100%);
	  transition: all 0.3s;

	}
	
	header nav.active {
	
		transform: translateX(0);
	
	}
	
	header nav::-webkit-scrollbar {

		display: none; /* Chrome, Safari */

	}

	header nav ul {

		display: block;
		width: 72%;
		margin: 0 auto;
		margin-top:    20vh;
		margin-bottom: 20vh;
		text-align: left;

	}

	header nav ul li {
		
		position: relative;
		width: 100%;
		height: auto;
		margin:  0;
		padding: 0;
		letter-spacing: 0.12em;
		border: none;
	  -webkit-clip-path: polygon(0 0, 0% 0, -80% 100%, 0 100%);
	          clip-path: polygon(0 0, 0% 0, -80% 100%, 0 100%);

		font-family: "source-han-sans-jp-variable", sans-serif;
		font-variation-settings: "wght" 400;
		font-weight: 400;

	}
	
	header nav ul li a {
		
		font-size: 17rem;
		color: #C76039;
		color: #000;
		letter-spacing: 0.12em;
		
		font-family: "source-han-sans-jp-variable", sans-serif;
		font-variation-settings: "wght" 400;
		font-weight: 400;

	}
	
	header nav.active ul li {
	
		animation: txtshow 0.8s 0.6s forwards;
	
	}

	@keyframes txtshow {

	  0% {
	  	
		  -webkit-clip-path: polygon(0 0, 0% 0, -80% 100%, 0 100%);
		          clip-path: polygon(0 0, 0% 0, -80% 100%, 0 100%);
	  
	  }
	  
	  100% {
	  
	    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	  	        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	  
	  }
	  
	}

	.mainimg {
		
		height: 268rem;
		margin-bottom: 14rem;
		
		margin-top: 22rem;
		
		/*
		background-image: url('../img/mainimg.webp');
		*/
		
	}

	.mainimg .catch1 {

		bottom: 5%;
		left:   5%;
		width:  21.8rem;
		height: 29rem;
		padding: 1.6rem;
		
		width:  43.6rem;
		height: 58rem;
		padding: 4rem;
		
		width:  52.3rem;
		height: 69.6rem;
		padding: 4.8rem;
		
	}

	.mainimg .catch1 img {
		
		top: 6.8rem;
		width: 80%;

	}

	.mainimg .catch2 {
		
		top:  50%;
		left: 50%;
		width: 90rem;
		transform: translate(-50%, -50%);

	}

	#sou .inner {

		width: 94%;

	}

	#sou .inner h2 {
		
		height: 38rem;
		margin-bottom: 8rem;
		padding-top: 0.4em;
		font-size: 8.8rem;
		letter-spacing: 0.08em;

	}

	#sou .inner h2 span {

		margin-left: 0;

	}

	#sou .inner .rec_banner {

		width:  154rem;
		height: 23rem;
		margin-bottom: 14rem;
		margin-left: auto;
		padding-left: 5rem;
		font-size: 15rem;
		line-height: 1.45;

	}

	#sou .inner .rec_banner .wrap {

	  display: flex;
	  justify-content: space-between;

	}

	#sou .inner .rec_banner .wrap p img {
		
		width: 0.85em;
		margin-left: 4rem;
		margin-bottom: 3.2rem;
		transition: none;
		
	}

	#sou .inner .rec_banner:hover .wrap p img {

		transform: none;

	}

	#sou .inner .rec_banner .wrap .logo {

		width: 46rem;
		margin-right: 5rem;
		transform: translateY(-2.8rem);

	}

	#company {

		padding-top:    24rem;
		padding-bottom: 24rem;
		background-image: url('../img/company_bg.webp');

	}

	#company .inner {

		width: 92%;

	}

	#company .banner_wrap {
		
		margin-bottom: 20rem;

	}

	#company .banner_wrap .banner {
		
		width:  154rem;
		height: 23rem;
		margin-left: auto;
		margin-bottom: 5rem;
		padding-top: 3rem;
		padding-left: 2.9rem;

	}

	#company .banner_wrap .banner.line2:after {
		
		top: 0;
		left: -7rem;
		width: 7rem;
		height: 100%;

	}

	#company .banner_wrap .banner.line3:after {

		top: 0;
		left: -14rem;
		width: 14rem;
		height: 100%;

	}

	#company .banner_wrap .banner.line4:after {

		top: 0;
		left: -21rem;
		width: 21rem;
		height: 100%;

	}

	#company .banner_wrap .banner .ja {
		
		font-size: 11rem;
		letter-spacing: 0.06em;

	}

	#company .banner_wrap .banner .en {

		margin-top: -0.08em;
		margin-left: 1.96em;
		font-size: 9rem;
		letter-spacing: 0.12em;

	}

	#company .banner_wrap .banner .man {

		top:   0;
		right: 3rem;
		z-index: 4;
		width: 23.7rem;

	}

	#company .banner_wrap .banner:hover .man {

		transform: scale(1.2);

	}

	#company .weare {
		
		margin-bottom: 26rem;
		border: 0.2rem solid #fff;

	}

	#company .weare p {
		
		padding: 0.8em;
		font-size: 8rem;
		line-height: 1.5;
		letter-spacing: 0.02em;

	}

	#company h2 {
		
		margin-bottom: 8rem;
		font-size: 13rem;
		letter-spacing: 0.12em;
		transform: translateX(0) translateY(1.2em);
		
	}
	
	#company h2.active {
	
		transform: translateX(0) translateY(0em);
	
	}

	#company .table_wrap {
		
		padding-top:    12rem;
		padding-bottom: 12rem;

	}

	#company table {

		width: 88%;

	}
	
	#company table a {
	
	 	color: #fff;
	
	}

	#company .table1 {
		
		margin-bottom: 9rem;

	}

	#company .table1:before {

		top:  -3rem;
		left: -8rem;
		width:  168rem;
		height: 0.2rem;

	}

	#company .table1:after {

		top:  -6rem;
		left: -5rem;
		width:  0.2rem;
		height: 198rem;

	}

	#company table tr th {
		
		width: 6em;
		padding-bottom: 3rem;
		font-size: 5.6rem;
		letter-spacing: 0.05em;

	}

	#company table tr td {
		
		padding-bottom: 3rem;
		font-size: 5.6rem;
		letter-spacing: 0.05em;

	}

	#company table .map {

		margin-left: 0.5em;
		padding: 0 0.7em;
		line-height: 1.25;

	}

	#company .table2 {

		margin-bottom: 14rem;

	}

	#company .table2 .line {

		padding-bottom: 1rem;

	}

	#company .gaikan {

		width: 123.2rem;
		height: 82.6rem;
		padding: 3rem;
		margin: 0 auto;

	}

	footer {
		
		padding-top:    18rem;
		padding-bottom: 18rem;

	}

	footer .logo {
		
		width: 64rem;
		margin-bottom: 10rem;

	}

	footer .hon {

		width: 70%;
		margin-bottom: 5rem;
		font-size: 6.2rem;
		line-height: 1.6;
		letter-spacing: 0.08em;
		white-space: nowrap;	  

	}

	footer .hon .addr span {
		
		transform: translateX(-0.4em);
		
	}

	footer .hon .tel span {

		letter-spacing: 0.16em;

	}

	footer .hon .fax span {

		letter-spacing: 0.16em;

	}

	footer .yao {

		width: 70%;
		margin-bottom: 8rem;
		font-size: 6.2rem;
		line-height: 1.6;
		letter-spacing: 0.08em;
		white-space: nowrap;  

	}

	footer .yao .addr span {
		
		transform: translateX(-0.4em);
		
	}

	footer .yao .tel span {

		letter-spacing: 0.16em;

	}

	footer .yao .fax span {

		letter-spacing: 0.16em;

	}

	footer nav {
		
		margin-bottom: 10.4rem;
		text-align: center;

	}

	footer ul li {
	
		margin: 0 0.8em;
		font-size: 5.6rem;

	}

	footer ul li:after {

		top: 30%;
		left: -1em;
		width: 0.4rem;
		height: 50%;

	}

	footer ul li a {

		font-size: 5.6rem;

	}

	footer .copy {
		
		font-size: 5.6rem;
		letter-spacing: 0.08em;

	}
	
	/* トグル */
	#menu {
		
		display: block;
	  position: absolute;
	  top:   50%;
	  right: 2%;
	  z-index: 1000;
	  width:  25rem;
	  height: 25rem;
	  transform: translateY(-50%);
	  cursor: pointer;
		
	}
	
	.menu__line {
		
		position: absolute;
	  display: block;
	  width:  60%;
	  height: 5%;
	  background: #C76039;
	  transition: all 0.3s;
	  
	}
	
	.menu__line--top {
		
		top:  25%;
		left: 20%;
	
	}
	
	.menu__line--center {
		
	  top:   47%;
	  right: 20%;
	  
	}
	
	.menu__line--bottom {
		
	  bottom: 25%;
	  left:   20%;
	  
	}
	
	#menu.active .menu__line--top {
	
	  top: 50%;
	  transform: rotate(45deg);
	  
	}
	
	#menu.active .menu__line--center {
		
	  transform: scaleX(0);
	  
	}
	
	#menu.active  .menu__line--bottom {
	
	  bottom: 46%;
	  transform: rotate(135deg);
	  
	}
}


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

	html {
		
		font-size: 32.552%;
		
	}

}


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

	html {
		
		font-size: 31.90104%;
		
	}

}


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

	html {
		
		font-size: 31.57552%;
		
	}

}


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

	html {
		
		font-size: 30.937%;
		
	}
	
}


/* iPhone14 ProMaxの横 */
@media only screen and (max-width: 932px) {

	html {
		
		font-size: 30.937%;
		
	}
	
}


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

	html {
		
		font-size: 29.62239%;
		
	}
	
}


/* XRの横 */
@media only screen and (max-width: 896px) {

	html {
		
		font-size: 29.2%;
		
	}
	
}


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

	html {
		
		font-size: 28.64583%;
		
	}
	
}


/* AndroidのＬの横 */
@media only screen and (max-width: 854px) {

	html {
		
		font-size: 27.8125%;
		
	}

}


/* iPhone14 Proの横 */
@media only screen and (max-width: 852px) {

	html {
		
		font-size: 27.75%;
		
	}

}


/* iPhone14の横*/
@media only screen and (max-width: 844px) {

	html {
		
		font-size: 27.5%;
		
	}

}



/* iPad Pro11 */
@media only screen and (max-width: 834px) {

	html {
		
		font-size: 27.125%;
		
	}

}


/* iPad Air */
@media only screen and (max-width: 820px) {

	html {
		
		font-size: 26.687%;
		
	}

}


/* iPhone13 miniの横 */
@media only screen and (max-width: 812px) {

	html {
		
		font-size: 26.437%;
		
	}

}


/* iPad 9th */
@media only screen and (max-width: 810px) {

	html {
		
		
		
	}

}


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

	html {
		
		font-size: 25.7161%;
		
	}

}


/* iPad */
@media only screen and (max-width: 768px) {

	html {
		
		font-size: 25%;
		
	}

}


/* iPad 6th Mini */
@media only screen and (max-width: 744px) {

	html {
		
		font-size: 24.25%;
		
	}

}


/* iPhonePlusの横 */
@media only screen and (max-width: 736px) {

	html {
		
		font-size: 23.937%;
		
	}

}


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

	html {
		
		font-size: 23.4375%;
		
	}

}


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

	html {
		
		font-size: 22.75%;
		
	}

}


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

	html {
		
		font-size: 22.1354%;
		
	}

}


/* iPhone8の横 */
@media only screen and (max-width: 667px) {

	html {
		
		font-size: 21.687%;
		
	}

}


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

	html {
		
		font-size: 21.158854%;
		
	}

}


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

	html {
		
		font-size: 20.507%;
		
	}

}


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

	html {
		
		font-size: 20.18229%;
		
	}

}


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

	html {
		
		font-size: 19.53125%;
		
	}

}


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

	html {
		
		font-size: 18.8802%;
		
	}

}


/* iPhone5の横 */
@media only screen and (max-width: 568px) {

	html {
		
		font-size: 18.5%;
		
	}

}


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

	html {
		
		font-size: 17.5781%;
		
	}

}


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

	html {
		
		font-size: 16.927%;
		
	}

}


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

	html {
		
		font-size: 16.276014%;
		
	}

}


/* AndLoidL */
@media only screen and (max-width: 480px) {

	html {
		
		font-size: 15.625%;
		
	}

}


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

	html {
		
		font-size: 14.648%;
		
	}

}


/* Iphone13 Pro Max */
@media only screen and (max-width: 430px) {

	html {
		
		font-size: 14%;
		
	}

}


/* Iphone12 Pro Max */
@media only screen and (max-width: 428px) {

	html {
		
		font-size: 13.93229%;
		
	}

}


/* iPhonePlus */
@media only screen and (max-width: 414px) {

	html {
		
		font-size: 13.5%;
		
	}

}


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

	html {
		
		font-size: 13.02083%;
		
	}

}


/* iPhone14 Pro */
@media only screen and (max-width: 393px) {

	html {
		
		font-size: 12.812%;
		
	}

}


/* iPhone12 Pro */
@media only screen and (max-width: 390px) {

	html {
		
		font-size: 12.687%;
		
	}

}


/* iPhone8 */
@media only screen and (max-width: 375px) {

	html {
		
		font-size: 12.187%;
		
	}

}


/* Galaxy */
@media only screen and (max-width: 360px) {

	html {
		
		font-size: 11.75%;
		
	}

}


/* iPhone5 */
@media only screen and (max-width: 320px) {

	html {
		
		font-size: 10.437%;
		
	}

}