.con-outline .box-outline, .con-profile, .con-staff { margin-left: auto; margin-right: auto; width: calc(100% - 160px); }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-outline .box-outline, .con-profile, .con-staff { width: 92%; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline, .con-profile, .con-staff { width: 89.6%; } }

/*Animate */
/* ----------------------------------------------------------- .con-outline
----------------------------------------------------------- */
.con-outline { color: #fff; background-color: #292929; padding: 240px 0; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (max-width: 767px) { .con-outline { padding: 120px 0; } }
@media only screen and (min-width: 768px) { .con-outline .box-outline { max-width: 1060px; display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; padding-bottom: 45px; } }
@media print { .con-outline .box-outline { max-width: 1060px; display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; padding-bottom: 45px; } }
.ie8 .con-outline .box-outline { max-width: 1060px; display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; padding-bottom: 45px; }
@media only screen and (min-width: 768px) { .con-outline .box-outline .box-title { width: 50%; } }
@media print { .con-outline .box-outline .box-title { width: 50%; } }
.ie8 .con-outline .box-outline .box-title { width: 50%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-outline .box-outline .box-title { width: 40%; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-title { width: 89.6%; margin: 0 auto 48px; } }
.con-outline .box-outline .box-title .wrap { display: inline-block; text-align: left; }
.con-outline .box-outline .box-title .wrap .txt-en { color: #90825D; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; text-transform: uppercase; letter-spacing: 0.14em; font-size: 1.3rem; line-height: 1.3; margin-bottom: 24px; }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-title .wrap .txt-en { font-size: 1.2rem; } }
.con-outline .box-outline .box-title .wrap h2 { font-weight: 400; line-height: 1.3; font-size: 3.2rem; letter-spacing: 0.08em; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-outline .box-outline .box-title .wrap h2 { font-size: 3vw; line-height: 1.5; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-title .wrap h2 { font-size: 2.4rem; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-title .wrap h2 span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; }
  .con-outline .box-outline .box-title .wrap h2 span em { text-orientation: upright; } }
.con-outline .box-outline .box-title .wrap .img { margin-top: 64px; max-width: 400px; }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-title .wrap .img { margin-top: 40px; } }
@media only screen and (min-width: 1025px) { .con-outline .box-outline .box-txt { width: 50%; } }
@media print { .con-outline .box-outline .box-txt { width: 50%; } }
.ie8 .con-outline .box-outline .box-txt { width: 50%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-outline .box-outline .box-txt { width: 60%; padding-left: 40px; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-txt { width: 89.6%; margin: 0 auto; } }
.con-outline .box-outline .box-txt h3 { font-size: 2.4rem; font-weight: normal; }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-txt h3 { font-size: 2rem; } }
.con-outline .box-outline .box-txt .txt { line-height: 2.4; letter-spacing: 0.08em; margin: 40px auto; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-outline .box-outline .box-txt .txt { font-size: 1.75vw; } }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-txt .txt { margin: 24px auto; } }
.con-outline .box-outline .box-txt .txt-name { text-align: right; line-height: 2.4; letter-spacing: 0.08em; }
.con-outline .box-outline .box-txt .txt-name em { font-size: 2.4rem; display: inline-block; margin-left: 0.5em; }
@media only screen and (max-width: 767px) { .con-outline .box-outline .box-txt .txt-name em { font-size: 1.8rem; } }

/* ----------------------------------------------------------- .con-profile
----------------------------------------------------------- */
.con-profile { margin-top: 240px; }
@media only screen and (min-width: 1025px) { .con-profile { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; } }
@media print { .con-profile { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; } }
.ie8 .con-profile { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
@media only screen and (max-width: 767px) { .con-profile { margin-top: 120px; } }
@media only screen and (min-width: 1025px) { .con-profile .title-basic { width: 40%; padding-left: 80px; } }
@media print { .con-profile .title-basic { width: 40%; padding-left: 80px; } }
.ie8 .con-profile .title-basic { width: 40%; padding-left: 80px; }
@media only screen and (min-width: 1025px) { .con-profile table { width: 60%; } }
@media print { .con-profile table { width: 60%; } }
.ie8 .con-profile table { width: 60%; }
@media only screen and (max-width: 767px) { .con-profile table { width: 96%; margin: 0 auto; } }
@media only screen and (max-width: 767px) { .con-profile table tr:first-child th { padding-top: 0; } }
.con-profile table tr th, .con-profile table tr td { border-bottom: 1px solid #DEDEDE; padding: 40px 0 8px; }
@media only screen and (max-width: 767px) { .con-profile table tr th, .con-profile table tr td { display: block; padding: 0; } }
.con-profile table tr th { font-size: 1.4rem; line-height: 1; letter-spacing: 0.08em; color: #6E7283; }
@media only screen and (min-width: 768px) { .con-profile table tr th { width: 20%; } }
@media print { .con-profile table tr th { width: 20%; } }
.ie8 .con-profile table tr th { width: 20%; }
@media only screen and (max-width: 767px) { .con-profile table tr th { border-bottom: none; font-size: 1.3rem; padding-top: 24px; } }
.con-profile table tr td { font-size: 1.8rem; }
@media only screen and (max-width: 767px) { .con-profile table tr td { font-size: 1.5rem; padding: 8px 0; } }
.con-profile table tr td .small { font-size: 78%; }
.con-profile table tr td .txt-note { font-size: 1.3rem; display: inline-block; margin: 0 1em 0 0.5em; }
@media only screen and (max-width: 767px) { .con-profile table tr td .txt-note { font-size: 1.1rem; display: block; margin: 0; } }

/* ----------------------------------------------------------- .con-staff
----------------------------------------------------------- */
.con-staff { max-width: 1352px; margin-top: 240px; }
@media only screen and (max-width: 767px) { .con-staff { margin-top: 120px; } }
@media only screen and (min-width: 768px) { .con-staff .box-staff { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 3%; } }
@media print { .con-staff .box-staff { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 3%; } }
.ie8 .con-staff .box-staff { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 3%; }
.con-staff .box-staff .item { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 47%; }
@media only screen and (max-width: 767px) { .con-staff .box-staff .item { width: 100%; }
  .con-staff .box-staff .item:not(:first-child) { margin-top: 64px; } }
.con-staff .box-staff .item .box-name { width: 43.4%; display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; padding-top: 4.8rem; padding-left: 4.8rem; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-staff .box-staff .item .box-name { padding-top: 2rem; padding-left: 2rem; } }
@media print { .con-staff .box-staff .item .box-name { padding-top: 2rem; padding-left: 2rem; } }
.ie8 .con-staff .box-staff .item .box-name { padding-top: 2rem; padding-left: 2rem; }
@media only screen and (max-width: 1024px) { .con-staff .box-staff .item .box-name { width: 35%; padding: 0; } }
.con-staff .box-staff .item .box-name .category { margin-right: 24px; display: flex; }
@media only screen and (max-width: 1024px) { .con-staff .box-staff .item .box-name .category { margin-right: 16px; } }
.con-staff .box-staff .item .box-name .category span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; line-height: 1.1; white-space: pre; display: inline-block; }
.con-staff .box-staff .item .box-name .name { margin-right: 10px; display: flex; }
@media only screen and (max-width: 1024px) { .con-staff .box-staff .item .box-name .name { margin-right: 8px; } }
.con-staff .box-staff .item .box-name .name span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; font-size: 3.2rem; line-height: 1.1; white-space: pre; display: inline-block; }
@media only screen and (max-width: 1024px) { .con-staff .box-staff .item .box-name .name span { font-size: 2.4rem; } }
.con-staff .box-staff .item .box-name .ruby { padding-top: 0.25em; display: flex; }
.con-staff .box-staff .item .box-name .ruby span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; text-transform: uppercase; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.2rem; line-height: 1; letter-spacing: 3px; white-space: pre; display: inline-block; }
@media only screen and (max-width: 767px) { .con-staff .box-staff .item .box-name .ruby span { font-size: 1rem; } }
.con-staff .box-staff .item .img { width: 56.6%; }
@media only screen and (max-width: 1024px) { .con-staff .box-staff .item .img { width: 65%; } }
.con-staff .box-staff .item .txt { width: 100%; margin-top: 32px; }
@media only screen and (max-width: 767px) { .con-staff .box-staff .item .txt { margin-top: 16px; } }

/* ----------------------------------------------------------- .con-access
----------------------------------------------------------- */
.con-access { margin: 240px auto; }
@media only screen and (max-width: 767px) { .con-access { margin: 120px auto; } }
.con-access .box-access { position: relative; display: -webkit-flex; display: flex; }
.con-access .box-access:before { content: ""; width: 100%; height: 1px; background-color: #292929; position: absolute; top: 0; left: 0; }
.con-access .box-access:after { content: ""; content: ""; width: 100%; height: 1px; background-color: #292929; position: absolute; bottom: -1px; left: 0; }
.con-access .box-access .txt-deco { width: 80px; position: relative; text-align: center; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; order: 2; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-access .box-access .txt-deco { width: 56px; } }
@media only screen and (max-width: 767px) { .con-access .box-access .txt-deco { -webkit-align-items: flex-end; align-items: flex-end; width: 24px; } }
.con-access .box-access .txt-deco:before { content: ""; width: 1px; height: 100%; background-color: #292929; position: absolute; top: 0; left: 0; }
.con-access .box-access .txt-deco span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.4rem; letter-spacing: 0.08em; line-height: 1; }
@media only screen and (max-width: 767px) { .con-access .box-access .txt-deco span { font-size: 1.2rem; } }
.con-access .box-access .item-access { width: calc(100% - 80px); }
@media only screen and (min-width: 768px) { .con-access .box-access .item-access { display: -webkit-flex; display: flex; padding: 0; } }
@media print { .con-access .box-access .item-access { display: -webkit-flex; display: flex; padding: 0; } }
.ie8 .con-access .box-access .item-access { display: -webkit-flex; display: flex; padding: 0; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-access .box-access .item-access { width: calc(100% - 56px); } }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access { width: calc(100% - 24px); } }
.con-access .box-access .item-access .map { width: 44.8%; overflow: hidden; position: relative; min-height: 677px; }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access .map { width: 100%; min-height: 300px; } }
.con-access .box-access .item-access .map iframe { width: 100% !important; height: calc(100% - 1px) !important; position: absolute; top: 1px; left: 0; }
@media only screen and (min-width: 768px) { .con-access .box-access .item-access .box-txt { width: 55.2%; padding: 187px 7.9vw; } }
@media print { .con-access .box-access .item-access .box-txt { width: 55.2%; padding: 187px 7.9vw; } }
.ie8 .con-access .box-access .item-access .box-txt { width: 55.2%; padding: 187px 7.9vw; }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access .box-txt { padding: 40px 24px; } }
.con-access .box-access .item-access .box-txt .title-en { color: #90825D; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; text-transform: uppercase; line-height: 1; font-size: 1.4rem; letter-spacing: 0.14em; margin-bottom: 16px; }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access .box-txt .title-en { margin-bottom: 8px; } }
.con-access .box-access .item-access .box-txt h2 { font-weight: 400; line-height: 1.3; font-size: 3.2rem; margin-bottom: 40px; }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access .box-txt h2 { font-size: 2.4rem; margin-bottom: 32px; } }
.con-access .box-access .item-access .box-txt dl { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
@media only screen and (max-width: 767px) { .con-access .box-access .item-access .box-txt dl { padding-left: 1em; } }
.con-access .box-access .item-access .box-txt dl dt { font-size: 1.4rem; line-height: 2.4; letter-spacing: 0.08em; color: #6E7283; width: 20%; }
@media only screen and (max-width: 1024px) { .con-access .box-access .item-access .box-txt dl dt { width: 100%; line-height: 1.5; } }
.con-access .box-access .item-access .box-txt dl dd { line-height: 2.1; letter-spacing: 0.08em; width: 80%; }
@media only screen and (max-width: 1024px) { .con-access .box-access .item-access .box-txt dl dd { width: 100%; letter-spacing: 0; line-height: 1.75; margin-bottom: 1em; } }
