@charset "UTF-8";
/*------------------------
　　　　　　common
--------------------------*/
* {
	box-sizing: border-box;
}
body{
	font-family:Helvetica, Arial,'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;
	/*max-width: 1440px;*/
	margin: 0 auto;
}
p, h1, h2, h3, h4, dl, dd {
	margin: 0;
}
a {
	color: #000;
	text-decoration: none;
	outline : none;
}
a:hover {
	color: #73B413;
}
button {
	outline : none;
}
ul {
	padding: 0;
	margin: 0;
}
li {
	list-style: none;
}
img {
	vertical-align: text-bottom
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.float-l {
	float: left;
}
.float-r {
	float: right;
}
.text-l {
	text-align: left;
}
.text-c {
	text-align: center;
}
.weight-b {
	font-weight: bold;
}
.main .font12 {
	font-size: 12px;
} 
.font14 {
	font-size: 14px;
}
.main .font16 {
	font-size: 16px;
}
.main .font18 {
	font-size: 18px;
}
.link-box-block {
	display: block;
	margin: 0 auto;
}
.cont-sp {
	display: none;
}
.main .hidden {
	display: none;
}
.main .bg-color01 {
	background: #F7F7F7
}
.main .bg-color02 {
	background: #fff;
}
.h3 {
	font-size: 16px;
	display: inline-block;
	/*padding-bottom: 5px;*/
	margin-bottom: 20px;
	/*border-bottom: 2px solid #000;*/
}
.img-hover:hover:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.7);
	z-index: 10;
}
.img-hover:hover:after {
	content: url(/img/ico_img_hover.png);
	position:absolute;
	top: 50%;
	left: 50%;
	margin: -20px 0 0 -20px;
	z-index: 100;
}
.container {
	max-width: 1040px;
	padding: 0 20px;
	margin: 0 auto;
}
header {
	position: absolute;
	width: 100%;
	/*max-width: 1440px;*/
	height: 80px;
	z-index: 999;
	background-color: transparent;
	transition: background-color 0.8s ease-in;
	margin: 0 auto;
}
header.overlay{
	background-color: rgba(0,0,0,0.9);
	transition: background-color 0.01s linear;
}
header.overlay.fixed{
	background:#fff;
}
header.fixed {
	height: 74px;
	position: fixed;
	width: 100%;
	background: #fff;
}
header .header-logo-link {
	position: absolute;
	top: 30px;
	left: 50px;
}
header .header-logo-link img {
	width: 120px;
	height: 13px;
}
header .header-navi-open-link {
	position: absolute;
	top: 27px;
	right: 30px;
	width: 28px;
	height: 22px;
}
.fixed .header-navi-open-link {
	top: 25px;
}
.header-navi-open-link, .header-navi-open-link span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.header-navi-open-link span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}
.fixed .header-navi-open-link span {
	background-color: #000;
}
.header-navi-open-link span:nth-of-type(1) {
	top: 0;
}
.header-navi-open-link span:nth-of-type(2) {
	top: 10px;
}
.header-navi-open-link span:nth-of-type(3) {
	bottom: 0;
}
.header-navi-open-link.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.header-navi-open-link.active span:nth-of-type(2) {
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu .8s forwards;
	animation: active-menu .8s forwards;
}
@-webkit-keyframes active-menu {
	100% {
		height: 0;
	}
}
@keyframes active-menu {
	100% {
		height: 0;
	}
}
.header-navi-open-link.active span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}
#gnavi{
	display:none;
	position: absolute;
	width: 100%;
	top: 80px;
	left: 0;
	z-index: 2;
	overflow-y: auto;
}
.fixed #gnavi{
	top: 74px;
}
#gnavi li{
	border-top: 1px solid rgba(40,40,40,0.9);
}
#gnavi li a{
	background: rgba(0,0,0,0.9);
	padding: 35px 0 35px 50%;
	margin-left: -44px;
	display: block;
	color: #fff;
	text-align: left;
	letter-spacing: 2px;
	font-size: 14px;
}
#gnavi li a:hover{
	background: rgba(147,213,48,0.9);
}
#gnavi .icon-menu{
	display: inline-block;
	margin-right: -20px;
	margin-left: 20px;
}
#gnavi .icon-menu:after{
	content: "\f107";
	font-family: FontAwesome;
	font-style: normal;
	font-size: 18px;
}
#gnavi .lay02{
	display: none;
}
#gnavi .lay02 li a{
	padding: 25px 0 25px 50%;
	background: rgba(20,20,20,0.9);
}
#gnavi .lay02 li a:hover {
	background: rgba(147,213,48,0.9);
}
#gnavi .lay02 li:first-child{
	border: none;
}
.main .main-section {
	background-image: url(/img/img_main.jpg);
	background-position:  center top;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
	height: 600px;
	width: 100%;
	text-align: center;
	position: relative;
	padding: 0;
	display: table;
}
.main-wrap {
	display: table-cell;
	vertical-align: middle;
	/*text-shadow: 0px 0px 10px #000;*/
}
.main-section h1 {
	padding: 12px 50px;
	margin: 0 0 20px 0;
	color: #fff;
	border: 3px solid #fff;
	display: inline-block;
}
.multiply {
	display: inline-block;
	position: relative;
	margin: 0 20px 20px 19px;
	padding: 0;
	width: 2px;
	height: 16px;
	background: #fff;
	transform: rotate(45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg); 
}
.multiply:before {
	display: block;
	content: "";
	position: absolute;
	top: 57%;
	left: -7px;
	width: 16px;
	height: 2px;
	margin-top: -2px;
	background: #fff;
}
.main .main-section p {
	color: #fff;
	font-size: 24px;
}
.main h2 {
	font-size: 28px;
	padding-bottom: 12px;
	position: relative;
	margin-bottom: 60px;
}
.main h2:after {
	bottom: 0;
    left: 50%;
    height: 5px;
    width: 40px;
    content: " ";
    margin-left: -20px;
    position: absolute;
    background: #000;
}
.main section {
	padding: 100px 0 130px 0;
	text-align: center;
	background: #fff;
}
.main section p {
	margin-bottom: 20px;
	/*font-size: 14px;*/
	font-size: 15px;
}
.main section p:last-child {
	margin-bottom: 0;
}
/*sectionに背景画像がある場合*/
#about-page .about-section02 {
	background: url(/img/bg_section.jpg) no-repeat center fixed;
	background-size: cover;
	min-height: 635px;
}
.main .service-section img {
	max-width: 438px;
	width: 100%;
}
.service-list-box {
	margin: 45px 0 75px;
	font-size: 14px;
}
.service-list-box ul {
	float: left;
	text-align: left;
	width: 25%;
	padding: 0 10px;
}
.service-list-box li {
	margin-bottom: 25px;
	line-height: 14px;
}
.link-box a {
	padding: 15px 45px;
	border: 3px solid #000;
	-webkit-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
	transition: color 0.5s ease;
}
.main-section .link-box{
	max-width: 280px;
	margin: 0 auto;
}
.link-box.link-white a {
	padding: 18px 80px;
	border-color: #fff;
	color: #fff;
}
.link-box a:hover {
	background: #000;
	color: #fff;
}
.link-box.link-white a:hover {
	background: #fff;
	color: #000;
}
.link-box a i {
	position: relative;
    right: -10px;
}
.link-box a i:hover {
	color: #fff;
}
.main .contact-recruit-section p {
	font-size: 18px
}
.contact-recruit-section h2 {
	margin-bottom: 40px;
}
.contact-recruit-section .link-box {
	margin-top: 40px;
	font-size: 12px;
}
.contact-recruit-section .contact-box .link-box a {
	padding: 13px 29px;
}
.contact-recruit-section .recruit-box .link-box a {
	padding: 13px 65px;
}
.contact-recruit-section .contact-box, .contact-recruit-section .recruit-box {
	width: 50%;
	padding: 25px;
}
footer {
	background: #fff;
}
footer .container {
	position: relative;
}
address {
	font-style: normal;
	font-size: 10px;
	margin-top: 10px;
}
footer .copyright-box {
	position: absolute;
	top: 25px;
	z-index: 100;
}
footer .copyright-box img {
	width: 120px;
	height: 13px;
}
#moremost-googlemap {
	height: 200px;
	/*max-width: 1440px;*/
	width: 100%;
	margin: 0 auto 0;
}
.gm-style-iw * {
	display: block;
	width: 100%;
}
.gm-style-iw h4, .gm-style-iw p {
	margin: 0;
	padding: 0;
}
.gm-style-iw a {
	color: #4272db;
}
footer {
	background: #fff;
}
address {
	font-style: normal;
	font-size: 10px;
	margin-top: 10px;
}
/*colorbox slide*/
#colorbox, #cboxWrapper {
	overflow: visible;
	-webkit-transform: none;
}
#cboxContent {
	margin: 0;
	background: none;
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
#cboxLoadedContent {
	border: none;
}
#cboxTitle {
	position: absolute;
    top: inherit;
    bottom: -65px;
    left: 0;
    color: #ccc;
    border-bottom: 2px solid #fff;
    padding-bottom: 10px;
}
#cboxPrevious, #cboxPrevious:hover, #cboxNext, #cboxNext:hover {
	position:absolute; 
	bottom:0; 
	width:55px; 
	height:55px; 
	text-indent:-9999px;
}
#cboxPrevious, #cboxPrevious:hover{
	left:-70px; 
	background:url(/colorbox/images/controls.png) no-repeat 0 0; 
	width:55px; 
	height:55px; 
}
#cboxPrevious:hover, #cboxNext:hover{
	opacity: 0.5;
}
#cboxNext, #cboxNext:hover{
	right:-70px;
	background:url(/colorbox/images/controls.png) no-repeat 0 -59px; 
}
#cboxClose{
	position:fixed;
	top:30px;
	right:30px; 
	background:url(/colorbox/images/controls.png) no-repeat 0 -117px; 
	width:33px; 
	height:44px; 
	text-indent:-9999px;
}
@media screen and (min-width: 769px) {
	#cboxClose:hover{
		top:30px;
		right:30px; 
		background:url(/colorbox/images/controls.png) no-repeat 0 -117px; 
		width:33px; 
		height:44px; 
		text-indent:-9999px;
		opacity: 0.8;
	}
}

