@charset "utf-8";

body {
    width: 100%;
  	font-size: 16px;
  	overflow-x: hidden;
  	font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  	position: relative;
  	color: #666;
}

#root {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

body:before {
    content: "";
    display: block;
    width: 100%;
    height: 100vh;
    position: fixed;
    left: 0;
    right: 0;
    margin: auto;
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/fixed_bg.jpg) no-repeat;
    top: 0;
    background-size: cover;
}

.Titillium {
	font-family: 'Titillium Web', sans-serif;
}

/*---------- スライダ― ----------*/

.controlArea .carousel-item {
    display: block;
    opacity: 1;
}


.thumbnail-current {
    opacity: .5;
}

/*---------- ハンバーガーメニュー ----------*/

.navbar-dark .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border: none;
  padding: 0px;
  width: 26px;
  height: 21px;
  margin: auto;
  box-sizing: border-box;
  position: relative;
}

.navbar-dark .navbar-toggler-icon {
  background-image:none;
  background-color: #fff;
  width: 100%;
  height: 3px;
  display: block;
  position: absolute;
  transition: ease .5s;
}

.navbar-toggler-icon:nth-of-type(1) {
  top: 0px;
}

.navbar-toggler-icon:nth-of-type(2) {
  top: 9px;
}

.navbar-toggler-icon:nth-of-type(3) {
  bottom: 0;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
  top:13px;
  transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
  opacity: 0;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
  top: 13px;
  transform: rotate(-45deg);
}

/*---------- ヘッダー ----------*/

.header {
    z-index: 999999999;
}

.hContactBtn:before {
  content: "";
  display: block;
  width: 20px;
  height: 13px;
  background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/h_mail_icon_off.svg) no-repeat center;
  background-size: contain;
}

.hTelBx:before {
  content: "";
  display: block;
  width: 20px;
  height: 15px;
  background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/h_tel_icon.svg) no-repeat center;
  background-size: contain;
}

.hContactBtn:hover:before {
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/h_mail_icon_on.svg) no-repeat center;
}

/*---------- レフトナビ ----------*/

.leftNavBx {
    visibility: hidden;
    transition: .5s;
    opacity: 0;
    left: -46px;
}

.leftNavBx.is-animation {
    visibility: visible;
    opacity: 1;
    left: 2%;
}

.leftNavBxControl {
    visibility: visible;
    opacity: 1;
    left: 0;
}

/*---------- フッター ----------*/

.pageTop:before {content: "";display: block;width: 20px;height: 24px;background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/ptop_icon_off.svg) no-repeat;background-size: contain;}

.pageTop:hover:before {
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/ptop_icon_on.svg) no-repeat;
}

.fBtn01.contact:before {
    content: "";
    display: block;
    width: 20px;
    height: 13px;
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/f_mail_icon_off.svg) no-repeat center;
    background-size: contain;
}

.fBtn01.contact:hover:before {
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/f_mail_icon_on.svg) no-repeat center;
}

.fTelBx:before {
    content: "";
    display: block;
    width: 20px;
    height: 15px;
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/f_tel_icon_off.svg) no-repeat center;
    background-size: contain;
}

.fBtn01.phone:before {
    content: "";
    display: block;
    width: 20px;
    height: 13px;
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/f_tel_icon_off.svg) no-repeat center;
    background-size: contain;
}

