@charset "utf-8";
#profile.inner-page-ttl{ background:url(../img/profile/main_img.jpg) no-repeat center center / cover;}
#service.inner-page-ttl{ background:url(../img/service/main_img.jpg) no-repeat center center / cover;}
#recruit.inner-page-ttl{ background:url(../img/recruit/main_img.jpg) no-repeat center center / cover;}
#contact.inner-page-ttl{ background:url(../img/contact/main_img.jpg) no-repeat center center / cover;}


@media screen and (min-width:768px){
/*pc・タブレットcss*/


/* +++++++++++++++++++++++++ */

#wrapper{
	position:relative;
}
.content-area{
	width:100%;
	max-width:1200px;
	margin-left: auto;
	margin-right: auto;
}
.content-area-inner{
	width:100%;
	max-width:1000px;
	margin-left: auto;
	margin-right: auto;
}

/* +++++++++++++++++++++++++　btn */

.base-btn{
}
.base-btn a{
	display:block;
	margin: 0 auto;
	padding:10px;
	font-size:24px;
	text-align:center;
	border: solid 1px #231815;
	background-color:#fff;
	letter-spacing:0.25em;
	text-indent:-0.25em;
}
.base-btn a:after{
	content:" →";
	font-size:70%;
}
.base-btn.btn-inline a{
	display:inline-block;
	min-width:430px;
}
.base-btn.btn-block a{
	display:block;
}

/* +++++++++ */

.base-btn.c-w a{
	border: solid 1px #fff;
	background-color: transparent;
	color:#fff;
}

/* +++++++++ */

.base-btn.c02 a{
	border: solid 1px #00A0E9;
	background-color: transparent;
	color:#00A0E9;
}


/* +++++++++++++++++++++++++ */

#common-header{
	position:relative;
	width:100%;
	height:80px;
}
#top #common-header{
}
#common-header #header-logo{
	width:100%;
	margin-left:2vw;
	font-family: "Hannari", serif;
	font-size:0.7vw;
	line-height:1;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-align: flex-end; -ms-flex-align: flex-end; -webkit-align-items: flex-end; align-items: flex-end;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
#common-header #header-logo img{
	width:390px;
	margin-right:20px;
}

.navi-btn{
	position:absolute;
	top:20px;
	right:2vw;
	display:block;
	width:50px;
	height:30px;
}
.navi-btn .gnavi-toggle{
	cursor:pointer;
	font-size:11px;
	letter-spacing:0.25em;
	text-align:center;
	color:#fff;
}
.navi-btn .gnavi-toggle .gnavi-toggle-inner{
	position:relative;
	width:100%;
	height:40px;
}
.navi-btn .gnavi-toggle span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 5px;
	background-color:#9FA0A0;
	-webkit-transition: all .4s;
	transition: all .4s;
}
.navi-btn .gnavi-toggle span:nth-of-type(1) {
	top: 0;
}
.navi-btn .gnavi-toggle span:nth-of-type(2) {
	top: 50%;
	margin-top:-2px;
}
.navi-btn span:nth-of-type(3) {
	bottom: 0;
}

.navi-btn .gnavi-toggle.active span {
	border-radius: 0;
}
.navi-btn .gnavi-toggle.active span:nth-of-type(1) {
	transform: translateY(17px) rotate(-315deg);
}
.navi-btn .gnavi-toggle.active span:nth-of-type(2) {
	opacity: 0;
}
.navi-btn .gnavi-toggle.active span:nth-of-type(3) {
	width:100%;
	margin-left:0%;
	transform: translateY(-17px) rotate(315deg);
}

	
/* +++++++++++++++++++++++++　gnavi */
	