/*------------------------
　　　　　　top
--------------------------*/
#top-page .main-section.top-section01 {
	background: url(/img/main.jpg) no-repeat center top fixed;
	height: 785px;
	background-size: cover;
}
#top-page .main-section.top-section02 {
	background: url(/img/img_main02.jpg) no-repeat center top fixed;
	height: 785px;
	background-size: cover;
}
#top-page .main-section.top-section03 {
	background: url(/img/img_main03.jpg) no-repeat center top fixed;
	height: 785px;
	background-size: cover;
}
#top-page .main-section h1 {
	border: none;
	font-size: 60px;
	margin: 30px auto 80px;
}
#top-page .main-section.top-section02 h1 {
	margin-bottom: 60px;
}
#top-page .main-section.top-section03 h1 {
	margin-bottom: 50px;
}
#top-page .main-section h1 span {
	font-size: 68px;
}
.subscript {
	/*padding-top: 250px;*/
}
.main .main-section .sub-ontents {
	font-size: 20px;
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 85px;
}
.subscript span {
	display: inline-block;
	margin: 0 15px;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 2px;
	vertical-align: middle;
}
.subscript:before, .subscript:after {
	content: '';
	display: inline-block;
	background: #fff;
	height: 2px;
	width: 50px;
	vertical-align: middle;
}
#top-page .main-section .link-box {
	max-width: 310px;
}
.top-section04 .container {
	max-width: 580px;
}
.top-section04 .container p {
	text-align: left;
}
#top-page.main .service-section {
	background: url(/img/bg_service.jpg) no-repeat center top fixed;
	background-size: cover;
	min-height: 635px;
}
#top-page .team-section01 ul{
	width: 100%;
	max-width: 100%;
}
#top-page .team-section01 li{
	width: 25%;
}
.team-section01 li div{
	margin: 0 20px 40px;
}
#top-page .team-section01 .container{
	max-width: 1080px;
}
#top-page .team-section01 {
	padding-bottom: 0;
}
.main .map-section {
	padding: 0;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	z-index: 10;
}
.main .map-section .left-box, .main .map-section .right-box {
	width: 50%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.main .map-section .left-box {
/*	display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;*/
}
.main .map-section .left-box .content {
	max-width: 400px;
    width: 100%;
    margin: 0 auto;
    padding: 20px;
}
.main .map-section .right-box img {
	width: 100%;
}
.map-button-area {
	width: 220px;
	margin: 0 auto;
	border: 3px solid #000;
	padding: 12px 10px;
	position: relative;
	cursor: pointer;
}
.map-button-area i {
	display: none;
}
.map-button-area.map-open i {
	display: block;
	position: absolute;
	left: 8px;
	top: 6px;
	color: #F82F17;
}
.map-button-area:before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	border: 3px solid #000;
	float: left;
}
@media screen and (min-width: 769px) {
	.map-button-area:hover i {
		display: block;
		position: absolute;
		left: 8px;
		top: 6px;
		color: #F82F17;
	}
}
@media screen and (max-width: 930px) {
	#top-page .main-section h1, #top-page .main-section h1 span {
		font-size: 50px;
	}
}
/*------------------------
　　　　　　about
--------------------------*/
.about-section01 table, .recruitment-section03 table {
	text-align: left;
	max-width: 635px;
	width: 100%;
	margin: 0 auto;
	padding-left: 70px;
	border-collapse: separate;
	border-spacing: 0 20px;
}
.about-section01 th, .recruitment-section03 th {
	width: 120px;
	vertical-align: top;
}
.about-section01 dt {
	float: left;
	width: 100px;
}
.about-section01 a {
	color: #73B413;
}
.about-section01 table br {
	display: none;
}
#about-page h3 {
	/*color: #fff;*/
	font-size: 40px;
