@charset "UTF-8";

/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　　全ページ共通

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

a:hover {
	opacity: 0.6;
	filter: alpha(opacity=80);
	-moz-opacity: 0.6;
	-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;
}

@media (min-width: 415px) {
	.sp {
		display: none !important;
	}
}

@media (max-width: 414px) {
	.pc {
		display: none !important;
	}
}

.mw1200 {
	max-width: 1200px !important;
}

nav ul:first-of-type li a:hover {
	opacity: 1;
}

.tab_content a:hover {
	opacity: 1;
}

::selection {
    background: #f8b500;
    color: #000;
}

::-webkit-selection {
    background: #f8b500;
    color: #000;
}

::-moz-selection {
    background: #f8b500;
    color: #000;
}

h2 {
	font-size: 48px !important;
	font-weight: bold !important;
	text-align: center;
	line-height: 0.7 !important;
	padding: 60px 0 !important;
	letter-spacing: 2px;
}

	@media (max-width: 414px) {
		h2 {
			padding: 40px 0 !important;
		}
	}

	@media (max-width: 680px) {
		h2 {
			font-size: 36px !important;
		}
	}

h2 p:nth-of-type(2) {
	font-size: 24px;
	font-weight: normal;
	margin-top: 19px;
}

	@media (max-width: 680px) {
		h2 p:nth-of-type(2) {
			font-size: 18px;
			margin-top: 13px;
		}
	}

.all-more-box {
	width: 187px;
	margin: 0 auto;
}

.recruit-btn{
	margin-top: 10px;
	font-size: 0.9em;
}
.all-more {
	text-align: center;
	position: relative;
	display: inline-block;
	padding: 17px 0;
	background: #000;
	width: 187px;
	color: #fff;
	font-weight: bold;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-o-border-radius: 10px;
	-ms-border-radius: 10px;
	letter-spacing: 2px;
}

.all-more div {
	z-index: 1;
	content: '';
	width: 5px;
	height: 5px;
	border: 0px;
	border-top-color: currentcolor;
	border-top-style: none;
	border-top-width: 0px;
	border-right-color: currentcolor;
	border-right-style: none;
	border-right-width: 0px;
	border-top-color: currentcolor;
	border-top-style: none;
	border-top-width: 0px;
	border-right-color: currentcolor;
	border-right-style: none;
	border-right-width: 0px;
	border-top-color: currentcolor;
	border-top-style: none;
	border-top-width: 0px;
	border-right-color: currentcolor;
	border-right-style: none;
	border-right-width: 0px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 43%;
	right: 6%;
	position: absolute;
}

.all-more-white {
	background: #fff;
	color: #000;
}

.all-more-white div {
	border-top: solid 1px #000;
	border-right: solid 1px #000;
}

.band-title {
	background: #000;
	color: #fff;
	font-size: 28px;
	padding: 20px 0;
}

	@media (max-width: 1140px) {
		.band-title {
			padding: 14px 0 14px 10px;
		}
	}

	@media (max-width: 414px) {
		.band-title {
			font-size: 22px;
			padding: 14px 0 14px 10px;
		}
	}

.band-title h3 {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
}

.holdings {
	color: #d7a200;
}

.creation {
	color: #d85600;
}

.sancity {
	color: #e600d3;
}

.five {
	color: #429a01;
}


/* --------------------------------------------

              タブ切り替えスタイル

--------------------------------------------*/

.tabs {
	margin-top: 10px;
	overflow: hidden;
}

	@media (max-width: 680px) {
		.tabs {
			margin: 0 10px;
		}
	}

.bb {
	border-bottom: 3px solid #f8b500;
}

.tab_item {
	width: calc(100%/6);
	height: 50px;
	border-bottom: 3px solid #f8b500;
	background-color: #3e3e3e;
	line-height: 50px;
	font-size: 13px;
	text-align: center;
	color: #fff;
	display: block;
	float: left;
	transition: all 0.2s ease;
}

	@media (max-width: 780px) {
		.tab_item {
			width: calc(100%/2);
			margin-bottom: 5px;
		}
	}

	@media (max-width: 1150px) {
		.tab_item {
			font-size: 13px;
		}
	}

#service-in .tab_item {
	width: calc(100%/3);
}

*::-ms-backdrop, .tab_item {
  width: 20%; /* IE11 */
}

.tab_item:nth-of-type(4),.tab_item:nth-of-type(5),.tab_item:nth-of-type(6),.tab_item:nth-of-type(7) {
	font-size: 13px;
	line-height: 18px;
	padding-top: 7px;
	height: 43px;
}

	@media (max-width: 1000px) {
		.tab_item:nth-of-type(4),.tab_item:nth-of-type(5),.tab_item:nth-of-type(6),.tab_item:nth-of-type(7) {
			font-size: 11px;
		}
	}

	@media (max-width: 780px) {
		.tab_item:nth-of-type(4),.tab_item:nth-of-type(5),.tab_item:nth-of-type(6),.tab_item:nth-of-type(7) {
			font-size: 13px;
		}
	}

@media (max-width: 1000px) {
	#service-in .tab_item:last-of-type {
		font-size: 13px !important;
	}
}

#service-in .tab_item:last-of-type {
	font-size: 16px;
	line-height: 50px;
	padding-top: 0;
	height: 50px;
}

.tab_item:hover {
	opacity: 0.75;
}

input[name="tab_item"] {
	display: none;
}

.tab_content {
	display: none;
	padding: 60px 0;
	clear: both;
	overflow: hidden;
}

	@media (max-width: 950px) {
		.tab_content {
			padding: 30px 0;
		}
	}

#service-in .tab_content {
	padding: 0 0 60px;
}

	@media (max-width: 414px) {
		#service-in .tab_content {
			padding: 0 0 30px;
		}
	}

#creative:checked ~ #creative_content,
#system:checked ~ #system_content,
#media:checked ~ #media_content,
#beauty:checked ~ #beauty_content,
#foodanddrink:checked ~ #foodanddrink_content,
#bridal:checked ~ #bridal_content, 
#nursing:checked ~ #nursing_content {
	display: block;
}

.tabs input:checked + .tab_item {
	background-color: #f8b500;
	color: #000;
	font-weight: bold;
}


/* --------------------------------------------

              会社概要 & 募集要項

--------------------------------------------*/

#profile .box {
	font-size: 16px;
	line-height: 1.6;
	padding: 40px 0;
}

	@media (max-width: 1140px) {
		#profile .box {
			padding: 20px 0 40px;
			margin: 0 10px;
		}
	}

#profile .box .wrap {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
}

#profile .box .wrap dl {
	overflow: hidden;
	background: #f8b500;
	margin-bottom: 5px;
}

	@media (max-width: 1140px) {
		#profile .box .wrap dl {
			margin-bottom: 10px;
		}
	}

#profile .box .wrap dl dt {
	float: left;
	padding: 25px 0 25px 40px;
	max-width: 241px;
	width: 100%;
}

	@media (max-width: 1140px) {
		#profile .box .wrap dl dt {
			float: none;
			padding: 10px 20px;
			max-width: 100%;
			width: auto;
		}
	}

/*@media (max-width: 1140px) {
	#profile .box .wrap dl p {
		height: auto !important;
	}
}*/

