.con-message, .con-company .box-company, .con-history { margin-left: auto; margin-right: auto; }
@media only screen and (min-width: 1025px) { .con-message, .con-company .box-company, .con-history { width: 85.7%; } }
@media print { .con-message, .con-company .box-company, .con-history { width: 85.7%; } }
.ie8 .con-message, .ie8 .con-company .box-company, .con-company .ie8 .box-company, .ie8 .con-history { width: 85.7%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-message, .con-company .box-company, .con-history { width: 92%; } }
@media only screen and (max-width: 767px) { .con-message, .con-company .box-company, .con-history { width: 89.3%; } }

/*Animate */
/* -----------------------------------------------------------
	.con-message
----------------------------------------------------------- */
.con-message { display: -webkit-flex; display: flex; margin-bottom: 100px; }
@media only screen and (max-width: 767px) { .con-message { -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
@media only screen and (min-width: 768px) { .con-message .title-basic { order: 1; width: 8%; margin-right: 2%; } }
@media print { .con-message .title-basic { order: 1; width: 8%; margin-right: 2%; } }
.ie8 .con-message .title-basic { order: 1; width: 8%; margin-right: 2%; }
@media only screen and (max-width: 767px) { .con-message .title-basic { width: 15%; } }
@media only screen and (min-width: 768px) { .con-message .box-txt { order: 3; width: 80%; padding: 100px 8% 0 6%; } }
@media print { .con-message .box-txt { order: 3; width: 80%; padding: 100px 8% 0 6%; } }
.ie8 .con-message .box-txt { order: 3; width: 80%; padding: 100px 8% 0 6%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-message .box-txt { padding: 60px 0 0 6%; } }
@media only screen and (max-width: 767px) { .con-message .box-txt { width: 85%; padding: 40px 0 0 30px; } }
.con-message .box-txt .txt { letter-spacing: 0.18em; line-height: 1.75; }
.con-message .box-txt .name { text-align: right; letter-spacing: 0.18em; margin-top: 40px; }
.con-message .box-txt .name em { display: inline-block; padding-left: 1em; width: 140px; }
.con-message .img { text-align: center; }
@media only screen and (min-width: 768px) { .con-message .img { order: 2; width: 40%; } }
@media print { .con-message .img { order: 2; width: 40%; } }
.ie8 .con-message .img { order: 2; width: 40%; }
@media only screen and (max-width: 767px) { .con-message .img { width: 100%; margin-top: 40px; } }

/* -----------------------------------------------------------
	.con-company
----------------------------------------------------------- */
.con-company { overflow: hidden; }
.con-company .box-company { padding: 90px 0 160px; display: -webkit-flex; display: flex; }
@media only screen and (max-width: 767px) { .con-company .box-company { padding: 60px 0 100px; } }
.con-company .box-company .title-basic { width: 12%; }
@media only screen and (max-width: 767px) { .con-company .box-company .title-basic { width: 25%; } }
.con-company .box-company table { width: 88%; margin-top: 76px; }
@media only screen and (max-width: 767px) { .con-company .box-company table { width: 75%; margin-top: 40px; } }
.con-company .box-company table tr th, .con-company .box-company table tr td { padding: 24px 0; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr th, .con-company .box-company table tr td { display: block; padding: 0; } }
.con-company .box-company table tr th { font-size: 1.6rem; letter-spacing: 0.18em; width: 20%; border-bottom: 1px solid #ccc; vertical-align: top; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr th { font-size: 1.4rem; width: 100%; border-bottom: none; padding-top: 24px; } }
.con-company .box-company table tr td { letter-spacing: 0.075em; position: relative; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr td { width: 100%; padding-bottom: 24px; line-height: 1.75; } }
.con-company .box-company table tr td:after { content: ""; background: #ccc; width: calc(100% + 7.15vw); height: 1px; position: absolute; bottom: -1px; right: calc(50% - 37vw + 1px); }
@media only screen and (max-width: 767px) { .con-company .box-company table tr td:after { width: calc(100% + 5.35vw); right: calc(50% - 38vw + 1px); } }
.con-company .box-company table tr td i { font-size: 80%; }
.con-company .box-company table tr td span { display: inline-block; }
.con-company .box-company table tr td span:not(:last-child) { margin-right: 2em; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr td span { display: block; }
  .con-company .box-company table tr td span:not(:last-child) { margin-right: 0; } }
@media only screen and (min-width: 768px) { .con-company ul { display: -webkit-flex; display: flex; } }
@media print { .con-company ul { display: -webkit-flex; display: flex; } }
.ie8 .con-company ul { display: -webkit-flex; display: flex; }
@media only screen and (min-width: 768px) { .con-company ul li { width: 50%; } }
@media print { .con-company ul li { width: 50%; } }
.ie8 .con-company ul li { width: 50%; }

/* -----------------------------------------------------------
	.con-history
----------------------------------------------------------- */
.con-history { display: -webkit-flex; display: flex; }
.con-history .title-basic { width: 12%; }
@media only screen and (max-width: 767px) { .con-history .title-basic { width: 25%; } }
.con-history ul { width: 88%; margin-top: 90px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-history ul { margin-top: 60px; } }
@media only screen and (max-width: 767px) { .con-history ul { width: 75%; margin-top: 40px; } }
.con-history ul li { display: -webkit-flex; display: flex; }
.con-history ul li:not(:last-child) { margin-bottom: 36px; }
@media only screen and (max-width: 767px) { .con-history ul li { -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
.con-history ul li .year { width: 20%; position: relative; padding-left: 76px; letter-spacing: 0.075em; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-history ul li .year { width: 25%; } }
@media only screen and (max-width: 767px) { .con-history ul li .year { width: 100%; padding-left: 36px; } }
.con-history ul li .year:before { content: ""; background: #111; width: 60px; height: 1px; position: absolute; top: 1em; left: 0; }
@media only screen and (max-width: 767px) { .con-history ul li .year:before { width: 30px; } }
.con-history ul li .year em { font-family: "EB Garamond", serif; font-size: 2.8rem; line-height: 1; letter-spacing: 0.025em; }
.con-history ul li .txt { letter-spacing: 0.075em; width: 80%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-history ul li .txt { width: 70%; } }
@media only screen and (max-width: 767px) { .con-history ul li .txt { width: 100%; line-height: 1.75; } }

/* -----------------------------------------------------------
	.con-access
----------------------------------------------------------- */
@media only screen and (min-width: 768px) { .con-access { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
@media print { .con-access { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
.ie8 .con-access { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
@media only screen and (min-width: 768px) { .con-access .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; } }
@media print { .con-access .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; } }
.ie8 .con-access .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-access .box-txt { width: 50%; } }
@media only screen and (max-width: 767px) { .con-access .box-txt { padding-top: 60px; } }
.con-access .box-txt .wrp-txt { width: calc(100% - 7.15vw); margin-left: auto; padding-right: 15%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-access .box-txt .wrp-txt { width: calc(100% - 4vw); } }
@media only screen and (max-width: 767px) { .con-access .box-txt .wrp-txt { width: 89.3%; margin: 0 auto 60px; padding-right: 0; display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; } }
.con-access .box-txt .wrp-txt .title-basic { margin-bottom: 80px; }
@media only screen and (max-width: 767px) { .con-access .box-txt .wrp-txt .title-basic { width: 25%; margin-bottom: 40px; } }
@media only screen and (max-width: 767px) { .con-access .box-txt .wrp-txt .box-detail { width: 75%; } }
.con-access .box-txt .wrp-txt .box-detail .txt { padding-left: 1.2em; }
.con-access .box-txt .wrp-txt .box-detail .txt-link { padding-left: 1.2em; margin-top: 48px; }
.con-access .map { position: relative; overflow: hidden; height: 780px; }
@media only screen and (min-width: 768px) { .con-access .map { width: 70%; } }
@media print { .con-access .map { width: 70%; } }
.ie8 .con-access .map { width: 70%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-access .map { width: 50%; } }
@media only screen and (max-width: 767px) { .con-access .map { height: 340px; } }
.con-access .map iframe { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }

/* -----------------------------------------------------------
	.con-showroom
----------------------------------------------------------- */
@media only screen and (min-width: 768px) { .con-showroom { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
@media print { .con-showroom { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
.ie8 .con-showroom { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
@media only screen and (min-width: 768px) { .con-showroom .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; } }
@media print { .con-showroom .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; } }
.ie8 .con-showroom .box-txt { width: 30%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-showroom .box-txt { width: 50%; } }
.con-showroom .box-txt .wrp-txt { width: calc(100% - 7.15vw); margin-left: auto; padding-right: 15%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-showroom .box-txt .wrp-txt { width: calc(100% - 4vw); } }
@media only screen and (max-width: 767px) { .con-showroom .box-txt .wrp-txt { width: 89.3%; margin: 0 auto 60px; padding-right: 0; display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; } }
.con-showroom .box-txt .wrp-txt .title-basic { margin-bottom: 80px; }
@media only screen and (max-width: 767px) { .con-showroom .box-txt .wrp-txt .title-basic { width: 25%; margin-bottom: 24px; } }
.con-showroom .box-txt .wrp-txt .title-basic span { letter-spacing: 0.1em; }
.con-showroom .box-txt .wrp-txt .txt { padding-left: 1.2em; }
@media only screen and (max-width: 767px) { .con-showroom .box-txt .wrp-txt .txt { width: 75%; } }
@media only screen and (min-width: 768px) { .con-showroom .img { width: 70%; }
  .con-showroom .img img { object-fit: cover; height: 100%; } }
@media print { .con-showroom .img { width: 70%; }
  .con-showroom .img img { object-fit: cover; height: 100%; } }
.ie8 .con-showroom .img { width: 70%; }
.ie8 .con-showroom .img img { object-fit: cover; height: 100%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-showroom .img { width: 50%; } }
@media only screen and (max-width: 767px) { .con-showroom .img { overflow: hidden; }
  .con-showroom .img img { max-width: none; width: 150%; margin-left: -25%; } }