.fBtn01.phone:hover:before {
    background: url(https://esubirukurieito201111.smooooth.jp/system_panel/uploads/images/f_tel_icon_on.svg) no-repeat center;
}

/*---------- ボタン ----------*/

.btn01 {
    max-width: 240px;
    width: 100%;
    display: block;
    border: solid 1px #666;
    padding: 7px 25px 7px;
    text-align: center;
    position: relative;
    color: #666;
    background: #fff;
}

.btn01:before {
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    border-top: solid 2px #666;
    border-right: solid 2px #666;
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    right: 15px;
    top: 50%;
}

.btn01:hover {
    background: #666;
    color: #fff;
}

.btn01:hover:before {
    border-color: #fff;
}

.btn02 {
    max-width: 240px;
    width: 100%;
    display: block;
    border: solid 1px #fff;
    padding: 7px 25px 7px;
    text-align: center;
    position: relative;
    color: #fff;
}

.btn02:before {
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    right: 15px;
    top: 50%;
}

.btn02:hover {
    background: #fff;
    color: #3c7293;
}

.btn02:hover:before {
    border-color: #3c7293;
}

/*---------- タイトル ----------*/

.tit01 {
    font-size: 24px;
}

.titBx01 {
    text-align: center;
    position: relative;
    padding: 10px 0;
}

.titBx01:before {
    content: "";
    display: block;
    max-width: 640px;
    width: 100%;
    margin: auto;
    height: 3px;
    background: #999;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
}

.titBx01:after {
    content: "";
    display: block;
    max-width: 640px;
    width: 100%;
    margin: auto;
    height: 3px;
    background: #999;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

.tit02 {
    font-size: 20px;
}

.titBx02 {
    position: relative;
    border-bottom: solid 3px #3c7293;
    padding: 0 5px 10px;
}

.titBx02:before {
    content: "";
    display: block;
    max-width: 170px;
    width: 100%;
    height: 3px;
    background: #ccc;
    position: absolute;
    right: 0;
    bottom: -3px;
}

/*---------- カラー ----------*/

.themClrBlu {
    color: #3c7293;
}

/*---------- トップ ----------*/

.leftNavLink {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.tpScrollLink:before {
	position: absolute;
	top: 3px;
	left: 50%;
	content: '';
	width: 4px;
	height: 4px;
	margin-left: -2px;
	background-color: #fff;
	border-radius: 100%;
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	box-sizing: border-box;
}

.coverTxtLine {
	-webkit-animation: sdb 1.3s 1;
	animation: spread 1.3s 1;
	box-sizing: border-box;
}

@-webkit-keyframes spread {
	0% {width: 0;}
	100% {width: 100%;}
}
@-webkit-keyframes sdb {
	0% {-webkit-transform: translate(0, 0);opacity: 0;}
	40% {opacity: 1;}
	80% {-webkit-transform: translate(0, 20px);opacity: 0;}
	100% {opacity: 0;}
}
@keyframes sdb {
	0% {transform: translate(0, 0);opacity: 0;}
	40% {opacity: 1;}
	80% {transform: translate(0, 20px);opacity: 0;}
	100% {opacity: 0;}
}

.coverTxtLink {
  -moz-transition: 0.8s 0.8s;
  -o-transition: 0.8s 0.8s;
  -webkit-transition: 0.8s;
  -webkit-transition-delay: 0.8s;
  transition: 0.8s 0.8s;
}

.coverTxtLink div {
  -moz-transition: 0.8s 1.6s;
  -o-transition: 0.8s 1.6s;
  -webkit-transition: 0.8s;
  -webkit-transition-delay: 1.6s;
  transition: 0.8s 1.6s;
}

/*---------- 下層共通 ----------*/

.incover {
    max-width: 1920px;
    width: 100%;
    margin: auto;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.incoverEnTxt {
    font-size: 45px;
    color: rgb(255 255 255 / .3);
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: 80%;
}

.incoverTit {
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.incoverTxtBx {
    position: relative;
    width: 96%;
    margin: auto;
}

.breadBx {
    max-width: 1200px;
    width: 96%;
    margin: auto;
    display: flex;
    align-items: center;
    color: #fff;
}

.breadLink {
    display: block;
    color: #fff;
}

.breadLink:hover {
    color: #fff;
}

.breadWrap {
    padding: 20px 0;
}

.inWrap {
    padding: 100px 0;
}

.conteBx {
    max-width: 1200px;
    width: 96%;
    margin: auto;
}

.leadTxt {
    text-align: center;
    line-height: 1.875em;
}

.inTxt01 {
    line-height: 1.875em;
}

.consultingList01Item:last-child:before {
    display: none;
}

.coverTxtBx01 {
    transform: translateY(-50%);
}

/* base見出しanimationkeyframes */
@-webkit-keyframes txtAnimeSet{
	0% {
		left: 0;
		right: auto;
		width: 0;
	}
	50% {
		left: 0;
		right: auto;
		width: 100%;
	}
	51% {
		left: auto;
		right: 0;
		width: 100%;
	}
	100% {
		left: auto;
		right: 0;
		width: 0;
	}
}
@keyframes txtAnimeSet{
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@-webkit-keyframes txtAnime{
	0% { opacity: 0; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes txtAnime{
	0% { opacity:0; }
	50% { opacity:0; }
	100% { opacity:1; }
}

.txtAnimeSet {
	position: relative;
	display: inline-block;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.txtAnimeSet:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background: #333;
}
.txtAnime {
	opacity: 0;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.5;
}
.rootanimation.motion.txtAnimeSet:before {
	-webkit-animation: txtAnimeSet 1s ease 0s 1 normal forwards;
	animation: txtAnimeSet 1s ease 0s 1 normal forwards;
}
.rootanimation.motion .txtAnime {
	-webkit-animation: txtAnime 0s ease .5s 1 normal forwards;
	animation:txtAnime 0s ease .5s 1 normal forwards;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  
/*---------- ビルコンサルティング事業 ----------*/

.consultingList01Item:before {
    content: "";
    display: block;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    margin: auto;
    border-left: 30px solid #6aa7cd;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -15px;
}

.top02:before {
    content: "";
    display: block;
    max-width: 380px;
    width: 96%;
    margin: auto;
    height: 380px;
    background: #3c7293;
    position: absolute;
    left: 0;
    right: 0;
    top: 40%;
    transform: translateY(-40%);
}

.incover {
    height: 450px;
}

.incoverTit {
    font-size: 26px;
}

  
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.coverTxtBx01 {
    right: 10%!important;
    left: auto!important;
    top: auto!important;
    bottom: 10%!important;
    text-align: left!important;
}
  
.coverTxtBx01 {
    transform: translateY(0%);
}

.tpScroll {
    min-height: 334px!important;
}
  
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */