@charset "UTF-8";
/* ==========================================================================
   common 下層共通パーツ
   ========================================================================== */
/* 下層用ヘッダー
   ----------------------------------------------------------------- */
.l-header-gnav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background-color: #fff;
  z-index: 200;
  transition: .4s;
}

.l-header-gnav.hide{
    transform: translateY(-100%);
}

.is-drawerActive .l-header-gnav.hide{
    transform: none;
}


.header-gnav-inner {
  border-bottom: 0.5333333333vw solid #bc3e10;
  overflow: hidden;
}

.header-gnav-logo {
  float: left;
  width: 41.8666666667vw;
  line-height: 1;
  font-size: 0;
  margin: 4.5333333333vw 0 0 2.6666666667vw;
}

.header-gnav-logo img {
  width: 100%;
  max-width: none;
}

.header-gnav-board {
  float: left;
  width: 16.5333333333vw;
  height: 11.2vw;
  margin: 2.4vw 0 0 5.8666666667vw;
  padding: 1.8666666667vw 0 0 2vw;
  font-size: 2.933vw;
  line-height: 1.227;
  font-weight: bold;
  background-color: #fef4c5;
  border: 0.4vw solid #bc3e10;
}

.knowledge .header-gnav-board-txt:before { content: "お役立ち" }
.faq .header-gnav-board-txt:before { content: "よくある" }
.sitemap .header-gnav-board-txt:before,
.privacy .header-gnav-board-txt:before,
.company .header-gnav-board-txt:before { content: "ご相談は" }