#profile .box .wrap dl dd {
	float: left;
	padding: 25px 40px;
	background: #eee;
	max-width: 779px;
	width: 100%;
}

	@media (max-width: 1140px) {
		#profile .box .wrap dl dd {
			float: none;
			padding: 10px 20px;
			max-width: 100%;
			width: auto;
		}
	}

#profile a {
	color: #f39800;
	text-decoration: underline;
}


/* --------------------------------------------

                  page top

--------------------------------------------*/

#page-top {
    position: fixed;
    bottom: 30px;
	right: 30px;
	font-size: 120%;
	z-index: 999;
}

	@media (max-width: 981px) {
		#page-top {
			bottom: 80px;
			right: 20px;
		}
	}

#page-top a {
    background-color: #f8b500;
    text-decoration: none;
    color: #fff;
    border-radius: 50%;
	padding: 15px;
    text-align: center;
    display: block;
}

#page-top a:hover {
	opacity: 1;
}

div #page-top {
    bottom: 85px;
}


/* --------------------------------------------

                    f-btn

--------------------------------------------*/

@media (min-width: 981px) {
	#f-btn {
		display: none;
	}
}

#f-btn {
    position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 10;
}

#f-btn li {
	float: left;
	width: 50%;
	text-align: center;
	font-weight: bold;
	height: 56px;
}

#f-btn a:first-of-type li {
	background: #f8b500;
	padding: 20px 0 0;
	height: 40px;
}

#f-btn a:last-of-type li {
	background: #eee;
	padding: 13px 0 0;
	height: 47px;
	font-size: 18px;
	line-height: 0.9;
}

#f-btn a:last-of-type li span:first-of-type {
	font-size: 27px;
	margin: 3px -20px 0 25px;
	float: left;
}

	@media (max-width: 320px) {
		#f-btn a:last-of-type li span:first-of-type {
			margin: 3px -12px 0 12px;
		}
	}

#f-btn a:last-of-type li span:last-of-type {
	font-weight: normal;
	font-size: 10px;
}


/* --------------------------------------------

                     nav

--------------------------------------------*/

#nav-back {
	background: #000;
	height: 88px;
}

	@media (max-width: 980px) {
		#nav-back {
			height: 69px;
		}
	}

.nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	color: #fff;
	background: rgba(0,0,0,0.9);
	z-index: 1000;
}

.nav .box {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

.nav .box h1 .logo {
	float: left;
}

	@media (max-width: 1200px) {
		.nav .box h1 .logo {
			margin-left: 10px;
		}
	}

.nav .box h1 .logo img {
	margin: 20px 0;
	width: 309px;
}

	@media (max-width: 320px) {
		.nav .box h1 .logo img {
			width: 222px !important;
		}
	}

	@media (max-width: 980px) {
		.nav .box h1 .logo img {
			margin: 15px 0;
			width: 262px;
		}
	}

@media (max-width: 980px) {
	.nav .box .pc {
		display: none;
	}
}

.nav .menu-list {
	position: relative;
	overflow: hidden;
	-webkit-transition: color 0.3s ease-out;
	transition: color 0.3s ease-out;
	display: inline-block;
	margin-left: 40px;
	font-size: 15px;
	line-height: 5.79;
	text-shadow: 0px 1px 3px rgba(0,0,0,0.9);
}

	@media (max-width: 1135px) {
		.nav .menu-list {
			margin-left: 15px;
		}
	}

.nav .menu-list a {
	display: block;
}

.nav .menu-list a::after {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	background-color: transparent;
	cursor: pointer;
}

.is-top .menu-list.menu-top {
	color: #f8b500;
	pointer-events: none;
}

.is-news .menu-list.menu-news,
.is-philosophy .menu-list.menu-philosophy,
.is-services .menu-list.menu-services,
.is-service .menu-list.menu-service,
.is-company .menu-list.menu-company,
.is-recruit .menu-list.menu-recruit {
	color: #f8b500;
}

.nav .menu-list::before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 40px;
	bottom: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	background-color: #f8b500;
	opacity: 0;
	-webkit-transition: opacity 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), height 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
	transition: opacity 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), height 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
	transition: opacity 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), height 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
	transition: opacity 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), height 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
}

.no-touchevents .menu-list:hover {
	color: #f8b500;
}

.no-touchevents .menu-list:hover::before {
	height: 5px;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

.is-top .menu-list.menu-top::before {
	height: 5px;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

.is-news .menu-list.menu-news::before,
.is-philosophy .menu-list.menu-philosophy::before,
.is-service .menu-list.menu-service::before,
.is-company .menu-list.menu-company::before,
.is-recruit .menu-list.menu-recruit::before,
.is-contact .menu-list.menu-contact::before,
.is-privacypolicy .menu-list.menu-privacypolicy::before {
	height: 5px;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

.nav .box ul {
	float: left;
	margin-left: 30px;
}

	@media (max-width: 980px) {
		.nav .box ul {
			float: none;
			margin-left: 0;
		}
	}

	@media (max-width: 1150px) {
		.nav .box ul {
			margin-left: 15px;
		}
	}

.nav .box a.contact ul {
	float: right;
	margin-left: 0;
} 

.nav .box a.contact ul li {
	font-size: 15px;
	background: #f8b500;
	color: #000;
	font-weight: bold;
	margin: 0;
	height: 54px;
	width: 160px;
	text-align: center;
	padding: 35px 0 0;
	border-right: none;
}


/* --------------------------------------------

                  ハンバーガー

--------------------------------------------*/

.nav .sp {
	background: #f8b500;
	height: 72px;
	width: 72px;
	float: right;
}

	@media (min-width: 981px) {
		.nav .sp {
			display: none;
		}
	}

#GlobalNavi {
	height:100%;
	position:fixed;
	top:0px;
	right:0px;
	-webkit-transform:translate3d(0,0,0);
	z-index:10000;
	-webkit-transition:all 170ms cubic-bezier(0.250, 0.250, 0.750, 0.750); 
	        transition:all 170ms cubic-bezier(0.250, 0.250, 0.750, 0.750); /* linear */
}

#GlobalNavi .none {
	opacity:0.15;
}

/* btn
---------------------*/
#GlobalNavi .btn {
	overflow:hidden;
	position:absolute;
	top: 23px;
	right: 22px;
	z-index:1000;
}

#GlobalNavi .btn.top {
	display:none;
}

#GlobalNavi .btn p {
	width:26px;
	height:26px;
	overflow:hidden;
	position:relative;
	text-indent:-9999px;
	cursor:pointer;
	-webkit-transition:all 300ms cubic-bezier(0.215, 0.610, 0.355, 1.000);
	        transition:all 300ms cubic-bezier(0.215, 0.610, 0.355, 1.000); /* easeOutCubic */
}

#GlobalNavi .btn p::before,
#GlobalNavi .btn p::after {
	display:block;
	content:'';
	position:absolute;
	background:#000;
	-webkit-transition:all 300ms cubic-bezier(0.215, 0.610, 0.355, 1.000);
	        transition:all 300ms cubic-bezier(0.215, 0.610, 0.355, 1.000); /* easeOutCubic */
}

#GlobalNavi .btn.top p::before,
#GlobalNavi .btn.top p::after {
	background:#FFFFFF;
}

#GlobalNavi .btn p::before {
	width:100%;
	height:2px;
	top:4px;
	
	-webkit-box-shadow:#000 0 7px 0;
	box-shadow:#000 0 7px 0;
	-webkit-transform-origin:left top;
	transform-origin:left top;
}

