@charset "utf-8";



@media screen and (min-width: 1001px) ,print {
/*************************************
* 共通
*************************************/
.dsp-no-pc { display: none !important; }
main {  }
.content-inner { width: 92%; margin: auto; padding: 0; max-width: 1300px; height: 100%; }
section { margin-top: 6rem;  display: block; }
.detail-inner { margin: 0; padding: 0; width: 100%; height: 100%; }
#pagetop { position: fixed; width: 60px; height: 60px; bottom: 20px; right: 20px; z-index: 500; }
#pagetop a:before {
	font-family: FontAwesome;
	content: '\f077';
	color: #b2b2b2;
	font-size: 60px;
	padding: 1px;
	display: inline-block;
}
.area-r { text-align: right; }
.area-l { text-align: left; }
.area-c { text-align: center; margin: auto; }
/*フェードイン*/
.effect {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  opacity: 0;
  transform: translateX(-50px);
}
.effect-u {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  opacity: 0;
  transform: translateY(50px);
}
.fadein { opacity: 1; transform: translateX(0px); }
.link-tel { pointer-events: none; }
/*区切り線*/
hr.hr-01 { border-top: 1px solid #36ab94; margin-top: 6rem; }
/*枠付テキスト*/
.box-g { padding: 5px 10px; margin-top: 2rem; border: 1px solid #b2b2b2; display: inline-block; }
br.br650 { display: none; }
/*オリンピックバナー*/
.bnr-sports { position: fixed; z-index: 1000; bottom: 0; right: 100px; width: 300px; }
.bnr-sports a { display: block }
/*************************************
* 見出し
*************************************/
.h2-area { background-color: #36ab94; padding: 20px 0 20px 0; text-align: center; }
h2.h2-01-sub { font-size: 1.1rem; display: block; margin-bottom: 0.5rem; color: #fff; }
h2.h2-01 { font-size: 2rem; margin-bottom: 0.5rem; color: #fff; line-height: 2rem; }
.h2-cap { font-family: 'Fjalla One', sans-serif; font-size: 1rem; color: #fff; display: block; }
.h3-area {
	text-align: center;
	margin: 0 auto 4rem auto;
}
h3.h3-01 {
	font-size: 1.8rem;
	padding-bottom: 1.5rem;
	background-image: url("../img/parts/pts-h3.svg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 120px 5px;
}
h4.h4-01 { font-size: 1.2rem; color: #0c3284; margin-bottom: 1rem; }
h4.h4-02 { font-size: 1.5rem; line-height: 2.5rem; margin-bottom: 1.8rem; }
h4.h4-03 { font-size: 1.2rem; padding: 5px; width: 100%; display: block; background-color: #aaaaaa; text-align: center; color: #fff; border-radius: 15px; margin-bottom: 2rem; }
h5.h5-02 { font-size: 1.1rem; margin-bottom: 0.8rem; padding-left: 10px; border-left: 5px solid #36ab94; }
/*************************************
* テーブル
*************************************/
th { font-family: TsukuGoPro-B; }
.table-01 { margin-bottom: 1rem; border-top: 1px solid #ebebeb; width: 100%; }
.table-01 tr { border-bottom: 1px solid #ebebeb; display: inline-block; line-height: 1.5rem; padding-left: 2.5%; padding-right: 2.5%; width: 95%; }
.table-01 tr > * { padding: 10px 0 10px 0; }
.table-01 th { font-weight: bold; display: inline-block; width: 20%; }
.table-01 td { display: inline-block; margin-left: 5%; }
.table-02 { width: 100%; margin-bottom: 1rem; }
.table-02 th, .table-02 td  { padding: 10px; border: 1px solid #ddd; }
.table-02 th  { background: #f4f4f4; }
/*************************************
* リスト
*************************************/
ul.list-01, ul.list-01 li { list-style: none; }
ul.list-01 li { padding-left: 1.2em; text-indent: -1.2em; }
ul.list-01 li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #36ab94;
	margin-right: 0.3em;
}
ol.number-list {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  font-family: TsukuGoPro-B;
  font-size: 1rem;
  line-height: 1.5rem;
}
ol.number-list li {
  margin-bottom: 15px;
  padding-left: 40px;
  position: relative;
}
ol.number-list li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #333333;
  color: #fff;
  display: block;
  float: left;
  line-height: 30px;
  margin-left: -40px;
  text-align: center;
  height: 30px;
  width: 30px;
  border-radius: 50%;
}
/*************************************
* ボタン
*************************************/
.btn-01 { position: relative; background-color: #deba00; color: #fff; padding: 5px 20px 5px 20px; display: inline-block; font-family: TsukuGoPro-B; font-size: 16px; border-radius: 30px; margin-top: 1rem; }
.btn-01:hover { background-color: #ff9d6e; opacity: 1; }
.btn-05 { padding: 25px 60px; background-color: #36ab94; color: #fff; border-radius: 10px; display: inline-block; margin-top: 2rem; font-size: 20px; font-family: TsukuGoPro-B; }
.btn-05:hover { background-color: #b2b2b2; }
/*************************************
* header
*************************************/
#header-top {
	position: relative;
	background-color: #0c3284;
	background-image: url("../img/parts/pts-h-other.svg");
	background-position: center bottom;
	background-repeat: repeat-x;
	background-size: 1260px auto;
	height: 200px;
}
body#home #header-top {
	background-image: url("../img/parts/pts-h-top.svg");
	height: 330px;
}
.global-navi { position: relative; }
.h-ttl-home a {
	position: absolute;
	left: 0;
	top: 30px;
	background-image: url("../img/parts/pts-logoset-w.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 250px auto;
	width: 250px;
	height: 135px;
	cursor: pointer;
	display: block;
	text-indent: -99999px;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.h-ttl-home:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
/*ドロップメニュー*/
.hmenu { position: absolute; right: 0; top: 30px; text-align: right; }
ul.dropmenu > li { display: inline-block; font-weight: bold; margin-left: 10px; line-height: 0; position: relative; }
ul.dropmenu > li:first-child { margin-left: 0; }
ul.dropmenu > li > a { padding: 10px 10px 10px 10px; letter-spacing: 0; color: #fff; }
ul.dropmenu > li a:hover { color: #ababab; -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; opacity: 1; }
ul.dropmenu li ul { opacity: 0; top: 0px; visibility: hidden; transition: .5s; }
ul.dropmenu li:hover ul { top: 10px; visibility: visible; opacity: 1; }
ul.dropmenu li ul { position: absolute; z-index: 9999; top: 0; left: 0; margin: 0; padding: 0; list-style: none; }
ul.dropmenu li ul.menu-box-02 li a {
	padding: 8px 10px 8px 10px;
	background: #179e83;
	text-align: left;
	display: block;
	width: 120px;
	line-height: 1.2rem;
	font-size: 0.9rem;
	margin-bottom: 1px;
	color: #fff;
}
ul.dropmenu li ul.menu-box-02 li a:hover {
	background-color: #6fc3b3;
	color: #fff;
}
/*事業内容サブナビ*/
.sub-navi { background-color: #0c3285; padding: 25px 0 25px 0; text-align: center; margin: auto; }
.sub-navi ul, .sub-navi ul li { list-style: none; margin: 0; padding: 0; font-family: TsukuGoPro-B; }
.sub-navi ul li { display: inline-block; margin-right: 10px; }
.sub-navi ul li a {
	background-color: #fff;
	color: #0c3285;
	padding: 15px 20px 15px 20px;
	border-radius: 5px;
}
.sub-navi ul li a:last-child { margin-right: 0; }
.sub-navi ul li a:hover { opacity: 1; background-color: #ce399e; color: #fff; }
body#security .sub-navi ul li a.security,
body#building .sub-navi ul li a.building,
body#environment .sub-navi ul li a.environment,
body#staff .sub-navi ul li a.staff,
body#cafe .sub-navi ul li a.cafe,
body#others .sub-navi ul li a.others { background-color: #ce399e; color: #fff; }
/*ぱんくず*/
.pankuzu { background-color: #e8e8e8; padding: 5px 0 5px 0; text-align: right; }
.pankuzu ul, .pankuzu ul li { list-style: none; }
.pankuzu ul li { display: inline-block; font-size: 12px; color: #666666 }
.pankuzu ul li a { color: #666666 }
/*************************************
* footer
*************************************/
#fmenu { background-color: #f5f5f5; padding: 40px 0 0 0; }
.f-logo { width: 200px; margin-bottom: 2rem; }
.fmenu-inner { margin-bottom: 3rem; }
.f-cp-01 { width: 23%; float: left; }
.f-cp-02 { width: 23%; float: left; margin-left: 2%; }
.f-cp-03 { width: 23%; float: left; margin-left: 2%; }
.f-cp-04 { width: 20%; float: right; }
.f-cp-04 > * { margin-bottom: 1rem; }
.f-cp-04 > * a { display: block; }
.f-cp-detail { margin-bottom: 1rem; }
ul.f-navimenu-01, ul.f-navimenu-01 > li, ul.f-navimenu-02, ul.f-navimenu-02 > li { list-style: none; }
ul.f-navimenu-01 > li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #0c3280;
	margin-right: 0.3em;
}
ul.f-navimenu-02 li:before {
	font-family: FontAwesome;
	content: '\f054';
	color: #b2b2b2;
	margin-right: 0.3em;
	margin-left: 1.5em;
	font-size: 10px;
}
ul.f-navimenu-01 a { padding: 3px 0 3px 0; display: inline-block; }
ul.f-navimenu-01 a:hover { color: #b2b2b2; opacity: 1; }
.f-copy { padding: 0 0 1rem 0; text-align: center; color: #b2b2b2; font-size: 10px; }
.f-copy a { color: #b2b2b2; }
.f-copy a:visited { color: #b2b2b2; }
/*************************************
* トップページ
*************************************/
/**********メニュー**********/
.home-menu { margin-top: -100px; }
/*スライダー*/
.top-slide { width: 50%; float: left; }
.top-slide-img-group p.slide-comment { position: absolute; left: 0; bottom: 0; font-size: 12px; padding: 5px 2% 5px 2%; background-color: rgba(255,255,255,0.8); display: block; width: 96%; }
.top-slide-img-group p.slide-main-ttl { height: 580px; text-indent: -99999px; display: block; }
.slide { background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; }
.slider-container { position: relative; }
/*メニュー*/
.home-linkmenu-area-01 { width: 50%; float: left; font-size: 0; }
.link-b, .link-g {
	width: 50%;
	display: inline-block;
	vertical-align: top;
	font-size: 1rem;
	color: #fff;
	text-align: center;
	margin: auto;
	position: relative;
	padding-top: 50px;
	height: 240px;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b { background-color: #1e418c; }
.link-g { background-color: #36ab94; }
h4.home-linkmenu { font-family: 'Fjalla One', sans-serif; font-size: 24px; margin-bottom: 15px; }
.link-b p, .link-g p { width: 100px; position: absolute; bottom: 40px; left: 50%; margin-left: -50px; }
.link-b p img, .link-g p img {
	border-radius: 50%;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b a, .link-g a { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.link-b:hover, .link-g:hover {
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b:hover img, .link-g:hover img {
	opacity: 0.7;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
	-webkit-transform: rotateY( 360deg ) ;
	-moz-transform: rotateY( 360deg ) ;
	-o-transform: rotateY( 360deg ) ;
	transform: rotateY( 360deg ) ;
}
.link-b:hover { background-color: #001a77; }
.link-g:hover { background-color: #06977b; }

.home-linkmenu-area-02 { width: 50%; float: left; font-size: 0; }
/*人と街を第一に*/
.home-concept { width: 40%; float: left; }
.home-concept img { margin-top: 1.5rem; }
section#home-01 { margin-bottom: 8rem; }
/*facebook*/
.home-fb { float: right; width: 55%; }
.facebook-wrapper {
    max-width: 500px;
    margin: 0 0 0 auto;
}
.facebook-wrapper iframe {
    width: 100% !important;
}
section#home-02 { margin-bottom: 8rem; }
/*.top-recruit-bnr { margin-top: 3rem; }
*/
/*************************************
* 事業内容ページ共通
*************************************/
.point-area { margin-top: 3rem; text-align: center; }
.point-area ul li {
	display: inline-block;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: linear-gradient(#fbfbfb, #dcdcdc);
	text-align:center;
	line-height: 25px;
	vertical-align: middle;
	font-size: 20px;
	font-family: TsukuGoPro-B;
	color: #0c3285;
	margin: 0 10px 20px 10px;
	position: relative;
}
.point-area ul li span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	width: 100%;
}
.txt-fl-l { float: left; width: 47%; }
.txt-fl-r { float: right; width: 47%; }
.img-fl-l { float: left; width: 47%; }
.img-fl-r { float: right; width: 47%; }
/*************************************
* 警備事業
*************************************/
section#security-04 { margin-bottom: 10rem; }
.security-staff { margin-top: 4rem; }
.security-staff table th { width: 50%; }
section#security-05 { margin-bottom: 10rem; }
section#security-02 .img-fl-center { max-width: 500px; margin: 4rem auto 0; }
/*************************************
* ビル事業
*************************************/
section#building-02 { margin-bottom: 10rem; }
/*************************************
* 環境事業
*************************************/
section#environment-03 { margin-bottom: 10rem; }
.environment-product-area { font-size: 0; }
.environment-product-detail { width: 30%; margin: 0 1.5% 3rem 1.5%; display: inline-block; font-size: 1rem; vertical-align: top; }
.environment-product-detail img { margin-bottom: 1.3rem; }

.amn-detail { font-size: 1rem; padding: 2rem 0 2rem 0; border-top: 1px solid #ddd; }
.amn-area-1 .list-01 { font-size: 0.8rem; line-height: 1.5rem }
.amn-area-1 { width: 30.333%; margin-right: 4.5%; float: left; }
.amn-area-2 { width: 36.333%; margin-right: 4.5%; padding: 2%; background-color: #fffdee; float: left; text-align: justify; }
.amn-area-3 { width: 20%; float: left }

/*************************************
* 人材事業
*************************************/
section#staff-04 { margin-bottom: 10rem; }
.staff-table-area { margin-top: 3rem; }
/*************************************
* カフェ事業
*************************************/
section#cafe-02 { margin-bottom: 10rem; }
.cafe-shop-area { font-size: 0; }
.cafe-shop-detail { font-size: 1rem; display: inline-block; width: 47%; margin-bottom: 5rem; }
.cafe-shop-detail:nth-child(odd) { margin-right: 6%; }
.shop-detail-txt { width: 60%; float: left; }
.shop-detail-img { width: 37%; float: right; }
.font-m { font-size: 14px; line-height: 24px; }
.shop-map-area { margin-top: 1.5rem; }
.shop-map-area iframe { width: 100%; height: 400px; }
/*************************************
* その他の事業
*************************************/
section#others-03 { margin-bottom: 10rem; }
/*************************************
* 会社概要
*************************************/
/*ページ内リンクメニュー*/
.pageinner-link { margin: 2rem auto 1rem auto; text-align: center; }
.pageinner-link ul, .pageinner-link li { list-style: none; padding: 0; margin: 0; }
.pageinner-link li { display: inline-block; margin: 0 5px 0 5px; vertical-align: top; }
.pageinner-link li a {
	padding: 10px 20px 20px 20px;
	border: 2px solid #36ab94;
	border-radius: 5px;
	position: relative;
	font-family: TsukuGoPro-B;
}
.pageinner-link li a:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f0d7';
	color: #36ab94;
	bottom: 0;
	left: 50%;
	margin-left: -5px;
	font-size: 20px;
	line-height: 20px;
}
/*事業展開*/
.company-main-img { width: 50%; margin: auto; }
/*企業理念*/
.houshin-fuudo { margin-top: 5rem; }
.houshin { width: 47%; float: left; }
.houshin p { margin-bottom: 1rem; }
.fuudo { width: 47%; float: right; }
/*会社概要*/
.iso-img { width: 200px; margin-bottom: 0.5rem; }
/*会社沿革*/
section#company-03 th { width: 10%; }
section#company-03 td { width: 80%; }
.col-1 {
    display: inline-block;
    width: 15%;
    text-align: center;
    vertical-align: top;
}
.col-2 {
    display: inline-block;
    vertical-align: top;
    width: auto;
    word-wrap: break-word;
    width: 80%;
}
/*過去3年間主要取引先*/
section#company-04 ul { margin-bottom: 2rem; }
/*アクセス*/
.office-detail-area { font-size: 0; margin-top: 5rem; }
.office-02, .office-03, .office-04, .office-05 { width: 47%; display: inline-block; font-size: 1rem; margin-bottom: 5rem; }
.office-detail-area > *:nth-child(odd) { margin-right: 6%; }
.gmap-area { margin-top: 1rem; }
.gmap-area iframe { width: 100%; height: 400px; }
section#company-05 { margin-bottom: 5rem; }

/*追加*/
.office-01{ font-size: 1rem;}

/*************************************
* 採用情報
*************************************/
.recruit-bnr { width: 100%; max-width: 700px; margin: auto }
/*メインイメージ*/
.recruit-main { text-align: center; margin-bottom: 5rem;}
.recruit-main-img {
	width: 100%;
	position: relative;
}
.recruit-main-txt {
	position: absolute;
	bottom: 0;
	background-color: rgba(255,255,255,0.8);
	padding: 15px 0 15px 0;
	z-index: 10;
	width: 100%;
	left: 0;
	font-size: 26px;
	font-family: TsukuMinPr5-B;
}
/*求める人物像*/
.recruit-point4 { font-size: 0; text-align: center; }
.recruit-point-detail { font-size: 1rem; display: inline-block; width: 21%; margin-right: 4%; vertical-align: top; }
.recruit-point-detail:last-child { margin-right: 0; }
.point-ttl {
	background-image: url("../img/recruit/pts-recruit.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 185px auto;
	height: 0;
    padding-top: 185px;
    position: relative;
    margin-bottom: 1rem;
}
.point-ttl span {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	font-size: 25px;
	color: #fff;
	top: 50%;
	margin-top: -12px;
	font-family: TsukuGoPro-B;
}
/*採用職種*/
.syokumu-detail { float: left; width: 47%; margin-bottom: 3rem; }
.syokumu-detail:nth-child(odd) { margin-right: 6%; }
.syokumu-detail:last-child {margin-bottom: 0;  }
.syokumu-detail-txt { width: 50%; float: left; }
.syokumu-detail-img { width: 45%; float: right; }
section#recruit-02 .detail-inner { margin-bottom: 3rem; }
/*採用スケジュール*/
.recruit-schedule { width: 65%; float: left; }
.recruit-schedule-img { width: 30%; float: right; }
/*エントリー*/
section#recruit-04 { margin-bottom: 10rem; }
/*************************************
* プライバシーポリシー
*************************************/
section#privacy-01 { margin-bottom: 10rem; }
.privacy-detail { margin-top: 3rem; }
/*************************************
* サイトマップ
*************************************/
section#sitemap-01 { margin-bottom: 10rem; }
table.sitemap-tb { margin-bottom: 1rem; border-top: 1px solid #ebebeb; width: 100%; }
table.sitemap-tb tr {
	position: relative;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	cursor: pointer;
	border-bottom: 1px solid #ebebeb;
	display: inline-block;
	line-height: 1.5rem;
	padding-left: 2.5%;
	padding-right: 2.5%;
	width: 95%;
}
table.sitemap-tb tr:hover {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	background-color: #f2f2f2;
	cursor: pointer;
}
table.sitemap-tb tr > * { padding: 10px 0 10px 0; }
table.sitemap-tb td { display: inline-block; margin-left: 5%; }
table.sitemap-tb th { font-weight: bold; display: inline-block; width: 20%; }
table.sitemap-tb th:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #0c3280;
	margin-right: 0.3em;
}
table.sitemap-tb a { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }






















}




@media screen and (max-width: 1000px) {
/*************************************
* 共通
*************************************/
#main-content { margin-top: 80px; }
.dsp-no-sp { display: none !important; }
.content-inner { width: 94%; margin: auto; padding: 0; max-width: 1300px; height: 100%; }
section { padding-top: 6rem; margin-top: -3rem;  display: block; }
.detail-inner { margin: 0; padding: 0; width: 100%; height: 100%; }
#pagetop { position: fixed; width: 40px; height: 40px; bottom: 10px; right: 10px; z-index: 500; }
#pagetop a:before {
	font-family: FontAwesome;
	content: '\f077';
	color: #b2b2b2;
	font-size: 45px;
	padding: 1px;
	display: inline-block;
}
.area-r { text-align: center; margin: auto; }
.area-l { text-align: center; margin: auto; }
.area-c { text-align: center; margin: auto; }
/*フェードイン*/
.effect {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  opacity: 0;
  transform: translateX(-50px);
}
.effect-u {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  opacity: 0;
  transform: translateY(50px);
}
.fadein { opacity: 1; transform: translateX(0px); }
.link-tel { font-size: 20px; }
/*区切り線*/
hr.hr-01 { border-top: 1px solid #36ab94; margin-top: 2rem; }
/*枠付テキスト*/
.box-g { padding: 5px 10px; margin-top: 2rem; border: 1px solid #b2b2b2; display: inline-block; }
/*改行*/
br.br650 { display: none; }
/*オリンピックバナー*/
.bnr-sports { position: fixed; z-index: 1000; bottom: 0; right: 50%; margin-right: -100px; width: 200px; }
.bnr-sports a { display: block }
/*************************************
* 見出し
*************************************/
.h2-area { background-color: #36ab94; padding: 20px 0 15px 0; text-align: center; }
h2.h2-01-sub { font-size: 0.9rem; display: block; margin-bottom: 0.5rem; color: #fff; }
h2.h2-01 { font-size: 1.8rem; margin-bottom: 0.5rem; color: #fff; line-height: 1.8rem; }
.h2-cap { font-family: 'Fjalla One', sans-serif; font-size: 1rem; color: #fff; display: block; }
.h3-area {
	text-align: center;
	margin: 0 auto 2rem auto;
}
h3.h3-01 {
	font-size: 1.5rem;
	padding-bottom: 1.2rem;
	background-image: url("../img/parts/pts-h3.svg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 120px 5px;
}
h4.h4-01 { font-size: 1.1rem; color: #0c3284; margin-bottom: 1rem; }
h4.h4-02 { font-size: 1.1rem; line-height: 2rem; margin-bottom: 1.3rem; }
h4.h4-03 { font-size: 1.1rem;
	padding: 5px 5%;
	width: 90%;
	display: block;
	background-color: #aaaaaa;
	text-align: center;
	color: #fff;
	border-radius: 15px;
	margin-bottom: 1.3rem;
}
h5.h5-02 { font-size: 1rem; margin-bottom: 0.8rem; padding-left: 10px; border-left: 5px solid #36ab94; }
/*************************************
* テーブル
*************************************/
th { font-family: TsukuGoPro-B; }
.table-01 { width: 100%; }
.table-01 tr { display: block; line-height: 1.5rem; }
.table-01 tr > * { padding: 10px 0 10px 0; }
.table-01 th { font-weight: bold; display: block; padding: 5px; background-color: #f2f2f2; }
.table-01 td { display: inline-block; }
.table-02 { width: 100%; margin-bottom: 1rem; }
.table-02 th, .table-02 td  { padding: 10px; border: 1px solid #ddd; }
.table-02 th  { background: #f4f4f4; }
/*************************************
* リスト
*************************************/
ul.list-01, ul.list-01 li { list-style: none; }
ul.list-01 li { padding-left: 1.2em; text-indent: -1.2em; }
ul.list-01 li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #36ab94;
	margin-right: 0.3em;
}
ol.number-list {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  font-family: TsukuGoPro-B;
  font-size: 1rem;
  line-height: 1.5rem;
}
ol.number-list li {
  margin-bottom: 15px;
  padding-left: 40px;
  position: relative;
}
ol.number-list li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #333333;
  color: #fff;
  display: block;
  float: left;
  line-height: 30px;
  margin-left: -40px;
  text-align: center;
  height: 30px;
  width: 30px;
  border-radius: 50%;
}
/*************************************
* ボタン
*************************************/
.btn-01 { position: relative; background-color: #deba00; color: #fff; padding: 5px 20px 5px 20px; display: inline-block; font-family: TsukuGoPro-B; font-size: 16px; border-radius: 30px; margin-top: 1rem; }
.btn-01:hover { background-color: #ff9d6e; opacity: 1; }
.btn-05 { padding: 25px 30px; background-color: #36ab94; color: #fff; border-radius: 10px; display: inline-block; margin-top: 1.5rem; font-size: 18px; font-family: TsukuGoPro-B; }
.btn-05:hover { background-color: #b2b2b2; }
/*************************************
* header
*************************************/
.header-area { position: fixed; top: 0; width: 100%; height: 80px; z-index: 2000; }
#header-top {
	position: relative;
	background-color: #0c3284;
	background-image: url("../img/parts/pts-h-other.svg");
	background-position: center bottom;
	background-repeat: repeat-x;
	background-size: auto 60px;
	height: 80px;
}
.sp-h-ttl a {
	position: absolute;
	background-image: url("../img/parts/pts-logo-w.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 50px;
	width: 160px;
	height: 50px;
	text-align: center;
	left: 0;
	right: 0;
	top: 50%;
	margin: -25px auto 0 auto;
	text-indent: -99999px;
	cursor: pointer;
}
.h-ttl-home a {
	background-image: url("../img/parts/pts-logoset-w.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 160px auto;
	width: 160px;
	height: 90px;
	cursor: pointer;
	display: inline-block;
	text-indent: -99999px;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
	margin-bottom: 20px
}
.h-ttl-home:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.global-navi {
	padding: 40px 0 100px 0;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	transform: translateX(-100%);
	z-index: 1200;
	background: rgba(60,100,160,0.97);
	transition: all 0.8s;
	font-weight: bold;
	height: 100%;
	text-align: center;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
}
/*バーガーメニュー*/
.nav-toggle {
	position: fixed; /* bodyに対しての絶対位置指定 */
	right: 10px;
	top: 14px;
	display: block;
	width: 52px;
	height: 52px;
	cursor: pointer;
	z-index: 1900;
}
.nav-toggle span {
	display: block;
	position: absolute; /* .toggleに対して */
	width: 36px;
	border-bottom: solid 3px #fff;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	right: 8px;
	border-radius: 2px;
}
.nav-toggle span:nth-child(1) { top: 12px; }
.nav-toggle span:nth-child(2) { top: 24px; }
.nav-toggle span:nth-child(3) { top: 36px; }
/***** クリック後のボタン *****/
/* 最初のspanをマイナス45度にする */
.nav-toggle.active span:nth-child(1) {
	top: 24px;
	left: 8px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-bottom: solid 3px #fff;
	opacity: 1;
}
/* 2番目と3番目のspanを45度にする */
.nav-toggle.active span:nth-child(2),
.nav-toggle.active span:nth-child(3) {
	top: 24px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	border-bottom: solid 3px #fff;
	opacity: 1;
}
/* .global-naviに.activeが追加 */
.global-navi.active { transform: translateX(0%); }
/*navi*/
.hmenu { width: 70%; margin: 20px auto 0 auto; padding-bottom: 200px; }
.sp-h-tel, .sp-h-tel a { color: #fff; font-size: 25px }
.menu-box-01 { text-align: left; font-family: TsukuGoPro-B }
ul.menu-box-01, ul.menu-box-01 > li, ul.menu-box-02, ul.menu-box-02 > li { list-style: none; }
ul.menu-box-01  > li { border-bottom: 1px solid #fff; }
ul.menu-box-02 > li:last-child a { border-bottom: none; padding-bottom: 10px; }
ul.menu-box-01 > li:first-child { border-top: 1px solid #fff; }
ul.menu-box-01 > li { border-bottom: 1px solid #fff; }
ul.menu-box-01 > li >a:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #fff;
	margin-right: 0.3em;
}
ul.menu-box-02 li > a:before {
	font-family: FontAwesome;
	content: '\f054';
	color: #fff;
	margin-right: 0.3em;
	margin-left: 1em;
	font-size: 10px;
}
ul.menu-box-01 > li > a { padding: 8px 0 8px 0; display: block; color: #fff; }
ul.menu-box-02 > li > a { padding: 3px 0 3px 0; display: block; color: #fff; margin-left: 10px; }
ul.menu-box-01 a:hover,ul.menu-box-02 a:hover { color: #b2b2b2; opacity: 1; }
.displayNone { display: none; }
.facebooklink-sp { text-align: center; margin: 2rem auto 0 auto; }
.facebooklink-sp a { padding: 5px 15px; display: inline-block; background-color: #fff; color: rgba(60,100,160,0.97); border-radius: 5px; }
/*ぱんくず*/
.pankuzu { background-color: #e8e8e8; padding: 5px 0 5px 0; text-align: left; }
.pankuzu ul, .pankuzu ul li { list-style: none; }
.pankuzu ul li { display: inline-block; font-size: 12px; color: #666666 }
.pankuzu ul li a { color: #666666 }
/*************************************
* footer
*************************************/
#fmenu { background-color: #f5f5f5; padding: 40px 0 0 0; text-align: center; }
.f-logo { width: 150px; margin: 0 auto 1rem auto; text-align: center; }
.fmenu-inner { margin-bottom: 3rem; }
.f-cp-01 { width: 100%;}
.f-cp-02 { width: 100%; }
.f-cp-04 { width: 30%; text-align: center; margin: auto; }
.f-cp-04 > * { margin-bottom: 1rem; }
.f-cp-04 > * a { display: block; }
.f-cp-detail { margin-bottom: 1rem; }
.f-copy { padding: 0 0 1rem 0; text-align: center; color: #b2b2b2; font-size: 10px; }
.f-copy a { color: #b2b2b2; }
.f-copy a:visited { color: #b2b2b2; }
/*************************************
* トップページ
*************************************/
/**********メニュー**********/
.home-menu .content-inner { width: 100%; }
/*スライダー*/
.top-slide { width: 100%; }
.top-slide-img-group p.slide-comment { position: absolute; left: 0; bottom: 0; font-size: 12px; padding: 5px 2% 5px 2%; background-color: rgba(255,255,255,0.8); display: block; width: 96%; }
.top-slide-img-group p.slide-main-ttl { height: 480px; text-indent: -99999px; }
.slide { background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; }
.slider-container { position: relative; }
/*メニュー*/
.home-linkmenu-area-01 { width: 100%; font-size: 0; }
.link-b, .link-g {
	width: 50%;
	display: inline-block;
	vertical-align: top;
	font-size: 1rem;
	color: #fff;
	text-align: center;
	margin: auto;
	position: relative;
	padding-top: 30px;
	height: 210px;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b { background-color: #1e418c; }
.link-g { background-color: #36ab94; }
h4.home-linkmenu { font-family: 'Fjalla One', sans-serif; font-size: 20px; margin-bottom: 5px; }
.link-b p, .link-g p { width: 100px; position: absolute; bottom: 30px; left: 50%; margin-left: -50px; }
.link-b p img, .link-g p img {
	border-radius: 50%;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b a, .link-g a { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.link-b:hover, .link-g:hover {
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.link-b:hover img, .link-g:hover img {
	opacity: 0.7;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
	-webkit-transform: rotateY( 360deg ) ;
	-moz-transform: rotateY( 360deg ) ;
	-o-transform: rotateY( 360deg ) ;
	transform: rotateY( 360deg ) ;
}
.link-b:hover { background-color: #001a77; }
.link-g:hover { background-color: #06977b; }
.home-linkmenu-area-02 { width: 100%; font-size: 0; }
/*人と街を第一に*/
.home-concept { width: 100%; text-align: center; margin: auto; }
.home-concept-txt { width: 60%; margin: auto; text-align: justify; }
.home-concept img { margin-top: 1.5rem; width: 60%; }
section#home-01 { margin-bottom: 3rem; }
/*facebook*/
.home-fb { width: 100%; margin-top: 3rem }
.facebook-wrapper {
	width: 100%;
    max-width: 500px;
    margin: 0 auto;
}
.facebook-wrapper iframe {
    width: 100% !important;
}
section#home-02 { margin-bottom: 3rem; }
section#home-02 .table-02 tr th,section#home-02 .table-02 tr td { line-height: 1.3rem; font-size: 0.8rem }
.top-recruit-bnr { margin-top: 1.5rem; }
/*************************************
* 事業内容ページ共通
*************************************/
.sub-navi { display: none; }
.img-fl-l { width: 70%; text-align: center; margin: 0 auto 2rem auto; }
.img-fl-r { width: 70%; text-align: center; margin: 0 auto 2rem auto; }
.txt-fl-r { width: 90%; margin: 0 auto 0 auto; }
.txt-fl-l { width: 90%; margin: 0 auto 2rem auto; }
.point-area { margin-top: 1.5rem; text-align: center; }
.point-area ul li {
	display: inline-block;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background: linear-gradient(#fbfbfb, #dcdcdc);
	text-align:center;
	line-height: 16px;
	vertical-align: middle;
	font-size: 16px;
	font-family: TsukuGoPro-B;
	color: #0c3285;
	margin: 0 10px 20px 10px;
	position: relative;
}
.point-area ul li span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	width: 100%;
}
/*************************************
* 警備事業
*************************************/
section#security-04 { margin-bottom: 2rem; }
section#security-02 .txt-fl-l { margin-bottom: 0; }
.security-staff { margin-top: 3rem; }
/*************************************
* ビル事業
*************************************/
section#building-02 { margin-bottom: 4rem; }
/*************************************
* 環境事業
*************************************/
section#environment-03 { margin-bottom: 4rem; }
.environment-product-detail { padding-top: 2rem; border-top: 1px solid #ebebeb; margin-bottom: 2rem; }
.environment-product-detail:last-child { margin-bottom: 0; }
.evm-img-area { width: 22%; float: left; }
.evm-txt-area { width: 75%; float: right; }

.amn-detail { font-size: 1rem; padding: 2rem 0 2rem 0; border-top: 1px solid #ddd; }
.amn-area-1 .list-01 { font-size: 0.8rem; line-height: 1.5rem }
.amn-area-1 {  }
.amn-area-2 { padding: 2%; background-color: #fffdee; text-align: justify; margin-top: 0.5rem; }
.amn-area-3 { max-width: 300px; margin-top: 0.5rem; }

/*************************************
* 人材事業
*************************************/
.staff-table-area { margin-top: 2rem; }
.staff-table-comment { padding-top: 1rem; border-top: 1px solid #ebebeb; }
section#staff-04 { margin-bottom: 3rem; }
section#staff-03 th, section#staff-03 td { min-width: 100px; }
.scroll { overflow: auto; }
/*************************************
* カフェ事業
*************************************/
.cafe-shop-detail { width: 60%; margin: 0 auto 3rem auto; }
.cafe-shop-detail:last-child { margin-bottom: 0; }
.shop-detail-img { margin: 1rem auto 0 auto; width: 60%; }
.shop-map-area { margin-top: 1rem }
.shop-map-area iframe { width: 100%; height: 250px; }
section#cafe-02 { margin-bottom: 4rem; }
/*************************************
* その他の事業
*************************************/
section#others-03 { margin-bottom: 2rem; }
/*************************************
* 会社概要
*************************************/
/*ページ内リンクメニュー*/
.pageinner-link { margin: 0 auto 0 auto; text-align: center; font-size: 0; }
.pageinner-link ul, .pageinner-link ul li { list-style: none; padding: 0; margin: 0; }
.pageinner-link ul { font-size: 0;}
.pageinner-link ul li { text-align: center; line-height: 0.8rem; display: inline-block; width: calc(100%/3); background-color: #36ab94; }
.pageinner-link ul li:nth-child(odd) { background-color: #61bdab; }
.pageinner-link li a {
	color: #fff;
	line-height: normal;
	font-size: 0.8rem;
	vertical-align: middle;
	display: inline-block;
	padding: 8px 0;
	width: 100%;
}
/*事業展開*/
.company-main-img { width: 70%; text-align: center; margin: auto; }
/*企業方針*/
.houshin { margin-bottom: 2rem; }
.houshin p { margin-bottom: 1rem; }
/*会社概要*/
.iso-img { width: 150px; margin-bottom: 0.5rem; }
/*過去3年間主要取引先*/
section#company-04 .txt-fl-l { width: 48%; float: left; }
section#company-04 .txt-fl-r { width: 48%; float: right; }
/*アクセス*/
.office-detail-area { font-size: 0; margin-top: 2rem; }
.office-02, .office-03, .office-04, .office-05 { width: 47%; display: inline-block; font-size: 1rem; margin-bottom: 2rem; }
.office-detail-area > *:nth-child(odd) { margin-right: 6%; }
.gmap-area { margin-top: 1rem; }
.gmap-area iframe { width: 100%; height: 400px; }
section#company-05 { margin-bottom: 4rem; }
/*************************************
* 採用情報
*************************************/
.recruit-main { margin-bottom: 3rem;}
span.recruit-main-txt  {
	text-align: center;
	display: block;
	font-family: TsukuMinPr5-B;
	font-size: 1.2rem;
	margin-top: 1rem;
}
/*求める人物像*/
.recruit-point4 { font-size: 0; text-align: center; }
.recruit-point-detail { font-size: 1rem; display: inline-block; width: 21%; margin-right: 4%; vertical-align: top;  margin-bottom: 1rem; }
.recruit-point-detail:last-child { margin-right: 0; }
.point-ttl {
	background-image: url("../img/recruit/pts-recruit.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 140px auto;
	height: 0;
    padding-top: 140px;
    position: relative;
    margin-bottom: 1rem;
}
.point-ttl span {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	font-size: 18px;
	color: #fff;
	top: 50%;
	margin-top: -13px;
	font-family: TsukuGoPro-B;
}
/*職務・業務内容*/
section#recruit-02 .detail-inner:nth-child(3) { margin-bottom: 2rem }
.syokumu-area { margin-bottom: 2rem; }
.syokumu-detail { margin-bottom: 2rem; }
.syokumu-detail:last-child { margin-bottom: 0; }
.syokumu-detail h4 { margin-top: 0.5rem }
.syokumu-detail-txt { width: 65%; float: left; }
.syokumu-detail-img { width: 30%; float: right; }
/*採用スケジュール*/
.recruit-schedule-img { margin: 0.5rem auto 0 auto; width: 60%;  }
/*エントリー方法*/
section#recruit-04 { margin-bottom: 4rem; }
/*************************************
* プライバシーポリシー
*************************************/
section#privacy-01 { margin-bottom: 4rem; }
.privacy-detail { margin-top: 2rem; }
/*************************************
* サイトマップ
*************************************/
section#sitemap-01 { margin-bottom: 4rem; }
table.sitemap-tb { width: 100% }
table.sitemap-tb tr {
	position: relative;
	padding-bottom: 1rem;
	display: block;
	padding-right: 30px;
	padding-top: 1rem;
	border-bottom: 1px solid #f2f2f2;
}
table.sitemap-tb tr:first-child { border-top: 1px solid #f2f2f2; margin-top: 0; padding-top: 1rem; }
table.sitemap-tb tr:after {
	font-family: FontAwesome;
	content: '\f105';
	color: #b2b2b2;
	font-size: 40px;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -16px;
}
table.sitemap-tb th { display: block; font-size: 1.1rem; position: relative; }
table.sitemap-tb td { display: block; }
table.sitemap-tb a { position: absolute; width: 100%; height: 100%; left: 0; top: 0; }
















}




@media only screen and (max-width: 768px){
/*************************************
* 会社概要
*************************************/
/*アクセス*/
.office-02, .office-03, .office-04, .office-05 { width: 100%; display: block; margin-bottom: 2rem; }
.office-detail-area > *:nth-child(odd) { margin-right: 0; }
.gmap-area iframe { width: 100%; height: 350px; }
/*************************************
* 採用情報
*************************************/
/*求める人物像*/
.recruit-point-detail { width: 45%; margin-right: 2.5%; }
.recruit-point-detail:last-child { margin-right: 2.5%; }
.point-ttl { background-size: 140px auto; padding-top: 140px; }
.point-ttl span { font-size: 18px; margin-top: -13px; }










}



@media only screen and (max-width: 650px){
/*************************************
* 共通
*************************************/
br.br650 { display: block; }
/*************************************
* フッター
*************************************/
.f-cp-04 { width: 90%; }
/*************************************
* トップページ
*************************************/
/**********メニュー**********/
.top-slide-img-group p.slide-main-ttl { height: 350px; }
h4.home-linkmenu { font-size: 16px; }
/*人と街を第一に*/
.home-concept { width: 100%; }
.home-concept-txt { width: 100%; }
.home-concept img { width: 100%; }
/*************************************
* 事業内容ページ共通
*************************************/
.img-fl-l { width: 100%; }
.img-fl-r { width: 100%; }
.txt-fl-r { width: 100%; }
.txt-fl-l { width: 100%; }
/*************************************
* 環境事業
*************************************/
.evm-img-area { width: 35%; float: left; }
.evm-txt-area { width: 61%; float: right; }
/*************************************
* カフェ事業
*************************************/
.cafe-shop-detail { width: 100%; }
.shop-detail-img { width: 60%; }
/*************************************
* 会社概要
*************************************/
/*事業展開*/
.company-main-img { width: 100%; }
/*会社概要*/
.iso-img { width: 60%; margin-bottom: 0.5rem; }
/*過去3年間主要取引先*/
section#company-04 .txt-fl-l { width: 100%; float: none; margin: 0 }
section#company-04 .txt-fl-r { width: 100%; float: none; margin: 0 }
section#company-04 .txt-fl-l ul li, section#company-04 .txt-fl-r ul li { display: inline-block; }
/*************************************
* 採用情報
*************************************/
span.recruit-main-txt  { font-size: 1rem; }
/*求める人物像*/
.recruit-point-detail { width: 40%; margin: 0 5% 1rem 5%; }
.point-ttl { background-size: 110px auto; padding-top: 110px; }
.point-ttl span { font-size: 17px; margin-top: -11px; }
.point-txt { text-align: justify; font-size: 13px; line-height: 20px; }
/*採用スケジュール*/
.recruit-schedule-img { width: 100%; }






















}



@media only print {
/*トップスライド*/
.top-slide {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	width: 50% !important;
	float: left !important;
	height: 580px;
	position: relative;
	z-index: 10
}
.top-slide:first-child { background-image: url("../img/parts/pts-img-keibi.jpg") !important; }
.top-slide:last-child { background-image: url("../img/parts/pts-img-cafe.jpg") !important; }
.slide { display: none }

/*フェードイン*/
.effect {
  opacity: 1 !important;
  transform: translateX(0px) !important;
}
.effect-u {
  opacity: 1 !important;
  transform: translateY(0px) !important;
}


}





.com-l{
	margin-left: 20px;
	list-style: none;
}

.com-u{
	margin-top: 20px;
}

.com-p{
	text-align: right;
	margin-top: -10px;
}

.com-dt{
	float: left;
	width: 70px;
}

.com-dd{
	float: left;
}

.com-dr{
	overflow: hidden;
}
