@charset "UTF-8";
/* Small Devices, Tablets ipad landscape */
/*------------------------------------------------------------↓201810_celsys_edit-----*/
.sns_links {
	width:100%;
	padding:40px;
	box-sizing:border-box;
	font-size: 14px;
}
.sns_links > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 690px;
	margin: 0 auto;
}

.sns_links span.sns_title {
	display:inline-block;
	max-width: 90px;
	width: 100%;
	text-align: right;
}
.sns_links span.sns_icon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 250px;
}
.sns_links span.sns_icon a {
	display:inline-block;
	max-width: 35px;
	width: 100%;
}
.sns_links span.sns_icon a img {
	width: 100%;}

.sns_links span.contact_btn {
	display:inline-block;
	width:300px;
	text-align: right;
}
.sns_links span.contact_btn img {
	display:inline-block;
	width: 200px;
}



.movie_box {
	max-width: 600px;
}
.movie_box.center_position {
	margin: 0 auto;
}

@media (min-width : 1030px)  {
	body{
		/*overflow: hidden; Facebookコメント欄が隠れてしまうためとります*/
		min-width: 1280px;
	}
	/*------------------------------------------------------------↓201607_celsys_edit-----*/
	body{
		min-width: 769px;
	}
	.languageNav__wrap {
		width:100%;
		max-width: 1280px;
	}
	.headerInrerWrap nav {
		float:none;
		position: absolute;
		right: 50px;
	}
	header h1 {
		position:relative;
		z-index:10;
	}

	header .header__right {
		width:100%;
		padding-left:150px;
		box-sizing:border-box;
	}
    
    /*******ドロップダウン******************************************************/


header .nav li{margin-right: 0;}

.header__right ul.nav > li > a { padding: 0 13px 45px 13px;
    opacity: 1;}  
.header__right .englishmenu ul.nav > li > a { padding: 0 10px 45px 10px;
    opacity: 1;}  

.header__right ul.nav > li > a span { /* 子項目のスタイル */
     display: block;
     padding-bottom: 10px;
    font-weight: bold;
}
 .header__right ul.nav > li > a:hover span { /* 子項目のスタイル（ホバー時） */
   border-bottom: 4px solid #00AF9A; color: #00AF9A;
     
     text-shadow: 3px 3px 5px #fff ,
-3px 3px 5px #fff ,
3px -3px 5px #fff ,
-3px -3px 5px #fff,
         
         
         1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;

}
    

.header__right ul.nav li.nav__07 .dmenu { /* 下層メニューのスタイル */
 width: 100%;
    height: 275px;
  position: fixed;
  top: 10px; /* 親項目の直下に配置 */
  transition: 0.5s opacity; /* アニメーション設定 */
  /* transition: 2s top, 1.5s opacity;  ふわっと上からアニメーション設定 */
  left: 0;
    right: 0;
    opacity: 0;
    background-color: rgba(60,70,80,0.9);
  visibility: hidden; /* 下層メニューを非表示 */
}

.header__right ul.nav li.nav__07 .dmenu-wrap { /* 下層メニューのスタイル */
  display: flex;justify-content:center; flex-wrap: wrap;
    width: 1280px;
    margin: 40px auto 0;
  color: #fff; /* 文字色 */
}

.header__right ul.nav li.nav__07:hover .dmenu { /* 下層メニューのスタイル（親項目ホバー時） */
  visibility: visible; /* 下層メニューを表示 */
    opacity: 1;
top: 95px;}

/*******メガドロップダウンメニューの中身******************************************************/
header .header__right ul.nav .dmenu h3{clear: both; width: 100%; font-size: 24px; padding: 0;}
header .header__right ul.nav .dmenu dl{padding: 10px 30px 50px;}
header .header__right ul.nav .dmenu dl dt{padding-bottom:10px;}
header .header__right ul.nav .dmenu dl dt span,
header .header__right ul.nav .dmenu dl dt a{ display: inline;font-weight: bold;color: #fff; margin: 10px 0; font-size: 14px; line-height: 20px;}/*中項目*/
header .header__right ul.nav .dmenu dl dd{ margin-bottom: 10px;}/*小項目*/
header .header__right ul.nav .dmenu dl dd a{ color : #fff; font-weight: normal;
	padding-left: 15px;
	background: url(/files/user/img/cmn/arrow_wh01.png?v=1458015728) no-repeat left center ;
}
header .header__right ul.nav .dmenu dl dd a:hover{}

/*******ドロップダウンここまで******************************************************/

    footer {
		padding:0 50px;
	}
	.footerArea {
		box-sizing:border-box;
		width: 100%;
		max-width:1280px;
	}
	.footerArea .footerArea__col {
		box-sizing:border-box;
		width: 26%;
		padding-right:15px;
	}
	.footerArea .footerArea__col:first-child {
		width: 30%;
	}
	.footerArea .footerArea__col:last-child {
		width: 18%;
	}
	.footerArea .footerArea__col ul li {
		padding-left:15px;
		text-indent:-15px;
	}
	.footerNav {
		box-sizing:border-box;
		width: 100%;
		max-width:1280px;
		padding-right:55px;
		position:relative;
		padding-bottom:40px;
	}
	.footnerNav .sns{
		margin: 10px 20px;
	}
		
	.footerNav ul {
		margin-right:40px;
	}
	/******1000px～769pxでは無効にする
    .footerNav .copyWrap {
		float:left;
	}**/
	.footerNav .copy {
		margin-left: 0;
		margin-right:10px;
	}
	.footerNav .copy_under {
		float: left;
	}
	/***1000px～769pxでは無効にする
    *.footerNav p.pmark {
		float:none;
		position:absolute;
		right:0;
		top:27px;
	}**/
    
	/*-----------------------------------------------------------------*/
}
    @media (min-width : 769px)  {
    
/*----------------------------------------------------↑元はpadding-left:150px;*/

	.mainWrap/*ヘッダー、パンくずリスト、コンテンツエリア*/,
	.bookmark {
		width: auto !important;
		max-width:1280px;
		padding-left:50px !important;
		padding-right:50px !important;
		position:relative;
	}
	.mainWrap .mainWrap,
	#bottom_contents .mainWrap {
		padding-left:0 !important;
		padding-right:0 !important;
	}

	.kvBox__logo,
	.kvtextArea {
		width: 100% !important;
		margin-left: -50% !important;
	}
	.kvBox__details.rigthBottms {
		right: 50px !important;
	}
	.imgLinkbox a {
		max-width: 390px;
		width: 100%;
	}
	.imgLinkbox a:last-child {
		margin-right:0%;
	}
	.imgLinkbox a img {
		max-width:100%;
	}
	.newsArea {
		/*max-width:1280px;
		margin:0 auto;*/
	}
	.newsArea dl {
		width: 100% !important;
		box-sizing:border-box;
	}
	.p-pickup__item {
		height: 380px !important;
	}
	.p-pickup__img {
		height: 315px;
	}
	.p-pickup__img img {
		height: 100%;
	}
	.p-banner {
		margin-bottom: 110px;
	}
	.p-banner__item a {
		background-position:center center;
		background-repeat:no-repeat;
		width:100% !important;
		max-width: 1600px;
		height:190px;
	}
	.p-banner__item.-employment a {
		background-image:url(/files/user/img/top/pc/img_employment.png?v=1576813222);
	}
	.p-banner__item.-case a {
		background-image:url(/files/user/img/top/pc/img_case.png?v=1567998086);
	}
	.p-banner__item.-irinfo a {
		background-image:url(/files/user/img/top/pc/img_irinfo.png?v=1653639154);
	}

	.p-banner__subVisual {
		display:none;
	}

	.topBtn a {
		bottom: 20px !important;
		margin-left: 0;
		right: 50px;
	}
	
	
	/*トップ以外*/
	.imgBox__img {
		margin-left:20px;
	}
	.companyWrap .imgBox__img {
		margin-left:0;
	}
	.imgBox__text {
		float:none !important;
		width:auto !important;
	}
	.itemBox__col,
	.itemBox2__col {
		width:49% !important;
	}
	.itemBox__col:first-child,
	.itemBox2__col:first-child {
		margin-right: 2% !important;
	}
	#page_service .itemBox__col {
		width:49% !important;
		margin-right:0 !important;
		margin-left:0 !important;
	}
	#page_service .itemBox__col:first-child {
		width:49% !important;
		margin-right:2% !important;
	}
	.itemBox__img a,
	.itemBox__col a img {
		max-width: 100%;
	}
	#page_service .itemBox___col_child {
		width:49% !important;
		margin-right:0 !important;
		margin-left:2% !important;
	}
	#page_service .itemBox___col_child.first {
		width:49% !important;
		margin-left:0% !important;
	}
	#page_service .itemBox__col .textArea dt {
		min-height: 55px;
		height:auto !important;
		margin-bottom: 20px !important;
	}
	#page_clip_solutions .topModule {
		padding-right:300px;
		position:relative;
		min-height: 80px;
	}
	#page_clip_solutions .topModule .contactBtn {
		float:none;
		position:absolute;
		top:0;
		right:0;
	}
	#page_clip_solutions .topModule .textBox {
		width:auto !important;
	}
	#page_clip_solutions .h02title_02Wrap {
		width: 100% !important;
		max-width:1280px;
	}
	#page_clip_solutions #main_contents {
		padding:0 50px;
	}
	#page_clip_solutions .cases_wrap {
		width:100% !important;
		max-width:1280px;
	}
	#page_clip_solutions .case {
		border-left: 1px solid #b7bcc3;
		margin-bottom: 20px;
		width: 50% !important;
		padding: 0px 20px 10px;
		float: left;
		box-sizing:border-box;
	}
	#bottom_contents {
		padding:0 50px;
	}
	.volumeBox .textBox .btn a {
		width: 230px !important;
	}
	.contactBox {
		padding-left: 250px;
		position: relative;
		background: #263240;
		margin-bottom: 100px;
	}
	.contactBox__conte {
		float:none;
		margin-right:0;
		display: table;
		background: #fff;
		width: 100%;
		box-sizing: border-box;
		padding-right: 19px;
	}
	.contactBox__leftCol,
	.contactBox__rightCol {
		float:none;
		display: table-cell;
	}
	.contactBox__leftCol {
		width:210px;
	}
	.contactBox__linkbox {
		width: 250px;
		position:absolute;
		top:0;
		left:0;
	}
 	/**20220829feeco消去
        .companyWrap {
		margin-bottom:100px !important;
	}**/
	.editors {
		width:auto;
	}
	.editors img {
		max-width:100%;
	}
	.pageWrap {
		position:relative;
	}
	div.leftColM {
		width:100%;
		padding-right:310px;
		box-sizing:border-box;
	}
	div.rightColM {
		position: absolute;
		top: 0;
		right: 0;
	}
	.category_nav_wrap {
		width:auto !important;
		max-width: 1280px;
		padding:0 50px;
	}
	.h02titleWrap {
		padding-right:310px;
		max-width:1280px;
		box-sizing:border-box;
		width:auto !important;
	}
	.h02title {
		width:auto !important;
	}
	.h02case, .h03case02 {
		background-size: 100% 1px !important;
	}
	.caseBox_A_inner, .caseBox_B_inner {
		height: auto !important;
	}
	.caseBox_E_inner {
		display:block !important;
	}
	.caseBox_A__leftCol, .caseBox_A__rightCol,
	.caseBox_B__leftCol, .caseBox_B__rightCol {
		float:none !important;
		display: table-cell;
		vertical-align: top;
	}
	.caseBox_A__leftCol,
	.caseBox_B__leftCol {
		padding-right:15px;
		box-sizing:border-box;
	}
	.caseBox_B,
	.caseBox_B_inner table {
		width:auto !important;
	}
	.caseBox_A__img {
		text-align:left !important;
	}
	.caseBox_A__img img,
	.caseBox_B__img img,
	.caseBox_D__img img,
	.caseBox_B_inner img,
	.caseBox_B_inner table td img,
	.imgBottom .caseBox_B__img img {
		max-width:100% !important;
		height: auto;
		min-width: 130px;
	}
	.caseBox_E__img img,
	.caseBox_B_inner table td img {
		width:100%;
		max-width:400px !important;
	}
	.caseBox_D__img img {
		width:238px;
	}
	.caseBox_C__img img,
	.caseBox_E__img img {
		/*width: 100%;*/
		min-width: 180px;
	}
	.caseBox_C__img img {
		max-width:300px !important;
	}
	.h01case {
    	font-size: 30px !important;
	}
	.caseBox_A__url,
	.box__url {
		word-break:break-all;
		line-height: 1.4em;
		margin-bottom: 15px !important;
	}
	div.recruit_photos table td {
		display:table-cell !important;
		width:33%;
	}
}
@media (min-width : 769px) and (max-width : 950px) {
	.caseBox_A__leftCol, .caseBox_A__rightCol,
	.caseBox_B__leftCol, .caseBox_B__rightCol,
	.caseBox_C__leftCol, .caseBox_C__rightCol,
	.caseBox_D__leftCol, .caseBox_D__rightCol {
		display:block !important;
		width:100% !important;
		max-width:100% !important;
		margin-bottom:10px;
	}
	.caseBox_B__leftCol {
		margin-bottom:40px;
	}
	.caseBox_C__rightCol,
	.caseBox_D__rightCol {
		padding-top:30px !important;
	}
}
@media (min-width : 1300px)  {
	.topBtn a {
		right: 20px !important;
	}
	.kvBox__details.rigthBottms {
		right: 150px !important;
	}
}
/*----------------------------------------------------↓全サイズ共通*/
body{
	top: 0 !important;
}
div.youtubeBox,
div.douga,
div.ytp-html5-clipboard {
	position:relative !important;
	top:auto !important;
	padding: 0px !important;
	width:100% !important;
	padding-top: 56.25% !important;
	height:auto !important;
}
.caseBox_B__movie,
.Box_movie_max {
	max-width:640px;
}
div.youtubeBox iframe,
div.douga iframe,
div.ytp-html5-clipboard iframe {
	position:absolute;
	top:0;
	left:0;
	width:100% !important;
	height:100% !important;
}
div.recruit_photos {
	margin:0 -5px 0 0;
}
div.recruit_photos table {
	width:auto;
	margin-bottom:25px;
	background-color:transparent;
}
div.recruit_photos table tr {
	border:none;
}
div.recruit_photos table td {
	display:block;
	border:none;
	padding:0 5px 0 0;
	box-sizing:border-box;
}