/*	filter:dropshadow(color=#000000,offX= 0,offY=-1)
		dropshadow(color=#000000,offX= 1,offY= 0)
		dropshadow(color=#000000,offX= 0,offY= 1)
		dropshadow(color=#000000,offX=-1,offY= 0);
	-webkit-text-stroke-color: #000;
	-webkit-text-stroke-width: 2px;
	text-shadow: black 1px 1px 0px, black -1px 1px 0px,black 1px -1px 0px, black -1px -1px 0px;*/
	margin-bottom: 40px;
}
#about-page h3:before, #about-page h3:after {
	color: #000;
	font-size: 60px;
	text-shadow: none;
	-webkit-text-stroke-width: 0;
}
#about-page h3:before {
	content: "{";
	margin-right: 25px;
}
#about-page h3:after {
	content: "}";
	margin-left: 25px;
}
.about-section03 {
	border-bottom: 2px dotted #E1E1E1;
}
#gallery-page .main-section {
	background-image: url(/img/img_gallery.jpg);
	height: 600px;
}
.gallery-box {
	margin: 95px 0 0 0;
}
.gallery-box ul {
	margin-bottom: 80px;
}
.gallery-box li {
	float: left;
	width: 25%;
	position: relative;
}
.gallery-box img {
	vertical-align: bottom;
	max-width: 250px;
	width: 100%;
}
.gallery-box .link-box a {
	padding: 15px 80px;
}
#message-page .main-section {
	background-image: url(/img/img_gallery.jpg);
}
.message-section01 h3 {
	margin: 60px 0 28px;
	/*padding-bottom: 8px;*/
	/*border-bottom: 2px solid #000;*/
	display: inline-block;
	font-size: 20px;
}
.message-section01 .message-box {
	width: 700px;
	margin: 0 auto;
}
.message-section01 img {
	width: 100%;
	margin-top: 80px;
}
.main .message-section02 {
	padding-bottom: 80px;
}
.message-section02 .container {
	width: 830px;
}
.message-section02 .intro-box {
	width: 700px;
	margin: 0 auto;
	margin-bottom: 60px;
}
.message-section02 .intro-box .text-l {
	margin-left: 300px;
}
.message-section02 .intro-box dl {
	/*border-bottom: 2px solid #000;*/
	/*padding-bottom: 10px;*/
	margin-bottom: 20px;
}
.message-section02 .intro-box dd {
	font-size: 22px;
}
.message-section02 .intro-box dd span {
	display: inline-block;
	margin-left: 20px;
	font-size: 14px;
	font-weight: normal;
}
.main .message-section02 .intro-box p {
	font-size: 14px;
}
.message-link-box {
	/*border-top: 1px dotted #C0C0C0;*/
	/*padding-top: 80px;*/
	padding-top: 20px;
}
.message-link-box .link-box {
	width: 50%;
}
.message-link-box .link-box a {
	padding: 28px 20px;
	display: block;
	width: 275px;
	margin: 0 auto;
}
@media screen and (max-width: 830px) {
	.message-section02 .container {
		width: 100%;
	}
}
#team-page .main-section {
	background-image: url(/img/img_team.jpg);
}
#team-page .main-wrap {
	/*text-shadow: 0px 0px 10px #000;*/
}
.team-section01 ul {
	max-width: 858px;
	margin: 0 auto;
}
.team-section01 li {
	float: left;
	width: 33.333333%;	
}
.team-section01 li div {
	margin: 0 23px 45px;
	position: relative;	
}
.team-section01 li p {
	display: none;

}
.team-section01 li p span {
	font-size: 12px;
}
.team-section01 li a:hover p {
	display: block;
	color: #fff;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto;
	line-height: 20px;
	z-index: 10;
}
.team-section01 li img {
	max-width: 240px;
	width: 100%;
	position: relative;
}
.team-section01 .intern {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	line-height: 30px;
	font-size: 12px;
}
.team-section01 .intern:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 73px 73px 0;
	border-color: transparent #fff transparent transparent;
	z-index: -1;
}
.team-list a:hover {
	color: #000;
}
.recruitment-box {
	margin-top: 55px;
}
.recruitment-box .recruit-box, .recruitment-box .partners-box {
	width: 50%;
}
.recruitment-box h2 {
	margin-bottom: 35px;
}
.recruitment-box p {
	height: 45px;
}
.recruitment-box .link-box a {
	width: 240px;
}
#team-detail-page.main .main-section {
	height: 560px;
	position: relative;
	background-attachment: scroll;
	background-position: center 15%;
}
#team-detail-page .content {
	max-width: 630px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}