.header-gnav-board-point { color: #bc3e10; }

.knowledge .header-gnav-board-point:before { content: "コラム" }
.faq .header-gnav-board-point:before { content: "ご質問" }
.sitemap .header-gnav-board-point:before,
.privacy .header-gnav-board-point:before,
.company .header-gnav-board-point:before { content: "お気軽に" }


/* ハチ駆除メニューボタン
----------------------- */
.header-gnav {
  float: right;
  width: 29.3333333333vw;
  padding: 2.9333333333vw 2.9333333333vw 2.9333333333vw 2.4vw;
  border: none;
  border-left: 1px solid #cdcdcd;
  background-color: #fff;
  outline: none;
}

.header-gnav-txt {
  float: left;
  padding-top: 1.3333333333vw;
  font-size: 2.9333333333vw;
  line-height: 1.364;
}

.header-gnav-txt-close {
  display: none;
  float: left;
  padding: 2.9333333333vw 0 0 1.6vw;
  font-size: 2.9333333333vw;
  line-height: 1.364;
}

/* 開閉に応じてテキスト変更 */
.is-drawerActive .header-gnav-txt { display: none; }
.is-drawerActive .header-gnav-txt-close { display: inline; }


.header-gnav-btn {
  position: relative;
  float: right;
  width: 9.867vw;
  height: 9.867vw;
  text-decoration: none;
  background-color: #bc3e10;
  border-radius: 0.667vw;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  cursor: pointer;
  transition: all .4s;
}

.header-gnav-btn:hover,
.header-gnav-btn:focus {
  box-shadow: 0 0 .5rem rgba(255, 255, 255, .5 );
}

.header-gnav-btn-line {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 4.533vw;
  height: 0.267vw;
  background-color: #fff;
  -webkit-transition: inherit;
          transition: inherit;
}
.header-gnav-btn-line::before,
.header-gnav-btn-line::after {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: inherit;
  content: '';
  -webkit-transition: inherit;
          transition: inherit;
}
.header-gnav-btn-line::before {
  top: -1.333vw;
}
.header-gnav-btn-line::after {
  top: 1.333vw;
}

.header-gnav[aria-expanded="true"] .header-gnav-btn-line {
  background-color: transparent;
}

.header-gnav[aria-expanded="true"] .header-gnav-btn-line::before,
.header-gnav[aria-expanded="true"] .header-gnav-btn-line::after {
  top: 0;
  background-color: #f9d8ae;
}

.header-gnav[aria-expanded="true"] .header-gnav-btn-line::before {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.header-gnav[aria-expanded="true"] .header-gnav-btn-line::after {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.gnav-hidden-txt {
  position: absolute;
  white-space: nowrap;
  width: 0.267vw;
  height: 0.267vw;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%); 
  margin: -0.267vw;
}


/* gnav（リニューアル版）
   ----------------------------------------------------------------- */
.l-gnav {
  display: none;
  position: fixed;
  margin-top: 16.2666666667vw;
  padding-bottom: 16.2666666667vw;
  z-index: 100;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  overflow: scroll;
  background-color: #fff;
  transition: all .8s ease;
  -webkit-overflow-scrolling: touch;
}

.is-drawerActive .l-gnav {
  display: block;
}

.gnav-item { background-color: #fef4c5; }

.gnav-item+.gnav-item {
  border-top: 1px solid #bc3e10;
}

.gnav-item-accordion {
  position: relative;
  padding: 8vw 6.667vw;
  font-size: 4.267vw;
  line-height: 1;
  color: #222;
}

.gnav-accordion-ico {
  position: absolute;
  top: 8.267vw;
  right: 5.3333333333vw;
  display: block;
  width: 3.467vw;
  height: 3.467vw;
}

.gnav-accordion-ico:before {
  content: "";
  display: block;
  position: absolute;
  top: 1.6vw;
  width: 3.467vw;
  height: 0.267vw;
  background-color: #bc3e10;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  transform: rotate(0deg);
  transition: all .4s;
}
.gnav-accordion-ico:after {
  content: "";
  display: block;
  position: absolute;
  top: 1.6vw;
  width: 3.467vw;
  height: 0.267vw;
  background-color: #e26300;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  transform: rotate(90deg);
  transition: all .4s;
}

.js-gnav-accordion-close.gnav-accordion-ico:before { display:none;}
.js-gnav-accordion-close.gnav-accordion-ico:after {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  transform: rotate(180deg);
}

.gnav-link {
  position: relative;
  display: block;
  padding: 8vw 6.667vw;
  font-size: 4.267vw;
  line-height: 1;
  color: #222;
  text-decoration: none;
}

.gnav-link:before {
  content: "";
  position: absolute;
  top: 0;
  right: 5.333vw;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.067vw 0 1.067vw 1.333vw;
  border-color: transparent transparent transparent #bc3e10;
}

/* よくある質問　gnav
----------------------- */
.gnav-faq-list {
  display: none;
  padding: 5.3333333333vw 6.667vw 8vw 4vw;
  background-color: #fff;
}

.gnav-faq-item { margin-bottom: 6.9333333333vw; }

.gnav-faq-link {
  position: relative;
  display: block;
  padding-left: 12vw;
  text-decoration: none;
}

.gnav-faq-link:before {
  content: "Q";
  position: absolute;
  top: 1.067vw;
  left: 0;
  display: block;
  width: 8vw;
  height: 8vw;
  padding-top: 2.133333333vw;
  color: #fff;
  font-size: 3.733333333vw;
  line-height: 1;
  text-align: center;
  background-color: #bc3e0f;
  border-radius: 50%;
}

.gnav-faq-name {
  font-size: 3.2vw;
  line-height: 1.75;
  font-weight: normal;
  color: #104fbc;
  text-decoration: underline;
}

.gnav-faq-date {
  margin-top: 1.867vw;
  font-size: 2.933vw;
  line-height: 1;
  color: #999;
}

/* ハチ対策の知識　gnav
----------------------- */
.gnav-knowledge-list {
  display: none;
  padding: 5.3333333333vw 6.667vw 8vw 4vw;
  background-color: #fff;
}

.gnav-knowledge-item { margin-bottom: 6.667vw; }

.gnav-knowledge-link {
  display: table;
  width: 100%;
  text-decoration: none;
}

.gnav-knowledge-img {
  display: table-cell;
  vertical-align: top;
  width: 20vw;
}

.gnav-knowledge-body {
  display: table-cell;
  vertical-align: top;
  padding-left: 4vw;  
}

.gnav-knowledge-date {
  margin-bottom: 1.867vw;
  font-size: 2.933vw;
  line-height: 1;
  color: #999;
}

.gnav-knowledge-name {
  font-size: 3.2vw;
  line-height: 1.75;
  font-weight: normal;
  color: #104fbc;
  text-decoration: underline;
}

/* もっと見る */
.gnav-more-btn {
  display: block;
  width: 26.667vw;
  margin: 0 auto;
  padding: 2.667vw 0;
  font-size: 2.933vw;
  line-height: 1;
  text-align: center;
  color: #bc3e10;
  text-decoration: none;
  background-color: #fef4c5;
  border: 1px solid #bc3e10;
  border-radius: 4vw;
}


/* footer（リニューアル版）
----------------------------------------------------------------- */
/*footer { margin-bottom: 23.28%; }*/

.common-footer-ttl {
  position: relative;
  margin-bottom: 8vw;
  padding: 5.867vw 24vw 5.867vw 7.2vw;
  color: #fff;
  font-size: 4.267vw;
  line-height: 1;
  background-color: #bc3e0f;
}

/* 金庫の豆知識　アイコン */
.common-footer-ttl.knowledge:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4vw;
  display: block;
  width: 16.8vw;
  height: 11.6vw;
  background: url("../../images/common/footer/img_kinko.png") center center no-repeat;
  background-size: 16.8vw 11.6vw;
  transform: translateY(-50%);
}

/* よくある質問 */
.common-footer-ttl.faq:after {
  content: "";
  position: absolute;
  right: 3.2vw;
  bottom: 0;
  display: block;
  width: 18.66666666677vw;
  height: 19.7333333333vw;
  background: url("../../images/common/footer/img_faq.png") center center no-repeat;
  background-size: 18.6666666667vw 19.7333333333vw;
}


/* ハチ対策の知識　メニュー
----------------------- */
.l-footer-accordion { padding-bottom: 10.6666666667vw; }

.footer-knowledge-list { padding: 0 6.667vw 0 4vw; }

.footer-knowledge-list-more {
  display: none;
  padding: 0 6.667vw 0 4vw;
}

.footer-knowledge-item { margin-bottom: 6.667vw; }

.footer-knowledge-list a,
.footer-knowledge-list-more a {
  display: table;
  width: 100%;
  text-decoration: none;
}

.footer-knowledge-img {
  display: table-cell;
  vertical-align: top;
  width: 20vw;
}

.footer-knowledge-body {
  display: table-cell;
  vertical-align: middle;
  padding-left: 4vw;  
}

.footer-knowledge-date {
  margin-bottom: 1.867vw;
  font-size: 2.933vw;
  line-height: 1;
  color: #999;
}

.footer-knowledge-name {
  font-size: 3.2vw;
  line-height: 1.75;
  font-weight: normal;
  color: #104fbc;
  text-decoration: underline;
}

/* もっと見る */
.footer-more-btn {
  display: block;
  width: 26.667vw;
  margin: 0 auto;
  padding: 2.667vw 0;
  font-size: 2.933vw;
  line-height: 1;
  text-align: center;
  color: #bc3e10;
  text-decoration: none;
  background-color: #fef4c5;
  border: 1px solid #bc3e10;
  border-radius: 4vw;
}

.footer-more-btn.hidden { display: none; }


/* よくある質問　メニュー
----------------------- */
.footer-faq-list { padding: 0 6.667vw 0 4vw; }

.footer-faq-list-more {
  display: none;
  padding: 0 6.667vw 0 4vw;
}

.footer-faq-item { margin-bottom: 8vw; }

.footer-faq-link {
  position: relative;
  display: block;
  padding-left: 12vw;
  text-decoration: none;
}

.footer-faq-link:before {
  content: "Q";
  position: absolute;
  top: 1.067vw;
  left: 0;
  display: block;
  width: 8vw;
  height: 8vw;
  padding-top: 2.133333333vw;
  color: #fff;
  font-size: 3.733333333vw;
  text-align: center;
  line-height: 1;
  background-color: #bc3e0f;
  border-radius: 50%;
}

.footer-faq-name {
  font-size: 3.2vw;
  line-height: 1.75;
  font-weight: normal;
  color: #104fbc;
  text-decoration: underline;
}

.footer-faq-date {
  margin-top: 1.867vw;
  font-size: 2.933vw;
  line-height: 1;
  color: #999;
}

.js-footer-accordion-close { display: none; }


/* 基本情報　メニュー
----------------------- */
.l-footer-info {
  padding: 5.333vw 6.667vw 8vw;
  background-color: #fef4c5;
  border-top: 1px solid #bc3e0f;
}

.footer-info {
  display: table;
  width: 100%;
}

.footer-info-list {
  display: table-cell;
  vertical-align: top;
  width: 42.667vw;
}

.footer-info-a {
  position: relative;
  display: block;
  padding: 2.667vw 0 2.667vw 4vw;
  font-size: 3.467vw;
  line-height: 1;
  text-decoration: none;
  color: #333;
}

.footer-info-a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.067vw 0 1.067vw 1.333vw;
  border-color: transparent transparent transparent #bc3e0f;
}

.footer-logo02 {
  display: block;
  margin: 30px auto 0;
  width: 43.6vw;
}

/* コピーライト
----------------------- */
.copyright02 {
  display: block;
  /* margin-bottom: 21.867vw; */
  padding: 2.667vw 0;
  font-size: 2.933vw;
  line-height: 1;
  text-align: center;
  color: #fff;
  background-color: #bc3e0f;
}



/* 追従CTA ヒロミver
----------------------------------------------------------------- */
.follow-tel-wrap {
  padding-bottom: 21.739vw;
}

.l-follow-tel {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  display: flex;
  justify-content: left;
  padding: 3.98551vw 2.41546vw 1.20773vw;
  background: rgba(0,0,0,.8);
  transition: .4s;
  opacity: 0;
  transform: translateY(100%);
  pointer-events: none;
}
.l-follow-tel.show {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
.follow-tel-txt {
  display: inline-block;
  position: absolute;
  top: -2.77778vw;
  left: 3.43478vw;
  font-size: 3.38164vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
  padding: 0.96618vw 3.01932vw 1.44928vw;
  width: fit-content;
  height: 5.55556vw;
  background-color: #ffe934;
  border: 1px solid #000;
  border-radius: 2.77778vw;
}
.follow-btn {
  position: relative;
  width: 39.37198vw;
  z-index: 2;
}
.follow-btn + .follow-btn {
  margin-left: 0.72464vw;
}
.follow-img {
  position: absolute;
  bottom: 0.60386vw;
  right: 0.60386vw;
  width: 16.66667vw;
  z-index: 1;
}
.follow-point { color:#e55f41; }



/* ==================================================================
 こちらの記事もオススメです（footer上のレコメンドブロック）
================================================================== */
.recommend-ttl {
  position: relative;
  margin-bottom: 8vw;
  padding: 5.867vw 24vw 5.867vw 7.2vw;
  color: #fff;
  font-size: 4.267vw;
  line-height: 1;
  background-color: #bc3e0f;
}

.recommend-ttl:after {
  content: "";
  position: absolute;
  right: 5.333333333vw;
  bottom: 0;
  display: block;
  width: 12vw;
  height: 18.2666666667vw;
  background: url("../../images/common/footer/img_staff.png") center center no-repeat;
  background-size: 12vw 18.133vw;
}

.recommend-list { padding: 0 9.0666666667vw 2.667vw; }

.recommend-item { margin-bottom: 10.667vw; }

.recommend-link {
  display: block;
  text-decoration: none;
}

.recommend-date {
  margin: 4vw 0 2.4vw;
  font-size: 3.2vw;
  line-height: 1;
  color: #999;
}

.recommend-name {
  font-weight: bold;
  font-size: 4.533vw;
  line-height: 1.706;
  color: #104fbc;
  text-decoration: underline;
}


/* パンくず
   ----------------------------------------------------------------- */
.breadcrumbs {
  margin: 10px 0;
  padding: 0 15px;
  font-size: 11px;
  line-height: 1;
  color: #000;
}

.breadcrumbs li { display: inline; }

.breadcrumbs-a {
  display: inline-block;
  padding-right: 10px;
  text-decoration: none;
  background: url("../../images/common/ico_breadcrumb.png") right center no-repeat;
  background-size: 6px 6.5px;
}

/* 見出し
   ----------------------------------------------------------------- */
/* 大見出し */
.common-ttl01 {
  margin-bottom: 8.8vw;
  padding: 6.1333333333vw 0;
  font-size: 4vw;
  line-height: 1;
  text-align: center;
  background-color: #ffe760;
}

/* 小見出し */
.common-ttl02 {
  margin: 12vw 0 4vw;
  padding: 0 5.3333333333vw;
  font-weight: bold;
  font-size: 4.5333333333vw;
  line-height: 1.6;
  background-color: transparent;
  color: #333;
}

.common-ttl03 {
  margin: 13.3333333333vw 0 5.3333333333vw;
  padding: 0 5.3333333333vw;
  font-size: 4.267vw;
  line-height: 1.75;
  font-weight: bold;
}


/* コンテンツ部分のレイアウト
   ----------------------------------------------------------------- */
.l-content {
  padding-top: 16.2666666667vw;
  text-align: justify;
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
}

/* l-contents 内の基本のテキスト
----------------------- */
.common-txt {
  margin-bottom: 18px;
  padding: 0 5px;
  line-height: 1.6;
}


/* リンク　※デフォルトでつくようにしたのでクラス不要です
   ----------------------------------------------------------------- */
.layer-common-link {
  color: #104fbc;
  word-break: break-all;
}

/* ついてくる電話ボタン
   ----------------------------------------------------------------- */
.tel-scroll-wrap {
  position: fixed;
  display: none;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}

.tel-scroll {
  position: relative;
  width: 100%;
  padding-top: 26.5625%;
  background-color: #19988b;
}

.btn-tel-scroll {
  position: absolute;
  top: 7.6470588235%;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 1.5625% 0 2.34375%;
}

/* ==========================================================================
   company 会社概要
   ========================================================================== */
.company-headline-txt {
  position: relative;
  margin: 0 5.3333333333vw 9.3333333333vw;
  padding: 4vw 5.3333333333vw 4vw 21.3333333333vw;
  font-size: 4vw;
  line-height: 1.7;
  color: #fff;
  background-color: #bc3e0f;
  border-radius: 5px;
}

.company-headline-txt:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 4vw;
  width: 13.3333333333vw;
  height: 13.3333333333vw;
  background: url("../../images/company/img_staff.png") no-repeat;
  background-size: contain;
  transform: translateY(-50%);
}

.company-polite {
  display: block;
  width: 89.3333333333vw;
  margin: 5.3333333333vw auto;
}

.company-table {
  width: 89.3333333333vw;
  margin: 10.6666666667vw auto 0;
  text-align: left;
  border: 1px #bc3e10 solid;
  border-bottom: none;
  background-color: #fff;
}

.company-th {
  width: 24vw;
  padding: 4vw;
  font-size: 3.4666666667vw;
  color: #333;
  line-height: 1;
  border-right: 1px #bc3e10 solid;
  border-bottom: 1px #bc3e10 solid;
  background-color: #fef4c5;
}

.company-td {
  padding: 4vw;
  font-size: 3.4666666667vw;
  color: #333;
  line-height: 1.33;
  border-bottom: 1px #bc3e10 solid;
}

.company-td-a { color: #104fbc; }


/* ==========================================================================
   privacy プライバシーポリシー・利用規約　共通
   ========================================================================== */
/* シンプルな黒丸リスト
----------------------- */
.layer-list01 {
  list-style: none;
  margin: 6.6666666667vw 5.3333333333vw 9.3333333333vw; 
  padding: 0;
  text-indent: 0;
}

.layer-list01 li {
  position: relative;
  padding-left: 4.2666666667vw;
  font-size: 4.267vw;
  line-height: 1.75;
}

.layer-list01 li+li {
  margin-top: 2.6666666667vw;
}

.layer-list01 li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}


/* シンプルな数字リスト
----------------------- */
.layer-list02 {
  list-style: none;
  counter-reset: item;
  margin: 6.6666666667vw 5.3333333333vw 9.3333333333vw; 
  padding: 0;
  text-indent: 0;
}

.layer-list02 li {
  position: relative;
  font-size: 4.267vw;
  line-height: 1.75;
}

.layer-list02 li+li {
  margin-top: 2.6666666667vw;
}

.layer-list02 li:before {
  counter-increment: item;
  content: counter(item)'. ';
}

/* （ ）の数字リスト
----------------------- */
.layer-list03 {
  list-style: none;
  margin: 6.6666666667vw 5.3333333333vw 9.3333333333vw 13.8666666667vw;
  padding: 0;
  counter-reset: item;
}

.layer-list03 li {
  position: relative;
  font-size: 4.267vw;
  line-height: 1.75;
}

.layer-list03 li:before {
  counter-increment: item;
  content: '（'counter(item)'）';
  position: absolute;
  top: 0;
  left: -8.8vw;
}

.layer-list03 li+li {
  margin-top: 5.3333333333vw;
}

/* リスト（丸数字は直書き）
----------------------- */
.layer-list04 {
  list-style: none;
  margin: 6.6666666667vw 5.3333333333vw 9.3333333333vw 9.6vw;
  padding: 0;
}

.layer-list04 li {
  position: relative;
  font-size: 4.267vw;
  line-height: 1.75;
  text-indent: -1em;
}

.layer-list04 li:before {
  content: none;
}

.layer-list04 li+li {
  margin-top: 5.3333333333vw;
}


/* ==========================================================================
   コラム一覧ページ
   ========================================================================== */
/* 一覧リストの最初のアイテム
   ----------------------------------------------------------------- */
/* ここの背景画像を変えることで変更できます */
.column-list-headline {
  margin-bottom: 5px;
  background: url("../../images/layer/knowledge/kinko_akekata/img_kinko_akekata.jpg") center center no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}

/* faqの背景画像 */
.faq-list-headline {
  margin-bottom: 5px;
  background: url("../../images/layer/faq/kinko_nensu/img_taika_kinko.jpg") center center no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}

.column-list-headline-a {
  display: block;
  padding: 145px 15px 17px;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  text-decoration: none;
  background-color: rgba(0,0,0,.45);
}

/* 一覧リスト
   ----------------------------------------------------------------- */
.column-ttl {
  margin-bottom: 5px;
  padding: 0 5px 10px;
  font-size: 13px;
  font-weight: bold;
  border-bottom: 2.5px solid #19988b;
}

.column-list { padding: 0 4vw; }

.column-list li { border-bottom: 1px solid #ececec; }

.column-list a {
  display: table;
  width: 100%;
  min-height: 1px;
  padding: 10px 0;
  text-decoration: none;
  color: #222;
  line-height: 1.4;
}

.column-li-tmb {
  display: table-cell;
  width: 90px;
  height: 60px;
  vertical-align: middle;
}

.column-li-txt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px;
  line-height: 1.4;
}

.pagination {
  position: relative;
  margin: 13px 0 15px;
  text-align: center;
  font-size: 11px;
  color: #555;
}

.pagination-next {
  position: absolute;
  top: 0;
  right: 10px;
  padding-right: 13px;
  text-decoration: none;
}

.pagination-next:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4.5px 0 4.5px 5.5px;
  border-color: transparent transparent transparent #bc3e10;
}

/* 人気記事リスト
   ----------------------------------------------------------------- */
.hot-column-ttl {
  margin-bottom: 5px;
  padding: 0 5px 10px;
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
  border-bottom: 2.5px solid #19988b;
}

.hot-column-list { padding: 0 5px; }

.hot-column-list li:not(:last-of-type) { border-bottom: 1px solid #ececec; }

.hot-column-list a {
  display: table;
  width: 100%;
  min-height: 1px;
  padding: 10px 0;
  text-decoration: none;
  color: #222;
  line-height: 1.4;
}

.hot-column-li-tmb {
  display: table-cell;
  width: 60px;
  height: 60px;
  vertical-align: middle;
}

.hot-column-li-txt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px;
  line-height: 1.4;
}

/* ==========================================================================
   コラム詳細ページ
   ========================================================================== */
/* 見出し
   ----------------------------------------------------------------- */
/* 金庫の専門家 */
.column-staff {
  position: relative;
  margin: 5.333vw;
  padding: 1.6vw 0 2.133vw 16vw;
  line-height: 1;
}

.column-staff:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 13.333vw;
  height: 13.333vw;
  background: url("../../images/layer/knowledge/img_staff.png") no-repeat;
  background-size: 13.333vw 13.333vw;
}