.navi-child{
	display:none;
	position: absolute;
	top:80px;
	left:0;
	z-index:1001;
	width:100%;
	padding:3vw 5vw;
	background-color:rgba(0,0,0,0.9);
}
.navi-child.active{
	display:block;
}
.navi-child{
}
.navi-child-inner{
}
.navi-child-inner ul{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.navi-child-inner li{
	margin: 0 2em;
}
.navi-child-inner li a{
	color:#fff;
}


/* +++++++++++++++++++++++++ */


#common-footer{
	padding:40px 0;
	background-color:#E7EEE8;
}
#common-footer .sitemap-link{
	margin-bottom:30px;
}
#common-footer .sitemap-link li{
	margin: 0 0.5em;
}
#common-footer .footer-contact-btn a{
	display:block;
	max-width:720px;
	margin: 0 auto 30px;
	padding:10px;
	font-size:26px;
	font-weight:700;
	text-align:center;
	background-color:#fff;
	border: solid 1px #231815;
}
#common-footer .footer-contact-btn a:after{
	content:" →";
	font-size:70%;
}

#common-footer .footer-logo{
	max-width:500px;
	margin: 0 auto 30px;
}
#common-footer .footer-address{
	text-align:center;
	font-size:14px;
}
#common-footer .copyright{
	text-align:center;
	font-size:11px;
	color:#000;
	margin:0;
    opacity:1;
}

/* +++++++++++++++++++++++++ */

#site-navi{
	
}
#site-navi ul{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
#site-navi li{
	width:calc(100% / 5);
	border-right: solid 1px #00ADA9;
	border-top: solid 1px #00ADA9;
	border-bottom: solid 1px #00ADA9;
}
#site-navi .columns4 li{
	width:calc(100% / 4);
}
#site-navi li:last-child{
	border-right:none;
}
#site-navi li a{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	width:100%;
	height:100%;
	padding:1vw;
	background-color:#fff;
	text-align:center;
	line-height:1.3;
	color:#00ADA9;
}
#site-navi li a:hover{
	opacity:1;
	color:#fff;
	background-color:#00ADA9;
}



}

@media screen and (min-width:768px) and ( max-width:1200px) {
	
	.content-area{
		padding-left:5vw;
		padding-right:5vw;
	}


}

