@charset "UTF-8";
/* ベース設定（HTML初期設定）
========================================================================= */
body {
  min-width: 1280px;
  line-height: 1.8;
  letter-spacing: 0.1em;
  font-size: 15px;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 4vw;
    min-width: unset;
  }
}

.inner {
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .inner {
    width: 90%;
  }
}

/* パソコンでの電話ボタンクリック停止
--------------------------------------------------   */
@media screen and (min-width: 767px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/* FAX番号の制御
--------------------------------------------------   */
a[href^=fax] {
  -webkit-tap-highlight-color: transparent !important;
  pointer-events: none !important;
  -webkit-touch-callout: none !important;
  -webkit-user-select: none !important;
  text-decoration: none !important;
}

/* テーブルでの文字飛び出し停止
--------------------------------------------------   */
th,
td {
  word-break: break-word;
}

/* SP用
=======================================================*/
.pc-max-bx {
  max-width: 1500px;
  min-width: initial;
  margin: 0 auto;
  position: relative;
  text-align: center;
}

.pc-max-bx h1 {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 30px;
}

.sub-contents-fixed {
  width: 100%;
  max-width: 1500px;
  height: 100%;
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}

.sub-contents {
  position: absolute;
  width: 233px;
  height: 700px;
  background: #ccc;
  padding: 15px;
  box-sizing: border-box;
}

.sub-contents-lt {
  left: 0;
  top: 0;
}

.sub-contents-lb {
  left: 0;
  bottom: 0;
}

.sub-contents-rt {
  right: 0;
  top: 0;
}

.sub-contents-rb {
  right: 0;
  bottom: 0;
}

.sub-contents-side-lt {
  position: fixed;
  top: 0;
  margin-left: -211px;
}

.sub-contents-side-lb {
  position: fixed;
  bottom: 0;
  margin-left: -211px;
}

.sub-contents-side-rt {
  position: fixed;
  top: 0;
  margin-left: 360px;
}

.sub-contents-side-rb {
  position: fixed;
  bottom: 0;
  margin-left: 360px;
}

.main-contents-container {
  width: 375px;
  position: absolute;
  top: 0;
  box-sizing: border-box;
  color: #fff;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .main-contents-container {
    width: 100%;
    overflow: hidden;
  }
}

.main-contents-container .sub-contents {
  width: 196px;
}

.sub-contents-lt {
  left: 50px;
  top: 0;
}

.main-contents-bx {
  height: 100%;
  position: relative;
}

@media screen and (min-width: 767px) {
  .drawer {
    position: relative;
  }
  .drawer::before {
    z-index: -1;
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    background: url(/img/common/bg__01.png) left bottom no-repeat, url(/img/common/bg__02.png) right clamp(-1000px, 50vw - 970px, 0px) bottom no-repeat;
  }
}
.contents-r {
  right: 0;
}

.contents-c {
  left: 0;
  right: 0;
  margin: 0 auto;
}