.column-staff-time {
  position: relative;
  display: block;
  margin-bottom: 2.667vw;
  color: #999;
  font-size: 3.2vw;
}

.column-staff-time:after {
  content: "　更新";
}

.column-staff-txt {
  display: block;
  font-size: 3.733vw;
  font-weight: bold;
}

.column-staff-txt .point {
  color: #bc3e10;
}

/* 黒文字の大見出し */
.column-ttl01 {
  margin: 6.667vw 5.333vw;
  font-size: 6.133vw;
  line-height: 1.4347826087;
  font-weight: bold;
}

/* 白文字・赤背景の小見出し */
.column-ttl02 {
  margin: 11.733vw 0 6.4vw;
  padding: 4.8vw 5.333vw;
  color: #fff;
  font-size: 4.8vw;
  font-weight: bold;
  line-height: 1.4444444444;
  background-color: #bc3e0f;
  border-radius: 0.4vw;
}

/* 下赤線・黒文字の小見出し */
.column-ttl03,
.faq-headline01 {
  margin: 9.067vw 0 6.4vw 4vw;
  padding: 0 4vw 3.467vw 0;
  font-size: 4.533vw;
  font-weight: bold;
  line-height: 1.2941176471;
  border-bottom: 2px solid #bc3e10;
}

/* h5の小見出し */
.column-ttl04,
.faq-headline02 {
  position: relative;
  margin: 9.867vw 5.333vw;
  padding-left: 3.467vw;
  color: #111;
  font-size: 4.267vw;
  line-height: 1.375;
  font-weight: bold;
}