/*----------------------------------------------------↑全サイズ共通*/
/*------------------------------------------------------------↑201607_celsys_edit-----*/

/*------------------------------------------------------------↓元々max768だったが、1000pxに拡大、header、footerのみSP版に-----*/
@media only screen and (max-width : 1030px) {
    
    	.sns_links > div {
	display: block;
	align-items: center;
	width: 300px;
            margin: 0 auto;
	text-align: center;
}

.sns_links span.sns_title {
	display: none;
}

    
.sns_links div span.sns_icon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

    .sns_links span.contact_btn {
    display:none;  
    }
    
/*----------------------------------------------------
Begin CMN
----------------------------------------------------*/
	body {
		-webkit-text-size-adjust: 100%;
		line-height: 26px;
		background: #F8F7F0 url(/files/user/svg/body.svg?v=1456380929) no-repeat;
		background-position: 0px -2454px;
		min-width: 100%;
		height: 100%;
		box-sizing: border-box;
		position: static;
		padding-top: 60px;
	}
	body.noscroll {
		box-sizing: border-box;
		overflow: hidden;
		position: fixed;
	}
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}

	.mainWrap{
		width: 100%;
	}

	a:hover,a:focus{/*ipad 以下のサイズでhocer focus無効化*/
	opacity: 1;
}
/*----------------------------------------------------
Begin header
----------------------------------------------------*/
header{
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1000;
	background:#fff;
}
header.under{
	height: 60px;
}
body.noscroll header{
	position: fixed;
	top: 0;
	height: 100%;
	box-sizing: border-box;
	background-color: #fff;
	overflow-y: scroll;
	z-index: 10;
}
header .headWrap{
	padding: 0;
}
header h1{
	padding: 15px 0 0 20px;
	height: 45px;
}
header h1 a{
	background: url(/files/user/feeco/celsys_img/com_header_celsys_logo.png?v=1657233116) no-repeat;
	background-size: 60px;
}
.headWrap.cover h1 a{
	background: url(/files/user/feeco/celsys_img/com_header_celsys_logo.png?v=1657233116) no-repeat;
	background-size: 60px;
}
.headWrap.under h1 a{
	background: url(/files/user/feeco/celsys_img/com_header_celsys_logo.png?v=1657233116) no-repeat;
	background-size: 60px;
}
header .headWrap.cover{
	padding: 0;
}
header .headWrap.under{
	padding: 0;
}