#GlobalNavi .btn.top p::before {
	-webkit-box-shadow:#FFFFFF 0 7px 0;
	box-shadow:#FFFFFF 0 7px 0;
}

#GlobalNavi .btn p::after {
	width:100%;
	height:2px;
	bottom:6px;
	
	-webkit-transform-origin:left bottom;
	transform-origin:left bottom;
}

/* hover */
#GlobalNavi.on .btn p {
	transform:rotate(90deg);
}

#GlobalNavi.on .btn p::before {
	background:#fff;
	-webkit-box-shadow:transparent 0 0 0;
	        box-shadow:transparent 0 0 0;
	-webkit-transform:rotate(45deg) translate3d(3px, -4px, 0);
		    transform:rotate(45deg) translate3d(3px, -4px, 0);		
}

#GlobalNavi.on .btn p::after {
	background:#fff;
	-webkit-transform:rotate(-45deg) translate3d(2px, 5px, 0);
			transform:rotate(-45deg) translate3d(2px, 5px, 0);
}

@media screen and (max-width:640px) { /* == device-width < 640 == */

	#GlobalNavi.on .btn.top p::before {
		-webkit-box-shadow:transparent 0 0 0;
	          box-shadow:transparent 0 0 0;
	}

}

/* menu
---------------------*/
#GlobalNavi div.menu {
	width:640px;
	height:100%;
	display:table;
	position:absolute;
	top:0;
	right:0;
	visibility:hidden;
	opacity:0;
	z-index:110;
	-webkit-transition:opacity 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
	        transition:opacity 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750); /* linear */
}

#GlobalNavi.on div.menu {
	visibility:visible;
	opacity:1;
}

#GlobalNavi div.menu div {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-color:#000;
}

#GlobalNavi div.menu ul {
	display:table-cell;
	vertical-align:middle;
}

#GlobalNavi div.menu ul li {
	padding:0 0;
	line-height: 1.4;
	text-align: right;
	letter-spacing:2px;
	font-size:21px;
	-webkit-transition:-webkit-transform 350ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
					transition:transform 350ms cubic-bezier(0.190, 1.000, 0.220, 1.000); /* easeOutExpo */
}

#GlobalNavi div.menu ul li a {
	display:inline-block;
	padding:10px 25px;
	color:#FFFFFF;
	text-decoration:none;
}

#GlobalNavi div.menu ul li a:hover {
	opacity:0.5 !important;
}


/* --------------------------------------------

         下層ページメイン画像 & パンくず

--------------------------------------------*/

#main-img {
	box-sizing: border-box;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 340px;
	position: relative;
	border-bottom: 15px solid #eee;
}

	@media (max-width: 680px) {
		#main-img {
			height: 230px;
		}
	}

.breadcrumb-news {
	background-image: url("../images/main_img/news.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-news {
			background-image: url("../images/main_img/news_small.jpg");
		}
	}

.breadcrumb-philosophy {
	background-image: url("../images/main_img/philosophy.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-philosophy {
			background-image: url("../images/main_img/philosophy_small.jpg");
		}
	}

.breadcrumb-company {
	background-image: url("../images/main_img/company.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-company {
			background-image: url("../images/main_img/company_small.jpg");
		}
	}

.breadcrumb-service {
	background-image: url("../images/main_img/service.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-service {
			background-image: url("../images/main_img/service_small.jpg");
		}
	}

.breadcrumb-company {
	background-image: url("../images/main_img/company.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-company {
			background-image: url("../images/main_img/company_small.jpg");
		}
	}

.breadcrumb-recruit {
	background-image: url("../images/main_img/recruit.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-recruit {
			background-image: url("../images/main_img/recruit_small.jpg");
		}
	}

.breadcrumb-contact {
	background-image: url("../images/main_img/contact.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-contact {
			background-image: url("../images/main_img/contact_small.jpg");
		}
	}

.breadcrumb-privacypolicy {
	background-image: url("../images/main_img/privacypolicy.jpg");
}

	@media (max-width: 414px) {
		.breadcrumb-privacypolicy {
			background-image: url("../images/main_img/privacypolicy_small.jpg");
		}
	}

#main-img div {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

#main-img div ul {
	position: absolute;
	bottom: 0;
	background: #eee;
	padding: 12px 20px;
	font-size: 12px;
	font-weight: bold;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
}

	@media (max-width: 1200px) {
		#main-img div ul {
			margin-left: 10px;
		}
	}

#main-img div ul li {
	float: left;
}

#main-img div ul a:first-of-type {
	color: #f39800;
}

#main-no-img {
	border-top: 15px solid #eee;
}

#main-no-img div {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	position: relative;
}

#main-no-img div ul {
	background: #eee;
	padding: 9.5px 20px;
	font-size: 12px;
	font-weight: bold;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	-webkit-border-bottom-left-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomleft: 10px;
	-moz-border-radius-bottomright: 10px;
	position: absolute;
	line-height: 1.4;
}

	@media (max-width: 1200px) {
		#main-no-img div ul {
			margin: 0 10px;
		}
	}

#main-no-img div ul li:first-of-type a {
	color: #f39800;
}

@media (min-width: 415px) {
	#main-no-img div ul br {
		display: none;
	}
}

#main-no-img div ul li {
	float: left;
}


/* --------------------------------------------

                   footer

--------------------------------------------*/

#footer {
	background: #000;
	overflow: hidden;
	padding: 30px 0 80px;
}

	@media (max-width: 981px) {
		#footer {
			padding: 30px 0 150px;
		}
	}

#footer div {
	max-width: 1200px;
	width: 100%;
	margin: 0px auto;
}

#footer div .logo {
	float: left;
	margin-right: 100px;
}

	@media (max-width: 1200px) {
		#footer div .logo {
			margin-left: 20px;
		}
	}

	@media (max-width: 680px) {
		#footer div .logo {
			float: none;
			margin-right: 0;
		}
	}

#footer div .logo img {
	width: 309px; 
}

#footer div ul {
	color: #fff;
	padding-top: 10px;
	font-size: 15px;
	overflow: hidden;
}

	@media (max-width: 1200px) {
		#footer div ul {
			line-height: 1.8;
		}
	}

	@media (max-width: 840px) {
		#footer div ul {
			font-size: 12px;
			margin: 10px 0 10px 0;
			line-height: 1.8;
			overflow: hidden;
		}
	}

	@media (max-width: 680px) {
		#footer div ul {
			margin-left: 20px;
		}
	}

#footer div ul li {
	float: left;
	border-right: 1px solid #5d5d5d;
	padding-right: 20px;
	margin-right: 20px;
}

#footer div ul li:last-of-type {
	border-right: none;
	padding-right: 0;
	margin-right: 0;
}

#footer div address {
	color: #fff;
	margin-top: 80px;
	font-size: 12px;
}

	@media (max-width: 680px) {
		#footer div address {
			margin-top: 60px;
			text-align: center;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　　index.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

/* --------------------------------------------

                   loading

--------------------------------------------*/

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #eee;
    z-index: 10000;
}

#loading {
    position: absolute;
    left: 0;
	right: 0;
    top: 39%;
	width: 64px;
	margin: 0 auto;
}

	@media (max-width: 414px) {
		#loading {
			top: 30%;
			width: 32px;
		}
	}

