@charset "UTF-8";
body{
    font-size:14px;
	background:url(images/share/body.png);
	font-family:"Sawarabi Gothic","ヒラギノ角ゴ Pro W3","ＭＳ ゴシック", "MS PGothic", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka;
}
/*------------------------------------*/
#wrap {
    width:96%;
    margin:0 auto;
	padding-top: 5em;
}
/*------------------------------------*/
/*ページヘッダー*/
#shareheader{
	background:-webkit-linear-gradient(left, rgba(255,255,255,.8) 11%, rgba(96, 150, 218, 0.8) 30%, rgba(22, 51, 136, 0.9));
	background:-o-linear-gradient(left, rgba(255,255,255,.8) 11%, rgba(96, 150, 218, 0.8) 30%, rgba(22, 51, 136, 0.9));
	background:linear-gradient(to right, rgba(255,255,255,.8) 11%, rgba(96, 150, 218, 0.8) 30%, rgba(22, 51, 136, 0.9));;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 8888;
}
#shareheader+p{
	height:5em;
}
#shareheader>div{
	height:4em;
	padding:0 1em;
}
#header-u h1{
}
#header-l{
    width: 50%;
}
#header-r{
	width:88%;
}
/*------------------------------------*/
/*ページタイトル*/
#sharetitle{
	background: rgba(255,255,255,.4);
}
.contacttitle{
	padding-top:1em;
}
#sharetitle h1{
	font-size: 300%;
    font-weight: bold;
    color: #1c588c;
    margin: -.8em auto .2em;
    text-shadow: 0 -0.05em 0.05em white;
}
#sharetitle h1 span{
	display: block;
	font-size:30%;
	line-height: 120%;
	font-weight: normal;
}
/*------------------------------------*/
/*front*/
#mainimage{
	overflow: hidden;
	border-bottom: 1.5em solid #000080;
}
#bgvid{
    position: absolute;
    z-index: -1;
    width: auto;
    height: 30em;
}
#topmovie{
	height:30em;
	width:100%;
	position: absolute;
	left:0;
	top:0;
}
#front0{
	background:url(images/front/front0.jpg)center no-repeat;
	background-size:cover;
	padding:2em .4em 3em;
	font-size:110%;
	text-shadow: 0 0 1em white,0 0 1em white,0 0 1em white,0 0 1em white,0 0 1em white,0 0 1em white,0 0 1em white;
}
#front0 h2{
	font-size:140%;
}
#front0 h2+p{
	font-size:90%;
	margin-bottom:2em;
}
#front0 h2+p:before{
	content:"〜 ";
}
#front0 h2+p:after{
	content:" 〜";
}
#front0 li{
	border:.2em solid white;
	border-radius: 1em;
	padding:1em;
	margin-bottom: 1em;
	background: rgba(255,255,255,.3);
}
#front0 h3{
	border-bottom:.1em solid green;
	font-size:160%;
	font-weight: bold;
	margin-bottom:.4em;
	color:#038668;
}
#front0 p{
	line-height: 150%;
}
#front1{
	padding:1em 0 3em;
}
#front1>div{
}
#front1l li:nth-of-type(1){
	margin-bottom: 2em;
    padding: 6em 2em 3em;
    background: url(images/front/front1l_on.png)center top 1em no-repeat;
    background-size: 90vw auto;
}
#front1l li:nth-of-type(2){
	border-top:1px solid #aaa;
	padding:2em;
}
#front1 li>div:nth-of-type(2)>div{
	margin-bottom:1em;
}
#front1 li>div:nth-of-type(2)>div>div{
	width:20%;
}
#front1 li>div:nth-of-type(2)>div>h2{
	font-size:200%;
	padding:0 1em;
}
#front1l blockquote{
	margin:0 auto;
	font-size:90%;
	line-height:120%;
	margin-bottom:1em;
}
#front1l blockquote p span{
	color:#A00000;
}
#front1l h2{
	font-size:120%;
	font-weight: bold;
}
#front1l h2 cite{
	font-style: normal;
}
#front1r{
	margin-top:2em;
}
#front2{
	margin-top:5em;
}
#front2 li{
	width:33.33%;
	margin:.1em;
}
#front2 li:nth-of-type(2){
	-moz-transition-delay:.4s;
	-webkit-transition-delay:.4s;
	-o-transition-delay:.4s;
	-ms-transition-delay:.4s;
}
#front2 li:nth-of-type(3){
	-moz-transition-delay:.8s;
	-webkit-transition-delay:.8s;
	-o-transition-delay:.8s;
	-ms-transition-delay:.8s;
}
#fsbtn a{
    display: block;
    width: 10em;
    padding: .6em 3em;
    background: #84b4d2;
    transition-duration: 0.4s;
    margin: 0 auto 2em;
    color: white;
    font-size: 120%;
    line-height: 150%;
}
#main01{
	position:absolute;
	left:0;
	top:0;
}
#mainimage:before{
	content: "";
    height: .5%;
    width: 0;
    position: absolute;
    left: 50%;
    bottom: 21.7%;
    background: red;
	-moz-transition-delay:.6s;
	-webkit-transition-delay:.6s;
	-o-transition-delay:.6s;
	-ms-transition-delay:.6s;
    transition-duration: 3s;
	z-index: 1;
}
.mainhr:before{
	width:90% !important;
	left:5% !important;
}
#main00 img{
	opacity: 0;
}
#main00:before{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:0;
	background:url(images/front/m_main02a.png) top center no-repeat;
	background-size:100% auto;
	-moz-transition-delay:2s;
	-webkit-transition-delay:2s;
	-o-transition-delay:2s;
	-ms-transition-delay:2s;
	transition-duration:.4s;
}
#main00:after{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:0;
	background:url(images/front/m_main01a.png) bottom center no-repeat;
	background-size:100% auto;
	-moz-transition-delay:2s;
	-webkit-transition-delay:2s;
	-o-transition-delay:2s;
	-ms-transition-delay:2s;
	transition-duration:.4s;
}
.main00img:before,
.main00img:after{
	height:100% !important;
}
#topmovie:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 30em;
    left: 0;
    top: 0em;
    background: url(images/front/m_main00.png)center bottom 27% no-repeat;
    background-size: 86% auto;
    z-index: 1;
}
#topmovie:after{
	content:"";
	width:100%;
	height:30em;
	position:absolute;
	left:0;
	top:0;
	background:rgba(2, 147, 255, 0.4);
}
#overwhite{
	background:white;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	opacity: 0;
	-moz-transition-delay:2s;
	-webkit-transition-delay:2s;
	-o-transition-delay:2s;
	-ms-transition-delay:2s;
	transition-duration:.4s;
}
.overwhiteon{
	opacity: 1 !important;
}
#main03{
	position:absolute;
	left:0;
	top:0;
}
#footerbanner{
	overflow: hidden;
}
#footerbanner li{
	margin-bottom:1em;
}
#front2:before{
    content: "";
    width: 100%;
    height: 6em;
    position: absolute;
    top: -5em;
    left: 0;
    background: url(images/front/service_off.png)center top no-repeat;
    background-size: 90vw auto;
    transition-duration: 0.4s;
    z-index: -1;
}
/*-------------------------------------------------------------*/
/*service*/
#service{
	overflow: hidden;
}
#service1l1>div,
#service1l2>div,
#service1r2>div{
    background: linear-gradient(-45deg,rgba(0,0,0,.2),rgba(0,0,0,.5));
    padding: 1em;
	color:white;
}
#service1l1>div,
#service1l2>div{
	margin-top:-3em;
}
#service1 h2{
    font-size: 200%;
    font-weight: bold;
    margin-bottom: .4em;
    color: #eaf5ff;
    border-bottom: .1em solid green;
	line-height:200%;
}
#service2{
	padding:.4em;
	margin-bottom:1em;
}
#service2 ul{
	padding:.4em .4em 0;
	background:url(images/service/service2.jpg) center no-repeat;
	backiground-size:cover;
}
#service2 li{
	margin-bottom:1em;
	padding:.2em;
    border-radius: 3em 0;
	width:49%;
    background: rgba(241, 241, 241, 0.7);
}
#service2 li:last-of-type{
	background:none;
}
#service2 li h2{
    font-weight: bold;
    background: url(images/share/title.png)left top no-repeat;
    background-size: auto 100%;
    padding: 1em 0 0 2em;
    border-bottom: 1px dotted #aaa;
    margin-bottom: .4em;
}
#frontpage #service2 h2{
	border-bottom:none;
	margin-bottom:0;
}
.f9{
	font-size:90%;
}
/*-------------------------------------------------------------*/
/*review*/
#review{
	padding:2em 0;
	overflow: hidden;
}
#review li{
	margin-bottom:5em;
}
#review li:nth-of-type(even)>div:nth-of-type(2){
	-webkit-order:-1;-ms-flex-order:-1;order: -1;
}
#review h2{
	font-size:160%;
	font-weight: bold;
	border-bottom:.2em solid green;
	margin-bottom:.4em;
}
/*------------------------------------*/
/*FAQ*/
#question1{
    padding: 2em 0 5em;
}
#question1 li p:nth-of-type(1){
	font-size: 110%;
    border-bottom: .1em dotted #0D568C;
    padding-top: 1em;
    padding-left: 1em;
    color: #243A65;
}
#question1 li p:nth-of-type(2){
    padding: 1em 1em 2em 4em;
    display: none;
    color: #555;
}
/*-------------------------------------------------------------*/
/*スケジュール*/
#schedule1p{
	font-size: 90%;
    line-height: 150%;
    margin: 2em auto 0;
    color: #ab1515;
}
#schedule:active{
	pointer-events: none;
}
/*-------------------------------------------------------------*/
/*performance*/
#performance{
	padding:0 0 5em;
}
/*------------------------------------*/
/*お問い合わせ*/
#contact1{
    background:rgba(255,255,255,.6);
    padding: 3em 1em;
}
.wpcf7{
	margin:2em auto 0;
}
.wpcf7 table{
	border-spacing:0;
	color:#333;
	width:100%;
	font-size:90%;
	margin-bottom:2em;
}
.wpcf7 th,
.wpcf7 td{
	font-weight:normal;
	text-align: left;
	display: block;
}
.wpcf7 th{
}
.wpcf7 td{
    border-bottom:1px solid black;
	margin-bottom:1em;
}
.wpcf7 td input:not([type=radio]),
.wpcf7 td textarea{
	width:90%;
	font-size:100%;
	border:none;
}
.wpcf7 td .wpcf7-form-control-wrap{
	width:100%;
}
.wpcf7 td span.wpcf7-form-control>span:not(:first-child) input[type=radio]{
}
.wpcf7 td span.wpcf7-form-control>span:nth-of-type(1) input[type=radio]{
	margin-right:.4em;
}
.wpcf7 td textarea{
	border:1px solid black;
    height: 8em;
}
.wpcf7-response-output{
	color:red;
	text-align: center;
}
.hissu,
.ninni{
	font-size:80%;
	padding:.2em;
	color:white;
	margin-left:.5em;
}
.hissu{
	background:red;
}
.ninni{
	background:#aaa;
}
input[type=checkbox]{
	cursor:pointer;
}
.wpcf7 input[type=submit]{
    padding: .2em 2em;
    border-radius: 5px;
    margin: 3em auto 1em;
    cursor: pointer;
    background: #47caff;
    color: white;
    width: 36% !important;
}
.screen-reader-response{
	display: none !important;
}
.wpcf7-not-valid-tip{
	display:inline-block;
	font-size:90%;
	color:red;
}
.wpcf7-validation-errors{
	text-align: center;
	color:red;
}
.wpcf7 label{
	cursor:pointer;
}
.h3content p{
	height:6em;
	overflow-y: scroll;
	border:1px solid #aaa;
	padding:.4em;
	margin-bottom:2em;
}
/*-------------------------------------------------------------*/
/*会社紹介*/
#company{
	overflow: hidden;
}
#company1{
	margin:3em auto;
}
#company1 h2,
#company3 h2{
	font-size:160%;
	border-bottom: .2em solid green;
	margin-bottom:2em;
}
#company1 h2{
	margin-bottom:.4em;
}
#company2{
    margin: 5em auto;
}
#company2>div{
	background: url(images/company/company1_off.png)left top no-repeat;
    background-size: 100% auto;
    padding-top: 4.5em;
}
#company2>div>div{
	width:100%;
}
#company2>div>div:nth-of-type(2){
	-webkit-order:-1;-ms-flex-order:-1;order: -1;
	height: 12em;
    overflow: hidden;
	margin-bottom: 2em;
}
#company2>div>div:nth-of-type(2) p{
	position: absolute;
	left:0;
	bottom:-2em;
}
#company2 h2{
	font-size:120%;
	margin-bottom:1em;
}
#company3>div:nth-of-type(1){
    background:url(images/company/company3_on.jpg)center no-repeat;
	background-size:cover;
    margin-bottom: 3em;
}
#company3>div:nth-of-type(1)>div{
	box-shadow: 0 .5em 1em #4d6a96;
	background:rgba(255,255,255,.85);
	padding:1em 0;
}
#company3 table{
	border-spacing: 0;
}
#company3 th,
#company3 td{
	box-sizing: border-box;
	border-bottom:1px dotted #ccc;
}
#company3 th{
	width:22%;
}
#company3 td{
	width:78%;
}
#gmap{
	height:30em;
	margin-bottom:2em;
}
#gmap iframe{
	width:100%;
	height:100%;
}
/*-------------------------------------------------------------*/
/*facebook*/
.facebook-wrapper {
    max-width: 500px;
    margin: 0 auto;
}
.facebook-wrapper > .fb-page {
    width: 100%;
}
.facebook-wrapper > .fb-page > span,
.facebook-wrapper iframe {
    width: 100% !important;
}
/*------------------------------------*/
/*404*/
#notfound{
	padding:0 10%;
	margin:5em auto;
}
#notfound header{
	margin-bottom:2em;
}
#notfound>div>div:nth-of-type(1) p:nth-of-type(1){
    font-size: 30vw;
    line-height: 100%;
}
#notfound>div>div:nth-of-type(1) p:nth-of-type(2){
	font-size:300%;
    line-height: 100%;
    margin-bottom: 2em;
}
#notfound>div>div:nth-of-type(2) p:nth-of-type(1){
	margin-bottom:3em;
}
/*------------------------------------*/
/*ページフッター*/
#footerbanner li:nth-of-type(3){
	width:100%;
}
#footerbanner h3{
    font-size: 160%;
    border-bottom: .2em solid green;
    margin:2em auto 1em;
}
#footerbanner li>div{
    background: url(images/share/footerask_on.png)center no-repeat;
    background-size: 100vw auto;
}
#footerask+div{
}
#footerask+div>div:nth-of-type(1){
	margin-bottom:1em;
}
#footerask+div>div>p:nth-of-type(1){
	font-size:120%;
}
#footertel p:nth-of-type(2){
	font-size:300%;
	line-height: 100%;
	color: #6882a2;
}
#footermail p:nth-of-type(2){
	font-size:140%;
	line-height: 100%;
}
#footermail p:nth-of-type(2) a{
	color: #717171;
}
#sharefooter{
}
#footerlogo{
	width:30vw;
	margin:1em auto 3em;
}
.footernav ul{
	border-top:1px solid #ddd;
}
.footernav li{
	width:50%;
	border-bottom:1px solid #ddd;
	line-height:200%;
}
.footernav li:nth-of-type(odd){
	border-right:1px solid #ddd;
}
#copyright{
    margin-top: 1em;
    border-top: 1px solid #aaa;
    padding: 2em 0;
}
#totop{
    background: #3a6b90;
    position: fixed;
    right: .4em;
    bottom: .4em;
    font-size: 300%;
    color: white;
    cursor: pointer;
    transition-duration: 0.4s;
    width: 12vw;
    height: 12vw;
    line-height: 9.5vw;
    text-align: center;
}
#mnav>div{
    position: fixed;
    left: -70%;
    top: 4em;
    height: calc(100vh - 4em);
    background: rgba(0,0,0,.8);
    width: 70%;
	z-index: 9999;
	transition-duration:0.4s;
}
#mnav>div>div:nth-of-type(2){
	position: absolute;
	left:0;
	bottom:2em;
	width:100%;
	padding-left:2em;
}
#mnav>div>div:nth-of-type(2) li{
	width:3em;
	margin-bottom:1em;
	margin-right:1em;
}
.mnavdiv{
	left:0 !important;
}
.menu-trigger,
.menu-trigger span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
}
.menu-trigger {
	position: fixed;
    height: 3em;
    width: 3em;
    border-radius: .5em;
    margin-top: .5em;
    right: 1em;
    top: 0;
    z-index: 9000;
}
.menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: .2em;
    background-color: #fff;
    border-radius: .1em;
}
.menu-trigger span:nth-of-type(1) {
top: 12%;
}
.menu-trigger span:nth-of-type(2) {
top: 46%;
}
.menu-trigger span:nth-of-type(3) {
bottom: 12%;
}
.menu-trigger.active span:nth-of-type(1) {
-webkit-transform: translateY(1em) rotate(-315deg);
transform: translateY(1em) rotate(-315deg);
}
.menu-trigger.active span:nth-of-type(2) {
opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
-webkit-transform: translateY(-1.05em) rotate(315deg);
transform: translateY(-1.05em) rotate(315deg);
}
#mnav>div>div:nth-of-type(1) ul{
	display: block;
	border-top:none;
	padding-top:4em;
}
#mnav>div>div:nth-of-type(1) li{
	width:60vw;
	margin:0 auto;
	line-height:300%;
}
#mnav>div>div:nth-of-type(1) li:nth-of-type(odd){
	border-right:none;
}
/*------------------------------------*/
/*求人情報*/
#recruit{
	overflow: hidden;
}
#recruit1{
	margin:2em auto;
	padding:5em 0;
	background:url(images/recruit/recruit1.jpg)center no-repeat;
	background-size:cover;
}
#recruit1>div{
	width: 45%;
    margin-right: 44%;
    margin-left: auto;
}
#recruit1>div:before{
	content: "";
    width: 150%;
    height: 180%;
    background: radial-gradient(at 50% 50%,white,rgba(255,255,255,0) 80%);
    position: absolute;
    left: -25%;
    top: -40%;
}
#recruit>div:not(#recruit1) h2{
	font-size:140%;
	font-weight: bold;
	border-bottom:.2em solid green;
	line-height: 150%;
	margin-bottom:.8em;
}
#recruit2>div>div{
	margin-bottom:3em;
}
#recruit2 h3{
	margin-bottom:1em;
	background:#eee;
	line-height:200%;
}
#recruit2 th,
#recruit2 td{
	display: block;
}
#recruit2 th{
	border-bottom:1px dotted #ddd;
}
#recruit2 th:before{
	content:"▶　";
	color:green;
}
#recruit2 th span{
	font-size:140%;
}
#recruit2 td{
	padding-left:2em;
	color:#777;
}
#recruit3{
	background: url(images/recruit/recruit3_on.jpg)right bottom no-repeat;
    background-size: auto 90%;
}
#recruit3 table{
    border-spacing: 0;
    background: rgba(255,255,255,.8);
}
#recruit3 th,
#recruit3 td{
	padding:.6em 0;
}
#recruit3 th{
	width:35%;
}
#recruit3 td{
	width:65%;
}
#recruit4{
	padding:7em 0 3em;
}
/*--------------------------------------------------------------------------*/
.mdn{display:none !important;}