@charset "UTF-8";



html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display: block;
}
ul {
    list-style: none;
}
ul:after {
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
    visibility:hidden;
}
img {
	border: none;
	vertical-align: bottom;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
address, em, code, cite, dfn, var, optgroup {
  font-style: normal;
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
	text-decoration: none;
	outline: none;
}
a:hover {
    text-decoration: underline;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
input, select {
    vertical-align: middle;
}
input[type="button"],input[type="text"],input[type="submit"],input[type="reset"],textarea {
	-webkit-appearance: none;
	border-radius: 0;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/*  common  */
.clear {
	font-size: 1px;
	height: 1px;
	clear: both;
}
.floatL {
	float: left;
	display: inline;
}

.floatR {
	float: right;
	display: inline;
}
.alignCenter {text-align: center;}
.alignLeft {text-align: left;}
.alignRight {text-align: right;}
.valignTop {vertical-align: top;}
.valignMiddle {vertical-align: middle;}
.valignBottom {vertical-align: bottom;}

.pc { display: block!important; }
.sp { display: none!important; }

/* html
-------------------------------------------------*/
html {
	overflow-y: scroll;
}

/* body 
-------------------------------------------------*/
body {
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	line-height: 2.0;
	color: #000;
	-webkit-text-size-adjust: 100%;
}

.win {/*css_browser_selector.js*/
    font-weight: 500;
}

/* wrapper 
-------------------------------------------------*/
#wrapper {
	width: 100%;
	margin: 0 auto;
	clear: both;
}

/* header 
-------------------------------------------------*/
#header {
	width: 100%;
    height:60px;
	clear: both;
	background: #FFF;
	background: url("../image/navi_bg.gif") center top repeat-X ;
}
#header .hinner {
	max-width: 1080px;
	margin: 0 auto;
	position: relative;
}
#logo {
	width: 180px;
    padding-top:10px;
	position: relative;
	float: left;
}
#logo::after {
	content:"";
	position: absolute;
	top: 0;
	left: -1000%;
	width: 1000%;
	height: 100%;
}

/* contents 
-------------------------------------------------*/
#contents {
	width: 100%;
	clear: both;
	/*padding-top: 2.86em;*/
}

/* section 
-------------------------------------------------*/
section {
	width: 100%;
}
section .inner {
	max-width: 1080px;
	margin: 0 auto;
    padding: 4vw 0 4vw;
	clear: both;
	position: relative;
}
.bg_blue00 {
	background: url("../image/bg00.gif") ;
}
.bg_blue01 {
	background: url("../image/bg01.gif") ;
}
.bg_blue02 {
	background: url("../image/bg02.gif") ;
}

div.profile__head:after,
div.inner:after {
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
    visibility:hidden;
}

/* headTitle
-------------------------------------------------*/
.headTitle01 {
	padding: 4px 0 4px 10px;
    text-align:left;
	font-weight:normal;
    line-height:0.8em;
    font-family: "Arial Black", sans-serif;
    border-left:4px solid #17288b;
    margin-bottom:1em;
}
h2.headTitle01 span{
	font-size:16px!important;
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#Contact p{
    text-align:center;
}
.Contact__btn {
    width:850px;
    height:90px;
    margin:75px auto 0;
}
.Contact__btn a{
    display:block;
    width:100%;
    height:60px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background-color: #fee399;
    text-align:center;
    color:#000;
    font-size:20px;
    line-height:60px;
    text-decoration: none;
}
.Contact__btn a:hover{
    background-color: #f9d05f;
}
/* footer 
-------------------------------------------------*/
#footer {
	width: 100%;
	clear: both;
	text-align: center;
    background-color: #FFF;
    border-top:24px solid #2ea7e0;
    color:#17288b;
}
#finner {
	max-width: 1080px;
	margin: 0 auto;
	padding: 3em 0 0.2em;
}
#footer .flogo {
	width: 32.3%;
	margin: 0 auto;
	padding: 0.35em 0 3em;
	background: url("../image/footer_bg.png") no-repeat center top 75px;
}
#footer address {
    display:inline-block;
	text-align: left;
    font-size:14px;
    line-height:32px;
    margin-bottom:70px;
    color:#000;
}
#footer address span{
    color:#17288b;
}
#footer .copyright {
	color: #000;
}