header nav{
	overflow: hidden;
	z-index: -1;
	position: fixed;
	top: -1000px;
	height: 0;
	background-color: #fff;
	clear: both;
	width: 100%;
	-webkit-transition: top 0.3s,height 0.3s;
	transition: top 0.3s,height 0.3s;
}
body.noscroll header nav{
	top: 0;
  height: 100%;
  padding-top: 60px;
  padding-bottom: 20px;
  box-sizing: border-box;
  overflow-y: scroll;
  /* -webkit-overflow-scrolling: touch; */
	-webkit-transition: top 0.3s,height 0.3s;
	transition: top 0.3s,height 0.3s;
}

header .nav:after{
	display: none;
}
header .header__right{
	padding-top: 0px;
	float: none;
}
header .nav{
	float: none;
	margin-bottom: 10px;
  padding: 0;
}
header .nav li{
	box-sizing: border-box;
	float: none;
	border-bottom: 1px solid #e9edf1;
	margin: 0 auto;
}
header .nav li:first-child{
	border-top: 1px solid #e9edf1;
}
header .nav li a{
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	font-size: 15px;
  font-weight: bold;
	height: 60px;
	line-height: 60px;
}

#page_top header .nav li > a {
	color: #9aa8be;
}
    
    
	.dmenu{ display: none;}
