@charset "utf-8";

/*------------------------------------------------------------
    デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    outline: 0;
    font-size: 1em;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
    display: block;
}
 
ol, ul { list-style: none;}

blockquote, q { quotes: none;}
 
:focus { outline: 0;}
 
ins { text-decoration: none;}
 
del { text-decoration: line-through;}

a{
	text-decoration: none;
}

a:hover{
	color:#e52d27;
	text-decoration:none;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: bottom;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

*, *::before, *::after {
	box-sizing: border-box;
}

/*------------------------------------------------------------
    汎用スタイル
------------------------------------------------------------*/

.clear { clear: both;}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.fl { float: left;}
.fr { float: right;}
.txt-c { text-align: center;}
.txt-l { text-align: left;}
.txt-r { text-align: right;}
.red { color: #F00;}
.mk-ye { background: linear-gradient(transparent 60%, #ffff66 60%);}
.fs11 {	font-size: 1.1rem;}
.fs24 {	font-size: 2.4rem;}
figure { margin: 0; padding: 0; }
/*------------------------------------------------------------
    レイアウト
------------------------------------------------------------*/

html {font-size: 62.5%;}

body {
    font-family: 'Poppins',"Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	text-align: center;
    line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
   	width: 100%;
	position: relative;
	font-size: 1.4rem;
	color: #2c2d30;
}

.mincho { font-family: "Sawarabi Mincho"; }

/*------------------------------------------------------------
    ヘッダー
------------------------------------------------------------*/
header{position:relative;width:100%;background:#FFF;}
.logo{position:relative;z-index:123;padding:10px;font-size:16px;}
.logo a{ display: flex;color: inherit;}
.logo a span{ font-weight:bold; align-self: center;}
nav{position:relative;width:1024px;margin:0 auto;}
#cssmenu,#cssmenu ul,#cssmenu ul li,#cssmenu ul li a,#cssmenu #head-mobile{border:0;list-style:none;line-height:1;display:block;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
#cssmenu #head-mobile{display:none}
#cssmenu{ display:flex;justify-content:space-between;}
#cssmenu > ul > li{float:left; margin-top: 6px;}
#cssmenu > ul > li > a{padding:17px;font-size:14px;letter-spacing:1px;text-decoration:none;font-weight:400; color: inherit;}
#cssmenu > ul > li:hover > a,#cssmenu ul li.active a{color:#fff}
#cssmenu > ul > li:hover,#cssmenu ul li.active:hover,#cssmenu ul li.active,#cssmenu ul li.has-sub.active:hover{background:#e52d27!important;-webkit-transition:background .3s ease;-ms-transition:background .3s ease;transition:background .3s ease;}
#cssmenu > ul > li.has-sub > a{padding-right:30px}
#cssmenu > ul > li.has-sub > a:after{position:absolute;top:22px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu > ul > li.has-sub > a:before{position:absolute;top:19px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}
#cssmenu > ul > li.has-sub:hover > a:before{top:23px;height:0}
#cssmenu ul ul{position:absolute;left:-9999px; z-index:1}
#cssmenu ul ul li{height:0;-webkit-transition:all .25s ease;-ms-transition:all .25s ease;background:#333;transition:all .25s ease}
#cssmenu ul ul li:hover{}
#cssmenu li:hover > ul{left:auto}
#cssmenu li:hover > ul > li{height:35px}
#cssmenu ul ul ul{margin-left:100%;top:0}
#cssmenu ul ul li a{border-bottom:1px solid rgba(150,150,150,0.15);padding:11px 15px;width:170px;font-size:12px;text-decoration:none;color:#ddd;font-weight:400;}
#cssmenu ul ul li:last-child > a,#cssmenu ul ul li.last-item > a{border-bottom:0}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li a:hover{color:#fff}
#cssmenu ul ul li.has-sub > a:after{position:absolute;top:16px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu ul ul li.has-sub > a:before{position:absolute;top:13px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}
#cssmenu ul ul > li.has-sub:hover > a:before{top:17px;height:0}
#cssmenu ul ul li.has-sub:hover,#cssmenu ul li.has-sub ul li.has-sub ul li:hover{background:#363636;}
#cssmenu ul ul ul li.active a{border-left:1px solid #333}
#cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active> a{border-top:1px solid #333}

@media screen and (max-width:1000px){
.logo{position:absolute;top:0;left: 0;width:100%;height:46px;text-align:center;padding:10px 0 0 0 ;float:none; overflow:hidden}
.logo2{display:none}
.logo a{ display: inherit;}
.logo a span{ display:none;}
nav{width:100%;}
#cssmenu{width:100%; display: inherit;}
#cssmenu ul{width:100%;display:none; background:#e52d27;}
#cssmenu ul li{width:100%;border-top:1px solid #FFF}
#cssmenu ul li:hover{background:#363636;}
#cssmenu ul ul li,#cssmenu li:hover > ul > li{height:auto}
#cssmenu ul li a,#cssmenu ul ul li a{width:100%;border-bottom:0; color:#FFF;}
#cssmenu > ul > li{float:none; margin-top: 0;}
#cssmenu ul ul li a{padding-left:25px}
#cssmenu ul ul li{background:#333!important;}
#cssmenu ul ul li:hover{background:#363636!important}
#cssmenu ul ul ul li a{padding-left:35px}
#cssmenu ul ul li a{color:#ddd;background:none}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li.active > a{color:#fff}
#cssmenu ul ul,#cssmenu ul ul ul{position:relative;left:0;width:100%;margin:0;text-align:left}
#cssmenu > ul > li.has-sub > a:after,#cssmenu > ul > li.has-sub > a:before,#cssmenu ul ul > li.has-sub > a:after,#cssmenu ul ul > li.has-sub > a:before{display:none}
#cssmenu #head-mobile{display:block;padding:23px;color:#ddd;font-size:12px;font-weight:700}
.button{width:55px;height:46px;position:absolute;right:0;top:0;cursor:pointer;z-index: 12399994;}
.button:after{position:absolute;top:22px;right:20px;display:block;height:4px;width:20px;border-top:2px solid #2c2d30;border-bottom:2px solid #2c2d30; box-sizing: initial;content:''}
.button:before{-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;position:absolute;top:16px;right:20px;display:block;height:2px;width:20px;background:#2c2d30;content:''}
.button.menu-opened:after{-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;top:23px;border:0;height:2px;width:19px;background:#2c2d30;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}
.button.menu-opened:before{top:23px;background:#2c2d30;width:19px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}
#cssmenu .submenu-button{position:absolute;z-index:99;right:0;top:0;display:block;border-left:1px solid #FFF;height:46px;width:46px;cursor:pointer}
#cssmenu .submenu-button.submenu-opened{background:#262626}
#cssmenu ul ul .submenu-button{height:34px;width:34px}
#cssmenu .submenu-button:after{position:absolute;top:22px;right:19px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:after{top:15px;right:13px}
#cssmenu .submenu-button.submenu-opened:after{background:#fff}
#cssmenu .submenu-button:before{position:absolute;top:19px;right:22px;display:block;width:2px;height:8px;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:before{top:12px;right:16px}
#cssmenu .submenu-button.submenu-opened:before{display:none}
#cssmenu ul ul ul li.active a{border-left:none}
#cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active > a{border-top:none}
}

/*------------------------------------------------------------
    トップイメージ
------------------------------------------------------------*/
.mv {
	width: 100%;
	height: 700px;
	/*background: url(../img/bg-mv.jpg) no-repeat left top scroll;*/
	background-position: center center;
	background-size: cover;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.mv::before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background:url(../img/slide-cover.png) no-repeat center center scroll;
	position: absolute;
	top: 0;
	left: 0;
}

.mv::after {
  content: '';
  background: inherit;/*.bgImageで設定した背景画像を継承する*/
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
  position: absolute;
  /*ブラー効果で画像の端がボヤけた分だけ位置を調整*/
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: -1;/*重なり順序を一番下にしておく*/
}

.mv-wrap {
	width: 100%;
	margin: 0 auto;
	height: 100%;
	display: flex;
	flex-direction: column;
    justify-content: center;
	background: rgba(0,0,0,0.1);
}

.mv-ttl {
    margin: 10px auto 0px;
}

.mv-subttl {
	font-size: 2.6rem;
    letter-spacing: 10px;
	color: #FFF;
}

/*------------------------------------------------------------
    IFRAME
------------------------------------------------------------*/

.iframe-wrapper {
	position: relative;
	width: 100%;
	padding: calc(450 / 1024 * 100%) 0 0;
}

.iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*------------------------------------------------------------
    フッター
------------------------------------------------------------*/

.footer {
	padding: 40px 0 5px;
	background: #e52d27;
	color: #FFF;
}

.ft-in {
	display: flex;
}

.f-logo {
	width: 80px;
	display: inline-block;
	margin-right: 20px;
}

.ft-ad {
	display: flex;
	margin-right: 80px;
	flex-shrink: 0;
}

.ft-address {
	font-size: 1.2rem;
	text-align: left;
}

.ft-navi {
	width: 100%;
	transition: .3s;
}

.ft-navi ul {
    display: flex;
    justify-content: space-between;
	text-align: left;
}

.ft-navi ul li ul {
    display: flex;
    flex-direction: column;
    text-align: left;
    margin-right: -24px;
}

.ft-navi ul li ul li {
    line-height: 1.8;
}

.ft-navi li a {
	color: #FFF;
}

.ft-navi li a:hover {
	text-decoration: underline;
}

.ft-navi li:before {
	content: "\f105";
	font-family: fontawesome;
	display: inline-block;
	margin-right: 5px;
}


small {
	display: block;
	font-weight: normal;
    font-size: 1.0rem;
    padding: 5px 0 0;
	text-align: center;
	padding: 40px 0 0;
}

/*------------------------------------------------------------
    ボタン
------------------------------------------------------------*/

.button02 {
  display: inline-block;
  width: 260px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  margin-top: 40px;
}
.button02::before,
.button02::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button02,
.button02::before,
.button02::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button02 {
  background-color: #2c2d30;
  color: #fff;
  letter-spacing: 1px;
}
.button02:hover {
  background-color: #e52d27;
  color: #FFF;
}

.recruit .button02 {
	background: transparent;
	border: 1px solid #FFF;
}

.recruit .button02:hover {
  background-color: #e52d27;
  color: #FFF;
  border: 1px solid #e52d27;
}

/*------------------------------------------------------------
    コンテンツ
------------------------------------------------------------*/
.wrapper {
}

.inner {
	width: 1024px;
	margin: 0 auto;
}

#index .wrapper section {
	padding: 100px 0;
	text-align: left;
}

.wrapper section,
#index .wrapper section.news {
	padding: 40px 0;
	text-align: left;
}

#index .wrapper section.news {
	padding: 40px 0 60px;
}

.service {
	background: #efefef;
}

.topttl {
	position: relative;
	padding-left: 10px;
	margin-bottom: 15px;
}

.topttl::before {
    content: "";
    position: absolute;
    left: 0;
    top: 56%;
    transform: translateY(-50%);
    width: 0;
    height: 80%;
    border-left: 3px solid #e52d27;
}

.topttl .h2ttl,
.topttl02 .h2ttl {
	font-size: 4rem;
	font-weight: 500;
	font-style: italic;
	color: #e52d27;
	letter-spacing: 2px;
}

#cleaning .h2ttl,
#security .h2ttl {
	margin-bottom: 20px;
}

.topttl02 .h2ttl {
	color: #FFF;
}

.topttl02 {
	margin-bottom: 40px;
	margin-top: -20px;
}

.subttl {
    display: block;
    font-size: 1.5rem;
    font-style: normal;
    letter-spacing: 1px;
	margin-top: -5px;
	position: relative;
}

.topttl02 .subttl::after {
    content: "";
    border-bottom: 1px solid #FFF;
    width: 66px;
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
}

.jigyo-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	margin-top: 20px;
}

.jigyo {
	width: 450px;
	margin: 0 20px 40px;
	background: #fff;
	padding: 40px;
}

.jigyottl {
	font-size: 1.8rem;
	margin-bottom: 5px;
}
/*
.jigyo:nth-child(2) {
	margin: 0 30px;
}
*/

.circle-img img {
	border-radius: 50%;
	margin-bottom: 10px;
}

.btc {
	text-align: center;
}

.wrapper section.about {
	padding: 120px 0;
}

.about-wrap {
	display: flex;
}

.about-img {
	flex-grow: 0;
	flex-shrink: 0;
	margin-right: 30px;
}

#index .wrapper section.recruit {
	width: 100%;
	text-align: center;
	background: url(../img/bg-recruit.png) no-repeat center 50%;
	background-color: #000;
    background-size: cover;
	text-align: center;
	color: #FFF;
	padding: 100px 0;
}

.wrapper section.recruit {
	width: 100%;
	text-align: center;
	background: url(../img/bg-recruit.png) no-repeat center 50%;
	background-color: #000;
    background-size: cover;
	text-align: center;
	color: #FFF;
	padding: 100px 0;
}

.news {
	background: url(../img/ayersrock.png) no-repeat scroll right bottom -4px;
}

#cleaning .news,
#security .news {
	background: none;
	padding: 0 0 40px;
}

.ul-news {
	border-top: 1px solid #ccc;
}

.li-news {
	border-bottom: 1px solid #ccc;
	padding: 15px 5px;
	display: flex;
}

.li-news a {
	color: inherit;
}

.li-news a:hover {
	color: #e52d27;
}


.date {
	display: inline-block;
	margin-right: 30px;
	letter-spacing: 1px;
}

.bn-area {
	background: #e3e4e6;
	padding: 10px 0;
	text-align: left;
}

.bn-wrap {
	display: flex;
	align-items: center;
}

.unei {
	margin-right: 20px;
}

.bn-wrap a {
	margin: 0 10px;
}

.bn-wrap a img {
	height: 60px;
	width: auto;
}

.mv02 {
    display: block;
    position: relative;
    width: 100%;
    min-width: 1024px;
    height: 260px;
	z-index: -1;
}
/*
.mv02::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0.4;
    filter: alpha(opacity=60);
    z-index: 2;
}
*/

.page-mv {
	height: 260px;
    position: relative;
    padding: 0 !important;
    text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-mv .h2ttl {
	font-size: 4rem;
	color: #FFF;
	letter-spacing: 1px;
	position: relative;
	z-index: 10;
	text-shadow: 4px 4px 20px rgba(0, 0, 0, 0.49);
}

#service .mv02 {
	background: url(../img/bg-service.jpg) no-repeat 50% 50%/cover;
}

#about .mv02 {
	background: url(../img/bg-about.jpg) no-repeat 50% 50%/cover;
}