.column-ttl04:before,
.faq-headline02:before {
  content: "";
  position: absolute;
  top: 0.533vw;
  left: 0;
  width: 0.8vw;
  height: 4.8vw;
  background-color: #bc3e0f;
}

.column-info {
  overflow: hidden;
  margin: 0 5.333vw;
}


.column-headline04 {
  margin: 9.867vw 5.333vw;
  padding: 4vw 0;
  color: #4a968b;
  font-size: 4.533vw;
  font-weight: 600;
  line-height: 1.4444444444;
  border-bottom: 1px solid #4a968b;
  letter-spacing: 0.04em;
  font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  background: none;
}




/* SNS
----------------------- */
.column-sns-top { overflow: hidden; }

.column-sns-bottom {
  overflow: hidden;
  margin-bottom: 10.667vw;
  padding: 0 4vw;
}

.column-sns-top a,
.column-sns-bottom a {
  display: block;
  float: left;
  width: 22.667vw;
}

.column-sns-top a+a,
.column-sns-bottom a+a {
  margin-left: 1.867vw;
}


/* テキスト
   ----------------------------------------------------------------- */
/* コラム基本のテキスト */
.column-txt {
  padding: 0 5.333vw;
  font-size: 4.267vw;
  line-height: 1.75;
}

.column-txt + .column-txt { margin-top: 8.8vw; }