.load-box .loader {
  color: #f8b500;
  font-size: 15px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

	@media (max-width: 414px) {
		.load-box .loader {
			font-size: 10px;
		}
	}

@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}


/* --------------------------------------------

                     h3

--------------------------------------------*/

.is-top h3 {
	font-size: 48px !important;
	font-weight: bold !important;
	text-align: center;
	line-height: 0.7 !important;
	padding: 60px 0 !important;
	letter-spacing: 2px;
}

	@media (max-width: 414px) {
		.is-top h3 {
			padding: 40px 0 !important;
		}
	}

	@media (max-width: 680px) {
		.is-top h3 {
			font-size: 36px !important;
		}
	}

.is-top h3 p:nth-of-type(2) {
	font-size: 24px;
	font-weight: normal;
	margin-top: 19px;
}

	@media (max-width: 680px) {
		.is-top h3 p:nth-of-type(2) {
			font-size: 18px;
			margin-top: 13px;
		}
	}

.is-top #services h3 {
	padding: 90px 0 60px !important;
}

	@media (max-width: 680px) {
		.is-top #services h3 {
			padding: 60px 0 30px !important;
		}
	}

.is-top #services #bna-box {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto 47px;
	overflow: hidden;
}

	@media (max-width: 1200px) {
		.is-top #services #bna-box {
			max-width: 594px;
		}
	}

	@media (max-width: 594px) {
		.is-top #services #bna-box {
			max-width: 292px;
		}
	}

.is-top #services #bna-box li {
	float: left;
	margin-right: 10px;
}

.is-top #services #bna-box li:last-of-type {
	margin-right: 0;
}

	@media (max-width: 1200px) {
		.is-top #services #bna-box li:last-of-type,
		.is-top #services #bna-box li:nth-of-type(2) {
			margin-right: 0;
		}
	}

@media (max-width: 1200px) {
	.is-top #services #bna-box li:first-of-type,
	.is-top #services #bna-box li:nth-of-type(2) {
		margin-bottom: 10px;
	}
}

@media (max-width: 594px) {
	.is-top #services #bna-box li:nth-of-type(3) {
		margin-bottom: 10px;
	}
}

.is-top #services #bna-box li img {
	width: 292px;
}

.is-top .home-news h3 {
	padding: 60px 0 50px !important;
	text-align: left;
}

	@media (max-width: 414px) {
		.is-top .home-news h3 {
			text-align: center;
		}
	}

.is-top .home-philosophy h3 {
	padding: 90px 0 10px !important;
}

	@media (max-width: 680px) {
		.is-top .home-philosophy h3 {
			padding: 40px 0 10px !important;
		}
	}

.is-top .home-company h3 {
	padding: 50px 0 10px !important;
}

	@media (max-width: 680px) {
		.is-top .home-company h3 {
			padding: 30px 0 10px !important;
		}
	}

.is-top .home-news h3 span {
	font-size: 24px;
	font-weight: normal;
	margin-left: 10px;
}

.is-top .home-content h3 div,
.is-top .home-company h3 div,
h3 div,
h2 div {
	height: 6px;
	width: 120px;
	background: #f8b500;
	margin: 20px auto 0;
}

.is-top .home-company h3 div {
	background: #fff;
}


/* --------------------------------------------

                  services

--------------------------------------------*/

#services {
	background: #eee;
	padding-bottom: 100px;
	z-index: 10;
	position: relative;
}

#services .all-width {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

@media (max-width: 1200px) {
	.tab_content .wrap {
		width: 940px;
		margin: 0 auto;
	}
}

@media (max-width: 950px) {
	.tab_content .wrap {
		width: 780px;
		margin: 0 auto;
	}
}

.tab_content .wrap {
	position: relative;
	/* overflow: hidden; */
	/* height: 350px; */
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-evenly; */
}

	@media (max-width: 950px) {
		.tab_content .wrap {
			/* height: 270px; */
		}
	}

	@media (max-width: 1200px) {
		.tab_content .wrap {
			/* height: 305px; */
		}
	}

@media (max-width: 780px) {
	.tab_content .pc {
		display: none;
	}
}

.tab_content .wrap .box {
	/* position: absolute; */
	/* left: 0px; */
	/* top: 0px; */
	margin: 10px;
}

.tab_content .wrap .box:nth-of-type(1) {
	/* transform: translate3d(0px, 0px, 0px); */
}

.tab_content .wrap .box:nth-of-type(2) {
	/* transform: translate3d(302px, 0px, 0px); */
}

	@media (max-width: 1200px) {
		.tab_content .wrap .box:nth-of-type(2) {
			/* transform: translate3d(236px, 0px, 0px); */
			/* width: 230px !important; */
		}
	}

	@media (max-width: 950px) {
		.tab_content .wrap .box:nth-of-type(2) {
			/* transform: translate3d(196px, 0px, 0px); */
			/* width: 190px !important; */
		}
	}

.tab_content .wrap .box:nth-of-type(3) {
	/* transform: translate3d(604px, 0px, 0px); */
}

	@media (max-width: 1200px) {
		.tab_content .wrap .box:nth-of-type(3) {
			/* transform: translate3d(473px, 0px, 0px); */
			/* width: 230px !important; */
		}
	}

	@media (max-width: 950px) {
		.tab_content .wrap .box:nth-of-type(3) {
			/* transform: translate3d(393px, 0px, 0px); */
			/* width: 190px !important; */
		}
	}

.tab_content .wrap .box:nth-of-type(4) {
	/* transform: translate3d(906px, 0px, 0px); */
}

	@media (max-width: 1200px) {
		.tab_content .wrap .box:nth-of-type(4) {
			/* transform: translate3d(709px, 0px, 0px); */
			/* width: 230px !important; */
		}
	}

	@media (max-width: 950px) {
		.tab_content .wrap .box:nth-of-type(4) {
			/* transform: translate3d(589px, 0px, 0px); */
			/* width: 190px !important; */
		}
	}

.photoBox1 {
	border-width:0;
	border-color: rgba(0,0,0,0.3);
	border-style: solid;
	border-radius: 50%;
}

	@media (max-width: 1200px) {
		.photoBox1 {
			/* background-size: 230px auto; */
			/* width: 230px !important; */
			/* height: 230px !important; */
		}
	}

	@media (max-width: 950px) {
		.photoBox1 {
			background-size: 190px auto !important;
			width: 190px !important;
			height: 190px !important;
		}
	}

.photoBox2 {
	display:block;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	
	background-position:50% 50% !important;
	background-repeat:no-repeat !important;
	background-size:227px;
	
	border-color: rgba(0,0,0,0.5);
	border-style: solid;
	border-radius: 50%;
	
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
	
	border-width: 145px;
	background-size: 290px auto;
	width: 290px;
	height: 290px;
}

	@media (max-width: 1200px) {
		.photoBox2 {
			/* border-width: 115px; */
			/* background-size: 230px auto !important; */
			/* width: 230px !important; */
			/* height: 230px !important; */
		}
	}

	@media (max-width: 950px) {
		.photoBox2 {
			border-width: 95px;
			background-size: 190px auto !important;
			width: 190px !important;
			height: 190px !important;
		}
	}