#recruit .mv02 {
	background: url(../img/bg-recruit.jpg) no-repeat 50% 50%/cover;
}

#contact .mv02 {
	background: url(../img/bg-contact.jpg) no-repeat 50% 50%/cover;
}

#food .mv02 {
	background: url(../img/bg-food.jpg) no-repeat 50% 50%/cover;
}

#security .mv02 {
	background: url(../img/bg-security.jpg) no-repeat 50% 50%/cover;
}

#cleaning .mv02 {
	background: url(../img/bg-clean.jpg) no-repeat 50% 50%/cover;
}

#introduction .mv02 {
	background: url(../img/bg-introduction.jpg) no-repeat 50% 50%/cover;
}

#shoukai .mv02 {
	background: url(../img/bg-introduction.jpg) no-repeat 50% 50%/cover;
}

.wrap-common {
    position: relative;
    z-index: 1;
    width: 1024px;
	padding: 40px 20px 60px;
	margin: auto;
}

.wrap-common p {
	margin-bottom: 15px;
}

.ul-jigyo {
	position: relative;
}

.li-jigyo-item {
	position: relative;
    height: 435px;
    margin-bottom: 120px;
}

.li-jigyo-item a {
	display: block;
    height: 100%;
	color: inherit;
}

.li-jigyo-item a:hover {
	color: #e52d27;
}

