@media print, screen and (min-width:  960px){

body { padding:0;  margin:0; font-family:Arial,Helvetica, 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Geneva,sans-serif;background:#fff;color:#333;}
p {line-height:150%;font-size:90%;}
.pleft {float:left;}
.pright {float:right;}
.tR {text-align:right;}
.tL {text-align:left;}
.sp {display:none;}
.relative {position:relative;}
.center {text-align:center;}
/**幅**/
.w50   {width: 50px;}
.w100 {width:100px;}
.w150 {width:150px;}
.w200 {width:200px;}
.w250 {width:250px;}
.w300 {width:300px;}
.w350 {width:350px;}
.w380 {width:380px;}
.w400 {width:400px;}
.w450 {width:450px;}
.w500 {width:500px;}
.w520 {width:520px;}
.w550 {width:550px;}
.w600 {width:600px;}
.w650 {width:650px;}
.w800 {width:800px;}
.w850 {width:850px;}
.w700 {width:700px;}
.w900 {width:900px;}
.left5{ margin-left:5px; }
.left10{ margin-left:10px;}
.left15{ margin-left:15px; }
.left20{ margin-left:20px; }
.left30{ margin-left:30px; }
.left40{ margin-left:40px; }
.left50{ margin-left:50px; }
.right10{ margin-right:10px; }
.right15{ margin-right:15px; }
.right20{ margin-right:20px; }
.right30{ margin-right:30px; }
.right40{ margin-right:40px; }
.top5{ margin-top:5px;}
.top10{ margin-top:10px;}
.top15{ margin-top:15px;}
.top20{ margin-top:20px;}
.top30{ padding-top:30px;}
.top40{ padding-top:40px;}
.top50{ padding-top:50px;}
.top80{ padding-top:80px;}
.under5{ margin-bottom:5px;}
.under10{ margin-bottom:10px;}
.under15{ margin-bottom:15px;}
.under20{ margin-bottom:20px;}
.under30{ margin-bottom:30px;}
.under40{ margin-bottom:40px;}
.under50{ margin-bottom:50px;}
.under60{ margin-bottom:60px;}
.under70{ margin-bottom:70px;}
.under80{ margin-bottom:80px;}
.under90{ margin-bottom:90px;}
.under100{ margin-bottom:100px;}
.punder50{ padding-bottom:50px;}
.punder100{ padding-bottom:100px;}
.inner {width:1100px; margin:0 auto;}
.innerS {width:1000px; margin:0 auto;}
.innerSS {width:800px; margin:0 auto;}
.innerM {max-width:1200px; margin:0 auto;width:100%;}
.innerL {max-width:1400px; margin:0 auto;width:100%; }
.innerLR {max-width:1600px; margin:0 auto 0 0 ;width:92%; min-width:1180px;}
.innerLL {max-width:1600px; margin:0 0 0 auto;width:92%; min-width:1180px;}
.innerXL {max-width:100%; margin:0 auto;}
.whiteBg {background-color:#FFF;}
.beigeBg {background-color:#F7F6F2}
.mosBg {background-color:#E7E6D3}
.blackBg {background-color:#000; color:#fff;}
.brownBg {background-color:#2C2314; color:#fff;}
.reformBg {background:url(../images/reform.jpg) no-repeat right 0 #000;height:366px;}
#i1,#i2 ,#i3 {  margin-top:-120px;  padding-top:120px;}
.red {color:#E10A15} 
.pd20 {padding:20px 0;}
.pd30 {padding:30px 0;}
.pd50 {padding:50px 0;}
.pd100 {padding:100px 0;}
.ptop50{ padding-top:50px;}
.ptop100{ padding-top:100px;}
.pdw50 {padding:0 50px;}
/***共通********/

#top-head {width:100%; height:100px;z-index:995;position:fixed;background:#fff;}
#top-head .toplogo img{height:50px;margin-top:20px;float:left;}
#top-head .toplogo img:hover {filter: alpha(opacity=80); -moz-opacity:0.8; opacity:0.8;}
#top-head, #top-head .toplogo,#top-head ul,#top-head .toplogo img,#top-head .navHead li a {transition: all 0.3s ease;    -webkit-transition: all 0.3s ease;    -moz-transition: all 0.3s ease;    -o-transition: all 0.3s ease;}

/*********/
#top-head .navHead > ul {width:650px;margin:0 auto;display: flex;  flex-wrap: wrap;  align-items: center;  justify-content: space-around;font-family: 'Roboto', sans-serif;}
#top-head .navHead li {height: 0; padding:0;}
#top-head .navHead > ul li a {font-size:0.9em;color:#000;display:block;text-align:center;height:100px;line-height:100px;transition: .5s;position: relative; padding:0 15px;}
#top-head .navHead > ul li a:hover {background-color:#F1EEF9;border-radius:0 0 10px 10px;}

#top-head .navHead > ul li a::after  {position: absolute;content: '';width: 0;left:50%;margin-left:0px;height: 3px; transition: .5s;bottom: 35px;}
#top-head .navHead > ul > li a:hover::after  {width: 99%;background-color:#A48ED3; left:0%;margin-left:0px;}
#top-head .navHead ul > li.contact  a {background:#A48ED3;color:#fff;}
#top-head .navHead ul > li.contact  a::after {  background: #FFF;}




/*********/
#top-head .inner {position:relative;}
#top-head.fixed { height:61px; box-shadow:0px 3px 4px -2px #797979;}
#top-head.fixed .toplogo img{  margin-top:10px;height:40px;}
#top-head.fixed:after {    width: 100%;    margin-top: 10px;}
#top-head .navHead.fixed {height:42px;}
#top-head .navHead.fixed > ul > li a {line-height:42px;}
#top-head.fixed .navHead ul > li a {height:65px;line-height:81px;}


/***トップムービー部分**********/

.box01 {
float:right;
width:80%;
  background:linear-gradient(45deg,  transparent 20px, #AFB4DB 20px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position:relative;
  top:0;
  right:0;
  z-index:2;
  padding:20px 0 100px 0;
}
.box01 h1 {position:absolute;font-size:3em;top:300px;right:7%;color:#fff;text-shadow: 3px 3px 1px rgba(8,8,8,0.6);z-index:9;font-style:italic;}
.box01 h1.ani.ani-in {right:5%;}
.fifth {position:relative;text-align:center;top:-300px;width:100%;z-index:99;margin:0px auto 0 auto;}
.box01 .Main {min-width:1200px;width:100%;height:670px;overflow:hidden;position:relative;left:-25%;}
.inBox { position:relative;width:100%;margin-top:-350px;}
.inBox .box02 {
width:80%;
  background:linear-gradient(315deg,  transparent 20px, #D5D8EC 20px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position:relative;
  top:0px;
  right:0;
  z-index:0;
  padding:0px;
}

.inBox .content{
background:url(../images/pin.png) repeat-y left top;
width:55%;
position:relative;
/*background-attachment: fixed;*/
margin:50px 0;
}
.inBox .content .in {
float:right;
width:450px;
}
.content .in h2 {
text-align:center;
font-size:1.4em;margin:30px 0;
background:url(../images/point.png) no-repeat center bottom;
padding:50px 0;
}
.content .in h2:before {
position:absolute;
content:url(../img/top/ourwork.png);
top:80px;
right:0;
}
.content .in p {font-size:0.85em;line-height:1.8em;}
.content .in .backBt3 {cursor:pointer;z-index:9999;}


.inBox .Main {}
.inBox .Main.up {top:60px !important;}
.inBox .Main.up.ani-in {top:40px !important;}

.factory {}

.factory .mat { 
position:relative;
top:20vh;
width:800px;
margin:0 auto;
padding:50px;
 background:
    linear-gradient(45deg,  transparent 0px, rgba(255,255,255,.8) 0px),
    linear-gradient(135deg, transparent 20px, rgba(255,255,255,.8) 20px),
    linear-gradient(225deg, transparent 0px, rgba(255,255,255,.8) 0px),
    linear-gradient(315deg, transparent 20px, rgba(255,255,255,.8) 20px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  box-shadow: -11px 10px 12px -10px rgba(0,0,0,0.6);
  }
.factory .mat h2 {text-align:center;font-size:1.4em;margin:30px 0;
background:url(../images/point.png) no-repeat center bottom;
padding:0 0 50px 0;
}
.factory .mat h2:before {position:absolute;content:url(../img/top/fa.png);
top:40px;right:50px;}
.factory .mat p {font-size:0.9em;line-height:1.8em;width:550px;margin:0 auto;}
.tate {-ms-writing-mode: tb-rl;  writing-mode: vertical-rl;}
.factory .mat .tate .BTN {height:160px !important;padding:0 10px !important;position:absolute;top:80px; right:40px;} 

.recruit {position:relative;padding:50px 0;}
.recruit h2 {text-align:center;font-size:1.4em;margin:30px 0;
background:url(../images/point.png) no-repeat center bottom;
padding:0 0 50px 0;
}
.recruit h2:before {position:absolute;content:url(../img/top/recruit.png);
top:40px;left:50%;}
.recruit p {margin:0 auto;font-size:0.85em;line-height:1.8em;}
    .recruit img { max-width:100%;
    }

    .recruit .block {
        position: relative;
        text-align: center;
        max-width: 1400px;
        margin: 0px auto;
    }
.recruit .block iframe {width:640px;margin:40px auto;border:20px solid #555555;}

.recruit .block li {position:absolute;z-index:-1;}
.recruit .block li img {max-width:100%;}
.recruit .block li:nth-child(1) {top:0;left:0;}
.recruit .block li:nth-child(2) {top:150px;left:100px;}
.recruit .block li:nth-child(3) {top:250px;left:0px;}
.recruit .block li:nth-child(4) {top:0px;right:0px;}
.recruit .block li:nth-child(5) {top:150px;right:100px;}
.recruit .block li:nth-child(6) {top:250px;right:0px;}

.video {
position: relative;
height: 0;
padding-bottom: 56.25%;
overflow: hidden;
}

.video iframe {
background:#fff;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/***Products*******/

.product1 {background:url(../images/p01.jpg) no-repeat center center;background-size:cover;background-attachment: fixed;height:90vh;color:#FFF;position:relative;}

.product1 .block {width:500px;position:fixed;top:20vh;right:100px;}

.product1 h1 {text-align:center;font-family: 'Roboto', sans-serif;margin-bottom:20px;color:#A48ED3;}
.product1 h2 {text-align:center;font-size:1.4em;margin-bottom:30px;}
.product1 p {font-size:0.9em;line-height:1.8em;}

.product2 {background:url(../images/p02.jpg) no-repeat center center;background-size:cover;
height:90vh;color:#FFF;position:relative;border-top:10px solid #ccc;}
.product2 h2 {text-align:center;font-size:1.4em;margin-bottom:50px;}
.product2 p {font-size:0.9em;line-height:1.8em;}
.product2 .block {width:700px;margin:100px auto 0 auto;}
.sticky{
  position: -webkit-sticky; /* Safariに対応する */
  position: sticky; /* 要素を固定/解除する */
  top: 61px; /* 縦方向の閾値 */
  left: 0; /* 横方向の閾値 */
}

/**会社概要****/
/*.head-about {}
.head-factory {background:url(../images/main.jpg) no-repeat center center;height:200px;}
.head-equipment {background:url(../images/main.jpg) no-repeat center center;height:200px;}*/


.history .block {position:relative;text-align:center;max-width:1400px;margin:0px auto;}
.history .block iframe {width:640px;margin:20px auto;border:20px solid #555555;}



.factoryP {margin-bottom:50px;}
.factoryP .cont {width:400px;}
.factoryP .boxB .cont {float:right;}

.factoryP .boxA {
min-height:460px;
float:right;
width:calc(80% - 80px );
  background:linear-gradient(45deg,  transparent 20px, #AFB4DB 20px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position:relative;
  top:0;
  right:0;
  z-index:2;
  padding:40px;
}
.factoryP img {max-width:100%;}
.factoryP h2 {text-align:center;margin-bottom:50px;font-size:1.4em;color: #000;}
.factoryP p {font-size:0.85em;line-height:1.8em;}
.factoryP .boxA .Main1 {
position:absolute;right:0;top:40px;width:calc(100% - 500px );height:450px;overflow:hidden;
background:url(../images/f01.jpg) no-repeat center center;background-size:cover;
}
.factoryP .boxA .Main2 {
position:absolute;right:0;top:40px;width:calc(100% - 500px );height:450px;overflow:hidden;
background:url(../images/f08.jpg) no-repeat center center;background-size:cover;
}
.factoryP .boxA .sub {position:relative;top:10px;margin-top:20px;width:120%;left:-20%;}

.factoryP .boxB {
min-height:460px;
width:calc(80% - 80px );
  background:linear-gradient(315deg,  transparent 20px, #D5D8EC 20px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position:relative;
  top:0px;
  right:0;
  z-index:0;
  padding:40px;
}

.factoryP .boxB .sub {position:relative;top:10px;margin-top:20px; float:right;width:120%;right:-20%;}
.factoryP .boxB .Main1 {
position:absolute;left:0;top:40px;width:calc(100% - 500px );height:450px;overflow:hidden;
background:url(../images/f05.jpg) no-repeat center center;background-size:cover;
}
.factoryP .boxB .Main2 {
position:absolute;left:0;top:40px;width:calc(100% - 500px );height:450px;overflow:hidden;
background:url(../images/f03.jpg) no-repeat center center;background-size:cover;
}


/***共通************/
.first {padding-top:100px;}
.pan,.pan a {color:#eee;font-size:.85em;}
.pan a:hover {color:#E20A16;}
span.color {color:#B1714D;}
span.pcbr:before  {content: "\A" ;	white-space: pre ;}
span.pcbr2:before  {content: "\A　" ;	white-space: pre ;}

.ani {opacity:0;transition: all 0.9s;}
.ani.ani-in {opacity:1;transition-delay:.3s}

.up {opacity:0;transition: all 0.6s;position:relative;top:-5px;}
.up.ani-in {opacity:1;transition-delay:.6s;top:0;}
.up.t1.ani-in {opacity:1;transition-delay:.9s;top:0;}
.up.t2.ani-in {opacity:1;transition-delay:1.2s;top:0;}
.up.t3.ani-in {opacity:1;transition-delay:1.5s;top:0;}


/***企業情報*************/
h1.title {text-align:center;font-size:1.8em;
margin:30px 0;
background:url(../images/point.png) no-repeat center bottom;
padding:0 0 50px 0;
 }
h2.title {text-align:center;font-size:1.5em;
margin:30px 0;
background:url(../images/point.png) no-repeat center bottom;
padding:0 0 50px 0;
color:#6B47B8;
 }
img.img100 {width:100%;}


/***お問合せ*********/
.contact {color:#333;}
.privacy {width:800px; margin:0 auto;padding:20px 0;}
.privacy h2 {text-align:center;font-size:1.3em;margin-bottom:20px;background:#333;color:#fff;border-radius:20px;padding:10px 0; }
.privacy .box {background-color:rgba(255,255,255,.7);padding:30px;border:1px solid #888;height:200px;overflow:auto;}
.privacy dt{margin-bottom:10px;margin-top:20px;border-bottom:1px dotted #333;padding-bottom:5px;}
.privacy dd{margin-bottom:10px;font-size:90%;padding-left:50px;line-height:180%;}
.disc li {list-style-type: disc;margin-left:30px;}
.form h1 {text-align:center;font-size:1.8em;margin-bottom:20px;background:#43A036;color:#fff;border-radius:20px;padding:10px 0; }
.form button {margin:0 10px;}
.form h3 {text-align:center;margin:100px 0 30px 0;font-size:1.5em;}
.form .box {background-color:rgba(255,255,255,.7);padding:30px;border:1px solid #43A036;margin-bottom:100px;}

.mail h2 {text-align:center;font-size:1.2em;margin-bottom:20px;background:#00A0E9;color:#fff;border-radius:20px;padding:10px 0;}

/***フッター********/
.foot {background:#444444;border-top:20px solid #A48ED3;color:#fff;position:relative;}
.foot .inner {padding:30px 0;}
.foot .address {/*position:relative; left:60px;top:-30px;*/}
    .foot .inner-01 img{
        height:60px;
    }

.inner03{    display: flex; justify-content: space-between;
    align-items: center;}
.inner-02{ width:180px;}
    .inner-02 img {
        width: 100%;
        image-rendering: -moz-crisp-edges;
        image-rendering: -o-crisp-edges;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
        -ms-interpolation-mode: nearest-neighbor;
    }

/********************/
table.tableA {width:100%;font-size:90%; margin:0 auto;line-height:140%;}
.tableA th {border-bottom:1px dotted #fff;font-weight:bold;padding:15px;text-align:left;vertical-align:top;width:150px;color:#fff;}
.tableA td {border-bottom:1px dotted #fff;padding:15px;vertical-align:top;}

table.tableB {width :100%;font-size:0.9em;line-height:1.8em;margin-bottom:50px;border-top:1px dotted #333;}
.tableB th {border-bottom:1px dotted #333;font-weight:normal;padding:15px 10px;vertical-align:top;text-align:left;}
.tableB td {border-bottom:1px dotted #333;padding:15px 10px;text-align:left;}

table.tableC {width :100%;font-size:100%;border-top:1px dotted #333;margin-bottom:50px;}
.tableC th {border-bottom:1px dotted #333;font-weight:normal;padding:10px 10px;vertical-align:top;text-align:left;line-height:130%;background:#fafafa;}
.tableC td {border-bottom:1px dotted #333;padding:10px 10px;text-align:left;line-height:130%;}
/***ボタン関連****/

.backBt3::before,
.backBt3::after {	position: absolute;	z-index: -1;	display: block;	content: '';}
.backBt3,.backBt3::before,.backBt3::after {	-webkit-box-sizing: border-box;	-moz-box-sizing: border-box;	box-sizing: border-box;	-webkit-transition: all .3s;	transition: all .3s;}
.backBt3 {	position: relative;		background-color: #333;	border: 1px solid #333;	color: #FFF;	overflow: hidden;	display: inline-block;	width: 240px;	height: 50px;	text-align: center;	text-decoration: none;	line-height: 48px;	outline: none;	border-radius:30px;}
.backBt3:hover {color:#fff;}
.backBt3::after {	top: 0;	left: 0;	width: 100%;	height: 100%;	-webkit-transform: scale(.5);	transform: scale(.5);}
.backBt3:hover::after {	background:#999; 	-webkit-transform: scale(1);	transform: scale(1);}

/***ボタン関連****/
.BTN::before,
.BTN::after {position: absolute;	z-index: -1;display: block;content: '';}
.BTN,
.BTN::before,
.BTN::after {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-transition: all .3s;transition: all .3s;}

.BTN {position: relative;z-index: 2;color: #fff;overflow: hidden;display: inline-block;height: 44px;text-align: center;text-decoration: none;line-height: 40px;padding:0 50px;top:0;
  background:
    linear-gradient(45deg,  transparent 0px, #6873BB 0px),
    linear-gradient(135deg, transparent 10px, #6873BB 10px),
    linear-gradient(225deg, transparent 0px, #6873BB 0px),
    linear-gradient(315deg, transparent 10px, #6873BB 10px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 50% 50%;
  background-repeat: no-repeat;
}
.BTN:hover {color:#fff;top: -3px;}
.BTN::after {top: 0px;left: 0;width: 100%;height: 100%;-webkit-transform: scale(.5);transform: scale(.5);}
.BTN:hover::after {	 
  background:
    linear-gradient(45deg,  transparent 0px, #4570DE 0px),
    linear-gradient(135deg, transparent 10px, #4570DE 10px),
    linear-gradient(225deg, transparent 0px, #4570DE 0px),
    linear-gradient(315deg, transparent 10px, #4570DE 10px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 50% 50%;
  background-repeat: no-repeat;
-webkit-transform: scale(1);	transform: scale(1);
}



/*************/


#page-top {
	position: fixed;
	bottom:-13px;
	right: 60px;
	z-index:999;
}
.zoom img{
    -moz-transition: -moz-transform 0.3s linear;
    -webkit-transition: -webkit-transform 0.3s linear;
    -o-transition: -o-transform 0.3s linear;
    -ms-transition: -ms-transform 0.3s linear;
    transition: transform 0.3s linear;
}
.zoom:hover img{
    -moz-transition: -moz-transform 0.3s linear;
    -webkit-transition: -webkit-transform 0.3s linear;
    -o-transition: -o-transform 0.3s linear;
    -ms-transition: -ms-transform 0.3s linear;
    transition: transform 0.3s linear;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
#footBtm {diplay:none;}
/***INPUT******************************/
.t60 {width:40%;}
.t80 {width:60%;}
textarea{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   -moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
   -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   height:25px;
   padding:10px;
}
select {
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   -moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
   -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   height:25px;
   padding:0 3px;
}

input[type=text],input[type=email],input[type=tel],input[type=number]{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   -moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
   -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   height:25px;
   padding:0 3px;
}
 
input[type=text]:focus {
   border:solid 1px #20b2aa;
}
 
 input[type=image]:hover{filter: alpha(opacity=75); -moz-opacity:0.75; opacity:0.75; }
 
input[type=text], select { 
   outline: none;
}

.f20 {width:20%;}
.f40 {width:40%;}
.f60 {width:60%;}
.f80 {width:80%;}

.furufuru {
-webkit-animation:furufuru 3s infinite linear alternate;
animation:furufuru 3s infinite linear alternate;
transition: all 0.3s ease;    -webkit-transition: all 0.3s ease;    -moz-transition: all 0.3s ease;    -o-transition: all 0.3s ease;
}
@keyframes furufuru {
0% {transform:translate(0, 0) rotate(-5deg);}
50% {transform:translate(0, -5px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(5deg);}
}

}
    