/*---------------------------------------------------------------------------*/
.section { position: relative; padding: 8rem 0; }

.section-message .section-title span:after { width: 19rem; height: 2.7rem; left: 50%; bottom: 0.2rem; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: url(../img/company/message-ttl_pc.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.section-profile .section-title span:after { width: 16.3rem; height: 2.3rem; left: 50%; bottom: 0.2rem; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: url(../img/company/profile-ttl_pc.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.section-history .section-title span:after { width: 18.1rem; height: 2.5rem; left: 50%; bottom: 0.2rem; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: url(../img/company/history-ttl_pc.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.section-access .section-title span:after { width: 21.5rem; height: 3rem; left: 50%; bottom: 0.2rem; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: url(../img/company/access-ttl_pc.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.section-staff .section-title span:after { width: 23.5rem; height: 3.3rem; left: 50%; bottom: 0; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: url(../img/company/member-ttl_pc.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.section-message .sc-line, .section-staff .sc-line { margin: 0; }

.message-row { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -moz-box-orient: horizontal; -moz-box-direction: reverse; -ms-flex-flow: row-reverse; flex-flow: row-reverse; padding: 0 6rem; }

.message-row_img { width: 35rem; }

.message-row_ctn { width: -webkit-calc(100% - 35rem); width: -moz-calc(100% - 35rem); width: calc(100% - 35rem); padding-right: 8rem; }

.message-row_ctn p { line-height: 2; }

.message-row_ctn p + p { margin-top: 3rem; }

.message-row_ctn p.txt { text-align: right; font-weight: bold; }

.tbl { padding: 0 0 1rem 0; }

.tbl dl { border-left: 2px solid #CC0000; -moz-box-shadow: 3px 3px 5px 0px gainsboro; box-shadow: 3px 3px 5px 0px gainsboro; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding: 1.5rem 2.5rem; }

.tbl dl + dl { margin-top: 2rem; }

.tbl dl dt { width: 25%; font-weight: 500; }

.tbl dl dd { width: 75%; line-height: 1.85; }

/** section-access **/
.maps { width: 100%; height: 46rem; }

.maps iframe { width: 100%; height: 100%; border: none; }

.access-info { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 2.5rem; }

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

.access-info_right h3 { font-size: 1.8rem; font-weight: 500; margin-bottom: 2rem; }

.access-info_right .note { font-size: 1.2rem; }

/** staff **/
.section-staff { padding-top: 6rem; }

.section-staff .txt { text-align: center; font-weight: 500; margin-bottom: 8rem; }

.section-staff .sc-line .container { padding: 0 1.5rem; }

.staff-article { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -moz-box-orient: horizontal; -moz-box-direction: reverse; -ms-flex-flow: row-reverse; flex-flow: row-reverse; padding: 6rem; position: relative; }

.staff-article:after { position: absolute; content: ''; width: 100%; height: 1px; left: 0; bottom: 0; background: rgba(204, 0, 0, 0.2); }

.staff-article:last-child:after { background: transparent; width: 0; height: 0; }

.staff-article_thumb { width: 33rem; }

.staff-article_ctn { width: -webkit-calc(100% - 33rem); width: -moz-calc(100% - 33rem); width: calc(100% - 33rem); padding-right: 8rem; line-height: 2; }

.staff-article_ctn .font-m { display: block; font-size: 1.8rem; font-weight: 500; margin-top: 2rem; }

.staff-article_ttl { font-size: 1.8rem; margin-bottom: 3rem; line-height: 1.5; }

.link-back a { display: inline-block; font-size: 1.8rem; font-weight: 500; position: relative; padding-left: 5.2rem; color: #404040; }

.link-back a:after { position: absolute; content: ''; width: 3rem; height: 0.7rem; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/arr-left.png) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.link-back a:hover { color: #CC0000; }

.link-back.l-top { margin-top: 5rem; }

.link-back.link-next { text-align: right; }

.link-back.link-next a { padding-left: 0; padding-right: 5.2rem; }

.link-back.link-next a:after { position: absolute; content: ''; width: 2.8rem; height: 0.5rem; left: auto; right: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/arr-red.png) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 768px) { .section { position: relative; padding: 13.33333vw 0 10.66667vw; }
  .section-message .section-title span:after { width: 30.53333vw; height: 3.73333vw; bottom: 0.53333vw; background: url(../img/company/message-ttl_sp.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }
  .section-profile .section-title span:after { width: 27.33333vw; height: 3.2vw; bottom: 0.53333vw; background: url(../img/company/profile-ttl_sp.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }
  .section-history .section-title span:after { width: 32.13333vw; height: 3.73333vw; bottom: 0.53333vw; background: url(../img/company/history-ttl_sp.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }
  .section-access .section-title span:after { width: 37.33333vw; height: 4.13333vw; bottom: 0.53333vw; background: url(../img/company/access-ttl_sp.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }
  .section-staff .section-title span:after { width: 36.93333vw; height: 4vw; background: url(../img/company/member-ttl_sp.png) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }
  .message-row { display: block; padding: 0; }
  .message-row_img { width: 100%; padding: 0 6.66667vw; margin-bottom: 6.66667vw; }
  .message-row_ctn { width: 100%; padding-right: 0; }
  .message-row_ctn p { line-height: 2; }
  .message-row_ctn p + p { margin-top: 5.33333vw; }
  .message-row_ctn p.txt { text-align: left; }
  .tbl { padding: 0 0 1.33333vw 0; }
  .tbl dl { display: block; padding: 4vw; }
  .tbl dl + dl { margin-top: 4vw; }
  .tbl dl dt { width: 100%; margin-bottom: 2.66667vw; }
  .tbl dl dd { width: 100%; }
  /** section-access **/
  .maps { height: 72vw; }
  .access-info { display: block; margin-top: 6.66667vw; }
  .access-info a { color: #CC0000; text-decoration: underline; }
  .access-info_left { margin-bottom: 10.66667vw; }
  .access-info_right h3 { font-size: 3.73333vw; margin-bottom: 4vw; }
  .access-info_right .note { font-size: 2.4vw; }
  /** staff **/
  .section-staff { padding-top: 6rem; }
  .section-staff .txt { display: none; }
  .section-staff .sc-line .container { padding: 0 6.66667vw; }
  .staff-article { display: block; padding: 13.33333vw 0; }
  .staff-article_thumb { width: 100%; margin-bottom: 6.66667vw; }
  .staff-article_ctn { width: 100%; padding-right: 0; }
  .staff-article_ctn .font-m { margin-top: 5.33333vw; font-size: 3.73333vw; }
  .staff-article_ttl { font-size: 3.73333vw; margin-bottom: 6.66667vw; }
  .link-back a { font-size: 3.73333vw; padding-left: 11.46667vw; }
  .link-back a:after { width: 6.93333vw; height: 1.86667vw; }
  .link-back.l-top { margin: 17.33333vw 0 14.66667vw; } }