.li-jigyo-item .num {
    position: absolute;
    top: 0;
    left: 0;
    width: 48px;
    height: 48px;
    z-index: 2;
	background: #e52d27;
}

.ef-num {
    position: relative;
    overflow: hidden;
}

.li-jigyo-item .num span {
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    color: #fff;
    display: block;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-45%);
    transform: translateY(-45%);
}

.li-jigyo-item .pic {
    position: absolute;
    right: -203px;
    top: 0;
    width: 797px;
    overflow: hidden;
}

.ef-motion-txt {
    display: inline-block;
    position: relative;
    overflow: hidden;
}

.s_s.show2 .ef-motion-txt .ef-inner {
    opacity: 1;
}

.li-jigyo-item .box-txt.type2 {
    -webkit-transform: translateY(-38%);
    transform: translateY(-38%);
	background: rgba(255,255,255,1);
	padding-right: 20px;
}
.li-jigyo-item .box-txt {
    position: relative;
    left: 0;
    top: 50%;
    width: 480px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
	text-align: left;
}

.li-jigyo-item .box-txt .tit2 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
    margin-bottom: 16px;
}

.li-jigyo-item .box-txt .tit2-en {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    margin-bottom: 36px;
}

.li-jigyo-item .box-txt .txt {
    margin-bottom: 40px;
}