#team-detail-page .main-wrap {
	display: block;
}
#team-detail-page .main-section.kono {
	background-image: url(/img/team/kono/img_main.jpg);
}
#team-detail-page .main-section.eto {
	background-image: url(/img/team/eto/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.sakoda {
	background-image: url(/img/team/sakoda/img_main.jpg);
}
#team-detail-page .main-section.bifu {
	background-image: url(/img/team/bifu/img_main.jpg);
}
#team-detail-page .main-section.miyata {
	background-image: url(/img/team/miyata/img_main.jpg);
}
#team-detail-page .main-section.minako {
	background-image: url(/img/team/minako/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.ota {
	background-image: url(/img/team/ota/img_main.jpg);
	background-position: center 35%;
}
#team-detail-page .main-section.sato {
	background-image: url(/img/team/sato/img_main.jpg);
}
#team-detail-page .main-section.tada {
	background-image: url(/img/team/tada/img_main.jpg);
}
#team-detail-page .main-section.yoosam {
	background-image: url(/img/team/yoosam/img_main.jpg);
}
#team-detail-page .main-section.yasuken {
	background-image: url(/img/team/yasuken/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.mika {
	background-image: url(/img/team/mika/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.mizuki {
	background-image: url(/img/team/mizuki/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.hitomi {
	background-image: url(/img/team/hitomi/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.aya {
	background-image: url(/img/team/aya/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.yuko {
	background-image: url(/img/team/yuko/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-section.riku {
	background-image: url(/img/team/riku/img_main.jpg);
	background-position: center;
}
#team-detail-page .main-wrap .name-box {
	position: absolute;
	bottom: 45px;
	left: 0;
	right: 0;
	margin: auto;
	text-shadow: 0px 0px 10px #fff;
}
#team-detail-page h1 {
	font-size: 24px;
	margin: 0 0 20px;
	color: #000;
	border: none;
	padding: 0;
}
#team-detail-page .catchphrase-box {
	position: relative;
	max-width: 950px;
	padding: 0 15px;
	height: 400px;
	margin: 0 auto;
}
#team-detail-page .main-wrap p {
	color: #000;
}
#team-detail-page .main-wrap .catchphrase {
	font-size: 32px;
	position: absolute;
	bottom: 30px;
	text-shadow: 0px 0px 10px #fff;
}
#team-detail-page .main-wrap .catchphrase:before {
	content: " ";
	display:inline-block;
	background: url(/img/ico_catchphrase01.png) no-repeat center 0;
	background-size: contain;
	width: 38px;
	height: 60px;
	margin-right: 35px;
	vertical-align:top;
}
#team-detail-page .main-wrap .catchphrase:after {
	content: " ";
	display:inline-block;
	background: url(/img/ico_catchphrase02.png) no-repeat center 25px;
	background-size: contain;
	width: 38px;
	height: 60px;
	vertical-align:bottom;
	margin-left: 35px;
}
#team-detail-page .main-wrap .position {
	padding-bottom: 5px;
	font-size: 16px;
	position: relative;
}
#team-detail-page .main-wrap .position:after {
	bottom: 0;
    left: 50%;
    height: 2px;
    width: 40px;
    content: " ";
    margin-left: -20px;
    position: absolute;
    background: #000;
}
.main .team-detail-section02, .main .team-detail-section03, .main .team-detail-section02, .main .team-detail-section04 {
	padding-top: 0;
}
.team-message-box {
	max-width: 1440px;
}
.team-message-box .img-box, .team-message-box .img-box img, .team-message-box section {
	width: 50%;
}
.team-message-box section {
	padding-bottom: 0;
}
.main .team-detail-section05 h2 {
	margin-bottom: 20px;
}
.team-detail-section05 table {
	margin: 0 auto 50px;
	border-collapse: separate;
    border-spacing: 0 30px;
}
.team-detail-section05 table th {
	width: 150px;
	vertical-align: top;
	line-height: 16px;
	padding-left: 30px;
	background: url(/img/ico_time.png) no-repeat left top;
	background-size: 16px 17px;
}
/*.team-detail-section05 table th:before {
	content: " ";
	display:inline-block;
	background: url(/img/ico_time.png) no-repeat center;
	background-size: contain;
	width: 16px;
	height: 17px;
	margin-right: 20px;
	vertical-align: bottom;
}*/
.team-detail-section05 table td {
	/*width: 510px;*/
	width: 300px;
	line-height: 18px;
}
.team-detail-section05 table dt {
	margin-bottom: 10px;
}

/*------------------------
　　　　　　recruit
--------------------------*/
#qa-page h3 {
	width: 220px;
	border: 3px solid #000;
	padding: 10px 15px;
	margin-bottom: 60px;
}
.qa-box {
	padding-bottom: 60px;
	max-width: 840px;
	width: 100%;
	margin: 0 auto;
}
.main .qa-section01 {
	padding-bottom: 40px;
}
.main .qa-section01 a {
	color: #73B413;
}
.qa-section01 dt {
	padding: 0 0 10px 50px;
	border-bottom: 2px solid #000;
	margin-bottom: 40px;
	cursor: pointer;
	background: url(/img/ico_question.png) no-repeat left top;
}
.qa-section01 dd {
	padding: 0 0 50px 50px;
	background: url(/img/ico_answer.png) no-repeat left top;
	border-bottom: 1px dotted #C4C4C4;
	margin-bottom: 40px;
}
.recruit-link-box {
	padding: 80px 0;
}
.link-box.essential-point, .link-box.entry-form {
	width: 50%;
}
.essential-point .link-box-block, .entry-form .link-box-block{
	width: 280px;
	padding: 27px 0;
}
.contact-section p {
	padding-bottom: 15px;
}
#qa-page .main-section {
	background-image: url(/img/img_qa.jpg);
}
#recruit-page .main-section {
	background-image: url(/img/img_recruit.jpg);
}
.recruit-section01 h2 {
	font-size: 30px;
	margin-bottom: 40px;
}
.recruit-section01 h2:before {
	content: "";
	background: url(/img/ico_catchphrase01.png) no-repeat left top;
	width: 38px;
	height: 40px;
	display: inline-block;
	margin: 0 20px 0 0;
}
.recruit-section01 h2:after {
	content: "";
	background: url(/img/ico_catchphrase02.png) no-repeat right top;
	width: 38px;
	height: 40px;
	display: inline-block;
	left: inherit;
    bottom: inherit;
	margin: 0 0 0 20px;
	position: static;
}
.recruit-main-box {
	max-width: 700px;
	width: 100%;
	padding: 0 15px;
	margin: 0 auto;
}
.recruit-oita-box {
	padding: 100px 0;
}
.recruit-oita-box p {
	font-size: 40px;
	padding: 15px 0;
}
.recruit-oita-box img {
	width: 100%;
}
.about-oita-box {
	max-width: 1440px;
}
.main .recruit-section02 {
	padding: 100px 0;
}
.about-oita-box .col01 img, .recruit-section02 {
	width: 50%;
}
.recruit-section02-contain {
	margin: 0 auto;
	max-width: 450px;
	width: 100%;
	padding: 0 15px;
}
.recruit-section02-contain h3 {
	font-size: 20px;
	display: inline-block;
	border-bottom: 2px solid #000;
	margin-bottom: 30px;
}
.about-oita-box .col02 img {
	width: 25%;
}
.recruit-link-area {
	padding: 100px 0;
}
.recruit-link-box01 {
	background: url(/img/bn_recruit01.jpg) no-repeat center;
}
.recruit-link-box02 {
	background: url(/img/bn_recruit02.jpg) no-repeat center;
}
.recruit-link-box01, .recruit-link-box02 {
	width: 50%;
	padding: 0 20px;
	height: 200px;
	background-size: 95% auto;
	position: relative;
	margin-bottom: 40px;
}
.recruit-link-box01 .link-box, .recruit-link-box02 .link-box {
	width: 250px;
    height: 18px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.recruit-link-box03 {
	clear: both;
	max-width: 1000px;
	width: 100%;
	border: 3px solid;
	padding: 30px 15px;
}
.recruit-link-box03 p {
	font-size: 28px;
	margin-bottom: 40px;
}
.recruit-link-box03 p:before {
	content: "";
	background: url(/img/ico_question02.gif) no-repeat left top;
	display: inline-block;
	width: 72px;
	height: 50px;
	margin-right: 10px;
}
.recruit-link-box03 p:after {
	content: "";
	background: url(/img/ico_answer02.gif) no-repeat right top;
	display: inline-block;
	width: 72px;
	height: 50px;
	margin-left: 10px;
}
#recruitment-page .main-section {
	background-image: url(/img/img_recruitment.jpg);
}
.recruitment-section01 .container {
	max-width: 900px;
	width: 100%;
	padding: 0 70px;
}
.main .message-p {
	display: inline-block;
	padding: 10px;
	border: 3px solid #000;
	margin: 0 20px;
	width: auto !important;
}
@media screen and (min-width: 769px) {
	.message-p:hover {
		cursor: pointer;
		background: #000;
		color: #fff;
	}
}
.message-p:focus {
	outline: none;
}
.recruit-message-box {
	width: 100%;
	margin: 0 auto;
	padding: 60px;
	margin-top: 50px;
	background: #fff;
	min-height: 510px;
}
.recruit-message-box h3, .recruitment-section04 dt{
	display: inline-block;
	/*padding-bottom: 10px;*/
	margin-bottom: 30px;
	/*border-bottom: 2px solid;*/
}
.profession-box {
	max-width: 1000px;
	width: 100%;
	border: 3px solid;
	padding: 40px;
	margin-bottom: 20px;
	cursor: pointer;
	position: relative;
}
.profession-box .slide {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 125px;
}
.profession-box.open {
	cursor: auto;
}
.profession-box .profession-box-heading {
	font-size: 24px;
	padding-left: 75px;
	height: 45px;
	line-height: 45px;
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
}
.profession-box.open .slide {
	cursor: pointer;
}
.profession-box.system .profession-box-heading {
	background-image: url(/img/ico_system.gif), url(/img/ico_arrow02.gif);
}
.profession-box.system.open .profession-box-heading {
	background-image: url(/img/ico_system.gif), url(/img/ico_close.gif);
}
.profession-box.front .profession-box-heading {
	background-image: url(/img/ico_front.gif), url(/img/ico_arrow02.gif);
}
.profession-box.front.open .profession-box-heading {
	background-image: url(/img/ico_front.gif), url(/img/ico_close.gif);
}
.profession-box.design .profession-box-heading {
	background-image: url(/img/ico_design.gif), url(/img/ico_arrow02.gif);
}
.profession-box.design.open .profession-box-heading {
	background-image: url(/img/ico_design.gif), url(/img/ico_close.gif);
}
.profession-box.generalAffairs .profession-box-heading {
	background-image: url(/img/ico_general_affairs.gif), url(/img/ico_arrow02.gif);
}
.profession-box.generalAffairs.open .profession-box-heading {
	background-image: url(/img/ico_general_affairs.gif), url(/img/ico_close.gif);
}
.profession-box-content {
	display: table;
	margin-top: 45px;
}
.content-left, .content-right {
	width: 50%;
	display: table-cell;
	vertical-align: top;
}
.content-right dt {
	background: #000;
	color: #fff;
	padding: 10px 20px;
}
.content-right dd {
	padding: 25px;
}
.content-left {
	padding-right: 40px;
}
.content-detail {
	margin-bottom: 50px;
}
.content-left .content-detail:last-child, .content-right .content-detail:last-child {
	margin-bottom: 0;
}
.content-detail h4 {
	display: inline-block;
	padding-bottom: 5px;
	margin-bottom: 20px;
	border-bottom: 2px solid;
}
.content-detail ul, .recruitment-section03 ul {
	padding-left: 15px;
}
.content-detail li, .recruitment-section03 li {
	list-style: disc;
}
.recruitment-section03 {
	border-bottom: 1px dashed #ddd;
}
.recruitment-section04 dl {
	width: 33.3333%;
	padding: 70px 35px 0;
}
.recruitment-section04 dl.yamawake {
	background: url(/img/ico_yamawake.gif) no-repeat top center;
}
.recruitment-section04 dl.mtg {
	background: url(/img/ico_mtg.gif) no-repeat top center;
}
.recruitment-section04 dl.book {
	background: url(/img/ico_book.gif) no-repeat top center;
}
.main .recruitment-section05 p {
	margin-bottom: 70px;
}
.recruitment-section05 p a {
	color: #73B413;
}
.flow-box {
	max-width: 660px;
	width: 100%;
	margin: 0 auto;
}
.flow-box ul {
	clear: both;
}
.flow-box li {
	clear: both;
	position: relative;
}
.flow-box li dl {
	clear: both;
	padding: 30px 40px;
	margin-bottom: 40px;
}
.flow-box li i {
	position: absolute;
	bottom: -35px;
}
.flow01 li i {
	left: 127px;
}
.flow02 li i {
	right: 150px;
}
.flow-box dd {
	margin-left: 115px;
}
.flow-btn-box {
	height: 90px;
}
.main .flow-btn {
	padding: 15px 50px;
	border: 3px solid #000;
	margin-bottom: 0;
}
.main .flow-btn a:hover {
	color: #fff;
}
@media screen and (min-width: 769px) {
	.main .flow-btn:hover {
		background: #000;
		color: #fff;
		cursor: pointer;
	}
}
.slick-prev, .slick-next {
	width: 55px;
	height: 55px;
	margin-top: 22px;
}
.slick-prev {
	left: -60px;
}
.slick-next {
	right: -65px;
}
.slick-prev:before {
	content: "";
	background: url(/img/ico_prev.gif) no-repeat;
	display: inline-block;
	width: 55px;
	height: 55px;
}
.slick-next:before {
	content: "";
	background: url(/img/ico_next.gif) no-repeat;
	display: inline-block;
	width: 55px;
	height: 55px;
}
.slick-slider {
	margin-bottom: 0;
}
/*.slick-track {
	left: 90px !important;
}*/
.recruitment-slide-button .slick-slide {
	float: none;
	display: inline-block;
}
.recruitment-slide-button .message-p.slick-current {
	background: #000;
	color: #fff;
}
#entry-page .main-section {
	background-image: url(/img/img_entry.jpg);
}
.entry-section01 .container {
	max-width: 700px;
	width: 100%;
}
.entry-section01 table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 20px;
}
.entry-section01 .entry-table02 tr:nth-child(4) th {
	vertical-align: top;
}
.entry-section01 h3 {
	font-size: 16px;
	display: inline-block;
	padding-bottom: 10px;
	margin-bottom: 45px;
	border-bottom: 2px solid #000;
}
.entry-table01 {
	margin-bottom: 80px;
}
.entry-section01 th {
	width: 25%;
}
.entry-section01 td {
	width: 75%;
}
.entry-section01 input, .entry-section01 select {
	width: 100%;
    height: 60px;
	padding: 10px;
}
.entry-section01 select {
    background: #fff;
    border: 0;
    outline: 1px solid #ccc;
    outline-offset: -1px;
}
.entry-section01 #fakeResumeFile, .entry-section01 #fakeCvFile {
	width: 55%;
	float: left;
}
.file-button-box {
	width: 45%;
	float: left;
	padding-left: 30px;
}
.main .file-button-box p {
	margin-bottom: 12px;
	font-size: 12px;
}
.file-button-box input {
	padding: 0;
	height: 30px;
	width: 140px;
	font-size: 14px;
	background: #000;
	border: none;
	color: #fff;
}
.entry-section01 input[type="image"] {
	width: 18px;
	height: 18px;
	padding: 0;
	margin-top: 20px;
	float: left;
}
.entry-url input {
	margin-bottom: 20px;
}
.entry-url input:last-child{
	margin-bottom: 0;
}
.button-input-add {
	background: none;
	border: none;
	padding: 0;
	float: left;
	margin-left: 25%;
}
.add-attention {
	text-align: left;
	margin-left: 30%;
	color: #bbb;
}
.entry-attention-area {
	color: #bbb;
	margin-top: 50px;
}
.entry-submit {
	background: #fff;
	border: 3px solid #000;
	padding: 15px 0;
	width: 280px;
	margin-top: 60px;
	transition: color 0.5s ease;
}
.entry-submit:hover {
	background: #000;
	color: #fff;
}
.entry-section02 .left-box, .entry-section02 .right-box {
	width: 50%;
	float: left;
	margin: 0 auto;
}
/*------------------------
　　　　　　privacy
--------------------------*/
#privacy-page .main-section {
	background-image: url(/img/img_privacy.jpg);
	/*background-size: inherit;*/
	height: 300px !important; 
}
.privacy-section01 h3 {
	font-size: 16px;
	display: inline-block;
	padding-bottom: 5px;
	margin-bottom: 20px;
	border-bottom: 2px solid #000;
}
.main .privacy-section01 p {
	margin-bottom: 60px;
}
.main .privacy-section01 p:last-child {
	margin-bottom: 0;
}
.main .privacy-section01 {
	padding-bottom: 0;
}
/*------------------------
　　　　　　404
--------------------------*/
#error-page .main-section {
	background-image: url(/img/img_privacy.jpg);
	/*background-size: inherit;*/
	height: 300px !important; 
}
.main .error-section01 p {
	margin-bottom: 40px;
}
/*------------------------
　　　　　　service
--------------------------*/
#service-page .main-section {
	background-image: url(/img/img_service.jpg);
}
.main .service-section01 {
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	padding: 0;
}
.service-content-box {
	width: 50%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.service-content-box h2 {
	font-size: 20px;
	padding-bottom: 5px;
	margin-bottom: 20px;
	border-bottom: 2px solid #000;
	display: inline-block;
}
.service-content-box h2:after {
	content: none;
}
.service-content-box img {
	width: 100%;
}
.service-content-box .content {
	max-width: 520px;
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}
.service-section02 .service-list-box {
	margin-bottom: 0;
}
.service-section02 .service-list {
	width: 50%;
	float: left;
	margin-bottom: 0;
}
.service-section02 .service-list:nth-child(odd) {
	clear: both;
}
.service-description-list {
	max-width: 385px;
	width: 100%;
	margin: 0 auto 60px;
	padding: 0 15px;
}
.service-section02 .service-list:nth-child(15) .service-description-list, .service-section02 .service-list:nth-child(16) .service-description-list {
	margin: 0 auto;
}
.service-section02 .service-title {
	font-size: 16px;
	margin-bottom: 15px;
	padding-left: 30px;
	line-height: 17px;
}
.service-section02 .service-description {
	line-height: 20px;
}
.service-title.service01 {
	background: url(/img/ico_service01.gif) no-repeat left top;
}
.service-title.service02 {
	background: url(/img/ico_service02.gif) no-repeat left top;
}
.service-title.service03 {
	background: url(/img/ico_service03.gif) no-repeat left top;
	background-size: contain;
}
.service-title.service04 {
	background: url(/img/ico_service04.gif) no-repeat left top;
}
.service-title.service05 {
	background: url(/img/ico_service05.gif) no-repeat left top;
}
.service-title.service06 {
	background: url(/img/ico_service06.gif) no-repeat left top;
}
.service-title.service07 {
	background: url(/img/ico_service07.gif) no-repeat left top;
}
.service-title.service08 {
	background: url(/img/ico_service08.gif) no-repeat left top;
}
.service-title.service09 {
	background: url(/img/ico_service09.gif) no-repeat left top;
}
.service-title.service10 {
	background: url(/img/ico_service10.gif) no-repeat left top;
}
.service-title.service11 {
	background: url(/img/ico_service11.gif) no-repeat left top;
}
.service-title.service12 {
	background: url(/img/ico_service12.gif) no-repeat left top;
}
.service-title.service13 {
	background: url(/img/ico_service13.gif) no-repeat left top;
}
.service-title.service14 {
	background: url(/img/ico_service14.gif) no-repeat left top;
}
.service-title.service15 {
	background: url(/img/ico_service15.gif) no-repeat left top;
}
.service-title.service16 {
	background: url(/img/ico_service16.gif) no-repeat left top;
}
.main .service-section03 {
	padding-bottom: 0;
}
.projects-list {
	position: relative;
	display: inline-block;
	width: 25%;
	float: left;
}
.projects-list img {
	width: 100%;
}
.projects-name {
	display: none;
}
.projects-list a:hover .projects-name {
	display: block;
	color: #fff;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto;
	line-height: 20px;
	z-index: 10;
}
.service-section04 .content {
	max-width: 560px;
	width: 100%;
	margin: 0 auto;
}
.service-img {
	width: 100%;
}
#service-page .contact-recruit-section .contact-box p, .work  .contact-recruit-section .contact-box p {
	margin-bottom: 67px;
}
#work01-page .main-section {
	background-image: url(/img/img_diamonddresser_main.jpg);
}
.work-description-list {
	margin-top: 70px;
}
.work-description-title {
	display: inline-block;
	border-bottom: 1px solid #000;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
.work-description-data table {
	border-collapse: separate;
	border-spacing: 0 5px;
}
.work-description-data th {
	width: 80px;
}
.work .service-content-box .content {
	padding: 20px;
}
.work-section01 .container {
	max-width: 560px;
	width: 100%;
}
.work-section01 .content {
	margin-bottom: 200px;
}
/*------------------------
		contact
--------------------------*/
#contact-page .main-section {
	background-image: url(/img/img_contact.jpg);
	background-size: inherit;
	height: 300px !important; 
}
.form-list li {
	width: 50%;
	float: left;
	padding: 0 20px;
	margin-bottom: 100px;
}
.form-list li:nth-child(odd) {
	clear: both;
}
.form-list li:last-child {
	margin-bottom: 0;
}
.form-list p a {
	color: #A1CB61;
}
.form-list dt {
	font-size: 20px;
	margin-bottom: 30px;
}
.form-list dd p {
	margin-bottom: 50px;
	max-width: 440px;
	width: 100%;
	height: 115px;
}
.form-list li:last-child dd p {
	height: auto;
}
.form-wrap {
	display: none;
}
.modal-form {
	background: #F7F7F7;
	padding: 40px;
	width: 480px;
}
.modal-form p {
	display: inline-block;
	text-align: center;
	font-size: 20px;
	margin-bottom: 30px;
}
.modal-form input, .modal-form textarea {
	display: block;
	width: 100%;
	border: none;
	padding: 15px;
}
.modal-form input {
	height: 50px;
	margin-bottom: 20px;
}
.modal-form textarea {
	margin-bottom: 40px;
}
.form-modal #cboxClose {
	position: absolute;
	top: 15px;
	right: 15px;
	background: url(/img/ico_form_close.png) no-repeat;
	width: 27px;
	height: 27px;
	text-indent: -9999px
}
.form-modal .link-box {
	padding: 15px 45px;
	border: 3px solid #000;
	-webkit-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
	transition: color 0.5s ease;
	background: #fff;
}
@media screen and (min-width: 1440px) {
	#contact-page .main-section, #privacy-page .main-section {
		background-size: cover;
	}
}
@media screen and (max-width: 890px) {
	/*------------------------
			contact
	--------------------------*/
	.form-list li:nth-child(1) .link-box a, .form-list li:nth-child(2) .link-box a {
		display: block;
		text-align: center;
	}
}	  
@media screen and (max-width: 840px) {
	.main .message-p {
		margin: 0 10px;
	}
	/*------------------------
　　　　　　service
	--------------------------*/
	.service-content-box .content p {
		font-size: 12px;
	}
}