/*
.nav .nav__01 a,.headWrap.cover .nav .nav__01 a,.headWrap.under .nav .nav__01 a{
	background: url(/files/user/img/cmn/nav01_sp_off.png?v=1458015730) center no-repeat;
	background-size: 46px 15px;
	width: 100%;
}
.nav .nav__02 a,.headWrap.cover .nav .nav__02 a,.headWrap.under .nav .nav__02 a{
	background: url(/files/user/img/cmn/nav02_sp_off.png?v=1458015730) center no-repeat;
	background-size: 103px 15px;
	width: 100%;
}
.nav .nav__03 a,.headWrap.cover .nav .nav__03 a,.headWrap.under .nav .nav__03 a{
	background: url(/files/user/img/cmn/nav03_sp_off.png?v=1458015731) center no-repeat;
	background-size: 103px 15px;
	width: 100%;
}
.nav .nav__04 a,.headWrap.cover .nav .nav__04 a,.headWrap.under .nav .nav__04 a{
	background: url(/files/user/img/cmn/nav04_sp_off.png?v=1458015731) center no-repeat;
	background-size: 66px 15px;
	width: 100%;
}
.nav .nav__05 a,.headWrap.cover .nav .nav__05 a,.headWrap.under .nav .nav__05 a{
	background: url(/files/user/img/cmn/nav05_sp_off.png?v=1458015732) center no-repeat;
	background-size: 66px 15px;
	width: 100%;
}
*/

/*active処理*/
#page_top .nav .nav__01 a{
	color: #333;
}
/*
#page_service .headWrap .nav .nav__02 a,
#page_studio_paint .headWrap .nav .nav__02 a,
#page_creative .headWrap .nav .nav__02 a{
	background: url(/files/user/img/cmn/nav02_sp_on.png?v=1458015730) center no-repeat;
	background-size: 103px 15px;
	width: 100%;
}

#page_solution .headWrap .nav .nav__03 a,
#page_clip_solutions .headWrap .nav .nav__03 a,
#page_topics_list8 .headWrap .nav .nav__03 a,
#page_topics_detail8 .headWrap .nav .nav__03 a,
#page_solution_news .headWrap .nav .nav__03 a{
	background: url(/files/user/img/cmn/nav03_sp_on.png?v=1458015731) center no-repeat;
	background-size: 103px 15px;
	width: 100%;
}

#page_company .headWrap .nav .nav__04 a,
#page_message .headWrap .nav .nav__04 a,
#page_overview .headWrap .nav .nav__04 a,
#page_news .headWrap .nav .nav__04 a,
#page_topics_detail6 .headWrap .nav .nav__04 a{
	background: url(/files/user/img/cmn/nav04_sp_on.png?v=1458015731) center no-repeat;
	background-size: 66px 15px;
	width: 100%;
}

#page_employment .headWrap .nav .nav__05 a,
#page_topics_detail9 .headWrap .nav .nav__05 a,
#page_topics_detail7 .headWrap .nav .nav__05 a,
#page_welfare .headWrap .nav .nav__05 a{
	background: url(/files/user/img/cmn/nav05_sp_on.png?v=1458015732) center no-repeat;
	background-size: 66px 15px;
	width: 100%;
}
*/

