@charset "utf-8";
/* CSS Document */

/*-----------------reset---------------------*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{
	display: block;
}
body{
	line-height: 1;
}
ol,ul{
	list-style: none;
}
blockquote,q{
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after{
	content: '';
	content: none;
}
table{
	border-collapse: collapse;
	border-spacing: 0;
}


body{
    font-family: "Yu Mincho", "YuMincho", serif;
    font-size: 1em;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
@media screen and (max-width: 768px) {
    
}



._pc{display: block;}
._sp{display: none;}
@media screen and (max-width: 768px) {
    ._pc{display: none;}
    ._sp{display: block;}
}



img{width: 100%;vertical-align:top;}

.img_box{
    position: relative;
}

.hidden {
    display: none !important;
    visibility: hidden;
}


.ib {
    display: inline-block;
}

.t-left { text-align: left;}
.t-center { text-align: center;}
.t-right { text-align: right;}

.f-left { float: left;}
.f-right { float: right;}


ul,li{
    list-style: none;
    margin: 0;
    padding: 0;
}


/*-----------------------------------------------------*/

p.note {
    font-size: 10px;
    line-height: 14px;
    color: #000000;
    font-family: "游ゴシック", "YuGothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", 'Hiragino Kaku Gothic ProN', Meiryo, "ＭＳ ゴシック", sans-serif;
}








/*-----------------------------------------------------*/

header{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    padding: 10px;
    background: rgba(255,255,255,1);
    box-shadow: 0 0 3px #666;
    box-sizing: border-box;
    z-index: 99;
}
.header_in{
    width: 94%;
    max-width: 1000px;
    margin: 0 auto;
}
.header_in::after{
    content: "";
    clear: both;
}

.top_logo{
    width: 40%;
    max-width: 200px;
    float: left;
}
.top_menu{
    display: flex;
    justify-content: flex-end;
    float: right;
    padding-top: 10px;
}
@media screen and (max-width: 768px) {
    .top_logo{
        width: 140px;
        max-width: none;
        float: left;
    }
    .top_menu{
        display: none;
    }
}
.top_menu li{
    padding: 5px;
    margin: 5px;
    display: inline-block;
    position: relative;
}
.top_menu li a{
    display: block;
    font-size: 1.0em;
    line-height: 1em;
    text-decoration: none;
    color: #000;
    position: relative;
}
.top_menu li::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background: #F05A24;
    transition: 0.3s all;
}
.top_menu li:hover::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #F05A24;
    transition: 0.3s all;
}

#top .top_menu li:nth-child(1)::after,
#message .top_menu li:nth-child(2)::after,
#service .top_menu li:nth-child(3)::after,
#works .top_menu li:nth-child(4)::after,
#recruit .top_menu li:nth-child(5)::after,
#contact .top_menu li:nth-child(6)::after,
#company .top_menu li:nth-child(7)::after{
    content: "";
    width: 100%;
}
/*#top .top_menu li:nth-child(1),
#message .top_menu li:nth-child(2),
#service .top_menu li:nth-child(3),
#works .top_menu li:nth-child(4),
#recruit .top_menu li:nth-child(5),
#contact .top_menu li:nth-child(6),
#company .top_menu li:nth-child(7){
    pointer-events: none;
}*/

#top .footer_menu li:nth-child(1)::after,
#message .footer_menu li:nth-child(2)::after,
#service .footer_menu li:nth-child(3)::after,
#works .footer_menu li:nth-child(4)::after,
#recruit .footer_menu li:nth-child(5)::after,
#contact .footer_menu li:nth-child(6)::after,
#company .footer_menu li:nth-child(7)::after{
    content: "";
    width: 100%;
}
#top .footer_menu li:nth-child(1),
#message .footer_menu li:nth-child(2),
#service .footer_menu li:nth-child(3),
#works .footer_menu li:nth-child(4),
#recruit .footer_menu li:nth-child(5),
#contact .footer_menu li:nth-child(6),
#company .footer_menu li:nth-child(7){
    pointer-events: none;
}