.photoBox2:hover {
	background:url(../images/bg_works_mover.png) !important;
	background-position:50% 50% !important;
	background-repeat:no-repeat !important;
	background-size:227px;
	
	/* Some defaults for borders */
	border-color: rgba(0,0,0,0.4);
	/* The transition from normal > :hover */
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	transition-duration: 0.5s;
	border-width: 1px !important;
}

.tab_content .wrap .txt {
	margin-top: 22px;
	text-align: center;
}

.tab_content .wrap .txt p {
	font-size: 15px;
	font-weight: bold;
	text-transform: uppercase;
	margin: 0px 20px 0 20px;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
	line-height: 1.4;
}

	@media (max-width: 1200px) {
		.tab_content .wrap .txt p {
			font-size: 12px;
		}
	}


/* -- sp -- */

@media (min-width: 781px) {
	
	.tab_content .sp {
		display: none;
	}

}

@media (max-width: 780px) {
	
	.tab_content .sp {
		max-width: 615px;
		width: 100%;
		margin: 0 auto;
	}
	
	#service-in .tab_content .sp {
		max-width: 414px;
	}
	
	.tab_content .sp a {
		display: block;
		width: 287px;
		float: left;
		margin: 0 10px 10px;
	}
	
	.tab_content .sp a {
		display: block;
		width: 287px;
		float: left;
		margin: 0 10px 10px;
	}
	
	.tab_content .sp a .img {
		border-radius: 50%;
		background-size: 287px !important;
	}
	
	.tab_content .sp a .txt1 {
		height: 172px;
		padding-top: 115px;
	}
	
	.tab_content .sp a .txt2 {
		height: 182px;
		padding-top: 105px;
	}
	
	.creative a:nth-of-type(1) .img {
		background: url(../images/service/service_01.jpg) no-repeat;
	}
	
	.creative a:nth-of-type(2) .img {
		background: url(../images/service/service_02.jpg) no-repeat;
	}
	
	.creative a:nth-of-type(3) .img {
		background: url(../images/service/service_03.jpg) no-repeat;
	}
	
	.creative a:nth-of-type(4) .img {
		background: url(../images/service/service_04.jpg) no-repeat;
	}
	
	.system a:nth-of-type(1) .img {
		background: url(../images/service/service_05.jpg) no-repeat;
	}
	
	.system a:nth-of-type(2) .img {
		background: url(../images/service/service_06.jpg) no-repeat;
	}
	
	.system a:nth-of-type(3) .img {
		background: url(../images/service/service_07.jpg) no-repeat;
	}
	
	.media a:nth-of-type(1) .img {
		background: url(../images/service/media_01.jpg) no-repeat;
	}
	
	.media a:nth-of-type(2) .img {
		background: url(../images/service/media_02.jpg) no-repeat;
	}
	
	.media a:nth-of-type(3) .img {
		background: url(../images/service/media_03.jpg) no-repeat;
	}
	
	.media a:nth-of-type(4) .img {
		background: url(../images/service/media_06.jpg) no-repeat;
	}
	
	.media a:nth-of-type(5) .img {
		background: url(../images/service/media_06.jpg) no-repeat;
	}
	
	.media a:nth-of-type(6) .img {
		background: url(../images/service/media_06.jpg) no-repeat;
	}
	
	.beauty a:nth-of-type(1) .img {
		background: url(../images/service/service_08.jpg) no-repeat;
	}
	
	.beauty a:nth-of-type(2) .img {
		background: url(../images/service/service_14.jpg) no-repeat;
	}
	
	.beauty a:nth-of-type(3) .img {
		background: url(../images/service/service_20.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(1) .img {
		background: url(../images/service/service_10.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(2) .img {
		background: url(../images/service/service_15.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(3) .img {
		background: url(../images/service/service_17.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(4) .img {
		background: url(../images/service/service_18.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(5) .img {
		background: url(../images/service/service_18.jpg) no-repeat;
	}
	
	.foodanddrink a:nth-of-type(6) .img {
		background: url(../images/service/service_19.jpg) no-repeat;
	}
	
	.bridal a:nth-of-type(1) .img {
		background: url(../images/service/service_12.jpg) no-repeat;
	}
		
	.nursing a:nth-of-type(1) .img {
		background: url(../images/service/service_13.jpg) no-repeat;
	}
		
	.tab_content .sp a .img p {
		text-align: center;
		padding: 17px 0;
		background: #eee;
		line-height: 1.4;
		font-size: 15px;
		padding-left: 15px;
	}
	
	.tab_content .sp a .img p span {
		background: url(../images/arrow.png) no-repeat;
		background-size: 10px;
		width: 10px;
		height: 13px;
		float: right;
		margin: 5px 5px 0 0;
	}
	
	.tab_content .sp a .txt1 p span {
		margin: 5px 5px 0 0;
	}
	
	.tab_content .sp a .txt2 p span {
		margin: -5px 5px 0 0;
	}

}

@media (max-width: 650px) {
	.tab_content .sp {
		max-width: 307px;
	}
}


/* --------------------------------------------

                    news

--------------------------------------------*/

.home-news {
	position: relative;
	background: #eee;
	z-index: 10;
}

.home-news-body {
	background-color: #ffffff;
}

.home-news-body-content {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 0%;
	padding-bottom: 8%;
	position: relative;
	z-index: 10;
}

	@media (min-width: 480px) {
		
		.home-news-body-content {
			padding-left: 8.33333%;
			padding-right: 8.33333%;
		}
		
	}

	@media (min-width: 980px) {
		
		.home-news-body-content {
			padding-left: 16.66667%;
			padding-right: 16.66667%;
		}
		
		.home-news-body-content a {
			display: inline-block;
		}
		
	}

.home-news-body-content .news-list {
	margin-bottom: 2.3rem;
}

.home-news-title {
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 1.15;
	font-weight: 100;
	color: #000000;
	text-align: center;
}

	@media (min-width: 680px) {
		.home-news-title {
			font-size: 2.1rem;
		}
	}

	@media (min-width: 980px) {
		.home-news-title {
			font-size: 2.5rem;
			margin-left: -10%;
			text-align: left;
		}
	}

.home-news-visual {
	background-color: #f8f8f8;
}

	@media (min-width: 980px) {
		.home-news-visual {
			position: absolute;
			left: 50%;
			top: 0;
			bottom: 0;
		}
	}

.home-news-visual-inner {
	padding-top: 41.66667%;
	box-sizing: border-box;
	background-image: url("../images/img_news_small.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

	@media (min-width: 680px) {
		.home-news-visual-inner {
			padding-top: 31.25%;
		}
	}

	@media (min-width: 980px) {
		.home-news-visual-inner {
			padding-top: 0;
			background-image: url("../images/img_news.jpg");
		}
	}

	@media (min-width: 1960px) {
		.home-news-visual-inner {
			background-image: url("../images/img_news.jpg");
			background-position: right center;
		}
	}

.news-list-date {
	margin-right: 0.5rem;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0.05em;
	color: #000000;
}

.news-list-tag {
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0.05em;
	/*text-transform: uppercase;*/
}

.news-list-text {
	margin-top: 0.7rem;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
}

.NewsDetail {
	background-color: #f8f8f8;
}

.NewsDetail:before, .NewsDetail:after {
	content: " ";
	display: table;
}

.NewsDetail:after {
	clear: both;
}

.NewsDetail-inner {
	margin-top: 40px;
}

.NewsDetail-body {
	border-bottom: 1px #999999 dashed;
}

.NewsDetail-footer {
	margin-top: 30px;
	margin-bottom: 40px;
}

.NewsDetail-bottom {
	margin-top: 40px;
	margin-bottom: 40px;
	text-align: center;
}

.news-list-item {
	padding-top: 1.2rem;
	padding-bottom: 0.8rem;
	border-bottom: 1px #ddd solid;
}

.news-list-item:first-of-type {
	padding-top: 0;
}

.news-list-item a {
	display: block;
}

.no-touchevents .news-list-item:hover .news-list-text {
	text-decoration: underline;
}


/* --------------------------------------------

                 philosophy

--------------------------------------------*/

.home-philosophy {
	position: relative;
	background-color: #eee;
	color: #000;
	z-index: 10;
}

.home-philosophy-body {
	background-color: #eee;
}

.home-philosophy-body-content {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 8.3%;
	padding-bottom: 17%;
}

	@media (min-width: 480px) {
		.home-philosophy-body-content {
			padding-left: 8.33333%;
			padding-right: 8.33333%;
		}
	}

	@media (min-width: 980px) {
		.home-philosophy-body-content {
			padding-left: 16.66667%;
			padding-right: 16.66667%;
		}
	}

.home-philosophy-title {
	margin-bottom: 0.75rem;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 1.15;
	font-weight: 100;
	text-align: center;
}

	@media (min-width: 980px) {
		.home-philosophy-title {
			font-size: 2.5rem;
			margin-bottom: 1.25rem;
		}
	}

.home-philosophy-title br {
	display: none;
}

	@media (min-width: 980px) {
		.home-philosophy-title br {
			display: inline;
		}
	}

.home-philosophy-summary {
	margin-bottom: 1rem;
	line-height: 1.6;
	font-weight: 400;
	text-align: center;
}

	@media (max-width: 680px) {
		.home-philosophy-summary {
			font-size: 15px;
		}
	}

	@media (min-width: 980px) {
		.home-philosophy-summary {
			margin-bottom: 1.8rem;
		}
	}

	@media (min-width: 1600px) {
		.home-philosophy-summary {
			font-size: 18px;
			line-height: 1.6;
		}
	}

.home-philosophy-summary-inner {
	display: inline-block;
}

.home-philosophy-visual-inner {
	background-image: url("../images/img_philosophy.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 41.66667%;
	box-sizing: border-box;
}

	@media (max-width: 414px) {
		.home-philosophy-visual-inner {
			background-image: url("../images/img_philosophy_small.jpg");
		}
	}

	@media (min-width: 980px) {
		.home-philosophy-visual-inner {
			padding-top: 0;
		}
	}

.home-philosophy-visual-inner img {
	display: none;
}


/* --------------------------------------------

                   company

--------------------------------------------*/

.home-company {
	position: relative;
	background-color: #ffffff;
	color: #ffffff;
	z-index: 10;

}

.home-company-body {
	max-width: 1960px;
	margin-left: auto;
	margin-right: auto;
	background-color: #000;
}

	.home-company-body {
		background-image: url("../images/img_company.jpg");
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}

		@media (max-width: 414px) {
			.home-company-body {
				background-image: url("../images/img_company_small.jpg");
			}
		}

.home-company-body-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0, 0, 0, 0.5);
}

.home-company-body-content {
	position: relative;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 8.33333%;
	padding-bottom: 10%;
}

	@media (min-width: 480px) {
		.home-company-body-content {
			padding-left: 8.33333%;
			padding-right: 8.33333%;
		}
	}

	@media (min-width: 680px) {
		.home-company-body-content {
			color: #ffffff;
		}
	}

	@media (min-width: 980px) {
		.home-company-body-content {
			padding-left: 33.33333%;
			padding-right: 33.33333%;
		}
	}

.home-company-body-content .symbol_mark {
	width: 170px;
	margin: 0 auto;
}

	@media (max-width: 680px) {
		.home-company-body-content .symbol_mark {
			width: 127px;
		}
	}

@media (max-width: 680px) {
	.home-company-body-content .symbol_mark img {
		width: 127px;
	}
}

.home-company-title {
	margin-bottom: 0.75rem;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 1.15;
	font-weight: 100;
	text-align: center;
}

	@media (min-width: 680px) {
		.home-company-title {
			font-size: 2.1rem;
			text-shadow: 0 0 15px #000;
		}
	}

	@media (min-width: 980px) {
		.home-company-title {
			font-size: 2.5rem;
			margin-bottom: 1.25rem;
		}
	}
	
.home-company-summary {
	margin-bottom: 1rem;
	line-height: 1.6 !important;
	font-weight: 400;
	text-align: center;
}

	@media (min-width: 680px) {
		.home-company-summary {
			font-size: 15px;
			text-shadow: 0 0 15px #000;
		}
	}

	@media (min-width: 980px) {
		.home-company-summary {
			margin-bottom: 2.2rem;
		}
	}

	@media (min-width: 1600px) {
		.home-company-summary {
			font-size: 18px;
			line-height: 1.6;
		}
	}

.home-company .home-company-summary-inner {
	display: inline-block;
}

.home-company-more {
	text-align: center;
}

.home-company-visual-inner img {
	display: none;
}

@media (min-width: 980px) {
	
	.home-philosophy-more {
		text-align: left;
	}
	
	.home-philosophy-visual {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
	}
	
	.home-content {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}
	
	.home-content.home-philosophy {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	
	.home-content-block.block-left {
		width: 50%;
	}
	
	.home-content-block.block-right {
		width: 50%;
	}
	
	.home-content-block-inner {
		height: 100%;
		max-width: 980px;
	}
	
}

@media (min-width: 680px) {
	.home-company-visual {
		display: none;
	}
}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　　 news.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#wrapper {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
}

#wrapper .news-list {
	margin-bottom: 90px
}

	@media (max-width: 1140px) {
		#wrapper .news-list {
			margin: 0 10px 30px;
		}
	}

.pager {
    overflow: hidden;
	margin-bottom: 90px;
	font-weight: bold;
}

	@media (max-width: 1140px) {
		.pager {
			margin-bottom: 60px;
		}
	}
 
.pager ul {
    list-style: none;
    position: relative;
    left: 50%;
    float: left;
}
 
.pager ul li {
    margin: 0 1px;
    position: relative;
    left: -50%;
    float: left;
}

.pager ul li.current {
	color: #f8b500;
}
 
.pager ul li span,
.pager ul li a {
    display: block;
    font-size: 16px;
    padding: 0.6em 1em;
    border-radius: 10px;
}

	@media (max-width: 414px) {
		.pager ul li span,
		.pager ul li a {
			font-size: 14px;
    		padding: 0.6em;
		}
	}

.pager ul li:first-of-type a {
	font-weight: normal;
    border: 1px solid #000;
	margin-right: 10px;
}

.pager ul li:last-of-type a {
	font-weight: normal;
    border: 1px solid #000;
	margin-left: 10px;
}
 
.pager ul li a:hover {
    background: #f8b500;
	opacity: 1;
}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　  news_detail.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#news_detail-list {
	max-width: 1140px;
	width: 100%;
	margin: 96px auto 60px;
}

	@media (max-width: 1140px) {
		#news_detail-list {
			width: auto;
			margin: 96px 20px 60px;
		}
	}

	@media (max-width: 414px) {
		#news_detail-list {
			width: auto;
			margin: 66px 20px 30px;
		}
	}

#news_detail-contents {
	background: #eee;
}

#news_detail-contents p {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 0;
	line-height: 2;
}

	@media (max-width: 1140px) {
		#news_detail-contents p {
			width: auto;
			margin: 0 20px;
		}
	}

	@media (max-width: 414px) {
		#news_detail-contents p {
			width: auto;
			margin: 0 20px;
			padding: 30px 0;
		}
	}

#news_detail-btn {
	max-width: 187px;
	width: 100%;
	margin: 60px auto 90px;
}

	@media (max-width: 414px) {
		#news_detail-btn {
			margin: 40px auto 60px;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　    company.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#origin .txt {
	background: #eee;
	font-size: 16px;
	line-height: 1.6;
	padding: 40px 0 60px;
}

	@media (max-width: 1140px) {
		#origin .txt {
			padding: 20px 20px 40px;
		}
	}