/*english nav
.headWrap.en .nav .nav__01 a,.headWrap.en.cover .nav .nav__01 a,.headWrap.en.under .nav .nav__01 a{
	background: url(/files/user/img/cmn/en/nav01_cover_off.png?v=1458015746) center no-repeat;
	width: 100%;
}
.headWrap.en .nav .nav__02 a,.headWrap.en.cover .nav .nav__02 a,.headWrap.en.under .nav .nav__02 a{
	background: url(/files/user/img/cmn/en/nav02_cover_off.png?v=1458015746) center no-repeat;
	width: 100%;
}
.headWrap.en .nav .nav__03 a,.headWrap.en.cover .nav .nav__03 a,.headWrap.en.under .nav .nav__03 a{
	background: url(/files/user/img/cmn/en/nav03_cover_off.png?v=1458015746) center no-repeat;
	width: 100%;
}
.headWrap.en .nav .nav__04 a,.headWrap.en.cover .nav .nav__04 a,.headWrap.en.under .nav .nav__04 a{
	background: url(/files/user/img/cmn/en/nav04_cover_off.png?v=1458015747) center no-repeat;
	width: 100%;
}
.headWrap.en .nav .nav__05 a,.headWrap.en.cover .nav .nav__05 a,.headWrap.en.under .nav .nav__05 a{
	background: url(/files/user/img/cmn/en/nav05_cover_off.png?v=1458015747) center no-repeat;
	width: 100%;
}
*/

header .headerInrerWrap{
	padding: 0;
	background-color: #fff;
}
header .cover .headerInrerWrap{
	padding: 0;
}
header .under .headerInrerWrap{
	padding: 0;
}
header .language{
	display: none;
}
header .sp_language{
	display: block;
	margin-bottom: 20px;
}
header .sp_language a.jp{
	display: block;
	text-align: center;
	font-size: 15px;
	background-size: 68px 16px;
	height: 50px;
	color: #9aa8be;
	line-height: 50px;
	width: 280px;
	border:1px solid #e9edf1;
	margin:0 auto 10px;
}
header .sp_language a.en{
	display: block;
	text-align: center;
	font-size: 15px;
	background-size: 68px 16px;
	height: 50px;
	color: #9aa8be;
	line-height: 50px;
	width: 280px;
	border:1px solid #e9edf1;
	margin:0 auto;
}
.navBtn{
	width:20px;
	margin-top: 23px;
	margin-right: 20px;
	float:right;
	cursor:pointer;
	z-index:1000;
}
.hamburger{
	position:relative;
	float:right;
	width:20px;
	height:14px;
	display:inline-block;
}
.hamburger > span{
	display:block;
	width:20px;
	height:2px;
	position:absolute;
	background:#333;
	transition:all .3s;
}
    
 .header__right ul.nav > li > a span { /* ハンバーガーメニューを太字にする */
    font-weight: bold;
}
    