.li-jigyo-item .box-txt .link {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
}

.wrap-common p.sub-read {
	margin-bottom: 60px;
}

#about .sub-read {
	margin-bottom: 0;
}


.h3ttl {
	font-size: 2em;
	margin: .67em 0;
}

.h3ttl02{
	position: relative;
	overflow: hidden;
	padding-bottom: 5px;
	margin-bottom: 20px;
	font-size:1.8rem;
}
.h3ttl02::before,
.h3ttl02::after{
	content: "";
	position: absolute;
	bottom: 0;
}
.h3ttl02:before{
	border-bottom: 3px solid #e52d27;
	width: 100%;
}
.h3ttl02:after{
	border-bottom: 3px solid #D8D8D8;
	width: 100%;
}

table.table01 {
	width:100%;
	border-top:#e7e7e7 solid 1px;
	border-collapse: collapse;
}
table.table01 tr {
	border-bottom: 1px solid #e7e7e7;
}

table.table01 th {
	background:#f8f8f8;
	padding:10px 15px;
	vertical-align:top;
}
table.table01 td {
	padding:10px 15px;
	vertical-align:top;
}

.table02 {
	width: 100%;
	margin-bottom: 40px;
	border-top: 1px solid #e7e7e7;
}

.table02 tr {
	border-bottom: 1px solid #e7e7e7;
}

.table02 th {
	background: #f8f8f8;
	font-size: 1.6rem;
	padding-left: 32px;
	text-align: left;
	width: 299px;
}

.table02 td {
	font-size: 1.5rem;
	line-height: 1.8666;
	padding: 34px 40px;
	text-align: left;
}

.ul-navi_list {
	position: relative;
	display: flex;
	justify-content: space-between;
	text-align: left;
}