/* font
-------------------------------------------------*/
.fo12 { font-size: 12px; }
.fo13 { font-size: 13px; }
.fo14 { font-size: 14px; }
.fo15 { font-size: 15px; }
.fo16 { font-size: 16px; }
.fo18 { font-size: 18px; }
.fo20 { font-size: 20px; }
.fo22 { font-size: 22px; }
.fo24 { font-size: 24px; }
.fo26 { font-size: 26px; }

/* img
-------------------------------------------------*/
img {
    max-width: 100%;
}

/* hover 
-------------------------------------------------*/
a.link:hover {
    text-decoration: none;
}
a.al:hover img {
    opacity: 0.8;
    transition:0.3s;
}

/* wrapper 
-------------------------------------------------*/
#wrapper {
    overflow: hidden;
}

/* btnMenu 
-------------------------------------------------*/
#btnMenu,
#navi .h-close {
    display:none;
}

/* navi 
-------------------------------------------------*/
#navi {
    width: 900px;
    float: left;
}

/* gnavi 
-------------------------------------------------*/
#gnavi {
    width: 100%;
    display: table;
}
#gnavi li {
    width: 150px;
    display: table-cell;
    text-align: center;
    box-sizing:border-box;
}
#gnavi li a {
    display:block;
    width: 100%;
    height:60px;
}
#gnavi li a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}
#gnavi li span {
    display:none;
}
.headTitle01 {
    margin-bottom:2em;
}

/*products*/
.listBnr {
    font-size: 0;
    margin: 0 -2.2%;
}
.listBnr li {
    width: 33.333%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    padding: 0 2.2% 9%;
    color: #000;
}
.listBnr li .tit {
    font-weight: bold;
    border-bottom: #a3a3a3 2px solid;
    display: inline-block;
    line-height: 1.2;
    margin: 0.6em 0 0.2em;
}
.listBnr li span {
    display:inline-block;
    line-height: 1.4;
    margin:10px 0;
}
.listBnr li div {
    line-height: 1.6;
}

/* projectList
-------------------------------------------------*/
.projectList {
    padding: 3.875em 0 1.2em;
    overflow: hidden;
}

/* producerList
-------------------------------------------------*/
.producerList {
    padding: 3.875em 0;
    background: #ffebc9;
    overflow: hidden;
}
/*products*/

/*form*/
#form-body {
    width:960px;
    margin:0px auto 0;
    padding:0px 0 50px;
}

#form-body p{
    margin:0px auto 30px;
}
#privacy {
    width:960px;
    margin:0px auto 0;
    padding:0px 0 50px;
}

#privacy h1 {
    font-size:20px;
    font-weight:bold;
    margin-bottom:15px;
}

#privacy p {
    font-size:16px;
    line-height:22px;
    margin-bottom:30px;
    text-align: left;
}

#privacy dd {
    font-size:16px;
    line-height:22px;
    margin-bottom:30px;
}

#privacy dt {
    font-size:16px;
    font-weight:bold;
    line-height:22px;
    margin-bottom:3px;
    color:#0f2540;
}

#form-body a:link, a:visited, a:hover, a:active {
    color: #0f2540;
    text-decoration: underline;
}

.red {
	color:#e1001a;
	font-weight:bold;
}	

.mb12 {
	margin-bottom:12px;	
}

.mb20 {
	margin-bottom:20px;	
}

.mb40 {
	margin-bottom:40px;	
}

.mb50 {
	margin-bottom:50px;	
}

.mb75 {
	margin-bottom:75px;	
}

.mb100 {
	margin-bottom:100px;	
}
/*form*/

