body {
  line-height: 2.0;
  margin: 0px;
/*    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;*/
  background-color: black;
  color: #d3d3d3 !important;
}

/* テンプレート（Helix Ultimate）への上書き処理 */
#sp-main-body {
    padding-top: 50px !important;
}

/*#sp-footer,
#sp-top-bar{
  background-color: #91be30;
}
*/
#sp-top-bar{
  color: black;
}

#sp-header{
    background-color: rgba(0,0,0,0.2);
    color: white;
}
#sp-header .logo{
    display:none;
}
/*#sp-main-body{
margin-top: -100px;
}
*/
.sp-megamenu-parent > li > a{
 color:white;
}

#sp-footer{
  background-color: black;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li a, .offcanvas-menu .offcanvas-inner .sp-module ul > li span {
    color: #d3d3d3;
}

.burger-icon>span{
  background-color: white;
}

/*オフキャンパスのバガーメニューCSS*/
.offcanvas-menu .offcanvas-inner .sp-module ul > li {
    line-height: 45px;
    border-bottom: 1px solid #E8EEF3;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li:first-child {
    border-top: 1px solid #E8EEF3;
}
.offcanvas-menu .offcanvas-inner {
    padding: 60px 30px 30px 30px;
}
/*続きを読む*/
.article-list .article .readmore a {
    font-weight: 500;
    line-height: 30px;
    text-decoration: none;
    text-align: center;
    background-color: #c6c7c7;
    border-radius: 5px;
    transition: all 0.5s;
    padding: 8px;
}
/*AP右メニュー*/
#sp-left .sp-module ul > li > a, #sp-right .sp-module ul > li > a {
    padding: 5px 10px;
}
/*ブログ表示タイトル*/
.article-list .article .article-header h1 a, .article-list .article .article-header h2 a {
    padding: 0.25em 0.5em;
    color: #494949;
    background: transparent;
    border-left: solid 5px #666;
}
/*ブログページナビナンバー*/
.pagination-wrapper {
    padding-top: 20px;
    padding-bottom: 20px;
}
/*tag下マージン*/
.tags {
    margin: 2rem 0 15px 0;
}




/*#sp-page-builder .sppb-section-title .sppb-title-heading {
    display: inline-block;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #d3d3d3;
    font-size: 28px;
}
*/

.sp-megamenu-parent > li > a{
    font-size: 14px;
}

#sp-footer{
  background-color: black;
}


/**************************************************************/
/*  タグ
/**************************************************************/
/*h2{
  border-bottom: solid 3px #91be30;
}
*/
.bonsai_detail{
  font-size: 1.55em;
  background: transparent;
  border-left: solid  3px #91be30;
  padding: 0.25em 0.5em;
  margin-top: 1.45em;
}


.topics ul{
    list-style: none !important;
}

a{
  color: #2d4003;
}
.sp-megamenu-parent > li.active > a, .sp-megamenu-parent > li.active:hover > a{
  color: #2d4003;  
}

/*.zindex-1{
    position: absolute;
    z-index: 1;
}*/
.contents-box{
    text-align: center;    
}
.vertical{
    display: inline-block;
    writing-mode: vertical-rl;
    text-align: left;
}
.setsumei{
    font-size: 20px;
    line-height: 1.5em;
    letter-spacing: 0.7em;
}





.target, .target_school {
    /*background-color: #ea3345;*/
    padding: 10px;
  /*line-height: 1.5  ;*/
  transition:
    padding-top 300ms,
    line-height 300ms;
}

.target.is-hidden, 
.target_school.is-hidden {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 0;
  pointer-events: none;
  display: none;
}


.text {
  /*color: black;*/
  transition: all 1s;
  opacity: 1;
}

/* 表示を消す */
.target.is-hidden .text,
.target_school.is-hidden .text{
  opacity: 0;
}


.button, .button_school{
    display: inline-block;
    background-color: black;
    border: 0.5px solid #d3d3d3;
    padding: 5px 30px !important;
}
.button:hover, .button_school:hover{
    background-color: gray;
}

.offcanvas-menu{
  background-color: black;
}
.sp-module-title{
  color: #d3d3d3;
}
#offcanvas-toggler>.fa {
    border: 1px solid #d3d3d3;
    padding: 8px;
    border-radius: 2px;
    color: #d3d3d3;
}