.ul-navi_list li + li {
	margin-left: 40px;
}


.ul-navi_list a {
    display: block;
    position: relative;
    height: 172px;
    padding-bottom: 20px;
	color: #2c2d30;
	text-decoration: none;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.ul-navi_list a:hover {
	color: #e52d27 !important;
}

/*
.ul-navi_list a::before {
    position: absolute;
    bottom: 20px;
    content: "\f13a";
    font-family: fontawesome;
    color: #e52d27;
    transform: rotate(270deg);
}
*/
.image_container {
    overflow: hidden;
}

.ul-navi_list p {
    margin: 10px 0 0 0;
    font-size: 14px;
    line-height: 1.4;
}

.kyujin-wrap {
	margin-top: 40px;
	text-align: left;
}

.h4ttl {
	position: relative;
	padding-left: 10px;
	margin-bottom: 10px;
}

.h4ttl::before {
	content: "";
	width: 4px;
	height: 100%;
	background-image: linear-gradient(-45deg, #e52d27 25%, #e52d27 25%, #e52d27 50%, #e52d27 50%, #e52d27 75%, #e52d27 75%, #e52d27);
	position: absolute;
	top: 0;
	left: 0;
}

.acc-tel02 {
    font-size: 2.0rem;
    font-weight: bold;
    color: #B0272D;
}

.service-entertainment {
	text-align: left;
	margin-bottom: 40px;
}

.service-info-title a {
	color: inherit;
}

.service-entertainment .service-info,
.service-lifestyle .service-info:not(:last-child),
.service-ec .service-info:not(:last-child) {
    margin-bottom: 80px;
}

.service-entertainment .service-info, .service-lifestyle .service-info, .service-ec .service-info {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.service-entertainment .service-info-right, .service-lifestyle .service-info-right, .service-ec .service-info-right {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.service-entertainment .service-info-left .service-info-image, .service-lifestyle .service-info-left .service-info-image, .service-ec .service-info-left .service-info-image {
    margin-right: 35px;
}

.service-entertainment .service-info-image, .service-lifestyle .service-info-image, .service-ec .service-info-image {
    display: block;
    width: calc(50% - 35px);
    height: 330px;
    background-position: center center;
    background-size: cover;
    background-color: #fff;
    border: 1px solid #ccc;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

.service-entertainment .service-info-left .service-info-data, .service-lifestyle .service-info-left .service-info-data, .service-ec .service-info-left .service-info-data {
    margin-left: 35px;
}
.service-entertainment .service-info-data, .service-lifestyle .service-info-data, .service-ec .service-info-data {
    width: calc(50% - 35px);
    margin-top: 31.6px;
}

.service-entertainment .service-info-title, .service-lifestyle .service-info-title, .service-ec .service-info-title {
    font-size: 24px;
    line-height: 1.7;
    font-family: "Noto Sans Japanese","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
    font-weight: 700;
    -webkit-transition: color .3s ease;
    transition: color .3s ease;
}

.service-entertainment .service-info-copy, .service-lifestyle .service-info-copy, .service-ec .service-info-copy {
    font-size: 12px;
    line-height: 1.7;
    color: #e52d27;
    margin-bottom: 28px;
    display: inline-block;
    font-family: "Noto Sans Japanese","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
    font-weight: 700;
}

.service-entertainment .service-info-text:not(:last-child), .service-lifestyle .service-info-text:not(:last-child), .service-ec .service-info-text:not(:last-child) {
    margin-bottom: 27px;
}

.service-entertainment .service-info-text, .service-lifestyle .service-info-text, .service-ec .service-info-text {
    font-size: 15px;
    line-height: 30px;
}

.service-entertainment .service-info-right .service-info-image, .service-lifestyle .service-info-right .service-info-image, .service-ec .service-info-right .service-info-image {
    margin-left: 35px;
}

.service-entertainment .service-info-right .service-info-data, .service-lifestyle .service-info-right .service-info-data, .service-ec .service-info-right .service-info-data {
    margin-right: 35px;
}

.t-ajiai {
	background: url(../img/bg-t-ajiai.jpg);
}

.t-kiraku-kumamoto {
	background: url(../img/bg-t-kirakukumamoto.jpg);
}

.t-kiraku-nagasaki {
	background: url(../img/bg-t-kirakunagasaki.jpg);
}

.t-shoukai {
	background: url(../img/bg-t-shoukai.jpg);
}

.s-jigyo-wrap {
	text-align:left;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
}

.s-jigyo-box {
	margin-bottom: 40px;
	display: flex;
	justify-content: space-between;
	width: 49%;
	flex-direction: column;
}

.s-jigyo-cont {
	width: 100%;
}

.s-jigyo-img {
	width: calc(40% - 35px);
	width: 100%;
	height: 270px;
	margin-left: 0;
	background-position: center center;
    background-size: cover;
    background-color: #fff;
    border: 1px solid #ccc;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
	flex-shrink: 0;
}


.secu01 {
	background-image: url(../img/secu01.jpg);
}

.secu02 {
	background-image: url(../img/secu02.jpg);
}

.secu03 {
	background-image: url(../img/secu03.jpg);
}

.secu04 {
	background-image: url(../img/secu04.jpg);
}

.clean01 {
	background-image: url(../img/clean01.jpg);
}

.clean02 {
	background-image: url(../img/clean02.jpg);
}

.clean03 {
	background-image: url(../img/clean03.jpg);
}

.clean04 {
	background-image: url(../img/clean04.jpg);
}

.wrapper section.rinen {
	text-align: center;
}

.rinen-box {
	display: block;
	padding: 20px;
	border: 1px solid #333;
}

.rinen-text {
	text-align:center;
}

.sp {
	display: none;
}

.form-box {
}

.form-table {
	width: 80%;
	margin: auto;
}

.form-table .td01,
.form-table .td02 {
	padding: 5px;
	text-align: left;
}

.form-table .td01 {
	width: 20%;
}

.form-table .td02 {
	width: 80%;
}

.form-table input,
.form-table textarea {
	width: 100%;
	padding: 5px;
}

.box19 {
    position: relative;
    padding:0.25em 1em;
}
.box19:before,.box19:after{ 
    content:'';
    width: 20px;
    height: 30px;
    position: absolute;
    display: inline-block;
}
.box19:before{
    border-left: solid 1px #5767bf;
    border-top: solid 1px #5767bf;
    top:0;
    left: 0;
}
.box19:after{
    border-right: solid 1px #5767bf;
    border-bottom: solid 1px #5767bf;
    bottom:0;
    right: 0;
}
.box19 p {
    margin: 0; 
    padding: 0;
}

.creed {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.wrapper section .creed-l {
    text-align: center;
    width: 50%;
	flex-shrink: 0;
	padding: 40px;
}

.wrapper section .creed-l .mincho {
	font-size: 3rem;
	margin-bottom: 20px;
}


.fdrr {
	flex-direction: row-reverse;
}

.ul-yubi {
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
}

.ul-yubi li {
  line-height: 1.5;
  padding: 0.5em 0;
  font-size: 1.6rem;
  list-style-type: none!important;/*ポチ消す*/
}

.ul-yubi li:before {
  font-family: "FontAwesome";
  content: "\f0a4";
  position: absolute;
  left : 1em; /*左端からのアイコンまで*/
  color: #21b384; /*アイコン色*/
}

.kyujin-box {
	margin-bottom: 20px;
}

.contact-bt {
	margin-top: 40px;
}

.stripe{
  font-weight: bold;
  font-size: 2.4rem;
  letter-spacing: .2em;
  display: inline-block;
  z-index: 1;
  padding: 32px 20px;
  width: 100%;
  overflow: hidden;
  text-align: center;
  background: rgb(245, 98, 0);
  color: #ffffff;
  position: relative;
}
.stripe::before{
  z-index: -1;
  content: '';
  width: calc(200% + 40px);
  position: absolute;
  left: calc(-100% - 40px);
  height: 100%;
  display: block;
  top: 0;
  background: linear-gradient(135deg, rgba(242,144,46,1) 55%,rgb(245, 98, 0) 55%);
  transition: .3s;
}
.stripe:hover::after{
  z-index: 1;
  content: '';
  width: 50px;
  height: 50px;
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
  background: linear-gradient(135deg, rgba(242,144,46,0) 50%,rgb(245, 98, 0) 50%);
}
.stripe:hover::before{
  left: 0;
}

.s-mv {
	margin: 40px 0 20px;
}
.flow-box {
	text-align: left;
	margin-bottom: 30px;
}
.flow-box h3 {
  font-size: 24px;
  line-height: 1.7;
  font-family: "Noto Sans Japanese","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  font-weight: 700;
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
  padding-bottom: 10px;
}
.flow-cont {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	justify-content: space-between;
}
.flow-cont .text{
	margin-right: 40px;
}
.flow-cont figure {
	width: 280px;
	height: auto;
	flex-shrink: 0;
}

.faqList {
  padding: 1em 0;
  text-align: left;
}

.faqList .item {
  margin-bottom: 1.25em;
}

.faqList .item-q {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	background-color: #eaeaef;
	color: #2d2f64;
	font-weight: bold;
	font-size: 1.8rem;
}

.faqList .item-q span {
	display: block;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 0.8125em 1em;
}

.faqList .item-q:before {
	display: block;
	width: 50px;
	min-height: 50px;
	background-image: url(../img/ico_q.png);
	background-color:#3fb135;
	background-repeat: no-repeat, repeat;
	background-position: center center, 0 0;
	background-size: auto 24px, auto;
	content: "";
}

.faqList .item-a {
	padding: 1em 0 1em 6rem;
	background: url(../img/ico_a.png) 30px 0.875em/auto 24px no-repeat;
}

@media (max-width: 767px) {
	.faqList .item-q span {
		padding: 0.5em 0.75em;
	}

	.faqList .item-q:before {
		width: 40px;
		min-height: 40px;
	}

	.faqList .item-a {
		padding: 1em 0 1em 3rem;
		background-position: 10px 0.875em;
	}
}

.s-jigyo-wrapper > div {
	margin-bottom: 20px;
}

.s-jigyo-wrapper > div.jigyo-co {
	margin-bottom: 40px;
}

.button-wrap {
	display: flex;
	justify-content: space-between;
}

.button-wrap a {
	width: 48%;
}

/*
#PageHoujin #Container {
  background: url(../referral/img/wall_02.jpg) repeat left bottom;
}
*/

/* -------------------------------------------- */
/* ▼スマホ用                               */
/* -------------------------------------------- */
@media all and (max-width: 767px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: inherit;
	}
	.mv {
		height: 350px;
	}
	.mv-wrap {
		width: auto;
		padding: 20px;
	}
	.mv-subttl {
		font-size: 1.6rem;
		letter-spacing: 5px;
	}
	.inner {
		margin: 0 15px;
		width: auto;
	}
	#index .wrapper section {
		padding: 40px 0;
	}
	.wrapper section {
		padding: 20px 0;
	}
	.topttl .h2ttl {
		font-size: 2.8rem;
	}
	.subttl {
		font-size: 1.3rem;
	}
	.jigyo-wrap {
		flex-direction: column;
	}
	.jigyo {
		width: auto;
	}
	/*
	.jigyo:nth-child(2) {
		margin: 20px 0;
	}
	*/
	.wrapper section.about {
		padding: 40px 0;
	}
	.about-wrap {
		flex-direction: column;
	}
	.about-img {
		margin-right: 0;
		margin-bottom: 10px;
	}
	.spc {
		text-align: center;
	}
	#index .wrapper section.recruit {
		padding: 30px 15px;
	}
	.bn-wrap {
		flex-direction: column;
	}
	.unei {
		margin-right: 0px;
		margin-bottom: 5px;
	}
	.bn-wrap a {
		margin:0 0 10px 0;
	}
	.ft-in {
		flex-direction: column;
	}
	.ft-ad {
		margin-right: 0;
		margin-bottom: 10px;
		display: block;
	}
	.f-logo {
		width: auto;
		margin-right: 0;
		margin-bottom: 10px;
	}
	.ft-address {
		text-align: center;
	}
	.ft-navi ul {
		display: block;
		text-align: left;
	}
	.ft-navi > ul {
		border-top: 1px solid #FFF;
	}
	.ft-navi li {
		position: relative;
	}
	.ft-navi a {
		padding: 10px 0;
		border-bottom: 1px solid #FFF;
		display: block;
	}
	.ft-navi li:before {
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
		display: inline-block;
		margin-right: 0;
	}
	.ft-navi ul li ul {
		margin-right: 0;
		margin-left: 1em;
	}
	.ft-navi li:nth-child(2)::before {
		top: 20px;
	}
	.mv02 {
		position: relative;
		width: 100%;
		min-width: 0;
		height: 56vw;
		min-height: 210px;
	}
	.page-mv {
		height: 100%;
	}
	#service .mv02 {
		background: url(../img/bg-service-sp.jpg) no-repeat 50% 50%/cover;
	}
	#about .mv02 {
		background: url(../img/bg-about-sp.jpg) no-repeat 50% 50%/cover;
	}
	#recruit .mv02 {
		background: url(../img/bg-recruit-sp.jpg) no-repeat 50% 50%/cover;
	}
	#contact .mv02 {
		background: url(../img/bg-contact-sp.jpg) no-repeat 50% 50%/cover;
	}
	#food .mv02 {
		background: url(../img/bg-food-sp.jpg) no-repeat 50% 50%/cover;
	}
	#security .mv02 {
		background: url(../img/bg-security-sp.jpg) no-repeat 50% 50%/cover;
	}
	#cleaning .mv02 {
		background: url(../img/bg-clean-sp.jpg) no-repeat 50% 50%/cover;
	}
	.wrap-common {
		width: auto;
	}
	.jigyo-read {
		margin-bottom: 20px;
	}
	.li-jigyo-item {
		height: auto;
		margin-bottom: 50px;
		margin-bottom: 13.33333vw;
	}
	.li-jigyo-item .num {
		width: 32px;
		width: 8.53333vw;
		height: 32px;
		height: 8.53333vw;
		top: 25px;
		top: 6.66667vw;
		left: -16px;
		left: -4.26667vw;
	}
	.li-jigyo-item .pic {
		position: relative;
		top: 0;
		right: auto;
		width: 343px;
		width: 91.46667vw;
		overflow: hidden;
		margin-bottom: 38px;
		margin-bottom: 10.13333vw;
	}
	.li-jigyo-item .box-txt {
		top: 0;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		width: auto;
	}
	.li-jigyo-item .box-txt.type2 {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.li-jigyo-item .box-txt .tit2 {
		margin-bottom: 6px;
		margin-bottom: 1.6vw;
	}
	.li-jigyo-item .box-txt .tit2 {
		font-size: 32px;
		font-size: 3.2rem;
		font-size: 4.26667vw;
		line-height: 1;
	}
	.li-jigyo-item .box-txt .tit2-en {
		margin-bottom: 20px;
		margin-bottom: 5.33333vw;
	}
	.li-jigyo-item .box-txt .tit2-en {
		font-size: 20px;
		font-size: 2rem;
		font-size: 2.66667vw;
		line-height: 1;
	}
	.li-jigyo-item .box-txt .txt {
		margin-bottom: 26px;
		margin-bottom: 6.93333vw;
	}
	.li-jigyo-item .box-txt .link {
		font-size: 24px;
		font-size: 2.4rem;
		font-size: 3.2vw;
		line-height: 1;
	}
	table.table01 th {
		display:block;
	    border-bottom: none;
	}
	table.table01 td {
		display:block;
	}
	.ul-navi_list {
		flex-direction: column;
	}
	.ul-navi_list li {
		width: 100%;
		margin: 2px 0;
	}
	.ul-navi_list li a {
		height: 45px;
	}
	.ul-navi_list li + li {
		margin: 0;
		padding: 2px 0;
		border-top: 1px solid #e5e5e5;
	}
	.ul-navi_list a::before {
		top: 12px;
		right: 0;
	}
	.image_container {
		float: left;
	}
	.image_container img {
		float: left;
		width: 95px;
		height: 45px;
	}
	.ul-navi_list p {
		float: left;
		margin: 14px 0 0 14px;
		font-size: 12px;
		line-height: 1.4;
	}
	.table02 th {
		background: #fff;
		font-size: 13px;
		padding: 20px 10px 0;
		width: 100%;
	}
	.table02 td {
		font-size: 11px;
		line-height: 1.545;
		padding: 0 10px 25px;
	}
	.table02 th,
	.table02 td {
		display: block;
	}
	.service-info {
		flex-direction: column;
	}
	.service-entertainment .service-info-image, .service-lifestyle .service-info-image, .service-ec .service-info-image {
    display: block;
    width: 100%;
    height: 58.4375vw;
	margin-right: 0;
	}
	.service-entertainment .service-info-left .service-info-data, .service-lifestyle .service-info-left .service-info-data, .service-ec .service-info-left .service-info-data {
    margin-left: 0;
	}
	.service-entertainment .service-info-data, .service-lifestyle .service-info-data, .service-ec .service-info-data {
    width: 100%;
	margin-top: 0;
	}
	.service-entertainment .service-info:not(:last-child), .service-lifestyle .service-info:not(:last-child), .service-ec .service-info:not(:last-child) {
    margin-bottom: 12.5vw;
	}
	.service-entertainment .service-info-copy, .service-lifestyle .service-info-copy, .service-ec .service-info-copy {
    margin-bottom: 5.15625vw;
	}
	.service-entertainment .service-info-text:not(:last-child), .service-lifestyle .service-info-text:not(:last-child), .service-ec .service-info-text:not(:last-child) {
    margin-bottom: 0;
	}
	.service-entertainment .service-info-right, .service-lifestyle .service-info-right, .service-ec .service-info-right {
    flex-direction: column;
	}
	.service-entertainment .service-info-right .service-info-image, .service-lifestyle .service-info-right .service-info-image, .service-ec .service-info-right .service-info-image {
    margin-left: 0;
	}
	.service-info .button02 {
		margin-top: 20px;
	}
	.s-jigyo-box {
		flex-direction: column;
		width: 100%;
	}
	.s-jigyo-img {
    width: 100%;
    height: 180px;
    margin-left: 0;
	}
	.creed {
    flex-direction: column;
	margin-bottom: 20px;
	}
	.wrapper section .creed-l {
    width: 100%;
    padding: 20px;
	}
	.wrapper section .creed-l .mincho {
    font-size: 2.4rem;
	}
	.fs24 {
    font-size: 1.8rem;
	}
	.stripe{
		font-size: 1.8rem;
		padding: 16px 20px;
	}
	.flow-cont {
		flex-direction: column;
	}
	.flow-cont .text {
		margin-right: 0px;
	}
	.flow-cont figure {
		width: auto;
		max-width: 100%;
	}
	.button-wrap {
		flex-direction: column;
	}
	.button-wrap a{
		width: 100%;
	}



		
	


	




}
	