/*service*/
    #service ul {
        width:1080px;
        margin-bottom:100px;
    }
    #service ul li{
        width:240px;
        height:120px;
        margin:0 40px 40px 0;
    }
    #service ul li:nth-child(4n){
        margin-right:0;
    }
    #service ul li a{
        height:120px;
    }
    #service ul li a img{
        /*margin-top:19px;*/
    }
    #service ul li a p{
        font-size:21px;
    }
    
    #fancybox-content div img{
        width:20%;
        height:auto;
        margin-top:100px;
        margin-bottom:20px;
    }
    .wrapimgBoxIn {
        width:800px;
        height:400px;
    }
    .wrapimgBoxIn .icon{
        margin-top:45px;
    }
    .wrapimgBoxIn p{
        text-align:center;
    }
    .wrapimgBoxIn h3{
        font-size:26px;
        margin-bottom: 35px;
    }
#service ul li{
    float:left;
    text-align: center;
}
#service ul li a{
    box-sizing:border-box;
    display: block;
    width:100%;
    background-color: #FFF;
    color:#000;
}

#service ul li a .icon,
.wrapimgBoxIn .icon{
    width:50px;
    height:50px;
    margin:10px auto 0px;
}
.wrapimgBoxIn h3{
    text-align:center;
    font-family: "Arial Black", sans-serif;
    font-weight:100;
}

#service ul li a:hover{
    text-decoration: none;
    color:#FFF;
}
#service ul li a p{
    text-align:center;
    font-family: "Arial Black", sans-serif;
    font-weight:100;
}
/*#service ul li:nth-child(1) a,*/
#inline-content01{
    border:4px solid #248baa;
}
#service ul li:nth-child(1) a .icon,
#inline-content01 .icon{
    background:url("../image/icons.png") left top no-repeat;
}
#service ul li:nth-child(1) a:hover{
    background-color: #248baa;
}
#service ul li:nth-child(1) a:hover .icon{
    background:url("../image/icons.png") left top -50px no-repeat;
}
/*#service ul li:nth-child(2) a,*/
#inline-content02{
    border:4px solid #9f583e;
}
#service ul li:nth-child(2) a .icon,
#inline-content02 .icon{
    background:url("../image/icons.png") left -50px top no-repeat;
}
#service ul li:nth-child(2) a:hover{
    background-color: #9f583e;
}
#service ul li:nth-child(2) a:hover .icon{
    background:url("../image/icons.png") left -50px top -50px no-repeat;
}
/*#service ul li:nth-child(3) a,*/
#inline-content03{
    border:4px solid #646a58;
}
#service ul li:nth-child(3) a .icon,
#inline-content03 .icon{
    background:url("../image/icons.png") left -100px top no-repeat;
}
#service ul li:nth-child(3) a:hover{
    background-color: #646a58;
}
#service ul li:nth-child(3) a:hover .icon{
    background:url("../image/icons.png") left -100px top -50px no-repeat;
}
/*#service ul li:nth-child(4) a,*/
#inline-content04{
    border:4px solid #ffc716;
}
#service ul li:nth-child(4) a .icon,
#inline-content04 .icon{
    background:url("../image/icons.png") left -150px top no-repeat;
}
#service ul li:nth-child(4) a:hover{
    background-color: #ffc716;
}
#service ul li:nth-child(4) a:hover .icon{
    background:url("../image/icons.png") left -150px top -50px no-repeat;
}
/*#service ul li:nth-child(5) a,*/
#inline-content05{
    border:4px solid #6d3c82;
}
#service ul li:nth-child(5) a .icon,
#inline-content05 .icon{
    background:url("../image/icons.png") left -200px top no-repeat;
}
#service ul li:nth-child(5) a:hover{
    background-color: #6d3c82;
}
#service ul li:nth-child(5) a:hover .icon{
    background:url("../image/icons.png") left -200px top -50px no-repeat;
}
/*#service ul li:nth-child(6) a,*/
#inline-content06{
    border:4px solid #f75c2f;
}
#service ul li:nth-child(6) a .icon,
#inline-content06 .icon{
    background:url("../image/icons.png") left -250px top no-repeat;
}
#service ul li:nth-child(6) a:hover{
    background-color: #f75c2f;
}
#service ul li:nth-child(6) a:hover .icon{
    background:url("../image/icons.png") left -250px top -50px no-repeat;
}
/*#service ul li:nth-child(7) a,*/
#inline-content07{
    border:4px solid #113985;
}
#service ul li:nth-child(7) a .icon,
#inline-content07 .icon{
    background:url("../image/icons.png") left -300px top no-repeat;
}
#service ul li:nth-child(7) a:hover{
    background-color: #113985;
}
#service ul li:nth-child(7) a:hover .icon{
    background:url("../image/icons.png") left -300px top -50px no-repeat;
}
/*#service ul li:nth-child(8) a,*/
#inline-content08{
    border:4px solid #e16b8c;
}
#service ul li:nth-child(8) a .icon,
#inline-content08 .icon{
    background:url("../image/icons.png") left -350px top no-repeat;
}
#service ul li:nth-child(8) a:hover{
    background-color: #e16b8c;
}
#service ul li:nth-child(8) a:hover .icon{
    background:url("../image/icons.png") left -350px top -50px no-repeat;
}