#origin .txt p {
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
}

#origin .txt p strong {
	font-size: 23px;
	font-weight: bold;
}

	@media (max-width: 414px) {
		#origin .txt p strong {
			font-size: 20px;
		}
	}

.loop_img {
	background: url(../images/company/img.jpg) repeat-x 0 0;
	background-size: contain;
	width: 100%;
	height: 222px;
	overflow: hidden;
	-moz-animation: loop 26s linear infinite;
	animation: loop 26s linear infinite;
	margin: 45px 0 90px;
}

	@media (max-width: 680px) {
		.loop_img {
			background: url(../images/company/img_sp.jpg) repeat-x 0 0;
			background-size: contain;
			width: 100%;
			height: 145px;
			overflow: hidden;
			-moz-animation: loop 26s linear infinite;
			animation: loop 26s linear infinite;
			margin: 0 0 60px;
		}
	}

@keyframes loop {
	0% {
		background-position: 0 0;
	}

	100% {
		background-position: -1258px 0;
	}
}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　philosophy.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#wrapper {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
}

#wrapper #philosophy h3 {
	background: #eee;
	padding: 20px 0;
	font-size: 28px;
	text-align: center;
}

	@media (max-width: 414px) {
		#wrapper #philosophy h3 {
			padding: 14px 0;
			font-size: 22px;
		}
	}