.contents-box {
  display: flex;
  justify-content: center;
  align-items: center;
}

.link-box{
    display: inline-block;
    /*background-color: black;*/
    border: 0.5px solid #d3d3d3;
    padding: .9em 4em !important;  
}
.link-box:hover{
  background-color: #696969;
}

p {
  margin: 0;
  line-height: 2.0;
}


.full-display div[class^="sppb-col-"]{
    padding-left: 0px;
    padding-right: 0px;
}



.scroll {
  display: inline-block;
  position: absolute;
  left: -42px;
  bottom: 0;
  z-index: 99;
  padding: 10px 10px 80px;
  overflow: hidden;
  color: #fff;
  font-size: 12px;
  font-family: 'Josefin Sans', sans-serif;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}
.scroll::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.5px;
  height: 55px;
  background: gray;
}
.scroll a{
    color:white;
}

.scroll::after {
  animation: sdl 3.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

.sns{
    padding-left: 20px;
    padding-right: 20px;
}


/* 右矢印アニメーション */

.right-arrow {
  position: relative;
  display: inline-block;
  padding: .3em 1.7em;
  /*background-color: #333;*/
  border: 0.5px solid #d3d3d3;
  color: #fff;
  text-align: center;
  text-decoration: none;
}
.right-arrow2 {
  position: relative;
  display: inline-block;
  padding: .3em 1.4em .3em 0.4em;
  /*background-color: #333;*/
  border: none;
  border-bottom: 0.5px solid #d3d3d3;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.right-arrow::before,
.right-arrow::after {
  position: absolute;
  top: 50%;
  right: .2em;
  content: '';
  margin-top: -5px;
  border: 7px solid transparent;
  border-top-width: 5px;
  border-bottom-width: 5px;
  border-left-color: #fff;
}
.right-arrow::after {
  opacity: 0;
  right: 1em;
}
.right-arrow:hover::before {
  animation: arrowbefore .5s;
}
.right-arrow:hover::after {
  animation: arrowafter .5s;
}
@keyframes arrowbefore {
  100% {
    right: -.4em;
    opacity: 0;
  }
}
@keyframes arrowafter {
  99% {
    right: .2em;
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}


.typ {
  opacity: 0;
  }
.typ span {
  opacity: 0;
  }


.lease-box{
  border: 1px solid #d3d3d3;
  padding: 20px 0px;
}



.lease_msg01{
  font-size: xx-large;
}


/*table.service-plan{
  border-collapse: collapse;
  border: 2px solid white;
}
*/
.lease-plan table{
  margin-right: auto;
  margin-left: auto;
}
table.service-plan td{
  border-width: 1px 0px; /* 上下だけ引く */
  border-color: white;   /* 線色：緑 */
   border-style: solid;   /* 線種：実線 */
   padding: 1.3em;        /* セル内側の余白 */
}


@media (min-width: 576px) {
  .bonsai-diplay-mobile{ }
  .bonsai-diplay-pc{ display:none }
}
@media (min-width: 768px) {
  .bonsai-diplay-mobile{ display:none}
  .bonsai-diplay-pc{  }
}
@media (min-width: 992px) {
  .bonsai-diplay-mobile{ display:none}
  .bonsai-diplay-pc{  display:inline }
}
@media (min-width: 1200px) {
  .bonsai-diplay-mobile{ display:none}
  .bonsai-diplay-pc{ display:inline }
}


.btn-container {
  text-align: center;
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #000;
}

.btn-shine {
  color: #FFF;
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  line-height: 45px;
  width: 200px;
  position: relative;
  text-decoration: none;
  /*text-transform: uppercase;*/
  border: 0.5px solid transparent;
  outline: 1px solid;
  outline-color: rgba(255, 255, 255, 0.2);
  outline-offset: 0px;
  text-shadow: none;
  transition: all 1.2s cubic-bezier(0.2, 1, 0.2, 1);
}

.btn-shine:hover {
  border-color: #FFF;
  box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.5), 0 0 20px rgba(255, 255, 255, 0.2);
  outline-color: transparent;
  outline-offset: 12px;
  text-shadow: 2px 2px 3px #000;
  color: #d3d3d3;
}