.column-txt a,
.layer-list01 a {
  color: #104fbc;
  word-break: break-all;
}


/* テキスト強調
----------------------- */
.layer-point-txt01 {
  color: #bc3e10;
  font-weight: inherit;
}

.layer-point-txt02 { font-weight: bold; }


/* 画像
----------------------- */
.l-content img.w100,
.l-faq img.w100 {
  display: block;
  margin: 6.4vw 0;
  padding: 0 4vw;
}

.l-content .column-txt img.w100,
.l-faq .column-txt img.w100 {
  width: 102.9850746269%;
  max-width: none;
  margin: 0 -1.4925373134%;
  padding: 0;
}


/* リスト
----------------------- */
.layer-common-list {
  list-style: none;
  margin: 6.4vw 4vw;
  padding: 6.133vw 4vw;
  border: 1px solid #bc3e10;
  border-radius: 0.8vw;
  background-color: #fef4c5;
}

.layer-common-list li {
  position: relative;
  margin-bottom: 3.467vw;
  padding-left: 4vw;
  font-size: 4vw;
  font-weight: bold;
  line-height: 1.2;
}

.layer-common-list li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.layer-common-list li:last-child { margin-bottom: 0; }


.layer-common-list a,
.layer-common-numlist a {
  color: #104fbc;
}

/* 連番リスト
----------------------- */
.layer-common-numlist {
  margin: 6.4vw 4vw;
  padding-left: 3.733vw;
  padding: 6.133vw 4vw 6.133vw 10.667vw;
  border: 1px solid #bc3e10;
  border-radius: 0.8vw;
  background-color: #fef4c5;
}

.layer-common-numlist li {
  position: relative;
  margin-bottom: 3.467vw;
  font-size: 4vw;
  font-weight: bold;
  line-height: 1.2;
}

.layer-common-numlist li:last-child { margin-bottom: 0; }


/* 表（メーカー紹介など）
----------------------- */
.layer-column-table {
  width: 92%;
  margin: 24px auto;
  font-size: 3.467vw;
  border-collapse: collapse;
  border: 1px solid #19988b;
  border-right: none;
  border-bottom: none;
}

.layer-column-table a {
  text-decoration: underline;
  word-break: break-all;
  color: #104fbc;
}

.layer-table-ttl-x {
  padding: 4vw;
  font-size: 4.267vw;
  line-height: 1.125;
  border-right: 1px solid #19988b;
  border-bottom: 1px solid #19988b;
  background-color: #fef4c5;
}

.layer-table-ttl-x a {
  color: #104fbc;
}

.layer-table-ttl-y {
  padding: 4vw;
  color: #222;
  font-size: 3.2vw;
  font-weight: bold;
  text-align: left;
  line-height: 1.4166666667;
  border-right: 1px solid #19988b;
  border-bottom: 1px solid #19988b;
  background-color: #fafafa;
}

.layer-table-item {
  padding: 4vw;
  font-size: 3.733vw;
  line-height: 1.5;
  border-right: 1px solid #19988b;
  border-bottom: 1px solid #19988b;
  background-color: #fff;
}

/* テキスト強調 */