#wrapper #philosophy .box {
	overflow: hidden;
}

#wrapper #philosophy .box .vertical {
	max-width: 540px;
	width: 100%;
	float: left;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .box .vertical {
			max-width: none;
			width: auto;
			float: none;
			margin: 0 10px;
		}
	}

#wrapper #philosophy .box .vertical:last-of-type {
	float: right;
}

@media (max-width: 1140px) {
	#wrapper #philosophy .box .vertical figure {
		max-width: 540px;
		width: 100%;
		margin: 0 auto;
	}
}

#wrapper #philosophy .box .vertical figure img {
	max-width: 540px;
	width: 100%;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .box .vertical figure img {
			margin-bottom: 40px;
		}
	}

#wrapper #philosophy .box .vertical p {
	padding: 20px 10px;
	line-height: 2;
	height: 320px;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .box .vertical p {
			height: auto;
		}
	}

#wrapper #philosophy .side {
	overflow: hidden;
	margin-top: 60px;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .side {
			margin: 0 10px;
		}
	}

#wrapper #philosophy .side figure {
	float: left;
	margin: 30px 30px 120px 0;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .side figure {
			float: none;
			margin: 20px auto;
			max-width: 540px;
		}
	}

#wrapper #philosophy .side p {
	line-height: 2;
	margin: 115px 10px 0 0;
}

	@media (max-width: 1140px) {
		#wrapper #philosophy .side p {
			margin: 0 0 40px;
		}
	}

#wrapper #philosophy .side figure img {
	max-width: 525px;
	width: 100%;
}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　 privacypolicy.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#privacypolicy h2 {
	padding: 81px 0 60px !important;
}

	@media (max-width: 414px) {
		#privacypolicy h2 {
			padding: 81px 0 40px !important;
		}
	}

#privacypolicy .contents {
	background: #eee;
}

#privacypolicy .contents p {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 0;
	line-height: 2;
	font-size: 19px;
}

	@media (max-width: 1140px) {
		#privacypolicy .contents p {
			margin: 0 10px;
		}
	}

	@media (max-width: 414px) {
		#privacypolicy .contents p {
			width: auto;
			margin: 0 20px;
			padding: 30px 0;
			font-size: 16px;
		}
	}

#privacypolicy .txt {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 0 120px;
	line-height: 2;
}

	@media (max-width: 1140px) {
		#privacypolicy .txt {
			margin: 0 10px;
		}
	}

	@media (max-width: 414px) {
		#privacypolicy .txt {
			width: auto;
			margin: 0 20px;
			padding: 30px 0 60px;
		}
	}

#privacypolicy .txt strong {
	font-size: 22px;
	font-weight: bold;
}

	@media (max-width: 414px) {
		#privacypolicy .txt strong {
			font-size: 19px;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　    recruit.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

.recruit {
	margin-bottom: 45px;
}

	@media (max-width: 1140px) {
		.recruit {
			margin-bottom: 25px;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　service.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#service #wrapper {
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
}

	@media (max-width: 1080px) {
		#service #wrapper {
			max-width: 540px;
		}
	}

	@media (max-width: 540px) {
		#service #wrapper {
			max-width: 270px;
		}
	}

#service {
	overflow: hidden;
}

#service .box {
	float: left;
	line-height: 0;
}

#service .box:last-of-type {
	margin-bottom: 60px;
}

#service .box div {
	position: relative;
	text-align: center;
	width: 270px;
	height: 270px;
	float: left;
	transition: all 1s cubic-bezier(0.19,1,.22,1);
}

#service .box div:hover {
	background: #333;
	color: #fff;
}

#service .box div.fr {
	float: right;
}

#service .box div h3 {
	line-height: 1.4;
}

#service .txt1 div h3 {
	margin-top: 90px;
}

#service .txt2 div h3 {
	margin-top: 80px;
}

#service .txt3 div h3 {
	margin-top: 60px;
}

#service .box div p {
	font-size: 13px;
	color: #f39800;
	margin-top: 17px;
}

#service .box div a {
	display: block;
	position: absolute;
	bottom: 40px;
	left: 0;
	right: 0;
}

#service .box div a ul {
	display: inline-block;
}

#service .box div a ul li {
	font-size: 13px;
	border: 1px solid #000;
	padding: 17px 18px;
}

	@media (max-width: 414px) {
		#service .box div a ul li {
			padding: 17px 18px;
		}
	}

#service .box div:hover a ul li {
	border: 1px solid #fff;
}

#service .box img {
	width: 270px;
	height: 270px;
}

#service .img img {
	float: left;
}

#service .btn {
	display: block;
	width: 237px;
	margin: 0 auto 120px;
}

	@media (max-width: 414px) {
		#service .btn {
			margin: 0 auto 90px;
		}
	}

#service .btn ul {
	display: inline-block;
}