#fancybox-overlay {
    background-color: rgb(0,0,0)!important;
    opacity: 0.7!important;
}
#fancybox-left-ico, #fancybox-right-ico {
    width: 20px;
    height: 30px;
}
#fancybox-left-ico {
    background-image: url('../image/fancybox/ctrl.png');
    background-position: 0px 0px;
    left: 20px;
}
#fancybox-right-ico {
    background-image: url('../image/fancybox/ctrl.png');
    background-position: -20px 0px;
    left: auto;
    right: 20px;
}
#fancybox-close {
    bottom: -30px;
    right: 0px;
    left:auto;
    width: 23px;
    height: 23px;
    background: 
    transparent url('../image/fancybox/ctrl.png') -40px 0px;
}
#wrapimgBox {
    display:none;
}

#fancybox-content div{
    text-align:center;
}
/*service*/


#contents {
	padding: 0;
}
#loader{
    width: 32px;
    height: 32px;
    display: none;
    position: fixed;
    _position: absolute;     /* IE6対策 */
    top: 50%;
    left: 50%;
    margin-top: -16px;       /* heightの半分のマイナス値 */
    margin-left: -16px;      /* widthの半分のマイナス値 */
    z-index: 10;             /* #fadeより多い値を入れて下さい */
}
#fade{
    width: 100%;
    height: 100%;
    display: none;
    background-color: #fff;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 5;              /* #loaderより少ない値を入れて下さい */
}

.mv {
    width:100%;
    height:500px;
    margin-top: 25px;
	background: url("../image/mv_bg.jpg") no-repeat center top;
    background-size: 100%;
    text-align:center;
}
.mv .mv__rogo{
    width: 850px;
    margin: 0px auto 0;
    padding-top:9VW;
    text-align:left;
}
.mv p{
    padding-top:40px!important;
    padding-bottom:10px!important;
    width: 850px;
    margin: 0 auto !important;
    text-align: left;
    line-height: 32px;
}

.topics .inner {
    width:850px;
    padding: 8vw 0 8vw;
}
.topics h2 {
    width:165px;
    float:left;
}
.topics .topicslist {
    width:850px;
    margin-top:-5px;
}
.topics .topicslist li a{
    color:#000;
    text-decoration: underline;
}

/* slidesArea
-------------------------------------------------*/
.slidesArea {
	width: 100%;
	clear: both;
	position: relative;
}
.slidesArea .ttl {
	width: 46%;
	max-width: 460px;
	position: absolute;
	left: 50%;
  	top: 50%;
	transform: translate3d(-50%, -50%, 0);
	z-index: 1;
}
.bx-wrapper {
	*zoom: 1;
}
.bx-wrapper .bx-viewport {
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
    -ms-transform: translatez(0);
    -o-transform: translatez(0);
    transform: translatez(0);
}
.bxslider {
	background: url(../images/top/bg_mainimg.jpg) repeat-x left top;
	background-size: auto 100%;
    height: 402px;
}
.bxslider li {
	height: 28.715em;
}
.bxslider .bx-controls-direction {
	display: none;
}
.bx-wrapper .bx-prev,
.bx-wrapper .bx-next {
	display: none;
}