.txtb2 {
  background: linear-gradient(transparent 60%, #ffff66 60%);
  font-size: 115%;
}

.txtb1 { color: #bc3e10; }

.txts {
  font-size: 12px;   
  color: #616161;
}

/* コラム囲みボックス */
.box1 {
  border: 4px double #ddd;
  margin: 1em 0.5em;
  padding: 1em;
  font-size: 14px;
}

.box2 {
  border: 2px solid #da4033;
  border-radius: 4px;
  margin: 2em 0.5em;
  padding: 2em;
  position: relative;
}
.box2::before {
  background-color: #fff;
  color: #da4033;
  content: "ポイント";
  font-weight: bold;
  left: 1em;
  padding: 0 .5em;
  position: absolute;
  top: -1em;
}


/* [+]もっと詳しく開閉ボックス
   ----------------------------------------------------------------- */
.switchDisp { display: none; }

.box {
  position: relative;
  margin: 6.4vw 4vw;
  padding: 0 5.333vw 5.333vw;
  border-radius: 1.333vw;
  border: 1px solid #d6d7d7;
  background-color: #f2f5f7;
}

.box-headline {
  margin: 8vw 0;
  font-size: 4.533vw;
  text-align: center;
}

.box .column-txt { padding: 0 1.333vw; }

.box .layer-column-table { width: 100%; }

.box-btn {
  display: block;
  width: 80vw;
  padding: 4vw 0;
  margin: 8vw auto 2.667vw;
  font-size: 4vw;
  line-height: 1;
  text-align: center;
  border-radius: 1.333vw;
  border: 1px solid #ccc;
  background: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e9e9e9));
  background: linear-gradient(to bottom, #fff 0%, #e9e9e9 100%);
  box-shadow: 0px 0.8vw 0px 0px #ccc;
  color: #333;
  text-decoration: none;
}


/* SNSボタン
   ----------------------------------------------------------------- */
.sns-area {
  margin-bottom: 10px;
  padding: 0 5px;
}

.btn-twitter {
  display: inline-block;
  margin-right: 3px;
}

.btn-facebook {
  overflow: hidden;
  display: inline-block;
  height: 20px;
}

/* 新・目次（リンク有り）
   ----------------------------------------------------------------- */
.outline {
  margin: 9.067vw 4vw 10.667vw;
  padding: 0 8vw 10.133vw;
  border: 1px solid #104fbc;
  border-radius: 0.8vw;
}

.outline-ttl {
  position: relative;
  width: fit-content;
  margin: -2.708vw auto 6.25vw;
  padding: 0 2.083vw;
  color: #104fbc;
  font-size: 3.75vw;
  line-height: 1.4;
  text-align: center;
  background-color: #fff;
}

.outline-item { overflow: hidden;}

.outline-item-li {
  position: relative;
  margin-bottom: 5.6vw;
  padding-left: 4vw;
}

.outline-item-li:last-child { margin-bottom: 0; }

.outline-item-li:before {
  content: "";
  position: absolute;
  top: 1.333vw;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.067vw 1.333vw 1.067vw 1.333vw;
  border-color: transparent transparent transparent #bc3e10;
}

.outline-item-link {
  color: #104fbc;
  font-size: 3.467vw;
  line-height: 1.3076923077;
  text-decoration: none;
}


/*小目次*/
.outline-child-li{
  position: relative;
  margin-bottom: 2.667vw;
  padding-left: 7vw;
}

.outline-child-li:before {
  position: absolute;
  content: "・";
  top: 0.8vw;
  left: 0;
  width: 5.333vw;
  padding: 1.067vw 0;
  color: #333;
  font-size: 3.733vw;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.outline-child-li:last-child { margin-bottom: 10.667vw; }

.outline-child-link {
  margin: 0;
  padding: 0;
  color: #104fbc;
  font-size: 3.2vw;
  font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  line-height: 1.3333333333;
  letter-spacing: 0.08em;
  text-decoration: underline;
}


/* 記事内のミニコラム
----------------------- */
.mini-column-block {
  width: 92%;
  margin: 34px auto;
  padding-bottom: 9.067vw;
  border-radius: 0.8vw;
  border: 1px solid #bc3e10;
}

.mini-column-ttl {
  position: relative;
  margin-bottom: 5.067vw;
  padding: 4.533vw 18.667vw 4.533vw 5.333vw;
  font-size: 4.267vw;
  font-weight: bold;
  line-height: 1.375;
  background-color: #fef4c5;
  border-radius: 0.533vw 0.533vw 0 0;
}

.mini-column-ttl:before {
  content: "";
  position: absolute;
  right: 2.667vw;
  bottom: 0;
  display: block;
  width: 12.267vw;
  height: 18.4vw;
  background: url('../../images/layer/knowledge/ico-mini-column_v2.png') no-repeat;
  background-size: contain;
}

.mini-column-txt {
  margin-bottom: 5.333vw;
  font-size: 3.733vw;
  padding: 0 0.8vw;
  line-height: 1.6;
}

.mini-column-ul {
  margin-bottom: 6.133vw;
}

.mini-column-ul li {
  margin-bottom: 1.333vw;
}


/* 引用文 */
.blockquote {
  position: relative;
  width: 92%;
  margin: 34px auto 34px;
  padding: 10.667vw 5.333vw 5.333vw;
  color: #555;
  background: #efefef;
  border-radius: 0.8vw;
}
.blockquote:before {
  display: inline-block;
  content: "“";
  position: absolute;
  top: 1.067vw;
  left: 2.667vw;
  vertical-align: middle;
  font-size: 18.667vw;
  color: #7987a4;
  line-height: 1;
}

.blockquote-cite {
  font-size: 3.2vw;
  margin-bottom: 1.333vw;
  text-align: right;
}
.blockquote-cite a {
  color: #104fbc;
  text-decoration: underline;
}

.blockquote .layer-common-list {
  margin: 0 0 5.333vw;
  padding: 0;
  left: 0;
  border: none;
  background: none;
}

.column-mainimage {
  margin-bottom: 8.8vw;
}




/* コラム内中間CTA　ヒロミver */
.l-layer-cta {
  padding-bottom: 5.333333333333333vw;
  margin: 6.666666666666667vw 0;
  background-color: #74ebdf;
}
.layer-cta-img {
  margin: -3.466666666666667vw 0 0 4vw;
  width: 93.6vw;
}
.layer-cta-btn {
  position: relative;
  text-decoration: none;
  display: block;
  width: 96vw;
  margin-left: 2.6666666666666665vw;
  color: #333;
  animation: scale 3s ease 0s infinite normal;
  -webkit-animation: scale 3s ease 0s infinite normal; 
}
.layer-cta-btn img { 
  position: relative;
  z-index: 2;
 }
@keyframes scale {
  0% {
    transform:scale(1,1);box-shadow: 0 }
  30% {
    transform:scale(.97,.95);box-shadow: 0 }
  40% {
    transform:scale(1,1);box-shadow: 0 }
}
.layer-cta-scale-effect {
  position: absolute;
  top: 0;
  left: 0;
  width: 94.686vw;
  height: 31.466666666666665vw;
  border-radius: 2.6666666666666665vw;
  animation: scale 3s ease 0s infinite normal;
  -webkit-animation: scale2 3s ease 0s infinite normal; 
}
@keyframes scale2 {
  35% {
    box-shadow: 0 0 0 0 rgba(255,255,255,.10),0 0 0 0 rgba(255,255,255,.9),0 0 0 0 rgba(255,255,255,.8); }
  70% {
    box-shadow: 0 0 0 0.3125vw rgba(255,255,255,0),0 0 0 1.5625vw rgba(255,255,255,0),0 0 0 3.125vw rgba(255,255,255,0); }
}
.layer-cta-info {
  position: absolute;
  bottom: 5.0666666667vw;
  left: 4.348vw;
  z-index: 2;
  width: 85.99vw;
  text-align: center;
  font-size: 2.9333333333vw;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}







/* コラム用お問合わせボタン
   ----------------------------------------------------------------- */
.btn-layer-tel {
  display: block;
  margin: 6.667vw 0 8vw;
  padding-left: 0.8vw;
}

.btn-layer-tel img.w100 {
  margin: 0;
  position: 0;
}


/* スクロールリンク v2
   ----------------------------------------------------------------- */
.scroll-link-wrap {
  padding-top: 56px;
  padding-top: 17.5vw;
}

.scroll-link {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: rgba(34,34,34,0.9);
}

.scroll-link-inner {
  position: relative;
  display: block;
  width: 320px;
  width: 100vw;
  margin: 0 auto;
  text-decoration: none;
}

.scroll-img-staff {
  position: absolute;
  right: 4px;
  right: 1.25vw;
  bottom: 0;
  width: 78px;
  width: 24.375vw;
  height: 66px;
  height: 20.625vw;
}

.scroll-link-txt {
  padding: 10px 0 10px 10px;
  padding: 3.125vw 0 3.125vw 3.125vw;
  font-size: 13px;
  font-size: 4.0625vw;
  font-weight: bold;
  color: #fff;
}

.scroll-link-txt span {
  padding-left: 31px;
  padding-left: 9.6875vw;
  text-decoration: underline;
  color: #f8db16;
}

/* ついてくる電話ボタン_190606追記
----------------------- */
.tel-scroll-wrap {
  position: fixed;
  display: none;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}

.tel-scroll {
  position: relative;
  width: 100%;
  padding-top: 26.5625%;
  background-color: #19988b;
}

.btn-tel-scroll {
  position: absolute;
  top: 7.6470588235%;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 1.5625% 0 2.34375%;
}
.scroll-btn-wrap {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transform: translateY(100%);
  transition: .4s;
}
.scroll-btn-wrap.show {
  transform: translateY(0)
}
.scroll-btn {
  position: relative;
  width: 100%;
  padding-top: 23.28125%;
  background-color: #19988b;
}
.scroll-btn-inner {
  position: absolute;
  top: 10.067114094%;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 2.34375%;
  overflow: hidden;
}
.btn-scroll-tel {
  float: left;
  width: 77.2131147541%;
}
.btn-scroll-mail {
  float: right;
  width: 21.9672131148%;
}
/* ついてくるボタン用のmargin */
.copyright { margin-bottom: 23.28125%; }    


/* 金庫の種類
----------------------- */
.layer-type-list {
  margin: 6.667vw 0;
  padding: 0 5.333vw;
}

.layer-type-item {
  display: table;
  width: 100%;
  margin-bottom: 5.333vw;
}

.layer-type-img {
  display: table-cell;
  vertical-align: top;
  width: 16vw;
}

.layer-type-txt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 2.667vw;
  font-size: 3.733vw;
}

.layer-type-name {
  margin-bottom: 1.333vw;
  font-size: 4.267vw;
  font-weight: bold;
  line-height: 1.3;
}


/* コラム内のバナー
----------------------- */
.layer-common-bnr {
  margin-top: -1.333vw;
  margin-bottom: 12vw;
  padding: 0 1.333vw;
}

.layer-common-bnr a {
  display: block;
}

/* 注釈
----------------------- */
.layer-common-caution {
  margin: 6.4vw 4vw;
  padding: 6.133vw 4vw;
  background-color: #ececec;
}


/* 金庫の専門家
   ----------------------------------------------------------------- */
.expert-info {
  padding: 6.667vw 6.667vw 8vw;
  margin: 10.6666666667vw 4vw 8vw;
  border: 1px solid #bc3e10;
  background-color: #fef4c5;
  border-radius: 0.667vw;
}

.expert-info-ttl {
  margin-bottom: 6.667vw;
  font-size: 4vw;
  font-weight: bold;
  line-height: 1;
}

.expert-info-staff {
  margin-bottom: 5.3333333333vw;
  overflow: hidden;
} 

.column-expert-ico {
  float: left;
  width: 13.333vw;
  margin-right: 2.667vw;
}

.expert-info-staff-name {
  margin: 2.133vw 0 1.067vw;
  font-size: 3.733vw;
  line-height: 1;
}

.column-date {
  padding-top: 1.6vw;
  font-size: 3.2vw;
  line-height: 1;
  color: #999;
}

.column-expert-txt {
  margin-top: 2.4vw;
  font-size: 3.733vw;
  line-height: 1;
  font-weight: bold;
}

.expert-info-txt {
  font-size: 3.733vw;
  line-height: 1.786;
}


/* ==========================================================================
   よくある質問
   ========================================================================== */
.l-faq {
  padding-top: 16.2666666667vw;
  background-color: #fef4c5;
}

/* 質問
   ----------------------------------------------------------------- */
.faq-question {
  position: relative;
  margin: 4vw 4vw 10.667vw;
  padding: 7.2vw 1.333vw 9.867vw;
  border: 1px solid #bc3e10;
  border-radius: 1.333vw;
  background-color: #fff;
}

.faq-question:before {
  content: "";
  position: absolute;
  top: -16vw;
  right: 0;
  width: 14.933vw;
  height: 15.733vw;
  background: url("../../images/layer/faq/img_voice.png") no-repeat;
  background-size: 14.933vw 15.733vw;
}

.faq-question:after {
  content: "";
  position: absolute;
  bottom: -7.467vw;
  left: 50%;
  margin-left: -3.733vw;
  border-top: 15px solid #bc3e10;
  border-right: 14px solid transparent;
  border-left: 14px solid transparent;
}

.question-ttl {
  position: relative;
  padding: 8vw 8vw 6.667vw 14.667vw;
  font-size: 5.333vw;
  line-height: 1.45;
}

.question-ttl:before {
  content: "Q";
  position: absolute;
  top: 8vw;
  left: 5.333vw;
  width: 6.667vw;
  height: 6.667vw;
  padding: 1.333vw 0 1.6vw;
  color: #fff;
  font-size: 3.733vw;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  background-color: #bc3e10;
  border-radius: 50%;
}


/* 回答
   ----------------------------------------------------------------- */
.faq-answer {
  background-color: #fff;
}

.answer-ttl {
  position: relative;
  padding: 5.333vw 21.333vw 5.333vw 14.667vw;
  margin-bottom: 7.2vw;
  color: #fff;
  font-size: 4.533vw;
  font-weight: bold;
  line-height: 1.6470588235;
  background-color: #bc3e10;
}

.answer-ttl:before {
  content: "A";
  position: absolute;
  top: 5.333vw;
  left: 5.333vw;
  width: 6.667vw;
  height: 6.667vw;
  padding: 1.333vw 0 1.6vw;
  color: #bc3e10;
  font-size: 3.733vw;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  background-color: #ffe760;
  border-radius: 50%;
}

.answer-ttl:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 1.333vw;
  width: 16vw;
  height: 24.267vw;
  background: url("../../images/layer/faq/img_staff.png") no-repeat;
  background-size: 16vw 24.267vw;
}