@media screen and (max-width: 768px) {
	/*------------------------
　　　　　　common
	--------------------------*/
	p {
		font-size: 14px;
	}
	.container {
		width: 100%;
		padding: 0 15px;
	}
	.cont-pc {
		display: none;
	}
	.cont-sp {
		display: block;
	}
	header,header.fixed{
		height: 55px;
	}
	.fixed #gnavi,#gnavi{
		top: 55px;
	}
	header .header-logo-link {
		top: 20px;
		left: 15px;
		line-height: 13px;
	}
	header .header-navi-open-link, .fixed .header-navi-open-link {
		top: 15px;
		right: 15px;
	}
	#gnavi li a{
		padding: 25px 0 25px 50%;
	}
	#gnavi .lay02 li a{
		padding: 20px 0 20px 50%;
	}
	.main section {
		padding: 30px 0 40px 0;
		background-size: cover;
	}
	.main h2 {
		/*font-size: 24px;*/
		font-size: 20px;
		margin-bottom: 30px;
	}
	.service-list-box {
		margin: 20px 0 30px;
	}
	.service-list-box ul {
		width: 50%;
	}
	.contact-recruit-section .contact-box, .contact-recruit-section .recruit-box {
		width: 100%;
		padding: 0;
	}
	.contact-recruit-section .contact-box {
		margin-bottom: 30px;
	}
	contact-recruit-section .contact-box {
		margin-bottom: 60px;
	}
	.main .contact-recruit-section p {
		font-size: 16px;
	}
	.img-hover:hover:before, .img-hover:hover:after {
		content: none;
	}
	.main .main-section {
		background-size: auto;
		background-size: auto 100vh;
	}
	/*------------------------
　　　　　　top
	--------------------------*/	
	#top-page .main-section h1, #top-page .main-section h1 span {
		font-size: 30px;
	}
	#top-page .main-section.top-section01, #top-page .main-section.top-section02, #top-page .main-section.top-section03 {
		background-size: auto;
		background-size: auto 100vh;
	}
	#top-page .main-section h1 {
		font-size: 22px;
	}
	#top-page .main-section.top-section02 h1 {
		margin: 50px auto 20px;
	}
	.main .main-section.top-section02 .sub-ontents {
		margin-bottom: 30px;
	}
	.main .main-section.top-section03 p.subscript {
		margin: 50px 0 5px;
	}
	.main .main-section.top-section03 p.subscript span {
		font-size: 17px;
	}
	#top-page .main-section.top-section03 h1 {
		margin: 10px auto;
	}
	.subscript span{
		font-size: 20px;
	}
	#top-page .main-wrap {
		padding: 0 15px;
	}
	.main .main-section .sub-ontents {
		font-size: 16px;
		margin-bottom: 30px;
	}
	.subscript:before, .subscript:after {
		width: 10px;
	}
	#top-page .link-box.link-white a {
		padding: 10px;
	}
	#top-page .team-section01 li {
		width: 50%;
	}
	#top-page .team-section01 li:nth-child(odd) {
		padding-right: 5px;
	}
	#top-page .team-section01 li:nth-child(even) {
		padding-left: 5px;
	}
	#top-page .team-section01 li img, #top-page .team-section01 li div, .main .map-section .left-box, .main .map-section .right-box {
		width: 100%;
	}
	.main .map-section {
		-webkit-flex-wrap: wrap-reverse;
		flex-wrap: wrap-reverse;
	}
	.main .map-section .left-box .content {
		padding: 30px 15px;
	}
	.team-section01 li p {
		display: block;
		line-height: 20px;
	}
	.team-section01 li a:hover p {
		color: #000;
		position: static;
	}
	#top-page.main .service-section {
		background: #F7F7F7;
	}
	/*------------------------
　　　　　　about
	--------------------------*/
	.about-section01 table, .recruitment-section03 table {
		padding: 0;
	}
	.about-section01 th,
	.recruitment-section03 th {
		width: 100px;
	}
	.about-section01 table br {
		display: block;
	}
	#about-page h3 {
		font-size: 20px;
		-webkit-text-stroke-width: 1px;
	}
	#about-page h3:before, #about-page h3:after {
		font-size: 30px;
	}
	#about-page h3:before {
		margin-right: 10px;
	}
	#about-page h3:after {
		margin-left: 10px;
	}
	#about-page .about-section02 {
		min-height: 500px;
	}
	#about-page .about-section04 h3 {
		font-size: 17px;
	}
	.gallery-box {
		margin-top: 30px;
	}
	.gallery-box ul {
		margin-bottom: 50px;
	}
	.message-section01 .message-box {
		width: 100%;
	}
	.message-section01 h3 {
		margin: 30px 0 20px;
	}
	.message-section01 img {
		margin-top: 40px;
	}
	.main .message-section02 {
		padding-bottom: 20px;
	}
	.message-section02 .intro-box {
		width: 100%;
		margin-bottom: 30px;
	}
	.message-section02 .intro-box img {
		float: none;
	}
	.message-section02 .intro-box .text-l {
		margin-left: 0;
	}
	.message-section02 .intro-box dl {
		text-align: center;
		margin-top: 10px;
	}
	.message-section02 .intro-box dd {
		font-size: 20px;
	}
	.message-link-box .link-box {
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}
	.message-link-box {
		padding-top: 40px;
	}
	.team-section01 li {
		width: 100%;
	}
	.team-section01 li div {
		width: 240px;
		margin: 0 auto 30px;
	}
	.recruitment-box {
		margin-top: 30px;
	}
	.recruitment-box .recruit-box, .recruitment-box .partners-box {
		width: 100%;
	}
	.recruitment-box .recruit-box {
		margin-bottom: 50px;
	}
	#team-detail-page .main-wrap .catchphrase {
		font-size: 18px;
		text-shadow: 0px 0px 10px #fff;
	}
	#team-detail-page .main-wrap .catchphrase:before {
		background: url(/img/ico_catchphrase01.png) no-repeat;
		background-size: 28px 22px;
		width: 28px;
		height: 30px;
		margin-right: 15px;
	}
	#team-detail-page .main-wrap .catchphrase:after {
		background: url(/img/ico_catchphrase02.png) no-repeat center 5px;
		background-size: 28px 22px;
		width: 28px;
		height: 30px;
		margin-left: 15px;
	}
	.team-message-box .img-box, .team-message-box section {
		width: 100%;
	}
	.team-detail-section05 table {
		border-spacing: 0 30px;
	}
	.team-detail-section05 table th:before {
		margin-right: 5px;
	}
	#cboxClose {
		top: 15px;
		right: 15px;
		width: 24px;
		height: 33px;
		background-size: 40px;
		background-position: 0px -87px;
	}
	#cboxLoadedContent, #cboxContent, #cboxWrapper, #colorbox {
		width: 100% !important;
		height: auto !important;
	}
	.cboxPhoto {
		max-width: 400px;
		width: 100% !important;
		height: auto !important;
	}
	.cboxPhoto
	#cboxLoadedContent {
		background: none;
	}
	#cboxWrapper {
		padding: 0 15px;
		box-sizing: border-box;
	}
	#cboxTitle {
		bottom: -110px;
		padding-bottom: 0px;
		font-size: 14px;
	}
	#cboxPrevious {
		top: 100%;
		margin-top: 15px;
		width: 40px;
		height: 44px;
		background-size: cover;
		/*left: 0;*/
		display: block;
	}
	#cboxPrevious, #cboxNext, #cboxPrevious:hover, #cboxNext:hover {
		top: 100%;
		margin-top: 15px;
		width: 40px;
		height: 43px;
		background-size: cover;
	}
	#cboxPrevious, #cboxPrevious:hover {
		left: 20px;
		width: 30px;
		height: 32px;
	}
	#cboxNext, #cboxNext:hover {
		right: 20px;
		width: 30px;
		height: 32px;
		background-position: 0 -30px;
	}
	#cboxPrevious:hover, #cboxNext:hover {
		opacity: 1;
		
	}
	/*------------------------
　　　　　recruit
	--------------------------*/
	#qa-page h3 {
		margin-bottom: 30px;
	}
	.main .qa-section01 {
		padding-bottom: 0;
	}
	#qa-page .link-box.essential-point, #qa-page .link-box.entry-form {
		width: 100%;
	}
	.recruit-link-box {
		padding: 50px 0;
	}
	.essential-point .link-box-block, .entry-form .link-box-block {
		padding: 15px 0;
	}
	.essential-point .link-box-block {
		margin-bottom: 20px;
	}
	.main .recruit-section01 h2 {
		font-size: 20px;
	}
	.recruit-section01 h2:before, .recruit-section01 h2:after {
		/*background-size: cover;*/
		background-size: contain;	
		width: 20px;
		height: 16px;
	}
	.recruit-section01 h2:before {
		margin-right: 10px;
	}
	.recruit-section01 h2:after {
		margin-left: 10px;
	}
	.recruit-oita-box, .recruit-link-area, .main .recruit-section02 {
		padding: 50px 0;
	}
	.recruit-oita-box p {
		font-size: 25px;
	}
	.recruit-link-box01, .recruit-link-box02 {
		width: 100%;
		background-size: 100% auto;
		margin-bottom: 20px;
	}
	.recruit-link-box03 p {
		font-size: 25px;
	}
	.recruit-link-box03 p:before, .recruit-link-box03 p:after {
		width: 60px;
		height: 42px;
		background-size: cover;
	}
	.about-oita-box .col01 img, .recruit-section02 {
		width: 100%;
	}
	.about-oita-box .col02 img {
		width: 50%;
	}
	.content-left {
		padding: 0;
	}
	.content-left, .content-right {
		width: 100%;
		display: block;
	}
	.content-left .content-detail:last-child {
		margin-bottom: 50px;
	}
	.recruitment-section01 .container {
		padding: 0 15px; 
	}
	.main .message-p {
		width: 100% !important;
		margin: 0 0 10px 0;
	}
	.recruit-message-box {
		padding: 25px 15px;
		/*margin-top: 30px;*/
		margin: 0 0 30px;
		display: none;
	}
	.recruit-message-box:last-child {
		margin: 0;
	}
	.recruit-message-box br {
		display: none;
	}
	.profession-box {
		padding: 10px;
	}
	.profession-box h3 {
		font-size: 16px;
		height: 26px;
		padding-left: 35px;
	}
	.profession-box h3 {
		background-size: 25px;
	}
	.profession-box-content {
		margin-top: 20px;
	}
	.profession-box .slide {
		height: 60px;
	}
	.profession-box .profession-box-heading {
		font-size: 16px;
		padding-left: 40px;
		height: 38px;
		line-height: 38px;
		background-size: 30px;
	}
	.profession-box.system.open .profession-box-heading, .profession-box.front.open .profession-box-heading, .profession-box.design.open .profession-box-heading, .profession-box.generalAffairs.open .profession-box-heading {
		background-size: 30px, 20px;
	}
	.recruitment-section04 dl {
		width: 100%;
		padding: 40px 0px 30px;
	}
	.main .recruitment-section05 p {
		margin-bottom: 30px;
	}
	.flow-btn-box {
		width: 100%;
	}
	.main .flow-btn {
		padding: 15px 0;
	}
	.flow-box li dl {
		padding: 15px;
	}
