@charset "UTF-8";

/* ==========================================================

  BLD Group Interview PC Styles

========================================================== */

/* Page Header
--------------------------------------------------------- */
.page-header {
  display: block;
  margin: 0 0 175px;
  padding: 0 0 0 10%;
}
.page-header .heading {
  position: absolute;
  left: 14%;
  bottom: 0;
  width: auto;
  padding: 30px 60px 0 0;
  background-color: #ffffff;
}
.page-header .heading h2 {
  font-size: 46px;
  font-size: 4.6rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.0;
  white-space: nowrap;
}
.page-header .heading h2 small {
  font-size: 0.326086956em;
  color: #d8d8d8;
  display: block;
  margin: 0 0 10px;
}
.page-header > div:last-of-type {
  width: 100%;
  padding: 0 0 0 26%;
}
.page-header > div:last-of-type figure { height: 480px; }

/* ---------------------------------------------------------

  Interview Content

--------------------------------------------------------- */
.section h3 {
  font-size: 30px;
  font-size: 3.0rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.875;
  text-align: center;
  margin: 0 0 50px;
}
.fs16 {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.15em;
  line-height: 1.875;
}
.gray { color: #696969; }
.section dl dd p { margin: 10px 0 0; }

/* sec01
--------------------------------------------------------- */
.sec01 {
  padding: 0 14%;
  margin: 0 0 120px;
}
.sec01 > div {
  display: flex;
  align-items: flex-start;
}
.sec01 dl {
  position: relative;
  margin: 0 0 0 4.3%;
}
.sec01 dl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  height: 1px;
  background-color: #000000;
  display: inline-block;
}
.sec01 dl dt {
  margin: 0 0 85px;
  padding: 40px 0 0;
}
.sec01 p { display: none; }

/* sec02
--------------------------------------------------------- */
.sec02 { padding: 0 23.333333% 100px; }
.sec02 img {
  width: 100%;
  height: auto;
  margin: 0 0 40px;
}
.sec02 dl dd { margin: 10px 0 60px; }

/* sec03
--------------------------------------------------------- */
.sec03 {
  padding: 0 14%;
  margin: 0 0 160px;
}
.sec03 > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.sec03 > div dl { margin: 0 5% 0 0; }
.sec03 > div dl dd { margin: 10px 0 60px; }

/* sec04
--------------------------------------------------------- */
.sec04 { padding: 0 23.333333% 160px; }
.sec04 img {
  width: 100%;
  height: auto;
  margin: 0 0 40px;
}
.sec04 dl dd { margin: 10px 0 60px; }

/* sec05
--------------------------------------------------------- */
.sec05 {
  padding: 0 14%;
  margin: 0 0 160px;
}
.sec05 > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.sec05 > div dl { margin: 0 0 0 4.666666%; }
.sec05 > div dl dd { margin: 10px 0 60px; }

/* sec06
--------------------------------------------------------- */
.sec06 {
  padding: 0 14%;
  margin: 0 0 160px;
}
.sec06 > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.sec06 > div dl { margin: 0 5% 0 0; }
.sec06 > div dl dd { margin: 10px 0 60px; }

/* sec07
--------------------------------------------------------- */
.sec07 { padding: 0 23.333333% 120px; }
.sec07 img {
  width: 100%;
  height: auto;
  margin: 0 0 40px;
}
.sec07 dl dd { margin: 10px 0 60px; }

/* sec08
--------------------------------------------------------- */
.sec08 {
  padding: 0 14%;
  margin: 0 0 20px;
}
.seki .sec08 { margin: 0 0 120px; }
.profile {
  position: relative;
  padding: 30px;
  background-color: #f5f7f9;
  display: flex;
  align-items: flex-start;
}
.profile p {
  position: absolute;
  top: 30px;
  right: 30px;
}
.profile dl {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.15em;
  margin: 0 0 0 50px;
  padding: 0 40px 0 0;
}
.profile dl dt {
  line-height: 2.5;
  margin: 0 0 20px;
}
.profile dl dt span { font-size: 1.428571428em; }
.profile dl dd { line-height: 1.7; }

/* sec09
--------------------------------------------------------- */
.sec09 {
  padding: 0 14%;
  margin: 0 0 80px;
}
.shop-info {
  position: relative;
  padding: 30px;
  background-color: #2c2c2c;
  display: flex;
  align-items: flex-start;
}
.shop-info p {
  position: absolute;
  top: 30px;
  right: 30px;
}
.shop-info dl {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.15em;
  margin: 0 0 0 50px;
  color: #d8d8d8;
}
.shop-info dl dt {
  font-size: 1.428571428em;
  margin: 0 0 20px;
}
.shop-info dl dd { line-height: 1.7; }
.shop-info dl dd span {
  display: inline-block;
  vertical-align: top;
}

/* sec10
--------------------------------------------------------- */
.sec10 {
  padding: 80px 0 70px;
  background-color: #f5f7f9;
  margin: 0 0 120px;
  text-align: center;
}
.sec10 h3 {
  font-size: 30px;
  font-size: 3.0rem;
  letter-spacing: 0.1em;
  color: #26509a;
  margin: 0 0 50px;
}

/* Anchor Link
---------------------------------------------------------- */
.anchor-unit {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 120px;
}
.anchor-unit a.link-next { margin: 0 40px; }