/* 見出し、文章
   ----------------------------------------------------------------- */

/* youtube */
.youtube {
  overflow: hidden;
  position: relative;
  height: 0;
  margin: 0 4%;
  padding-bottom: 56.25%;
  
}
 
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ==================================================================
 sitemap サイトマップ
================================================================== */
.headline-sitemap {
  padding: 6.1333333333vw 0;
  font-size: 4vw;
  line-height: 1;
  text-align: center;
  background-color: #ffe760;
}

.sitemap-menu-ttl {
  margin-bottom: 5.8666666667vw;
  padding: 8vw 5.3333333333vw 0;
  font-weight: bold;
  font-size: 3.733vw;
  line-height: 1;
}

.sitemap-menu {
  margin-bottom: 9.3333333333vw;
  padding: 0 8vw 0 5.3333333333vw;
}

.sitemap-menu-item {
  position: relative;
  margin-bottom: 4vw;
  padding-left: 4vw;
  font-size: 3.2vw;
  line-height: 1.583;
}

.sitemap-menu-item:last-of-type {
  margin-bottom: 0;
}

.sitemap-menu-item:before {
  content: "";
  position: absolute;
  top: 1.6vw;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.067vw 0 1.067vw 1.3333333333vw;
  border-color: transparent transparent transparent #bc3e10;
}