/*	.flow-box .flow01 li dl:last-of-type {
		margin-bottom: 60px;
	}*/
	.flow-box dd {
		margin-left: 100px;
	}
	.flow-box li i {
		left: 100px;
		left: 0;
		right: 0;
		margin: auto;
	}
	/*------------------------
　　　　　entry
	--------------------------*/
	.entry-section02 .left-box, .entry-section02 .right-box {
		width: 100%;
		float: none;
	}
	.entry-section02 .left-box {
		margin-bottom: 50px;
	}
	/*------------------------
　　　　　　service
	--------------------------*/
	.main .service-section01 {
		padding: 30px 0 40px 0;
	}
	.service-content-box {
		width: 100%;
	}
	.service-content-box .content {
		padding: 15px;
	}
	.service-content-box h2 {
		font-size: 18px;
		padding-bottom: 5px;
		margin-bottom: 15px;
		border-bottom: 2px solid #000;
		display: inline-block;
	}
	.service-content-box .content p {
		font-size: 14px;
	}
	.service-content-box img {
		display: none;
	}
	.service-section02 .service-list {
		width: 100%;
	}
	.service-section02 .service-list:nth-child(15) .service-description-list {
		margin: 0 auto 60px;
	}
	.service-description-list {
		max-width: inherit;
		padding: 0;
	}
	.projects-list {
		width: 50%;
	}
	#service-page .contact-recruit-section .contact-box p, .work .contact-recruit-section .contact-box p {
		margin-bottom: 20px;
	}
	.work .service-content-box img {
		display: inherit;
	}
	.main.work .service-section01 {
		padding: 30px 0 0 0;
	}
	.work .service-content-box .content {
		padding-bottom: 50px;
		text-align: center;
	}
	.work-description-data {
		width: 255px;
		margin: 0 auto;
		text-align: left;
	}
	.work-section01 .content {
		margin-bottom: 60px;
	}
	/*------------------------
　　　　　contact
	--------------------------*/
	.form-list li {
		width: 100%;
		padding: 0;
	}
	.form-list li:nth-child(1) .link-box a, .form-list li:nth-child(2) .link-box a {
		display: inline-block;
	}
	.form-list dt {
		font-size: 18px;
	}
	.form-list dd p {
		max-width: inherit;
		height: auto;
	}
	.modal-form {
		width: 100%;
		padding: 30px 15px;
	}
	.modal-form p {
		border: none;
		margin-bottom: 10px;
		padding-bottom: 0;
		font-size: 16px;
	}
	.modal-form input, .modal-form textarea {
		padding: 5px;
	}
	.modal-form input {
		height: 40px;
		margin-bottom: 10px;
	}
	.modal-form textarea {
		margin-bottom: 15px;
	}
	.form-modal #cboxClose {
		width: 20px;
		height: 20px;
		background-size: contain;
	}
	.form-modal .link-box {
		padding: 10px 45px;
	}
	/*------------------------
　　　　　privacy
	--------------------------*/
	.main .privacy-section01 p:last-child {
		margin-bottom: 60px;
	}
}	
@media screen and (max-width: 600px) {
	/*------------------------
　　　　　entry
	--------------------------*/
	.entry-section01 th {
		width: 100%;
		display: block;
		margin-bottom: 10px;
	}
	.entry-section01 th br {
		display: none;
	}
	.entry-section01 td {
		width: 100%;
		display: block;
	}
	.entry-section01 input, .entry-section01 select {
		height: 40px;
		padding: 5px;
	}
	.entry-section01 #fakeResumeFile, .entry-section01 #fakeCvFile {
		width: 100%;
		margin-bottom: 10px;
	}
	.file-button-box {
		padding-left: 0;
		width: 190px;
	}
	.file-button-box, .main .file-button-box p, .file-button-box input {
		float: right;
	}
	.file-button-box input {
		width: 190px;
		height: 30px;
	}
	.button-input-add {
		margin-left: 0;
	}
	.add-attention {
		margin-left: 30px;
	}
}
@media screen and (max-width: 540px) {
	/*------------------------
			common
	--------------------------*/
	.service-list-box ul {
		width: 100%;
	}
	.link-box a {
		display: block;
		text-align: center;
		padding: 15px;
		text-align: center;
	}
	.gallery-box li {
		width: 50%;
	}
	.message-link-box .link-box a {
		width: 100%;
		padding: 15px 20px;
		font-size: 14px;
	}
	.main .link-box-block {
		width: 100%;
	}
	.main .width100 {
		width: 100%;
	}
	/*------------------------
			top
	--------------------------*/
	.main .main-section p.subscript{
		margin: 25px 0 5px;
	}
	#top-page .main-section h1{
		margin-bottom: 30px;
	}
	/*------------------------
			recruit
	--------------------------*/
	.recruitment-box .link-box a {
		width: 100%;
	}
	.recruit-link-box01 .link-box, .recruit-link-box02 .link-box {
		height: 56px;
	}
	/*------------------------
			contact
	--------------------------*/
	.form-list li:nth-child(1) .link-box a, .form-list li:nth-child(2) .link-box a {
		display: block;
	}
}
@media screen and (max-width: 480px) {
	/*------------------------
			recruit
	--------------------------*/
	.recruit-link-box01, .recruit-link-box02 {
		height: 150px;
	}
}
@media screen and (max-width: 355px) {
	/*------------------------
			recruit
	--------------------------*/
	.recruit-link-box01 {
		margin: 0;
	}
}