.hamburger .l1{
	top:0;
}
.hamburger .l2{
	top:6px;
}
.hamburger .l3{
	top:12px;
}
.navBtn:hover .hamburger .l1{
	top:-1px;
}
.navBtn:hover .hamburger .l3{
	top:13px;
}
body.noscroll .navBtn .hamburger .l1{
	top: 6px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
body.noscroll .navBtn .hamburger .l3{
	top: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
body.noscroll .navBtn .hamburger .l2{
	opacity:0;
}
.navclose{
	width:20px;
	margin: 0 auto;
	cursor:pointer;
	z-index:1000;
}
.navclose .hamburger .l1{
	top: 6px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navclose .hamburger .l3{
	top: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.languageNav{
	display: none;
}
/*----------------------------------------------------
Begin footer
----------------------------------------------------*/
footer{
	background: #24282B;
}
.footerBorder{
	display: none;
}
.footerArea{
	display: none;
}
.footerNav{
	width: 100%;
	padding: 0;
}
.footerNav ul{
	margin-top: 0px !important;
	border-top: 1px solid #3e4753;
	float: none;
}
.footerNav ul li{
	display: inline-table;
	width: 50%;
	font-size: 10px;
  border-bottom:  1px solid #3e4753;
}

.footerNav ul li:nth-child(odd){
    box-sizing: border-box;
    border-right:  1px solid #3e4753;
}

.footerNav ul li a{
	width: 100%;
	display: table-cell;
	vertical-align: middle;
	height: 49px;
	line-height: 2em;
	text-align: center;
}
.footerNav ul li:after{
	display: none;
}
.footerNav .copyWrap{
	text-align: center;
}
.footerNav .copy{
	float: none;
	display: inline-block;
	margin: 15px auto;
	margin-left: 0px;
	margin-right: 3%;
}
.footerNav .pmark{
	display: inline-block;
	float: none;
}
.footerNav .pmark img{
	width: 27px;
	min-width: 27px;
	height: auto;
	vertical-align: middle;
}
.footerNav .copy_under{
	float: none;
	line-height: 50px;
	text-align: center;
	margin-top: 0px !important;
}
    
}

@media only screen and (max-width : 768px) {
	body {
		-webkit-text-size-adjust: 100%;
		line-height: 26px;
	background: #F8F7F0 url(/files/user/svg/body.svg?v=1456380929) center -1000px no-repeat;
		min-width: 100%;
		height: 100%;
		box-sizing: border-box;
		position: static;
		padding-top: 60px;
	}
/*----------------------------------------------------
Begin breadList
----------------------------------------------------*/
ul.breadList{
	margin: 0 ;
	padding: 10px 20px ;
}
/*----------------------------------------------------
Begin Under_top_titlef SPでのみ出現する要素
----------------------------------------------------*/
.Under_top_title{
	display: block;
	background: #2c3645;
	color: #fff;
	margin-bottom: 32px;
	padding-left: 20px;
	line-height: 44px;
}
/*----------------------------------------------------
Begin Top
----------------------------------------------------*/
/*----------------------------------------------------
Begin kvArea
----------------------------------------------------*/
img.kvImg{
	width: 100% ;
	max-width: 100%;
	height: auto;
}
.kvWrap{
	top: 0 !important;
	width: 100% !important;
	margin-top: 16px!important;
}
.kvArea{
	width: 100% !important;
	left: 0 !important;
	margin-left: 0 !important;
}

.kvWrap .slick-slider{
	margin-bottom: 17px !important;
}
.kvWrap .slick-dots{
	margin-top: 14px !important;
}
.kvBox__inner{
	display: none;
}
.kvWrap .slick-list{
	padding: 0 !important;
}
.kvBox{
	height: initial !important;
}

/*KV Innrer*/
/*kvBox__logo*/
.kvBox__logo{
	width: 100% !important;
	margin-left: initial !important;
	left: initial !important;
	top: 7% !important;
}
.kvBox__logo img{
	width: 24%;
	height: auto;
}
/*kvBox__moreBtn*/
.kvBox__moreBtn{
	width: 100%;
	left: initial !important;
	margin-left: initial !important;
	text-align: center;
	bottom: 3% !important;
}
.kvBox__moreBtn img{
	width: 25% !important;
	height: auto !important;
}
/*.kvtextArea*/
.kvtextArea{
	width: 100% !important;
	left: initial !important;
	top: 26% !important;
	margin-left: initial !important;
}
.kvBox__title{
	margin-top: 19% !important;
}
.kvBox__title p{
	font-size: 45px !important;
}
.kvBox__subtitle {
	font-size: 10px !important;
	margin-top: 5% !important;
}
.kvBox__subtitle p{
	font-size: 18px !important;
}

/*以下条件分岐*/
/*logoが大きい時*/
.kvBox .kvBox__logo.logoBig img{
	width: 65% !important;
}
.kvBox .kvBox__logo.logoMiddle img{
	width: 20% !important;
}
.kvBox.logoNone .kvtextArea{
	top: 22% !important;
}
.kvBox.logoNone .kvBox__subtitle{
	padding: 0 20px;
	margin-top: 10% !important;
}
.kvBox__details.rigthBottms{
	position: relative !important;
	bottom: initial !important;
	right: initial !important;
}
.kvImgPC{
	display: none !important;
}
.kvImgSP{
	display: block !important;
}
.kvImgSP img{
	width: 100%;
}
/*----------------------------------------------------
Begin imgLinkbox
----------------------------------------------------*/
.imgLinkbox {
	display: block;
}
.mainWrap .imgLinkbox a {
	width: 100%;
	margin: 0 0 30px;
	background-color: #fff;
	border-radius: 5px;
	color: #4c5669;
}
.imgLinkbox dl dt img{
	width: 100%;
	height: auto;
	border-radius: 5px 5px 0 0;

}
.imgLinkbox dl dt {
	position: relative;
	display: inline-block;
	margin-bottom: 25px;
	border-radius: 2px;
}

.imgLinkbox dl dt:after {
	position: absolute;
	display: block;
	content: "";
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(rgba(255, 255, 255, 0) 40%, #fff 95%);
}
.imgLinkbox dl dd h2 {
	height: auto;
	padding: 0 20px;
	position:relative;
	z-index: 100;
	margin-top: -45px;
	font-size: 18px;
}
.imgLinkbox dl dd p {
	padding: 10px 20px 20px;
	font-size: 15px;
}

/*   new design 2019/09  */
.p-service {
	padding: 30px 35px !important;
}
h2.p-service__heading {
	font-size: 26px !important;
	margin-bottom: 30px !important;
    width: 240px;
}

/*----------------------------------------------------
Begin pickupArea
----------------------------------------------------*/
.p-pickup {
	margin: 30px 0 0 0;
}
h2.p-pickup__heading {
	font-size: 30px;
	padding: 0 0 10px;
}
.p-pickup__item {
	padding-bottom: 60px;
}
.p-pickup__img img {
	width: 100%;
}
.p-pickup__title {
	font-size: 13px;
	line-height: 1.3;
	top: 0;
	padding-top: 58%;
}
.p-pickup .slick-next {
	right: 20px;
}
.p-pickup .slick-prev {
	left: 20px;
}
.p-pickup .slick-prev, 
.p-pickup .slick-next {
	z-index: 1000;
	top: 41%;
}
.p-pickup .slick-prev:before, 
.p-pickup .slick-next:before {
	font-size: 25px;
	opacity: 1;
}

/*----------------------------------------------------
Begin newsArea
----------------------------------------------------*/
h2.newsh2{
	padding: 0 0 10px;
	font-size: 30px;
    border-bottom: 3px solid #00AF9A; 
}
.newsArea .bgW{
	padding: 0 20px;
}
.newsArea dl{
	padding: 17px 0 20px;
	width: 100%;
}
.newsArea dl dt{
	float: none;
	font-size: 14px;
	margin-bottom: 20px;
	font-weight: 900;
}
.newsArea dl dt span{
	font-size: 14px;
	font-weight: 900;
}
.newsArea dl dd{
	font-size: 13px;
}
.newsArea dl dt span:before{
	width: 30px;
}
.newsArea dl dt span:after{
	width: 30px;
}
.c-moreBtn{
	padding: 10px 0 40px !important;
}

/*   new news design 2019/09  */
.p-news {
	display:block;
}
body:not(#page_irinfo_groupnews) .p-news__item {
	max-width: calc(100% - 70px);
	width: 100%;
	margin: 15px 35px 30px !important;
	font-size: 16px;
}
.p-news__title {
	font-size: 14px;
}

/* search  */
.p-search {
	font-size:14px;
	margin: 0 20px 20px;
}
.p-search__box {
	display: block;
}
.p-search__list {
	margin-top: 10px;
	-ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.p-search__list.-category {
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}
.p-search__item {
	text-align: center;
	margin-bottom: 5px;
}
.p-search__item a {
	margin-right: 0;
	padding: 5px;
}
.-year .p-search__item {
	width: 20%;
}
.-category .p-search__item {
	width: 45%;
}

/*----------------------------------------------------
Begin 2colm layout
----------------------------------------------------*/
div.leftColM{
	float: none;
	width: 100%;
}
div.rightColM{
	float: none;
	width: 100%;
	margin-bottom: 80px;
}
/*----------------------------------------------------
Begin sideNav
----------------------------------------------------*/
.sideNav{
	padding: 0 20px;
	margin-bottom: 30px;
}
/*----------------------------------------------------
Begin contactBox
----------------------------------------------------*/
.contactBox{
	padding: 0 20px;
}
.h01case{
	line-height: 1;
}
.contactBox__linkbox{
	float: none;
	margin-right: 0px;
	margin-bottom: 10px;
	width: 100%;
}
.contactBox__linkbox-Inner{
	padding: left
}
.contactBox__linkbox a{
	display: table-cell;
	width: 1000px;
}
.contactBox__conte{
	border:none;
	float: none;
	margin-right: 0px;
	padding-right: 0;
	width: 100%;
	padding: 0;
	margin-bottom: 20px;
}
.contactBox__leftCol{
	float: none;
	text-align: center;
	padding: 15px;
	border-right: none;
	border: 1px solid #d0d0d0;
}
.contactBox__leftCol .telTitle{
	font-size: 12px;
}
.contactBox__leftCol .telNum a.telLink{
	color: #4c5669 !important;
}
.contactBox__rightCol .telDetail{
	font-size: 12px;
}
.contactBox__rightCol{
	float: none;
	padding: 15px;
	border: 1px solid #d0d0d0;
	border-top:none;
}
/*----------------------------------------------------
Begin solution配下汎用見出し
----------------------------------------------------*/
.h03case02{
	background: none;
	border-bottom: 2px solid #0e3b7e;
	margin: 0 20px 36px;
}
/*----------------------------------------------------
Begin top btn
----------------------------------------------------*/
.topBtn{
	width: 100%
}
.topBtn a{
	width: 30px;
	height: 30px;
	margin-left: 100%;
	left: -30px;
	bottom: 0 !important;
}
.topBtn a img{
	width: 30px;
	height: 30px;
}
/*----------------------------------------------------
Begin pager
----------------------------------------------------*/
div.pager{
	padding: 25px 15px 27px;
}
/*----------------------------------------------------
Begin SITEMAP
----------------------------------------------------*/
.sitemap{
	padding: 0 20px;
}
.sitemap .left_colS{
	float: none;
	width: 100%;
	margin-right: 0px;
}
.sitemap .right_colS{
	float: none;
	width: 100%;
}
.sitemap .hsmap01{
	margin: 20px 0px;
	font-size: 24px;
}
.sitemap .hsmap02{
	padding-bottom: 10px;
	font-size: 18px;
	margin-bottom: 20px;
}
.sitemap .sitemapList li{
	margin-bottom: 5px;
}
.sitemap .sitemapList li a {
    padding-left: 20px;
    background: url(/files/user/img/cmn/sideNav_icon.png?v=1458015732) left 0px center no-repeat;
}
/*----------------------------------------------------
Begin editor for tabet + mobile
----------------------------------------------------*/
.editors{
	width: 100% !important;
	padding: 0 !important;
}
.editors2{
	width: 100% !important;
	padding: 0 !important;
}
.editors3{
	width: 100% !important;
	padding: 0 !important;
}
.editors iframe{
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
}
.editors2 iframe{
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
}
.editors3 iframe{
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;

}
.editors2 img{
	max-width: 100% !important;
	height: auto !important;
}
.editors3 img{
	max-width: 100% !important;
	height: auto !important;
}
.editors img{
	max-width: 100% !important;
	height: auto !important;
}
.editors table{
	width: 100% !important;
}
.editors2 table{
	width: 100% !important;
}
.editors3 table{
	width: 100% !important;
}
.editors table img{
	max-width: 100% !important;
	height: auto !important;
}
.editors2 table img{
	max-width: 100% !important;
	height: auto !important;
}
.editors3 table img{
	max-width: 100% !important;
	height: auto !important;
}
.editors table.tbl2col td:first-child{
	width: 20% !important;
}
.editors table.tbl2col td:nth-child(2){
	width: 80% !important;
	word-break: break-all;
}
/*----------------------------------------------------
Begin kv titles
----------------------------------------------------*/

.kvtitele{
	font-size: 24px;
	text-shadow: 0px 0px 8px rgba(51,51,51,0.6);
}
/*kvarea SP表示*/
.kvBox__moreBtn img{
	width: 46% !important;
}
.kvBox__title p {
    font-size: 28px !important;
}
.kvBox__subtitle {
    font-size: 25px !important;
    margin-top: 2% !important;
}
.kvBox__subtitle p {
    font-size: 12px !important;
}
.kvBox.logoNone .kvtextArea {
    top: 10% !important;
}
.kvBox__details{
	position: relative !important;
	margin-top: 5px !important;
}
.p-banner {
	margin-bottom: 30px;
}
.p-banner__item {
	margin: 30px 35px 0;
}
.p-banner__text h2 {
	font-size: 24px;
	text-shadow: 0px 0px 8px rgba(51,51,51,0.6);
}

}
.p-banner img{
	width: 100%;
	height: auto;
}
.p-banner .sub_visual{
	width: auto !important;
	padding: 0 20px;
	margin-bottom: 20px !important;
}


/*採用トップのマージン*/
#page_employment #main_contents {
	margin-top: 30px;
}

}/*end max-width: 768px*/

/* Extra Small Devices, Phones */


@media only screen and (max-width : 600px) {

/*
header .nav li a{
	padding: 7% 0;
}
*/


/*----------------------------------------------------
Begin imgLinkbox
----------------------------------------------------*/
/*
.mainWrap .imgLinkbox a{
	float: none;
	width: 100%;
	margin: 0 auto 24px;
}
.mainWrap .imgLinkbox a:first-child{
	margin-left: auto;
}
.mainWrap .imgLinkbox a:nth-child(even){
	float: none;
	margin: 0 auto 35px;
}
*/

/*----------------------------------------------------
Begin employmentArea
----------------------------------------------------*/
.employmentAreaWrap_text{
	top: 12% !important;
}
.employmentAreaWrap_text h2{
	font-size: 24px !important;
	margin-bottom: 7% !important;
}
.employmentAreaWrap_text p{
	line-height: 1.5em;
}

.employmentAreaWrap_text .moreBtn{
	margin-top: 1% !important;
}


}
/* Extra Small Devices, Phones */
@media only screen and (max-width : 480px) {
	/*スマホ用 背景対応*/
	body {
	background: #F8F7F0 url(/files/user/svg/body.svg?v=1456380929) no-repeat;
		background-position: 0px -3020px;
	}
}
/* iPhone Retina */
@media only screen and (max-width : 320px) {
}


/*----------------------------------------------------
Solutions（トップと企業情報）
----------------------------------------------------*/
#solutions_box{ background: #536278; margin: 50px 0; padding-top: 30px;}/*---修正後--*/
#solutions_box div{max-width: 1280px; margin: 20px auto 0;}

#page_top #solutions_box h2{font-size: 30px;font-weight: 100; color: #fff; padding: 0 10px 10px ;
 margin: 0 auto;border-bottom: 3px solid #00AF9A; width: fit-content;}
#page_top #solutions_box h2.bsnf-english{font-family: 'Lato';font-size: 38px;font-weight: 100;}

#page_company #contents #solutions_box h2{margin: 0 auto;border-bottom:1px solid #fff; text-align:left; color: #fff;}/*---修正後--*/

#solutions_box div.solutions_inner{ max-width:1000px;}/*---2025年2月--*/
#solutions_box div p{ color: #fff;padding: 20px 20px 30px;}/*---2025年2月--*/
#solutions_box div figure{ margin:0 20px;}/*---修正後--*/
#solutions_box div figure img{ max-width:100%;}/*---修正後--*/
#solutions_box div dl{ display: flex;  margin: 30px auto 0; max-width:1000px;}/*---修正後--*/
#solutions_box div dl dt{width: 300px;}
#solutions_box div dl dd{width:700px ;}/*---修正後--*/
#solutions_box div dl dd p{ font-size: 16px; line-height: 200%; color: #fff;}
#solutions_box .c-moreBtn a{ background: #fff;}
#solutions_box .c-moreBtn a:hover{color:#fff;background-color: #00AF9A;}


@media only screen and (max-width : 600px) {
	/*スマホ用*/

#solutions_box{ background: #536278; margin: 30px 0; padding-top: 20px; padding-bottom: 10px; }
#solutions_box div{max-width:100%; margin: 20px auto 0;}
#solutions_box div p{ color: #fff;padding: 0　20px 10px;}/*---2025年2月--*/
#solutions_box div figure{ margin:0 10px; text-align:center;}
#page_top #solutions_box h2{font-size: 28px;}
#page_top #solutions_box h2.bsnf-english{font-size: 30px;}
#page_company #contents #solutions_box h2{width:initial; margin: 10px; font-size: 20px; text-align: left; line-height: 30px;border-bottom: 1px solid #fff;}

#solutions_box h2.bsnf-english{font-size: 36px;}
#solutions_box div figure{ margin: 10px; text-align:center;}/*---修正後--*/
#solutions_box div figure img{ max-width: 100%;}/*---2025年2月--*/
#solutions_box div dl{ margin: 10px 0; width:initial;}
#solutions_box div dl dt{width: 100%;}
#solutions_box div dl dd{ display: none;}/*---修正後--*/
}
/* iPhone Retina */
@media only screen and (max-width : 320px) {
}