.sitemap-menu-item a {
  color: #333;
}

.sitemap-menu+.sitemap-menu-ttl {
  border-top: 1px solid #d8ab26;
}



/* ==========================================================================
   404ページ
   ========================================================================== */
.notfound-content { padding: 20px 20px 30px; }

.notfound-head {
  margin-bottom: 10px;
  font-size: 14px;
  text-align: center;
  font-weight: bold;
}

.notfound-txt { margin-bottom: 20px; }

.btn-notfound {
  display: block;
  padding: 11px 0;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  background-color: #fff8f5;
  border: 1px solid #cb570a;
  border-radius: 2px;
}

/* ==========================================================================
   contact お問い合わせ
   ========================================================================== */
/* 入力画面
   ----------------------------------------------------------------- */
/* フォームのキャッチ
----------------------- */
.l-contact-headline {
  position: relative;
  padding: 0 10px;
  border-bottom: 1px solid #19988b;
}

.contact-headline-txt {
  padding: 3px 12px 22px;
  line-height: 1.7;
}

.contact-tel-link { font-weight: bold; }

.contact-img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 104px;
  height: 125px;
}


/* 入力欄
----------------------- */
.l-form { padding: 20px 15px 0; }

.form-table {
  width: 100%;
  margin-bottom: 10px;
}

.form-item-ttl {
  display: block;
  width: 100%;
  padding-bottom: 10px;
  text-align: left;
  line-height: 1;
  font-size: 15px;
}

.form-item {
  display: block;
  width: 100%;
  padding-bottom: 30px;
}

/* 必須アイコン */
.required-ico {
  display: inline-block;
  margin-right: 10px;
  padding: 3px 5px;
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  background-color: #bc3e10;
  border-radius: 3px;
}

/* 任意アイコン */
.option-ico {
  display: inline-block;
  margin-right: 10px;
  padding: 3px 5px;
  font-size: 12px;
  font-weight: normal;
  color: #bc3e10;
  border-radius: 3px;
  border: 1px solid #bc3e10; 
}

/* textarea（お問い合わせ内容） */
.form-input-textarea {
  -webkit-appearance: none;
  width: 100%;
  height: 105px;
  padding: 8px 15px;
  font-size: 16px;
  line-height: 1.6;
  background-color: #f0fcfb;
  border: 1px solid #19988b;
  border-radius: 2px;
  resize: vertical;
}

/* 名前などのinput */
.form-input-text {
  -webkit-appearance: none;
  width: 100%;
  padding: 8px 14px;
  font-size: 16px;
  line-height: 1;
  background-color: #f0fcfb;
  border: 1px solid #19988b;
  border-radius: 2px;
}

.form-input-text::-webkit-input-placeholder {
  padding-top: 5px;
}

/* select */
.form-select {
  position: relative;
  width: 170px;
}

.form-select:before {
  content: "";
  position: absolute;
  top: 15px;
  right: 17px;
  width: 5px;
  height: 5px;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1;
}

.form-input-select {
  position: relative;
  width: 170px;
  padding: 6px 16px;
  font-size: 16px;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  border: 1px solid #bbbbbb;
  border-radius: 4px;
  background: -moz-linear-gradient(top, #ffffff 0%, #d6d6d6 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 0%,#d6d6d6 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 0%,#d6d6d6 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/* 記入例 */
::-webkit-input-placeholder { color: #b4b4b4; }

/* exValidation(リアルタイムのチェック)の警告 */
.errMsg {
  display: block;
  color: #bc3e10;
}

.formError.userformError{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  padding: 0 !important;
  margin-top: 6px !important;
}

.form-table .error {
  padding-top: 6px;
  color: #bc3e10;
}


/* 確認ボタン付近
----------------------- */
.form-confirmation-btn {
  width: 230px;
  margin: 0 auto 30px;
  text-align: center;
}

/* 未入力の項目があります */
.not-entered {
  padding: 14px 0;
  font-size: 15px;
  color: #fff;
  background-color: #b4b4b4;
  border-radius: 3px;
}

/* 確認画面へ進む */
.entered {
  display: block;
  width: 100%;
  padding: 14px 0;
  font-size: 15px;
  color: #fff;
  border-radius: 3px;
  background-color: #bc3e0e;
  border: none;
}

.form-security-txt {
  margin-bottom: 50px;
  text-align: center;
}

/* 確認画面
   ----------------------------------------------------------------- */
.l-confirm-headline {
  padding: 0 10px;
  border-bottom: 1px solid #c2dedb;
}

.contact-confirm-txt {
  padding: 3px 5px 20px;
  line-height: 1.7;
}

.form-confirm {
  width: 100%;
  margin-bottom: 30px;
}

.form-confirm-ttl {
  display: block;
  padding: 20px 15px 11px;
  text-align: left;
  font-size: 15px;
  line-height: 1;
}

.form-confirm-body {
  display: block;
  padding: 0 15px 21px;
  font-size: 14px;
  line-height: 1.6;
  border-bottom: 1px solid #c2dedb;
  word-break: break-all;
}

.form-btn-area {
  width: 230px;
  margin: 0 auto 50px;
}

/* 前に戻るボタン */
.form-back-btn {
  display: block;
  width: 100%;
  padding: 14px 0;
  font-size: 15px;
  color: #fff;
  background-color: #b4b4b4;
  border-radius: 3px;
  border: none;
}

/* 送信するボタン */
.form-sending-btn {
  display: block;
  margin-bottom: 25px;
  width: 100%;
  padding: 14px 0;
  font-size: 15px;
  color: #fff;
  border-radius: 3px;
  background-color: #bc3e0e;
  border: none;
}


/* 完了画面
   ----------------------------------------------------------------- */
.contact-finish-ttl {
  margin-bottom: 10px;
  padding: 14px 15px;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.3;
  color: #bc3e10;
  background-color: #fbe1d8;
  border-radius: 2.5px;
}

.contact-finish-txt {
  margin-bottom: 20px;
  padding: 0 5px;
  line-height: 1.7;
}


/* エラー画面
   ----------------------------------------------------------------- */
.l-error-content { padding: 0 15px; }

.error-ttl {
  font-size: 17px;
  margin-bottom: 6px;
}

.error-txt { margin-bottom: 20px; }

.back-btn-area {
  margin-bottom: 40px;
  text-align: center;
}

.back-btn-area li { margin-bottom: 20px; }

.back-btn-area a { position: relative; }

.back-btn-area a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -10px;
  margin: auto 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 4px;
  border-color: transparent transparent transparent #bc3e10;
}
