/*/////////////////////////////////////////////////////////////////////////////////////////////*/
/* setting */
/*/////////////////////////////////////////////////////////////////////////////////////////////*/



/* body
---------------------------------------------------- */
body {
font-family: -apple-system, BlinkMacSystemFont,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
color: #000;
line-height:1.5em;
font-size:100%;
text-align:center;
background:#FFF;
-webkit-text-size-adjust: 100%;
letter-spacing: -0.05em;
}


/*link
---------------------------------------------------- */
A {text-decoration: none; cursor:pointer;} 
A:link { color: #000; font-weight:nomal; } 
A:visited { color: #03C; }
A:active { color: #03C; }
A:hover { color: #03C; text-decoration: underline; }







/*===============================================
共通
===============================================*/





main { clear:both; }








.hd01 { margin-bottom:1em; text-align:left; border-bottom:1px solid #000; }

.p01 { color:#000; }
.p01 a { color:#FFF; text-decoration:underline; }


.swiper-container img { width:100%; }

.bg01 { background:#dbbba1; padding:2em 0; width:100%; }





#textsize { float:left; width:60%; text-align:left; margin-top:5px; }
#textsize li { display:inline-block; background:#A7C93E; margin-right:3px;  }
#textsize li a { display:block; padding:2px 6px; color:#000; text-decoration:none; }
#textsize li.title { display:inline-block; background:none; margin-right:3px;  }


.f1 { font-size:smaller; }
.f2 { font-size:100%; }
.f3 { font-size:larger; }


.img100 { width:100%; }


.tbl01 { width:100%; }
.tbl01 tr { margin:0.3em 0; }
.tbl01 tr td { padding:0.5em 0; text-align:left; }
.tbl01 tr td:first-child { width:20%; color:#808080; vertical-align:top; }

.tbl02 { border-collapse: collapse; width:100%; margin:10px 0; }
.tbl02 tr { border:1px solid #c0c0c0; }
.tbl02 tr td { border:1px solid #c0c0c0; vertical-align:middle; padding:5px; }
.tbl02 tr td.center { text-align:center; }
.tbl02 tr td.right { text-align:right; }
.tbl02 tr td.color { background:#87cefa; }
.tbl02 tr td.none { border:none; }

.companylogo { width:90%; margin-bottom:60px; text-align:left; }
.companylogo img { width:200px; }

table { border:1px solid #808080; border-collapse: collapse; width:90%; margin:1em 0; }
table tr td { border:1px solid #808080; vertical-align:middle; padding:5px; }




 /* others
---------------------------------------------------- */
#scrollUp {
    background:url(../images/btn03.png);
    bottom: 10px;
    right: 10px;
    width: 65px;    /* Width of image */
    height: 65px;   /* Height of image */
}

/* slider
---------------------------------------------------- */
.slider { width:100%; z-index:1; margin:0 auto;}
.slick-slide:not(.slick-center) {
  -webkit-filter: opacity(100%);
  -moz-filter: opacity(100%);
  -o-filter: opacity(100%);
  -ms-filter: opacity(100%);
  filter: opacity(100%);
  transition: 0.2s linear;
}

.slider img { width:100%; margin: 0 auto;}

/* photos
---------------------------------------------------- */



/* address
---------------------------------------------------- */





/*===============================================
タブレット用
===============================================*/
@media screen and (min-width: 860px){

.humWP { display:none; }
#humberger { display:none; }




/* layout */

header { position:fixed; display:block; margin:0 auto; width:100%; z-index:10; background:#0085C9; border-bottom:3px solid #000; }
header h1 { height:60px; width:100%; margin:0 auto; }
.headimg { text-align:left; float:left; width:40%; margin:5px 0; }
.headimg img { width:95%; max-width:385px; max-height:50px; display:block; margin:0 auto; }
.menu { display:-webkit-flex; display:flex; -webkit-justify-content:between-around; justify-content:between-around; flex-wrap:wrap; width:60%; float:right; }
.menu div { width:24%; margin:0; line-height:60px; border-left:1px solid #FFF; position: relative; }
.menu div:last-child { border-right:1px solid #FFF; }
.menu div a.topmenu { display:block; color:#FFF; text-decoration:none; position:relative; letter-spacing:3px; font-size:150%; font-weight:lighter; }
.menu div a.topmenu::after { content:""; position:absolute; bottom:2px; left:0; width:100%; height:3px; background:#FFF; 
                     transition:all.3s; transform:scale(0,1); transform-origin:left top; }
.menu div a.topmenu:hover::after { transform:scale(1,1); }
.menu div ul { position:absolute; top:60px; left:0px; width:100%; visibility:hidden; opacity:0 transition:all .3s; }
.menu div:hover>ul { visibility:visible; opacity:1; }
.menu div ul li { height:50px; background:#000; border-bottom:1px solid #FFF; }
.menu div ul li a { display:block; text-decoration:none; color:#FFF; line-height:50px; font-size:120%; font-weight:lighter; }

.menu02 { position:fixed; bottom:15px; right:15px; z-index:5; }
.menu02 div { margin:3px; height:40px; width:130px; background:#FFF; border:1px solid #0f0f0f; }
.menu02 div a { color:#000; line-height:40px; font-size:20px; font-weight:bold; }
.menu02 div a span { display:block; }
.menu02 div img { height:100%; }

.slider_sh { display:none; }

.newsborder { border-left:5px solid #0085C9; position:relative; }
.newsborder::after { content:""; display:block; border-right:5px solid #0099BB; height:25px; position:absolute; bottom:0; left:-5px; }

.news { margin:0 auto 2em auto; text-align:left; width:90%; }
.news h2 { text-align:left; line-height:50px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.news div { padding:1em 0; clear:both; }
.news div dt { width:20%; float:left; color:#808080; }
.news div dd { width:80%; float:right; }
.news div dd img { margin:5px 10px; }

.news01 { margin:0 auto 2em auto; text-align:left; width:100%; }
.news01 h2 { text-align:left; line-height:50px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.news01 div { padding:1em 0; border-bottom:1px dotted #000; }
.news01 div:last-child { border:none; }
.news01 div dt { color:#808080; }
.news01 div dd { padding:0.2em 0; }
.news01 div dd.dd01 { font-weight:bold; font-size:120%; }
.news01 div dd img { margin:5px 10px; }

.comp { margin:0 auto 2em auto; text-align:left; width:90%; }
.comp h2 { text-align:left; line-height:40px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.comp h3 { font-size:150%; font-weight:bold; margin:1em 0; }

.comp01-1 { float:right; width:25%; padding:10px 0; }
.comp01-1 font { font-size:170%; }
.comp01-1 img { width:100%; display:block; margin:0 auto; }
.comp01-1 img:last-child { width:50%; display:block; margin:0 auto; }
.comp01-2 { float:left; width:70%; padding:10px 0; }
.comp01-2 p { padding:0.4em 0; }
.comp01-3 { clear:both; width:100%; }
.comp01-3 p { padding:0.4em 0; }
.comp01-4 { display:none; }

.comp02-1 { float:left; width:35%; padding:10px 0; }
.comp02-1 img { width:50%; }
.comp02-2 { float:right; width:60%; padding:10px 0; }
.comp02-2 ul li { font-size:140%; font-weight:bold; list-style:cjk-ideographic inside; padding:0.4em 0; }

.comp03-1 { width:100%; padding:10px 0; }
.comp03-2 { width:100%; padding:10px 0; }

.comp04-1 { display:-webkit-flex; display:flex; -webkit-justify-content:between-around; justify-content:space-between; flex-wrap:wrap; }
.comp04-1 div { width:32%; border:1px solid #000; margin:1em 0; }
.comp04-1 div h4 { width:100%; text-align:center; border-bottom:1px solid #000; padding:0.5em 0; font-size:150%; }
.comp04-1 div p { padding:0.5em 10px; }
.comp04-1 div.map_sh { display:none; }
.comp04-1 div.compmap { border:none; }
.comp04-1 div.compmap img { width:100%; }
.comp04-2 { width:100%; clear:both; margin:0.5em auto; border-bottom:1px solid #808080; }
.comp04-2 .mapinfo01 { float:left; width:45%; margin:10px; }
.comp04-2 .mapinfo02 { float:right; width:50%; margin:10px; }
.comp04-2 .mapinfo02 iframe { width:100%; height:350px; }
.comp04-3 { display:-webkit-flex; display:flex; -webkit-justify-content:between-around; justify-content:space-between; flex-wrap:wrap; flex-direction:row-reverse; }
.comp04-3 div { width:32%; border:1px solid #000; margin:1em 0; }
.comp04-3 div h4 { width:100%; text-align:center; border-bottom:1px solid #000; padding:0.5em 0; font-size:150%; }
.comp04-3 div p { padding:0.5em 10px; }

.comp05-1 { width:100%; }
.comp05-2 { width:100%; text-align:right; }

.job01-1 { clear:both; margin:10px auto; }
.job01-1 table { width:100%; }
.job01-2 { margin:10px auto; }
.job01-2 .jobleft { float:left; width:48%; margin:5px 0; }
.job01-2 .jobleft p { padding:0.2em 0; }
.job01-2 .jobright { float:right; width:48%; margin:5px 0; }
.job01-2 .jobright img { width:100%; }
.movie-warp { width:100%; }
.movie01 { position:relative; width:100%; height:0; padding-top:56.25%; }
.movie01 iframe { position:absolute; top:0; left:0; width:100%; height:100%; }

.job02-1 { width:100%; }
.job02-1 img { width:80%; }
.job02-1 p { margin:0.2em 0; }

.recruit01 h4 { font-size:140%; }
.recruit01 p { margin:0.2em 0; }
.recruit01 img { width:100%; }
.recruit01-1 { float:left; width:25%; display:block; border:1px solid #000; margin:10px 0; }
.recruit01-1 img { width:100%; }
.recruit01-1 p { text-align:center; }
.recruit01-2 { float:right; width:70%; padding:10px 0; }
.recruit01-3 { clear:both; width:100%; }

.staff01 { display:-webkit-flex; display:flex; -webkit-justify-content:space-between; justify-content:space-between; flex-wrap:wrap; }
.staff01-1 { width:48%; height:160px; margin:1em 5px; border:1px solid #000; display:block; }
.staff01-1:hover { background:#c0c0c0; }
.staff01-1 img { height:100%; float:left; }
.staff01-1 p { text-align:center; line-height:40px; font-size:130%; color:#000; } 
.staff01-1:hover p { color:#000; }
.staff01-1:hover a { text-decoration:none; }

.staff02 { clear:both; padding-top:60px; margin-top:-60px; }
.staff02-0 { border-bottom:1px solid #000; display:block; } 
.staff02-1 { float:left; width:25%; display:block; border:1px solid #000; margin:10px 0; }
.staff02-1 img { width:100%; }
.staff02-1 p { text-align:center; }
.staff02-2 { float:right; width:70%; margin:10px 0; }
.staff02-2 h4 { font-size:140%; }
.staff02-2 p { padding:0.2em 0; }

.cont01 { width:80%; margin:1em auto; background:#dcdcdc; border:1px solid #000; border-radius:10px; padding:10px 20px; }
.cont01 p span { color:#ff0000; }
.cont01 p { padding:0.4em 0; }
.cont01-1 { margin:0 10px; padding:10px 30px; border-radius:10px; }

.topimg img { width:100%; max-width:1000px; margin:auto;  clear:both; }

main { padding-top:60px; }

.sec01 { width:100%; margin:auto; }
.sec02 { width:98%; max-width:1000px; margin:auto; padding:1em 0; }
.sec03 { width:90%; max-width:1000px; margin:10px auto; padding:1em 0; background:#FFF; }

footer { background:#0099BB; padding:1em 0; clear:both; }
.footinfo { text-align:left; width:40%; margin:0 auto; padding:0 10px; float:left; }
.footinfo h2 { font-size:150%; }
.footmap { text-align:left; width:55%; margin:0 auto; padding:0 10px; float:right; }
.footmap a { color:#000; }
.footmap h2 { font-size:150%; }
.footmap div.map01 { width:45%; float:left; }
.footmap div.map02 { width:45%; float:right; }
.copyright { font-size:85%; clear:both; padding-top:2em; }
.companyinfo { text-align:left; }

.logo01 { background: -moz-linear-gradient(top, #FFF 50%, #0085C9);
          background: -webkit-linear-gradient(top, #FFF 50%, #0085C9);
          background: linear-gradient(to bottom, #FFF 50%, #0085C9);
        }
.logo01 img { height:100px; }

.btn { position:relative;
	overflow:hidden;
	text-decoration:none;
	display:inline-block;
	border:2px solid #0085C9;
	padding:10px 30px;
	text-align:center;
	outline:none;
	transition:ease .2s;
}

.btn span { position:relative; z-index:3; color:#000; }
.btn:hover { text-decoration:none; }
.btn:hover span { color:#FFF; }

.bgleft:before{ content:"";
	position:absolute;
	top:0;
	left:0;
	z-index:2;
	background:#0085C9;
	width:100%;
	height:100%;
	transition:transform .6s cubic-bezier(0.8,0,0.2,1)0s;
	transform:scale(0,1);
	transform-origin:top right;

}

.bgleft:hover:before{
	transform:scale(1, 1);
	transform-origin:top left;

}

.pankuzu { margin:5px; padding:0; list-style:none; text-align:left; }
.pankuzu li { display:inline; list-style:none; }
.pankuzu li:after { content:'>'; padding:0 0.1em; color:#555; }
.pankuzu li:last-child:after { content:''; }
.pankuzu li a { text-decoration:none; color:#000; }
.pankuzu li a:hover { text-decoration:underline; }

.jumpmenu { margin:5px; padding:0; list-style:none; text-align:left; border-bottom:1px solid #808080; padding:8px; }
.jumpmenu li { display:inline; list-style:none; border-right:1px solid #808080; padding:0 8px; }
.jumpmenu li:last-child { border:none; }
.jumpmenu li a { text-decoration:none; }
.jumpmenu li a:hover { text-decoration:underline; color:#000;}

.jumpmenu01 { width:100%; position:sticky; top:65px; }
.jumpmenu01 ol { height:40px; display:-webkit-flex; display:flex; -webkit-justify-content:space-around; justify-content:space-around; flex-wrap:wrap; }
.jumpmenu01 ol li { width:24%; line-height:40px; background:#0085C9; border-radius:0.5em; }
.jumpmenu01 ol li:hover { background:#87cefa; }
.jumpmenu01 ol li a { color:#FFF; display:block; text-align:center; }
.jumpmenu01 ol li:hover a { color:#000; } 
.jobtbl { padding-top:100px; margin-top:-100px; }

}






/*===============================================
スマホ用
===============================================*/
@media screen and (max-width: 859px) {


header { width:100%; margin:auto; text-align:left; position:fixed; display:block; z-index:10;  background:#0085C9; }
header h1 { height:40px; border-bottom:3px solid #000; }
.headimg { height:100%; margin:0 auto; padding:0 10px ; }
.headimg img { margin:5px 0; height:30px; }
.menu { display:none; }

.menu02 { position:fixed; bottom:40px; right:10px; }
.menu02 div { margin:3px; height:30px; width:97.5px; background:#FFF; border:1px solid #0f0f0f; }
.menu02 div a { color:#000; line-height:30px; font-size:10px; font-weight:bold; }
.menu02 div a span { display:block; }
.menu02 div img { height:100%; }
.menu02_pc { display:none; }

.slider_pc { display:none; }

.newsborder { border-left:5px solid #0085C9; position:relative; }
.newsborder::after { content:""; display:block; border-right:5px solid #0099BB; height:20px; position:absolute; bottom:0; left:-5px; }

.news { text-align:left; width:90%; margin-bottom:2em; }
.news h2 { text-align:left; line-height:40px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.news div { margin:1em 0; clear:both; }
.news div dt { color:#808080; }
.news div dd { margin-bottom:0.3em; }
.news div dd img { margin:5px 10px; }

.news01 { margin:0 auto 2em auto; text-align:left; width:90%; }
.news01 h2 { text-align:left; line-height:40px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.news01 div { padding:1em 0; border-bottom:1px dotted #000; }
.news01 div:last-child { border:none; }
.news01 div dt { color:#808080; }
.news01 div dd { padding:0.2em 0; }
.news01 div dd.dd01 { font-weight:bold; font-size:120%; }
.news01 div dd img { margin:5px 10px; }

.comp { margin:0 auto 2em auto; text-align:left; width:90%; }
.comp h2 { text-align:left; line-height:40px; font-size:150%; border-bottom:1px solid #000; padding-left:10px; }
.comp h3 { font-size:150%; font-weight:bold; margin:1em 0; }

.comp01-4 { width:60%; }
.comp01-4 font { font-size:120%; }
.comp01-4 img { width:100%; display:block; }
.comp01-4 img:last-child { width:70%; display:block; margin:0 auto; }
.comp01-2 { width:100%; }
.comp01-2 p { padding:0.4em 0; }
.comp01-3 { width:100%; }
.comp01-3 p { padding:0.4em 0; }
.comp01-1 { display:none; }

.comp02-1 { width:100%; padding:10px 0; }
.comp02-1 img { width:30%; display:block; }
.comp02-2 { width:100%; padding:10px 0; }
.comp02-2 ul li { font-size:140%; font-weight:bold; list-style:cjk-ideographic inside; }

.comp03-1 { width:100%; padding:10px 0; }
.comp03-2 { width:100%; padding:10px 0; }

.comp04-1 { width:100%; }
.comp04-1 div { width:95%; border:1px solid #000; margin:1em auto; }
.comp04-1 div h4 { width:100%; text-align:center; border-bottom:1px solid #000; padding:0.5em 0; font-size:150%; }
.comp04-1 div p { padding:0.5em 10px; }
.comp04-1 div.map_pc { display:none; }
.comp04-1 div.compmap { border:none; }
.comp04-1 div.compmap img { width:100%; }
.comp04-2 { width:100%; clear:both; margin:0.5em auto; border-bottom:1px solid #808080; }
.comp04-2 .mapinfo01 { width:90%; margin:10px; }
.comp04-2 .mapinfo02 { width:90%; margin:10px; }
.comp04-2 .mapinfo02 iframe { width:100%; height:350px; }
.comp04-3 div { width:95%; border:1px solid #000; margin:1em auto; }
.comp04-3 div h4 { width:100%; text-align:center; border-bottom:1px solid #000; padding:0.5em 0; font-size:150%; }
.comp04-3 div p { padding:0.5em 10px; }

.comp05-1 { width:100%; }
.comp05-2 { width:100%; text-align:right; }

.job01-1 { clear:both; margin:10px auto; }
.job01-1 table { width:100%; }
.job01-2 { margin:10px auto; }
.job01-2 p { padding:0.2em 0; }
.job01-2 .jobright img { width:100%; }
.movie-warp { width:100%; }
.movie01 { position:relative; width:100%; height:0; padding-top:56.25%; }
.movie01 iframe { position:absolute; top:0; left:0; width:100%; height:100%; }

.job02-1 { width:100%; }
.job02-1 img { width:100%; }
.job02-1 p { margin:0.2em 0; }

.recruit01 { width:100%; }
.recruit01 h4 { font-size:140%; }
.recruit01 p { margin:0.2em 0; }
.recruit01 img { width:100%; }
.recruit01-1 { width:50%; display:block; border:1px solid #000; margin:10px 0; }
.recruit01-1 img { width:100%; display:block; }
.recruit01-1 p { text-align:center; }
.recruit01-2 { width:100%; padding:10px 0; }
.recruit01-3 { clear:both; }

.staff01-1 { width:100%; margin:1em 0; border:1px solid #000; display:block; }
.staff01-1 img { height:120px; float:left; }
.staff01-1 p { text-align:center; line-height:30px; font-size:100%; color:#000; } 

.staff02 { clear:both; }
.staff02-0 { border-bottom:1px solid #000; } 
.staff02-1 { width:50%; display:block; border:1px solid #000; margin:10px 0; }
.staff02-1 img { width:100%; }
.staff02-1 p { text-align:center; }
.staff02-2 { width:100%; margin:10px 0; }
.staff02-2 h4 { font-size:130%; }
.staff02-2 p { padding:0.2em 0; }

.cont01 { width:95%; background:#dcdcdc; border:1px solid #000; border-radius:10px; padding:10px; margin:1em 0; }
.cont01 p span { color:#ff0000; }
.cont01 p { padding:0.4em 0; }
.cont01 textarea { max-width:90%; }
.cont01-1 { margin:0 10px; padding:10px 30px; border-radius:10px; }

.topimg img { width:100%; margin:0 auto; clear:both; }

main { padding-top:40px; }

.sec01 { margin:auto; width:100%; }
.sec02 { margin:auto; width:98%; padding:1em 0; }
.sec03 { margin:auto; width:90%; padding:1em 0; }

footer { background:#0099BB; padding:1em 0;  }
.footinfo { text-align:left; padding:0 10px; }
.footinfo h2 { font-size:150%; }
.footmap { text-align:left; margin:1.5em 100px 1.5em 0; padding:0 10px; }
.footmap a { color:#000; }
.footmap h2 { font-size:150%; }
.footmap div.map01 { width:45%; float:left; }
.footmap div.map02 { width:45%; float:right; }
.copyright { font-size:85%; clear:both; }
.companyinfo { text-align:left; }

.logo01 { background: -moz-linear-gradient(top, #FFF 50%, #0085C9);
          background: -webkit-linear-gradient(top, #FFF 50%, #0085C9);
          background: linear-gradient(to bottom, #FFF 50%, #0085C9);
        }
.logo01 img { height:60px; }

.btn { text-decoration:none; display:inline-block; background:#0085C9; padding:10px 30px; text-align:center; outline:none; border-radius: 100vh; }
.btn span { color:#FFF; }
.btn:hover { text-decoration:none; }

.hd01 img { width:100%; }
.hd02 img { width:100%; }

.pankuzu { margin:5px; padding:0; list-style:none; text-align:left; }
.pankuzu li { display:inline; list-style:none; }
.pankuzu li:after { content:'>'; padding:0 0.1em; color:#555; }
.pankuzu li:last-child:after { content:''; }
.pankuzu li a { text-decoration:none; color:#000; }
.pankuzu li a:hover { text-decoration:underline; }

.jumpmenu { display:none; }

.jumpmenu01 { width:100%; position:sticky; top:45px; margin-top:5px; }
.jumpmenu01 ol { display:-webkit-flex; display:flex; -webkit-justify-content:space-around; justify-content:space-around; flex-wrap:wrap; }
.jumpmenu01 ol li { width:48%; line-height:30px; background:#0085C9; margin:1px 0; border-radius:0.5em; }
.jumpmenu01 ol li a { color:#FFF; display:block; text-align:center; }
.jobtbl { padding-top:100px; margin-top:-100px; }


.humWP { width:100%; height:50px; position:fixed; top:0; right:0; display:block; background:#816955; z-index: auto; }
.humWP h2 { width:200px; float:left; }

    body.drawer-opened #page{
        left: -240px;
        box-shadow: 1px 0 2px #000;
        -webkit-box-shadow: 1px 0 2px #000;
    }
    body.drawer-opened .fixed-content{
        left: -240px;
    }
    body.drawer-opened #drawernav{
        right: 0;
    }
    body.drawer-opened #humberger .icon-bar{
        background:#FF9900;
    }
    body.drawer-opened #humberger :nth-child(1){
        transform:translate(0,8px) rotate(45deg);
        -webkit-transform:translate(0,8px) rotate(45deg);
    }
    body.drawer-opened #humberger :nth-child(2){
        transform:translate(-20px ,0);
        -webkit-transform:translate(-20px ,0);
        opacity:0;
    }
    body.drawer-opened #humberger :nth-child(3){
        transform:translate(0,-8px) rotate(-45deg);
        -webkit-transform:translate(0,-8px) rotate(-45deg);
    }
    body.drawer-opened #overlay{
        z-index: 3;
        opacity:0.2;
        left: -240px;
    }


}