#service .btn ul li {
	background: #f8b500;
	padding: 30px 80px;
	font-weight: bold;
}

	@media (max-width: 414px) {
		#service .btn ul li {
			padding: 20px 80px;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　service-in.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#service-in h2 {
	padding: 120px 0 60px !important;
	line-height: 1.2 !important;
}

	@media (max-width: 414px) {
		#service-in h2 {
			padding: 100px 0 40px !important;
			line-height: none !important;
		}
	}

#service-in h2 p {
	font-size: 25px;
	margin: 0 20px;
}

	@media (max-width: 414px) {
		#service-in h2 p {
			font-size: 19px;
			margin: 0 10px;
			line-height: 1.4;
		}
	}

@media (min-width: 415px) {
	#service-in h2 p br {
		display: none;
	}
}

#service-in h2 div {
	margin: 28px auto 0 !important;
}

	@media (max-width: 414px) {
		#service-in h2 div {
			margin: 19px auto 0 !important;
		}
	}

#service-in img {
	width: 100%;
	line-height: 0;
}

#service-in .c-txtsp img {
	margin-top: 57px;
}

	@media (max-width: 414px) {
		#service-in .c-txtsp img {
			margin-top: 27px;
		}
	}

#service-in .c-txtsp .txt {
	width: 100%;
	margin: 60px auto 0 !important;
}

	@media (max-width: 414px) {
		#service-in .c-txtsp .txt {
			margin: 30px auto 0 !important;
		}
	}

#service-in .c-txtsp .txt div {
	font-size: 25px;
	line-height: 2;
	border: 18px solid #eee;
	padding: 20px 30px;
}

	@media (max-width: 414px) {
		#service-in .c-txtsp .txt div {
			font-size: 16px;
			line-height: 1.6;
			border: 12px solid #eee;
			padding: 10px 15px;
		}
	}

#service-in .c-txtsp .txt div p {
	font-size: 34px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}

	@media (max-width: 414px) {
		#service-in .c-txtsp .txt div p {
			font-size: 25px;
		}
	}

#service-in .c-txtsp .txt span {
	font-size: 22px;
}

	@media (max-width: 414px) {
		#service-in .c-txtsp .txt span {
			font-size: 13px;
		}
	}

#service-in .img04 {
	max-width: 1089px;
	width: 100%;
	margin: 60px auto 40px;
}

#service-in .img04_small {
	margin: 60px 0;
}

#service-in .img04_small p:first-of-type {
	text-align: center;
	margin-bottom: 30px;
}

#service-in .img04_small p:last-of-type {
	max-width: 253px;
	width: 100%;
	margin: 0 auto;
}

#service-in .img04_small p:last-of-type img {
	margin-bottom: 20px;
}

#service-in .img04_small p:last-of-type img:last-of-type {
	margin-bottom: 0;
}

#service-in .txt {
	max-width: 1140px;
	width: 100%;
	margin: 54px auto 90px;
	line-height: 2;
}

	@media (max-width: 1140px) {
		#service-in .txt {
			width: auto;
			margin: 54px 20px 90px !important;
		}
	}

	@media (max-width: 780px) {
		#service-in .txt {
			max-width: 414px;
		}
	}

	@media (max-width: 414px) {
		#service-in .txt {
			width: auto;
			margin: 23px 20px 0 !important;
			line-height: 1.6;
		}
	}

#service-in .txt strong {
	font-size: 22px;
	font-weight: bold;
}

	@media (max-width: 414px) {
		#service-in .txt strong {
			font-size: 19px;
		}
	}

#service-in-list {
	max-width: 1140px;
	width: 100%;
	margin: 96px auto 60px;
}

	@media (max-width: 1140px) {
		#service-in-list {
			width: auto;
			margin: 96px 20px 60px;
		}
	}

	@media (max-width: 414px) {
		#service-in-list {
			width: auto;
			margin: 66px 20px 30px;
		}
	}

#service-in-contents {
	background: #eee;
}

#service-in-contents p {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 0;
	font-size: 19px;
	line-height: 1.6;
}

	@media (max-width: 1140px) {
		#service-in-contents p {
			width: auto;
			margin: 0 20px;
		}
	}

	@media (max-width: 414px) {
		#service-in-contents p {
			width: auto;
			margin: 0 20px;
			padding: 30px 0 25px;
			font-size: 16px;
		}
	}

@media (max-width: 414px) {
	#service-in-contents p.pc {
		display: none;
	}
}

@media (min-width: 415px) {
	#service-in-contents p.sp {
		display: none;
	}
}

@media (max-width: 414px) {
	.txt .pc {
		display: none;
	}
}

@media (min-width: 415px) {
	.txt .sp {
		display: none;
	}
}

#service-in-contents p .img_hp {
	max-width: 555px;
	width: 100%;
	margin-top: 55px;
	margin-right: 15px;
}

#service-in-contents p .img_hp:last-of-type {
	margin-right: 0;
}

	@media (max-width: 414px) {
		#service-in-contents p .img_hp {
			margin-top: 25px;
			margin-right: 0;
		}
	}

#service-in-btn {
	max-width: 187px;
	width: 100%;
	margin: 60px auto;
}

	@media (max-width: 414px) {
		#service-in-btn {
			margin: 30px auto 60px;
		}
	}

#service-in .all-width {
	max-width: 1200px;
	width: 100%;
	margin: 50px auto 0;
}

#service-in .all-width .img {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　contact.html

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

#contact h2 {
	padding: 70px 0 !important;
}

	@media (max-width: 414px) {
		#contact h2 {
			padding: 70px 0 40px !important;
		}
	}


/* -------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

              		　　　　　　　　　　　   form

----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------*/

.contact-box {
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
}

.contact-box .check {
	margin: 40px 0;
}

.contact-box .check p {
	margin: 20px 0;
	color: #f00;
}

.contact-box dt {
	background: #fff;
	color: #000;
	font-size: 16px;
	padding: 40px 0 10px;
}

	@media (max-width: 1140px) {
		.contact-box dt, .contact-box dd {
			margin: 0 10px;
		}
	}

.contact-box dt:first-of-type {
	padding: 60px 0 10px;
}

.contact-box dt span {
	color: #f00;
}

.contact-box dd select {
	display: block;
	width: 100%;
	padding: 15px;
}

	@media (max-width: 1140px) {
		.contact-box dd select {
			width: 95%;
			margin: 0 10px;
		}
	}

.contact-box dd input {
	display: block;
	width: 97%;
	padding: 15px;
}

	@media (max-width: 1140px) {
		.contact-box dd input {
			width: 85%;
			margin: 0 10px;
		}
	}

.contact-box dd textarea.input-usually {
	width: 99%;
}

	@media (max-width: 1140px) {
		.contact-box dd textarea.input-usually {
			width: 91%;
			margin: 0 10px;
		}
	}

.contact-box .btn {
	width: 280px;
	margin: 50px auto 120px;
}

form .submit {
	width: 100%;
	padding: 20px;
	background-color: #f8b500;
	border: 1px solid #f8b500; 
	color: #000;
	font-weight: bold;
	letter-spacing: 4px;
	transition: all 1s cubic-bezier(0.19,1,.22,1);
	font-family: Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	font-size: 16px;
}

form .submit:hover {
	background-color: #000;
	border: 1px solid #000;
	color: #fff;
}


/*-- 190408追加 --*/
#section-box{
	background: #fff;
	position: relative;
	z-index: 10;
}