footer{
    width: 100%;
    padding: 30px 0 10px;
    background: #B3B3B3;
    box-sizing: border-box;
}
.footer_in{
    width: 94%;
    max-width: 1000px;
    margin: 0 auto;
}
.footer_menu{
    display: flex;
    justify-content: center;
    border-top: 1px solid #ccc;
    padding: 20px 0;
    margin-top: 30px;
}
.footer_menu li{
    padding: 5px;
    margin: 5px;
    display: inline-block;
    position: relative;
}
@media screen and (max-width: 768px) {
    .footer_menu{
        display: block;
        justify-content: center;
        border-top: 1px solid #ccc;
        padding: 20px 0;
    }
}

.footer_menu li a{
    display: block;
    font-size: 1.0em;
    line-height: 1em;
    text-decoration: none;
    color: #000;
    position: relative;
}
.footer_menu li::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background: #F05A24;
    transition: 0.3s all;
}
.footer_menu li:hover::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #F05A24;
    transition: 0.3s all;
}

.footer_banner{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.footer_banner .fbanner{
    width: 30%;
    max-width: 360px;
    height: auto;
    display: block;
    padding: 0;
    margin: 0 1%;
}
@media screen and (max-width: 768px) {
    .footer_banner .fbanner{
        width: 90%;
        max-width: 360px;
        height: auto;
        display: block;
        padding: 0;
        margin: 1% 1%;
    }
}
.footer_banner .fbanner img{
    border: 2px solid #333;
}

.copy-right{
    text-align: center;
    font-size: 0.9em;
    color: #000;
}

/*-----------------------------------------------------*/
/*margin*/
.mreset{
margin:0 0 0 0;
}

.mt1{
margin-top:1px;
}
.mt2{
margin-top:2px;
}
.mt3{
margin-top:3px;
}
.mt4{
margin-top:4px;
}
.mt5{
margin-top:5px;
}
.mt6{
margin-top:6px;
}
.mt7{
margin-top:7px;
}
.mt8{
margin-top:8px;
}
.mt9{
margin-top:9px;
}
.mt10{
margin-top:10px;
}
.mt15{
margin-top:15px;
}
.mt20{
margin-top:20px;
}
.mt25{
margin-top:25px;
}
.mt30{
margin-top:30px;
}
.mt35{
margin-top:35px;
}
.mt40{
margin-top:40px;
}
.mt45{
margin-top:45px;
}
.mt50{
margin-top:50px;
}
.mt55{
margin-top:55px;
}
.mt60{
margin-top:60px;
}
.mt65{
margin-top:65px;
}
.mt70{
margin-top:70px;
}
.mt75{
margin-top:75px;
}
.mt80{
margin-top:80px;
}
.mt85{
margin-top:85px;
}
.mt90{
margin-top:90px;
}
.mt95{
margin-top:95px;
}
.mt100{
margin-top:100px;
}

.mr1{
margin-right:1px;
}
.mr2{
margin-right:2px;
}
.mr3{
margin-right:3px;
}
.mr4{
margin-right:4px;
}
.mr5{
margin-right:5px;
}
.mr6{
margin-right:6px;
}
.mr7{
margin-right:7px;
}
.mr8{
margin-right:8px;
}
.mr9{
margin-right:9px;
}
.mr10{
margin-right:10px;
}
.mr15{
margin-right:15px;
}
.mr20{
margin-right:20px;
}
.mr25{
margin-right:25px;
}
.mr30{
margin-right:30px;
}
.mr35{
margin-right:35px;
}
.mr40{
margin-right:40px;
}
.mr45{
margin-right:45px;
}
.mr50{
margin-right:50px;
}
.mr55{
margin-right:55px;
}
.mr60{
margin-right:60px;
}
.mr65{
margin-right:65px;
}
.mr70{
margin-right:70px;
}
.mr75{
margin-right:75px;
}
.mr80{
margin-right:80px;
}
.mr85{
margin-right:85px;
}
.mr90{
margin-right:90px;
}
.mr95{
margin-right:95px;
}
.mr100{
margin-right:100px;
}


.mb1{
margin-bottom:1px;
}
.mb2{
margin-bottom:2px;
}
.mb3{
margin-bottom:3px;
}
.mb4{
margin-bottom:4px;
}
.mb5{
margin-bottom:5px;
}
.mb6{
margin-bottom:6px;
}
.mb7{
margin-bottom:7px;
}
.mb8{
margin-bottom:8px;
}
.mb9{
margin-bottom:9px;
}
.mb10{
margin-bottom:10px;
}
.mb15{
margin-bottom:15px;
}
.mb20{
margin-bottom:20px;
}
.mb25{
margin-bottom:25px;
}
.mb30{
margin-bottom:30px;
}
.mb35{
margin-bottom:35px;
}
.mb40{
margin-bottom:40px;
}
.mb45{
margin-bottom:45px;
}
.mb50{
margin-bottom:50px;
}
.mb55{
margin-bottom:55px;
}
.mb60{
margin-bottom:60px;
}
.mb65{
margin-bottom:65px;
}
.mb70{
margin-bottom:70px;
}
.mb75{
margin-bottom:75px;
}
.mb80{
margin-bottom:80px;
}
.mb85{
margin-bottom:85px;
}
.mb90{
margin-bottom:90px;
}
.mb95{
margin-bottom:95px;
}
.mb100{
margin-bottom:100px;
}

.ml1{
margin-left:1px;
}
.ml2{
margin-left:2px;
}
.ml3{
margin-left:3px;
}
.ml4{
margin-left:4px;
}
.ml5{
margin-left:5px;
}
.ml6{
margin-left:6px;
}
.ml7{
margin-left:7px;
}
.ml8{
margin-left:8px;
}
.ml9{
margin-left:9px;
}
.ml5{
margin-left:5px;
}
.ml10{
margin-left:10px;
}
.ml15{
margin-left:15px;
}
.ml20{
margin-left:20px;
}
.ml25{
margin-left:25px;
}
.ml30{
margin-left:30px;
}
.ml35{
margin-left:35px;
}
.ml40{
margin-left:40px;
}
.ml45{
margin-left:45px;
}
.ml50{
margin-left:50px;
}
.ml55{
margin-left:55px;
}
.ml60{
margin-left:60px;
}
.ml65{
margin-left:65px;
}
.ml70{
margin-left:70px;
}
.ml75{
margin-left:75px;
}
.ml80{
margin-left:80px;
}
.ml85{
margin-left:85px;
}
.ml90{
margin-left:90px;
}
.ml95{
margin-left:95px;
}
.ml100{
margin-left:100px;
}


/*padding*/
.pt1{
padding-top:1px;
}
.pt2{
padding-top:2px;
}
.pt3{
padding-top:3px;
}
.pt4{
padding-top:4px;
}
.pt5{
padding-top:5px;
}
.pt6{
padding-top:6px;
}
.pt7{
padding-top:7px;
}
.pt8{
padding-top:8px;
}
.pt9{
padding-top:9px;
}
.pt10{
padding-top:10px;
}
.pt15{
padding-top:15px;
}
.pt20{
padding-top:20px;
}
.pt25{
padding-top:25px;
}
.pt30{
padding-top:30px;
}
.pt35{
padding-top:35px;
}
.pt40{
padding-top:40px;
}
.pt45{
padding-top:45px;
}
.pt50{
padding-top:50px;
}
.pt55{
padding-top:55px;
}
.pt60{
padding-top:60px;
}
.pt65{
padding-top:65px;
}
.pt70{
padding-top:70px;
}
.pt75{
padding-top:75px;
}
.pt80{
margin-top:80px;
}
.pt85{
padding-top:85px;
}
.pt90{
padding-top:90px;
}
.pt95{
padding-top:95px;
}
.pt100{
padding-top:100px;
}
.pt230{
padding-top:230px;
}
.pt420{
padding-top:420px;
}

.pr1{
padding-right:1px;
}
.pr2{
padding-right:2px;
}
.pr3{
padding-right:3px;
}
.pr4{
padding-right:4px;
}
.pr5{
padding-right:5px;
}
.pr6{
padding-right:6px;
}
.pr7{
padding-right:7px;
}
.pr8{
padding-right:8px;
}
.pr9{
padding-right:9px;
}
.pr10{
padding-right:10px;
}
.pr12{
padding-right:12px;
}
.pr15{
padding-right:15px;
}
.pr20{
padding-right:20px;
}
.pr25{
padding-right:25px;
}
.pr27{
padding-right:27px;
}
.pr30{
padding-right:30px;
}
.pr35{
padding-right:35px;
}
.pr40{
padding-right:40px;
}
.pr45{
padding-right:45px;
}
.pr50{
padding-right:50px;
}
.pr55{
padding-right:55px;
}
.pr60{
padding-right:60px;
}
.pr65{
padding-right:65px;
}
.pr70{
padding-right:70px;
}
.pr75{
padding-right:75px;
}
.pr80{
padding-right:80px;
}
.pr85{
padding-right:85px;
}
.pr90{
padding-right:90px;
}
.pr95{
padding-right:95px;
}
.pr100{
padding-right:100px;
}

.pb1{
padding-bottom:1px;
}
.pb2{
padding-bottom:2px;
}
.pb3{
padding-bottom:3px;
}
.pb4{
padding-bottom:4px;
}
.pb5{
padding-bottom:5px;
}
.pb6{
padding-bottom:6px;
}
.pb7{
padding-bottom:7px;
}
.pb8{
padding-bottom:8px;
}
.pb9{
padding-bottom:9px;
}
.pb10{
padding-bottom:10px;
}
.pb15{
padding-bottom:15px;
}
.pb20{
padding-bottom:20px;
}
.pb25{
padding-bottom:25px;
}
.pb30{
padding-bottom:30px;
}
.pb35{
padding-bottom:35px;
}
.pb40{
padding-bottom:40px;
}
.pb45{
padding-bottom:45px;
}
.pb50{
padding-bottom:50px;
}
.pb55{
padding-bottom:55px;
}
.pb60{
padding-bottom:60px;
}
.pb65{
padding-bottom:65px;
}
.pb70{
padding-bottom:70px;
}
.pb75{
padding-bottom:75px;
}
.pb80{
padding-bottom:80px;
}
.pb85{
padding-bottom:85px;
}
.pb90{
padding-bottom:90px;
}
.pb95{
padding-bottom:95px;
}
.pb100{
padding-bottom:100px;
}
.pb150{
padding-bottom:150px;
}
.pb200{
padding-bottom:200px;
}
.pb230{
padding-bottom:230px;
}

.pl1{
padding-left:1px;
}
.pl2{
padding-left:2px;
}
.pl3{
padding-left:3px;
}
.pl4{
padding-left:4px;
}
.pl5{
padding-left:5px;
}
.pl6{
padding-left:6px;
}
.pl7{
padding-left:7px;
}
.pl8{
padding-left:8px;
}
.pl9{
padding-left:9px;
}
.pl10{
padding-left:10px;
}
.pl15{
padding-left:15px;
}
.pl20{
padding-left:20px;
}
.pl25{
padding-left:25px;
}
.pl30{
padding-left:30px;
}
.pl35{
padding-left:35px;
}
.pl40{
padding-left:40px;
}
.pl45{
padding-left:45px;
}
.pl50{
padding-left:50px;
}
.pl55{
padding-left:55px;
}
.pl60{
padding-left:60px;
}
.pl65{
padding-left:65px;
}
.pl70{
padding-left:70px;
}
.pl75{
padding-left:75px;
}
.pl80{
padding-left:80px;
}
.pl85{
padding-left:85px;
}
.pl90{
padding-left:90px;
}
.pl95{
padding-left:95px;
}
.pl100{
padding-left:100px;
}
.pl150{
padding-left:150px;
}



.img100 {width: 100%;}
.img90 {width: 90%;}
.img80 {width: 80%;}
.img70 {width: 70%;}
.img60 {width: 60%;}
.img50 {width: 50%;}
.img40 {width: 40%;}
.img30 {width: 30%;}
.img20 {width: 20%;}





.fleft{
float:left;
}

.fright{
float:right;
}

.cf:before, .cf:after{
content:"";
display:table;
}
.cf:after{
clear:both;
}

.tleft{
text-align:left;
}

.tright{
text-align:right;
}

.center{
text-align:center;
}

.relative{
position:relative;
}

.absolute{
position:absolute;
}
/*-----------------------------------------------------*/