/* projectList
-------------------------------------------------*/
.projectList {
	padding: 7.7vw 0 4vw;
}

/* producerList
-------------------------------------------------*/
.producerList {
	padding: 3vw 0 0.5vw;
}
.projectList dl {
    width:1080px;
    margin-bottom:26px;
    text-align:center;
}
.projectList dl dt{
    width:100%;
    height:90px;
    font-size:20px;
    background-color: #3e5686;
    color:#FFF;
    font-family: "Harenosora","Kozuka Mincho Pro","Kozuka Mincho Std","小塚明朝 Pro R","小塚明朝 Std R","Hiragino Mincho ProN","ＭＳ Ｐ明朝", "ＭＳ 明朝","MS PMincho",メイリオ,Meiryo,serif;
}
.projectList dl dt span{
    line-height:90px;
    padding: 12px 0px 12px 50px;
}
.projectList dl dt b{
    font-size:30px;
    font-weight:normal;
}
.projectList dl dd{
    width:100%;
    padding:25px 0 25px;
	background: url("../image/bg_dd.gif") no-repeat center top;
    background-color: #FFF;
}
.projectList dl dd b{
    font-size:24px;
    line-height:50px;
    font-family: "Harenosora","Kozuka Mincho Pro","Kozuka Mincho Std","小塚明朝 Pro R","小塚明朝 Std R","Hiragino Mincho ProN","ＭＳ Ｐ明朝", "ＭＳ 明朝","MS PMincho",メイリオ,Meiryo,serif;
	background: url("../image/marker.png") repeat-X center bottom;
    font-weight:normal;
}
.icon01{
	background: url("../image/icon1.png") no-repeat left center;
}
.icon02{
	background: url("../image/icon2.png") no-repeat left center;
}
.icon03{
	background: url("../image/icon3.png") no-repeat left center;
}
.icon04{
	background: url("../image/icon4.png") no-repeat left center;
}

#Company table{
    border:2px solid #999;
    border-bottom:1px solid #999;
}
#Company th{
    background-color: #eaf0fb;
    width:100px;
    padding:16px 20px;
    border-right:2px solid #999;
    border-bottom:1px solid #999;
}
#Company td{
    background-color: #FFF;
    padding:16px 20px;
    border-bottom:1px solid #999;
}

#Profile .profile__left{
    width:100%;
    margin-bottom:50px;
}
#Profile .profile__right{
    width:100%;
}
#Profile .profile__head {
    border-bottom:2px dotted #666;
    margin-bottom:30px;
    padding-bottom:30px;
}
#Profile .photo{
    float:left;
    width:180px;
    margin-right:20px;
}
#Profile .text{
    float:left;
    width: calc(100% - 200px);
    font-size:14px;
    line-height:22px;
    padding-top: 110px;
}
#Profile .text h3{
    font-size:20px;
    line-height:26px;
}
#Profile .text p{
    font-size:14px;
    line-height:22px;
    width:880px;
}
#Profile table{
    font-size:12px;
    line-height:22px;
}
#Profile table th,
#Profile table td{
    padding-bottom:4px;
}
#Profile table th{
    width:58px;
    font-weight:normal;
    text-align:left;
}
#Profile .profile__left table th{
    width:8.5em;
}
#Profile #shigeru table th{
    width: 5em;
}
#Profile #nagao table th{
    width: 6.5em;
}
#Profile #nagao table.media th{
    width: 8.5em;
}
#Profile .profile__sub {
    margin-top:10px;
    font-size: 14px;
    line-height: 22px;
}
#Profile .media {
    border-top: 2px dotted #666;
    margin-top: 15px;
}
#Profile .media th,
#Profile table.media tr:nth-child(1){
    padding-top: 15px;
}
    .ls2 {
        letter-spacing: 4em;
    }
    .ls3 {
        letter-spacing: 1.5em;
    }
    .ls4 {
        letter-spacing: 0.66em;
    }
    .ls5 {
        letter-spacing: 0.25em;
    }
    #Profile #nagao .text{
        padding-top: 22px;
        padding-bottom: 5px;
    }