@media (max-width: 768px) {
	
	
	
	.content-area{
		padding-left:5vw;
		padding-right:5vw;
	}

	/* +++++++++++++++++++++++++　btn */
	
	.base-btn{
	}
	.base-btn a{
		display:inline-block;
		margin: 0 auto;
		padding:10px;
		font-size:16px;
		text-align:center;
		border: solid 1px #231815;
		background-color:#fff;
		letter-spacing:0.25em;
		text-indent:-0.25em;
	}
	.base-btn a:after{
		content:" →";
		font-size:70%;
	}
	.base-btn.btn-inline a{
		min-width:100%;
	}

	/* +++++++++ */
	
	.base-btn-mini{
	}
	.base-btn-mini a{
		display:inline-block;
		padding:4vw 5vw;
		text-align:center;
		border: solid 1px #000;
		border-radius:1000px;
		line-height:1;
	}
	.base-btn-mini a:after{
		content:" →";
	}
	.base-btn-mini.c-w a{
		border: solid 1px #fff;
		color:#fff;
	}
	
	


	
	/* +++++++++++++++++++++++++ */
	
	#common-header{
		width:100%;
		height:14vw;
		padding-top:1vw;
	}
	#common-header #header-logo{
		width:100%;
		padding:0 2vw;
		position:relative;
		z-index:10;
	}
	#common-header #header-logo img{
		width:60%;
		vertical-align:middle;
	}
	#common-header #header-logo .txt{
		display:none;
	}
	
	#common-header .header-right .header-contact{
		display:none;
	}
	#common-header .gnavi{
		display:block;
	}
	.navi-btn{
		position: fixed;
		z-index:1000;
		top:4vw;
		right:3vw;
		display:block;
		width:8vw;
		height:4vw;
	}
	.navi-btn .gnavi-toggle{
		cursor:pointer;
		font-size:9px;
		letter-spacing:0.1em;
		text-align:center;
		color:#fff;
	}
	.navi-btn .gnavi-toggle .gnavi-toggle-inner{
		position:relative;
		width:100%;
		height:5.6vw;
		margin: 0 auto;
		padding-top:5vw;
	}
	.navi-btn .gnavi-toggle span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 3px;
		background-color:#9FA0A0;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.navi-btn .gnavi-toggle span:nth-of-type(1) {
		top: 0;
	}
	.navi-btn .gnavi-toggle span:nth-of-type(2) {
		top: 50%;
		margin-top:-2px;
	}
	.navi-btn span:nth-of-type(3) {
		bottom: 0;
	}
	
	.navi-btn .gnavi-toggle.active span {
		border-radius: 0;
	}
	.navi-btn .gnavi-toggle.active span:nth-of-type(1) {
		transform: translateY(2.4vw) rotate(-315deg);
	}
	.navi-btn .gnavi-toggle.active span:nth-of-type(2) {
		opacity: 0;
	}
	.navi-btn .gnavi-toggle.active span:nth-of-type(3) {
		width:100%;
		margin-left:0%;
		transform: translateY(-2.4vw) rotate(315deg);
	}
	
	/* +++++++++++++++++++++++++　gnavi */
	
	.navi-child{
		display:none;
	}
	.navi-bg.active{
		display: block;
	}
	.navi-child{
		display:none;
		position:absolute;
		top: 0;
		top: 0;	
		left:0;
		z-index:101;
		width:100%;
		height:100vh;
		padding-bottom:50vw;
		overflow-y:scroll;
		background-color:rgba(0,0,0,0.8);
		padding:10vw 5vw;
	}
	.navi-child.active{
		display:block;
		position:fixed;
	}
	#common-header.active{
        position: relative;
        z-index: 1000;
    }
	body.active,
	html.active{
		overflow:hidden;
		height:100%;
	}
	
	.navi-child-inner{
	}
	.navi-child .gnavi li{
		font-size:14px;
		border-bottom: dashed 1px #fff;
	}
	.navi-child .gnavi li a{
		display:block;
		width:100%;
		text-decoration:none;
		color:#fff;
		padding:3vw;
		padding-left:0.5em;
	}
	
	/* +++++++++++++++++++++++++ */
	
	
	#common-footer{
		padding:5vw 0;
		background-color:#E7EEE8;
	}
	#common-footer .sitemap-link{
		margin-bottom:3vw;
	}
	#common-footer .sitemap-link li{
		margin: 0 0.5em;
	}
	#common-footer .footer-contact-btn a{
		display:block;
		max-width:100%;
		margin: 0 auto 5vw;
		padding:1vw;
		font-size:20px;
		font-weight:700;
		text-align:center;
		background-color:#fff;
	}
	#common-footer .footer-contact-btn a:after{
		content:" →";
		font-size:70%;
	}
	
	#common-footer .footer-logo{
		max-width:70%;
		margin: 0 auto 5vw;
	}
	#common-footer .footer-address{
		text-align:center;
	}
	#common-footer .copyright{
		text-align:center;
		font-size:11px;
		color:#000;
		margin:0;
		opacity:1;
	}
	/* +++++++++++++++++++++++++ */
	
	#site-navi{
	}
	#site-navi ul{
		border: solid 1px #00ADA9;
	}
	#site-navi li{
		width:100%;
		border-bottom: solid 1px #00ADA9;
	}
	#site-navi li:last-child{
		border-bottom:none;
	}
	#site-navi li a{
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
		-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
		width:100%;
		height:100%;
		padding:3vw 2vw;
		background-color:#fff;
		text-align:center;
		line-height:1.3;
		color:#00ADA9;
	}
	#site-navi li a:hover{
		opacity:1;
		color:#fff;
		background-color:#00ADA9;
	}
		
	
	
}


