@charset "UTF-8";

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

  BLD Group Common SP Styles

========================================================== */
body { min-width: 100%; }
.inner { max-width: 90.666666%; }
.totop {
  bottom: 15px;
  right: 15px;
  transform: scale(0.75);
  transform-origin: right bottom;
}
.sp { display: inherit; }
.pc { display: none; }

/* Breadcrumb
--------------------------------------------------------- */
.breadcrumb {
  font-size: 2.4vw; /* 18/750 */
  margin: 0 0 10px;
  padding: 80px 0 0;
}

/* Link Button
--------------------------------------------------------- */
a.link-next {
  font-size: 3.2vw; /* 24/750 */
  padding: 0 0 10px;
}

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

  Header Styles

--------------------------------------------------------- */
.l-header { margin: 0; }
.l-header > div {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background-color: #ffffff;
  align-items: center;
  padding: 0 15px;
}
.l-header > div h1 {
  position: relative;
  width: 50vw;
  padding: 0;
}
.header-inq { display: none; }
.menu-trigger {
  position: relative;
  width: 40px;
  height: 16px;
  display: inline-block;
  transition: all 0.3s
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000000;
  display: inline-block;
  transition: all 0.3s
}
.menu-trigger span:first-of-type { top: 0; }
.menu-trigger span:last-of-type { bottom: 0; }
.menu-trigger.is-opened span:first-of-type {
  transform: translateY(7px) rotate(-45deg);
}
.menu-trigger.is-opened span:last-of-type {
  transform: translateY(-7px) rotate(45deg);
}

/* Global Navi
--------------------------------------------------------- */
.l-header nav {
  display: none;
  position: fixed;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  overflow-y: scroll;
}
.l-header nav ul {
  display: block;
}
.l-header nav ul li {
  font-size: 2.9333333vw; /* 22/750 */
  border-bottom: solid 1px #d6d6d6;
  text-indent: 1em;
  margin: 0;
}
.l-header nav ul li:first-of-type {
  border-top: solid 1px #d6d6d6;
}
.l-header nav ul li:hover { pointer-events: none; }
.l-header nav ul li:hover .subnav { display: none; }
.l-header nav ul li a::before { content: none; }
.l-header nav ul li a {
  padding: 0;
  height: 50px;
  line-height: 50px;
  display: block;
  pointer-events: auto;
}
.l-header nav ul li:nth-of-type(3) > a,
.l-header nav ul li:nth-of-type(7) > a { pointer-events: none; }
.nav-inq {
  /*
  position: absolute;
  left: 0;
  bottom: 0;
  */
  width: 100%;
  display: flex;
  align-items: center;
}
.nav-inq a {
  position: relative;
  color: #ffffff;
  text-decoration: none;
  width: 50%;
  height: 55px;
  line-height: 55px;
  background: rgb(44,44,44);
  border: solid 1px #818181;
  display: flex;
  align-items: center;
  justify-content: center;
}
.nav-inq a:last-of-type { border-left: none; }
.nav-inq a img {
  margin: 0 5px 0 0;
  transform: scale(0.85);
}
.nav-inq a:first-of-type span {
  font-size: 4.8vw; /* 36/750 */
  letter-spacing: 0.1em;
}
.nav-inq a:last-of-type span {
  font-size: 3.2vw; /* 24/750 */
  letter-spacing: 0.2em;
}

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

  Footer Styles

--------------------------------------------------------- */
.l-footer .inner {
  max-width: 80%;
  padding: 0;
}

/* お問合せ
--------------------------------------------------------- */
.inquiry-unit {
  padding: 10.666666% 0 14%;
}
.inquiry-unit h2 {
  font-size: 4.8vw; /* 36/750 */
  margin: 0 0 5.333333%;
}
.inquiry-unit p {
  font-size: 3.2vw; /* 24/750 */
  margin: 0 0 6.666666%;
}
.inquiry-unit ul li {
  width: 50%;
  height: 55px;
  line-height: 55px;
  margin: 0;
}
.inquiry-unit ul li a:last-of-type {
  border-left: none;
}
.inquiry-unit ul li a img {
  margin: 0 5px 0 0;
  transform: scale(0.85);
}
.inquiry-unit ul li:first-of-type a span {
  font-size: 4.8vw; /* 36/750 */
}
.inquiry-unit ul li:last-of-type a span {
  font-size: 3.2vw; /* 24/750 */
}

/* Footer Navi
--------------------------------------------------------- */
.foot-items {
  padding: 8% 0 0; /* 60/750 */
  display: block;
}
.foot-items > div {
  display: block;
  margin: 10.6666666% 0 18.666666%; /* 80px 0 140px */
  padding: 6% 0 0; /* 50px 0 0 */
  border-top: solid 1px #d6d6d6;
  border-bottom: solid 1px #d6d6d6;
}
.foot-items dl dt h2 {
  width: 54vw;
}
.foot-items dl dd {
  font-size: calc(2.9333333vw * 1.15); /* 22/750 */
  margin: 6% 0 0; /* 50px 0 0 */
}
.foot-items dl dd:last-of-type { margin: 9.333333% 0 0; /* 70/750 */ }
.foot-items ul {
  padding: 0;
  border-left: none;
}
.foot-items ul li {
  font-size: calc(2.9333333vw * 1.15); /* 22/750 */
  margin: 0 0 6%; /* 0 0 50px */
}
.foot-items ul:not(:first-of-type) { margin: 0; }
.copy { font-size: calc(2.4vw * 1.15); /* 18/750 */ }

@media screen and (max-width:414px) {
  .foot-items dl dd:last-of-type a { width: 100%; }
}

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

  Page Header Styles

--------------------------------------------------------- */
.page-header .heading {
  width: 20%;
  padding: 0 0 0 4.666666%;
}
.page-header .heading h2 { width: 11vw; }
.page-header > div:last-of-type { width: 80%; }