/* CSS ドット style.css */

* {
    margin: 0 auto;
}
html {
    overflow-y: scroll;
    height: 100%;
}
body {
    margin: 0;
    height: 100%;
    text-align:center;
    line-height: 1.4;
    font-family: AvenirLT-Medium, Meiryo, sans-serif;
    font-family: '游ゴシック体', 'Yu Gothic', YuGothic, AvenirLT-Medium, Meiryo, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 62.5%;
    color: #666;
}
img {
    vertical-align: bottom;
}
ul, li {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
a {
    color: #000000;
    text-decoration: none;
    transition: all 0.15s;
    -webkit-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -ms-transition: all 0.15s;
    -o-transition: all 0.15s;
}
a:hover {
    color: #333333;
    -webkit-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -ms-transition: all 0.15s;
    -o-transition: all 0.15s;
    transition: all 0.15s;
}
h1, h2, h3, h4, h5 {
    margin: 0;
    padding: 0;
    font-size: 62.5%;
    font-weight: normal;
}
header {
    text-align: center;
    width: 100%;
    height: 60px;
    position: fixed;
    top: 0;
    z-index: 100;
    font-size: 1.2em;
    background-color: rgba(255,255,255,0.7);
}
header.topHeader {
    background-color: transparent;
}
header.lowerHeader {
    position: absolute;
    background-color: transparent;
}

#logo {
    text-align: left;
    position: absolute;
    top: 0px;
    left: 60px;
}
#logo img {
    opacity: 1.0;
}
#gmenu {
    position: absolute;
    top:   15px;
    right: 100px;
}
#gmenu ul li {
    float: left;
    margin-left: 25px;
    height: 30px;
    width: 80px;
    padding-top: 5px;
}
#gmenu ul li a {
    color: #333;
    font-size: 13px;
    font-weight: bold;
    height: 30px;
    width:  80px;
    display: block;
    background: url("../img/menuBg.png") no-repeat;
    background-position-y: 28px;
    background-position-x: -80px;
    letter-spacing: 1px;
}
.topHeader #gmenu ul li a,
header.lowerHeader #gmenu ul li a {
    color: #fff;
}


#gmenu ul li.selected a,
#gmenu ul li:hover a {
    color: orange !important;
    background-position-x: 0px !important;
}


header.topHeader .header #logo .topHeaderSlide {
    display: block;
}
header.topHeader .header #logo .topHeader {
    display: none;
}
header .header #logo .topHeaderSlide {
    display: none;
}
header .header #logo img {
    width: 250px;
}


#wrapper.serviceWrapper {
	padding-top: 60px;
}
#wrapper.lower h2 {
    padding-top: 150px;
}
/*
#wrapper.lower h2 {
    color: #FFF;
    font-size: 36px;
    font-weight: normal;
    letter-spacing: 0px;
    font-family: AvenirLT-Medium, Meiryo, sans-serif;
    padding-top: 60px;
    margin-bottom: 30px;
}
*/
#wrapper img {
    width: 100%;
}
#wrapper h2 img {
    width: auto;
    margin: 30px auto 10px;
}
#wrapper .service h2 img {
    margin: 0px;
}


#video {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: absolute;
}
#video video {
    width: 100%;
    min-width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

#top-image {
    display: block;
    position: fixed;
    left: 0;
    background-color: #fff;
    width: 100%;
    height: 100%;
    //z-index: 0;
    background-size: cover;
    background-position: 50% 50%;
    z-index: -1;
}
#top-image-inner {
    width: 100%;
    height: 100%;
    position: relative;
}
.top-containts {
    position: absolute;
    //z-index: -1;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    overflow: hidden;
    background-size: cover;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-image: none;
}
.top-containts2 {
    position: absolute;
    //z-index: -1;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    overflow: hidden;
    background-size: cover;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-image: url(../img/mission03.jpg);
}

.first-view-wrap {
    width: 100%;
    position: relative;
    display: table;
    height: calc(100vh - 70px);
}
.first-view-inner {
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    display: table-cell;
    height: 100%;
    overflow: hidden;
    position: relative;
    vertical-align: middle;
    width: 100%;
    margin: 0 auto;
    zoom: 1;
}
.first-view-title {
    line-height: 1;
    font-size: 64px;
    text-shadow: rgba(34, 34, 34, 0.498039) 0px 0px 27px;
    text-align: center;
    font-family: "Helvetica Neue LT W1G 25 Ultra Light", 游ゴシック, YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    font-weight: 400;
    color: rgb(255, 255, 255);
    letter-spacing: 10px;
    letter-spacing: 5px;
    margin: 0px;
    padding: 0px;
}
.first-view-title strong {
    font-family: 'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
    font-weight: 600;
}
.first-view-title p {
    font-size: 18px;
    letter-spacing: 10px;
    letter-spacing: 5px;
    line-height: 1.6;
    text-align: center;
    margin-top: 30px;
    text-shadow: 1px 1px 1px #000;
}

.first-view {
    width: 100%;
    position: relative;
    display: table;
    height: calc(100vh - 120px);
    height: calc(100vh - 70px);
    height: 100vh;
}
.first-inner {
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    display: table-cell;
    height: 100%;
    overflow: hidden;
    position: relative;
    vertical-align: middle;
    width: 100%;
    margin: 0 auto;
    zoom: 1;
}
.first-title {
    line-height: 1;
    //text-shadow: rgba(34, 34, 34, 0.498039) 0px 0px 27px;
    text-align: left;
    font-family: "Helvetica Neue LT W1G 25 Ultra Light", 游ゴシック, YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    color: rgb(255, 255, 255);
    letter-spacing: 10px;
    letter-spacing: 5px;
    margin: 0px;
    padding: 0px;
    position: absolute;
    left: 10%;
    top: 35%;
    top: 40%;
}
.first-title p {
    font-size: 64px;
    font-weight: bold;
    letter-spacing: 10px;
    letter-spacing: 5px;
    line-height: 1.4;
    margin-bottom: 20px;
}
.first-title span {
    font-family: 'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
    font-size: 32px;
    font-weight: normal;
    letter-spacing: 3px;
    padding-left: 7px;
}

#btnPartner {
    margin: 0px;
    padding: 0px;
    position: absolute;
    right: 60px;
    bottom: 60px;
}
#btnPartner img {
	width: 362px;
}


.scroll {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 60px;
    z-index: 100;
    width: 30px;
    margin: 0 auto;
}
.arrow {
	width: 30px;
	margin: 0 auto;
	-webkit-animation: arrow 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s infinite alternate;
	animation: arrow 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s infinite alternate;
}

.arrow span {
	position: relative;
	display: block;
	left: 50%;
}

.arrow span:before {
	content: '';
	width: 30px;
    height: 30px;
    border: 0;
    border-top: solid 3px #FFF;
    border-right: solid 3px #FFF;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	box-sizing: border-box;
}

@keyframes arrow {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  100% {
    opacity: 0.8;
    -webkit-transform: translate3d(-50%, -8px, 0);
    transform: translate3d(-50%, -8px, 0);
  }
}




html .clearfix {
    height: 1%;
}
.clearfix::after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.vision-wrap {
    display: flex;
    width: calc(100% - 220px);
    height: auto;
    background: #FFF;
    padding: 100px 110px;
}
.vision-wrap .communicationImg {
    float: none;
    width: 40%;
    text-align: center;
    padding-left: 0px;
}
.vision-wrap .communucationText {
    float: none;
    text-align: center;
    width: 55%;
    margin: 0px auto;
}
.vision-wrap h3 {
    color: #333;
    font-size: 40px;
    font-size: 32px;
    font-weight: bold;
    font-family: "Helvetica Neue LT W1G 25 Ultra Light", 游ゴシック, YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    letter-spacing: 1px;
    line-height: 1.6;
    margin-bottom: 30px;
}
.vision-wrap .communucationText h3 {
    color: #7A919C;
    font-size: 26px;
    line-height: 1.8;
    text-align: left;
    letter-spacing: -1px;
    margin-bottom: 30px;
    padding-left: 100px;
}
.vision-wrap h3 span.vision {
    display: block;
    color: #333;
    font-size: 36px;
    font-weight: normal;
    letter-spacing: 0px;
    font-family: AvenirLT-Medium, Meiryo, sans-serif;
    margin-bottom: 50px;
}
.vision-wrap h3 span.innovation {
    color: orange;
}
.vision-wrap p {
    color: #333;
    font-size: 18px;
    line-height: 2.4;
}
.vision-wrap .communucationText p {
    font-size: 18px;
    text-align: left;
    padding-left: 100px;
}
.vision-wrap .communucationText p .devText {
    color: #ff9d26;
    font-size: 18px;
}
.vision-wrap .communucationText p .dxText {
    color: #32a79e;
    font-size: 18px;
}
.vision-wrap .communucationText p .hrText {
    color: #1d8bc0;
    font-size: 18px;
}
.company-wrap {
    width: 100%;
    overflow: hidden;
    //margin-top: 60px;
}
.service-box-left {
    width: 50%;
    height: 50vw;
    float: left;
    position: relative;
    overflow: hidden;
}
.service-box-left::after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-left p.company-box-p {
    top: -60px;
    //letter-spacing: 0.05px
}
.service-box-left .company-box-span {
    top: 120px;
}
.service-box-left .company-box-span .more {
    margin-top: 80px;
}
.service-box-left video {
    position: absolute;
    left: 0px;
    top:0px;
}
.service-box-left-top {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-left-top::after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-left-bottom {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-left-bottom::after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-right-top {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-right-top::after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-right-bottom {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-right-bottom:after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-left-bottom2 {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-left-bottom2:after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-right-bottom2 {
    width: 50%;
    height: 25vw;
    float: right;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.service-box-right-bottom2:after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-leftBG,
.service-box-left-topBG,
.service-box-left-bottomBG,
.service-box-left-bottom2BG,
.service-box-right-topBG,
.service-box-right-bottomBG,
.service-box-right-bottom2BG {
    position: absolute;
    height: 50vw;
    width: 100%;
    background: url(../img/overbgcatch.jpg);
    background-size: cover;
    transition: 0.5s;
    opacity: 0.7;
    z-index: 1;
}
.service-box-left-topBG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/inbbgcatch.jpg);
    background-size: contain;
    //opacity: 0.4;
}
.service-box-left-bottomBG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/overbgcatch.jpg);
    background-size: contain;
    background-size: cover;
    //opacity: 0.4;
}
.service-box-right-topBG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/conbgcatch.jpg);
    background-size: contain;
    //opacity: 0.4;
}
.service-box-right-bottomBG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/ecbgcatch.jpg);
    background-size: contain;
    //opacity: 0.4;
}
.service-box-left-bottom2BG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/humanbgcatch.jpg);
    background-size: contain;
    background-size: cover;
}
.service-box-right-bottom2BG {
    height: 50vw;
    width: 100%;
    background-image: url(../img/aichatbotbgcatch.jpg);
    background-size: contain;
}
a:hover .service-box-leftBG,
a:hover .service-box-left-topBG,
a:hover .service-box-left-bottomBG,
a:hover .service-box-left-bottom2BG,
a:hover .service-box-right-topBG,
a:hover .service-box-right-bottomBG,
a:hover .service-box-right-bottom2BG {
    transition: 0.5s;
    opacity: 0;
}

.company-box-bottom-left {
    width: 50%;
    height: 25vw;
    float: left;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.company-box-bottom-left:after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.company-box-bottom-right {
    width: 50%;
    height: 25vw;
    float: right;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}
.company-box-bottom-right:after {
    transition: all .3s linear;
    overflow: hidden;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background: #FFF;
}
.service-box-right-bottom:hover:after,
.company-box-right-bottom-right:hover:after {
    overflow: hidden;
}


.company-box-p {
    position: absolute;
    margin: auto;
    top: -10px;
    bottom: 0;
    left: 0;
    right: 0;
    color: #FFF;
    font-family: 'Helvetica Neue LT W1G 35 Thin','Helvetica Neue',sans-serif, 'メイリオ';
    font-weight: 100;
    font-size: 40px;
    height: 56px;
    text-align: center;
    z-index: 10;
    transition: 0.5s;
}
.company-box-span {
    display: block;
    position: absolute;
    margin: auto;
    top: 80px;
    bottom: 0;
    left: 0;
    right: 0;
    color: #FFF;
    font-family: 'Helvetica Neue LT W1G 35 Thin','Helvetica Neue',sans-serif;
    font-weight: 100;
    font-size: 16px;
    height: 20px;
    letter-spacing: 3px;
    text-align: center;
    z-index: 10;
    transition: 0.5s;
}
.company-box-span .more {
    display: block;
    margin-top: 30px;
    border: 1px solid #FFF;
    color: #FFF;
    transition: 0.5s;
    width: 120px;
    padding: 10px;
}

/*
a:hover .service-box-left-bottom .company-box-p,
a:hover .service-box-left-bottom .company-box-span,
*/

a .service-box-right-top .company-box-p,
a .service-box-right-top .company-box-span {
    color: #333;
    transition: 0.5s;
}
a .service-box-right-top .company-box-span .more {
    color: #333;
    border-color: #333;
}

.company {
    width: 900px;
    max-width: 100%;
    margin: 0 auto;
    padding: 150px 0px 100px;
}
#solution h3 {
    color: #333;
    font-size: 36px;
    margin-bottom: 50px;
    font-weight: normal;
    letter-spacing: 0px;
    font-family: AvenirLT-Medium, Meiryo, sans-serif;
}
#wrapper.lower h2,
.company h3 {
    color: #666;
    font-size: 16px;
    text-align: center;
    margin-bottom: 80px;
}
#wrapper.lower h2 span {
    display: block;
    color: #F7931E;
    font-size: 36px;
    font-weight: bold;
}

.company table {
    width: 100%;
}
.company table tr th {
    width: 25%;
    padding: 15px 50px 15px 0px;
    text-align: right;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.6;
    vertical-align: top;
    border-bottom: 1px solid #DDD;
    border: none;
}
.company table tr td {
    width: 75%;
    padding: 15px 15px;
    text-align: left;
    font-size: 16px;
    line-height: 1.6;
    vertical-align: top;
    border-bottom: 1px solid #DDD;
    border: none;
}
.company a {
    color: #f39523;
    color: #0040ff;
    text-decoration: underline;
}

/*
a:hover .service-box-left-bottom .company-box-span .more,
*/

a:hover .service-box-right-top .company-box-span .more {
    color: #333;
    border-color: #333;
    transition: 0.5s;
}
.company-box-bottom-right .company-box-p,
.company-box-bottom-right .company-box-span {
    
}
.service-box-left .company-box-p,
.service-box-left-top .company-box-p,
.service-box-left-bottom .company-box-p,
.service-box-left-bottom2 .company-box-p,
.service-box-right-top .company-box-p,
.service-box-right-bottom .company-box-p,
.service-box-right-bottom2 .company-box-p,
.company-box-bottom-left .company-box-p,
.company-box-bottom-right .company-box-p {
    font-size: 48px;
    font-family: 'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
    font-weight: 400;
    letter-spacing: 3px;
    line-height: 1.0;
}
.service-box-left-top .company-box-p {
    //margin-top: 100px;
}

#gotop a {
    color: #FFF;
}


.stage.on img{
    opacity: 0;
}
a .stage img {
    opacity: 0;
    -webkit-transition: 0.5s opacity;
       -moz-transition: 0.5s opacity;
        -ms-transition: 0.5s opacity;
         -o-transition: 0.5s opacity;
            transition: 0.5s opacity;
}
a .stage .company-box-p,
a .stage .company-box-span {
    color: #333;
    -webkit-transition: 0.3s color;
       -moz-transition: 0.3s color;
        -ms-transition: 0.3s color;
         -o-transition: 0.3s color;
            transition: 0.3s color;
}
.service-box-left-bottom,
.service-box-right-top {
    background: #FBFBFB;
}
.service-box-left-top,
.service-box-right-bottom {
    background: #F2F2F2;
}
a:hover .stage img {
    opacity: 1.0;
}
a:hover .stage .company-box-p,
a:hover .stage .company-box-span {
    color: #FFF;
}

a:hover .service-box-right-top .company-box-p,
a:hover .service-box-right-top .company-box-span {
    color: #333;
}

.about-wrap {
    width: 100%;
    min-width: 1080px;
    height: auto;
    margin: 0 auto;
    z-index: 0;
    background-color: #fff;
    position: relative;
}
.about-wrap-con {
    width: 1200px;
    display: block;
    margin: 0 auto;
}
.about-wrap-con p {
    font-size: 64px;
    letter-spacing: 5px;
    color: #666;
    text-align: center;
    margin-top: 80px;
    text-shadow: 2px 2px 3px #FFF;
    //font-weight: bold;
    color: #FFFFFF;
    text-shadow: 0px 0px 8px #000;
}
#contact {
    height: 540px;
    background: #FFFFFF;
    margin-bottom: 0px;
}
#contact .pagetop {
    width: 50px;
    margin: 300px auto 0;
}
#contact .pagetop a:hover img {
    opacity: 0.8;
}

footer {
    width: 100%;
    //min-width: 1080px;
    height: auto;
    position: relative;
    background-color: #EEE;
    //opacity: 0.9;
}
footer.footerThanks {
    position: absolute;
    bottom: 0px;
}
.footerInner {
    width: 100%;
    height: auto;
    position: relative;
    background-color: #FFF;
    background-color: #EEE;
    padding-top: 10px;
    padding-bottom: 15px;
}
.footerInner-con {
    margin: 0 auto;
    display: block;
    //width: 1080px;
    width: 80%;
}
.footerPagetop {
    width: 100%;
    position: absolute;
    top: 10px;
    right: 15px;
    height: 54px;
    z-index: 9999;
}
.footerPagetop a {
    display: block;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    width:  62px;
    height: 49px;
    margin-top: 5px;
    background: url(../img/pagetop.png) no-repeat;
    //background-position-y: 5px;
}
.footerPagetop a:hover {
    margin-top: 0px;
    height: 54px;
    //background-position-y: 0px;
}
#pagetop {
    text-align: right;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
}
.footerLook {
    display: block;
    font-size: 13px;
    padding: 10px 0px 0px;
}
.footerLook ul {
    //width: 1040px;
    width: 100%;
    height: 30px;
    margin: 0 auto;
}
.footerLook ul li {
    float: left;
    //width: 150px;
    height: 30px;
    margin-right: 20px;
}
.footerLook a {
    display: block;
    letter-spacing: 1px;
    text-align: left;
    color: #666;
    font-size: 13px;
    background: url(../img/arrow.png) no-repeat;
    background-position-x: 0px;
    background-position-y: 3px;
    padding-left: 15px;
}
.footerLook a:hover {
    opacity: 0.8;
}
footer .copyright {
    position: fixed;
    bottom: 2%;
    right:  1%;
    font-size: 1.2em;
    color: #999;
}


#wrapper.under {
    padding-top: 0;
}
.section {
    width: 100%;
    height: auto;
}
.secInner {
    width: 1300px;
    //width: 1349px;
    width: 100%;
    height: 680px;
    margin: 0 auto;
    margin: 60px auto -60px;
}
.secHead {
    margin-top: 0px;
}
.contact .secInner {
    padding: 50px 0 100px;
    height: auto;
    background: #CCC;
}
.contact .secInner a img {
    margin: 15px 0 0;
    opacity: 1.0;
    -webkit-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -ms-transition: all 0.15s;
    -o-transition: all 0.15s;
    transition: all 0.15s;
}
.contact .secInner a:hover img {
    margin: 10px 0 5px;
    -webkit-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -ms-transition: all 0.15s;
    -o-transition: all 0.15s;
    transition: all 0.15s;
}
#wrapper .secInner img {
    width: auto;
    max-width: 100%;
}

#wrapper .service .secInner {
    color: #FFF;
    font-size: 20px;
}
#wrapper .service .secInner h3 {
    color: #FFF;
    //font-weight: bold;
    font-size: 26px;
}
#wrapper .service .secInner.bgwhite,
#wrapper .service .secInner h3.bgwhite {
    color: #666;
}
#wrapper .service .secInner .oversea {
    color: #3c80d3 !important;
}
#wrapper .service .secInner .consult {
    color: #f5ad33 !important;
}
#wrapper .service .secInner .ec {
    color: #449aab !important;
}
#wrapper .service .secInner .left {
    text-align: left;
    padding-left: 6%;
}
#wrapper .service .secInner .padL4 {
    padding-left: 4%;
}
#wrapper .service .secInner .padL7 {
    padding-left: 7%;
}
#wrapper .service .secInner .padL8 {
    padding-left: 8%;
}
#wrapper .service .secInner .padL10 {
    padding-left: 10%;
}
#wrapper .service .secInner .padL15 {
    padding-left: 15%;
}
#wrapper .service .secInner .padL20 {
    padding-left: 20%;
}
#wrapper .service .secInner .padL25 {
    padding-left: 25%;
}
#wrapper .service .secInner .padL30 {
    padding-left: 30%;
}
#wrapper .service .secInner .padL35 {
    padding-left: 35%;
}
#wrapper .service .secInner .padL40 {
    padding-left: 40%;
}
#wrapper .service .secInner .padL45 {
    padding-left: 45%;
}
#wrapper .service .secInner .padL50 {
    padding-left: 50%;
}
#wrapper .service .secInner .padL55 {
    padding-left: 55%;
}
#wrapper .service .secInner .padL60 {
    padding-left: 60%;
}
#wrapper .service .secInner .right {
    text-align: right;
    padding-right: 6%;
}
#wrapper .service .secInner .padR4 {
    padding-right: 4%;
}
#wrapper .service .secInner .padR7 {
    padding-right: 7%;
}
#wrapper .service .secInner .padR8 {
    padding-right: 8%;
}
#wrapper .service .secInner .padR10 {
    padding-right: 10%;
}
#wrapper .service .secInner .padR15 {
    padding-right: 15%;
}
#wrapper .service .secInner .padR20 {
    padding-right: 20%;
}
#wrapper .service .secInner .padR25 {
    padding-right: 25%;
}
#wrapper .service .secInner .center {
    text-align: center;
}
#wrapper .service .secInner .bold {
    font-weight: bold;
}
#wrapper .service .secInner .ls4 {
    letter-spacing: 4px;
}
#wrapper .service .secInner .ls6 {
    letter-spacing: 6px;
}
#wrapper .service .secInner .font16 {
    font-size: 16px;
}
#wrapper .service .secInner .font18 {
    font-size: 18px;
}
#wrapper .service .secInner .font24 {
    font-size: 24px;
}
#wrapper .service .secInner .font26 {
    font-size: 26px;
}
#wrapper .service .secInner .font28 {
    font-size: 28px;
}
#wrapper .service .secInner .font30 {
    font-size: 30px;
}
#wrapper .service .secInner .font32 {
    font-size: 32px;
}
#wrapper .service .secInner .font36 {
    font-size: 36px;
}
#wrapper .service .secInner .lh16 {
    line-height: 1.6;
}
#wrapper .service .secInner .lh18 {
    line-height: 1.8;
}
#wrapper .service .secInner .lh20 {
    line-height: 2.0;
}
#wrapper .service .secInner .lh22 {
    line-height: 2.2;
}
#wrapper .service .secInner .lh24 {
    line-height: 2.4;
}
#wrapper .service .secInner .lh26 {
    line-height: 2.6;
}
#wrapper .service .secInner .pad2 {
    padding-top: 2%;
}
#wrapper .service .secInner .pad4 {
    padding-top: 4%;
}
#wrapper .service .secInner .pad6 {
    padding-top: 6%;
}
#wrapper .service .secInner .pad8 {
    padding-top: 8%;
}
#wrapper .service .secInner .pad10 {
    padding-top: 10%;
}
#wrapper .service .secInner .pad15 {
    padding-top: 15%;
}
#wrapper .service .secInner .pad175 {
    padding-top: 17.5%;
}
#wrapper .service .secInner .pad20 {
    padding-top: 20%;
}
#wrapper .service .secInner .pad25 {
    padding-top: 25%;
}
#wrapper .service .secInner .pad30 {
    padding-top: 30%;
}
#wrapper .service .secInner .pad35 {
    padding-top: 35%;
}
#wrapper .service .secInner .pad40 {
    padding-top: 40%;
}
#wrapper .service .secInner .pad45 {
    padding-top: 45%;
}
#wrapper .service .secInner .pad50 {
    padding-top: 50%;
}
#wrapper .service .secInner {
    position: relative;
    width: auto;
}
#wrapper .service .secInner a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#wrapper .service .secInner .link a {
    position: initial;
    top: unset;
    bottom: unset;
    left: unset;
    right: unset;
    color: #cc4c5c;
    border-bottom: 2px solid #cc4c5c;
}
#wrapper .service .secInner .link a:hover {
    opacity: 0.8;
    border-bottom: none;
}
#wrapper .service table {
    width: 90%;
    text-align: center;
    margin: 0px auto;
}
#wrapper .service table tr td {
    text-align: center;
}


#wrapper .catch {
    background-size: cover;
}
#consulting .catch {
    //background: url(../img/conbgcatch.jpg);
}

#oversea .bgImage02,
#oversea .bgImage04,
#oversea .bgImage06 {
    background: #FFF;
}

#inbound .bgImage02,
#inbound .bgImage04,
#inbound .bgImage06,
#inbound .bgImage07 {
    background: #FFF;
}

#payment .bgImage01,
#payment .bgImage02,
#payment .bgImage04 {
    background: #FFF;
}

#consulting .bgImage02 {
    background: #FFF;
}
#consulting .bgImage03 {
    background: url(../img/conbg03.png);
    background-size: cover;
}
#consulting .bgImage03 p.pad175 {
    //color: #333 !important;
}
#consulting .bgImage04 {
    background: url(../img/conbg04.png) #FFF;
    background-size: cover;
}
#ec .catch {
    //background: url(../img/ecbgcatch.jpg);
}
#ec .bgImage02,
#ec .bgImage04,
#ec .bgImage06 {
    background: #FFF;
}
#ec .bgImage03 {
    //background: #F8F8F8;
}

.contact {
    color: #FFF;
    background: none;
}


#Works {
    width: 100%;
}
#Works .worksInner {
    width: 90%;
    margin: 50px auto;
    padding: 0 0%;
}
#Works .worksInner h3 {
    color: #FFF;
    font-size: 26px;
    padding: 50px 0px;
}
#Works .worksInner h3 span {
    font-size: 20px;
}
#Works #Branding .case {
    width: 95.5%;
    padding: 1.5%;
    margin: 0 0.75%;
    float: none;
    background: #FFF;
}
#Works #Branding p {
    width: 100%;
    margin: 0;
    color: #333;
    font-size: 13px;
    text-align: left;
    display: inline-block;
}
#Works #Branding .head {
    padding-bottom: 10px;
    border-bottom: 1px solid #FE3F00;
}
#Works #Branding .head .corp {
    font-size: 14px;
    font-weight: bold;
    padding-bottom: 0px;
    border: none;
}
#Works #Branding .head .work {
    padding-top: 3px;
}
#Works #Branding .workDetail {
    width: 50%;
    float: left;
}
#Works #Branding .workDetail .consulting {
    font-size: 16px;
    font-weight: bold;
    margin: 25px 0;
    line-height: 1.8;
}
#Works #Branding .workDetail .detail {
    padding-right: 2%;
    width: 98%;
}
#Works #Branding .workDetail .info {
    margin-top: 20px;
    
}
#Works #Branding .workDetail .info .site {
    padding-top: 30px;
    font-size: 14px;
}
#Works #Branding .workDetail .info .site a {
    color: #0040FF;
}
#Works #Branding .workDetail .info .site a:hover {
    opacity: 0.8;
    text-decoration: underline;
}
#Works #Branding .workDetail .info .feature {
    
}
#Works #Branding .workImage {
    width: 50%;
    float: right;
    margin-top: 12px;
}
#Works #Branding .workImage #slider {
    margin: 8px 0 16px;
}
#Works #Branding .workImage #slider .swiper-wrapper {
    //width: 90%;
}
#Works #Branding .workImage #slider .swiper-slide {
    width: 100%;
}
#Works #Branding .workImage #slider .swiper-slide img {
    width: 100%;
}
#Works #Branding .workImage ul.thumbnails li {
    width: 25%;
    float: left;
}
#Works #Branding .workImage ul.thumbnails li a img {
    opacity: 0.8;
}
#Works #Branding .workImage ul.thumbnails li a:hover img {
    opacity: 1.0;
}
.swiper-button-prev {
    width: 28px !important;
    height: 30px !important;
    left: 15px !important;
    background-image: url(../img/prev.png) !important;
}
.swiper-button-next {
    width: 28px !important;
    height: 30px !important;
    right: 15px !important;
    background-image: url(../img/next.png) !important;
}


#Works .worksInner .case {
    width: 48.5%;
    margin: 0 0.75% 20px;
    padding: 15px 0px;
    float: left;
    background: #FFF;
}
#Works #Domestic.worksInner .case {
    width: 31.8%;
}
#Works .worksInner img {
    width: 94%;
    margin: 5px auto;
}
#Works #Domestic.worksInner img {
    margin-top: 0px;
}
#Works .worksInner .feature {
    width: 60%;
    margin: 0px 8px 0px auto;
}
#Works #Domestic.worksInner .feature {
    width: 70%;
    margin: 0px 5px 0px auto;
}
#Works .worksInner .feature img {
    width: 14%;
    margin: 0px auto;
    float: left;
}
#Works .worksInner p {
    width: 94%;
    margin: 5px auto;
    color: #333;
    font-size: 13px;
    text-align: left;
}
#Works .worksInner p.task {
    height: 54px;
}
#Works #Overseas p.task {
    height: 30px;
    //text-align: right;
}
#Works #Overseas .site {
    padding: 28px 0px 0px 3%;
    font-size: 14px;
}
#Works #Overseas #DOT .site {
    //padding-top: 16px;
    //font-size: 12px;
}
#Works #Overseas .site a {
    color: #0040FF;
}
#Works #Overseas .site a:hover {
    opacity: 0.8;
    text-decoration: underline;
}

#Works .worksInner p.comment {
    min-height: 200px;
}
#Works .worksInner p.comment span {
    font-weight: bold;
}
#Works .worksInner p.comment span.consulting {
    font-weight: bold;
    font-size: 14px;
    line-height: 1.6;
}
#Works .worksInner p.corp {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ea5514;
}


/*
#company {
    width: 680px;
    margin: 0px auto;
    padding: 0px 10px;
    height: 638px;
    z-index: 0;
    position: relative;
}
#company img {
    width: auto;
}
#company .message {
    text-align: left;
    padding: 20px 10px 20px 20px;
    margin-bottom: 40px;
    background: #FFF;
    opacity: 0.8;
    width: 810px;
}
#company .message p {
    color: #000;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: 2px;
    opacity: 1.0;
}
#company table {
    position: absolute;
    width: 100%;
    z-index: 2;
    padding: 20px 0;
}
#company table tr th {
    width: 80px;
    height: 40px;
    font-weight: bold;
    text-align: left;
    padding-left: 50px;
    color: #666;
}
#company table tr td {
    height: 40px;
    padding: 10px 30px;
    vertical-align: middle;
    color: #666;
}
#company .companyBG {
    position: absolute;
    width: 100%;
    height: 600px;
    background: #FFF;
    opacity: 0.95;
    z-index: 1;
}
*/

#privacy {
    width: 900px;
    margin: 0px auto 200px;
    padding: 0px 0px 50px;
    height: 1000px;
    z-index: 0;
    position: relative;
}
#privacy img {
    width: auto;
}
#privacy .privacyInner {
    position: absolute;
    width: 95%;
    z-index: 2;
    padding: 10px 2% 10px 3%;
    text-align: left;
    font-size: 12px;
    line-height: 1.6;
}
#privacy .privacyInner h3 {
    color: #666;
    font-size: 13px;
    font-weight: bold;
    margin: 10px 0 2px;
}
#privacy .privacyBG {
    position: absolute;
    width: 100%;
    height: 850px;
    background: #FFF;
    opacity: 0.95;
    z-index: 1;
}
#privacy .privacyInner .right {
    font-size: 13px;
}
#privacy .arrowBtn {
    background: url("../img/arrow.png") no-repeat 0px 4px;
    padding-left: 18px;
    margin-top: -10px;
}
.backhome img {
    width: auto;
}

#container {
    width: 900px;
    margin: 0px auto 30px;
    padding: 0px;
    background: none;
    height: 1000px;
    z-index: 0;
    position: relative;
}
#container .contactBG {
    position: absolute;
    width: 800px;
    height: 950px;
    background: #FFF;
    opacity: 0.95;
    z-index: 1;
}
#container p.description {
    text-align: center;
    font-size: 14px;
    line-height: 1.8;
}
form#mailformpro {
    display: none;
    position: absolute;
    z-index: 2;
    //padding: 0px !important;
}
dd.mfp_achroma,
dd.mfp_colored {
    background: rgba(255,255,255,0.4) !important;
    background: none !important;
    padding: 10px 5px 5px 240px !important;
    border-top: none !important;
    border-bottom: 1px solid #EEE !important;
    border-bottom: none !important;
}
form#mailformpro dl dt {
    padding: 15px 0px 11px !important;
    width: 200px !important;
    font-size: 13px !important;
    border-top: none !important;
}
form#mailformpro dl dd {
    font-size: 13px !important;
}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
    box-shadow: none !important;
    border-radius: 0px !important;
}
.mfp_element_submit,
.mfp_element_reset,
.mfp_element_button,
button.mfp_next,
button.mfp_prev {
    font-size: 13px !important;
    text-shadow: none !important;
    background: #FFF !important;
    padding: 7px 25px !important;
    margin: 10px 5px;
    border-radius: 0px !important;
}
.mfp_element_submit:hover,
.mfp_element_reset:hover,
.mfp_element_button:hover,
button.mfp_next:hover,
button.mfp_prev:hover {
    box-shadow: none !important;
    background: #EEE !important;
}
div#mfp_hidden {
    height: 0px !important;
}
div.mfp_err {
    margin: 0px 0px 0px 0px !important;
}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
    background: #EEE;
}


.thanks {
    position: absolute;
    z-index: 2;
    width: 800px;
    height: 200px;
    font-size: 13px;
    margin: 40px 0px 0px;
    color: #666;
    line-height: 2.4;
}

.center {
    text-align: center;
}
.left {
    text-align: left;
}
.right {
    text-align: right;
}
.floatLeft {
    float: left;
}
.floatRight {
    float: right;
}
.clear {
    clear: both;
}
.mar10 {
    margin-bottom: 10px;
}
.mar15 {
    margin-bottom: 15px;
}
.mar20 {
    margin-bottom: 20px !important;
}
.mar25 {
    margin-bottom: 25px;
}
.mar30 {
    margin-bottom: 30px;
}
.mar40 {
    margin-bottom: 40px;
}
.mar50 {
    margin-bottom: 50px;
}
.mar60 {
    margin-bottom: 60px;
}
.mar70 {
    margin-bottom: 70px;
}
.mar80 {
    margin-bottom: 80px;
}
.mar90 {
    margin-bottom: 90px;
}
.mar100 {
    margin-bottom: 100px;
}

.bx-wrapper .bx-pager.bx-default-pager a {
    width: 10px;
    height: 10px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #00ADAC;
}

dt.mfp_achroma,
dt.mfp_colored {
    background: rgba(255,255,255,0) !important;
    border: none !important;
}
div.mfp_err {
    padding: 0px 0px 0px 17px !important;
}
.must {
    background-color: transparent !important;
    border: none !important;
    text-shadow: 0px 0px 0px !important;
    color: #E91E63 !important;
    //color: orange !important;
    border-radius: 0px !important;
    box-shadow: 0px 0px 0px !important;
    background-image: none !important;
    font-size: 13px !important;
    padding: 2px 0px 2px 2px !important;
    float: right !important;
    margin: 0px !important;
}

.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea {
    font-size: 13px !important;
    font-family: 'メイリオ', Meiryo;
}

#accessInner {
    width: 1040px;
    margin: 0px auto;
    padding: 90px 0;
}
#wrapper #accessInner img {
    width: auto;
    position: relative;
    margin-bottom: 20px;
}
#map_canvas {
    width: 500px;
    height: 500px;
    float: left;
    opacity: 0.9;
}
.access {
    width: 500px;
    height: auto;
    z-index: 0;
    position: relative;
    float: right;
}
.access .accessBG {
    position: absolute;
    width: 500px;
    height: 500px;
    background: #000;
    opacity: 0.4;
    background: #FFF;
    opacity: 0.95;
    z-index: 1;
}
.access table {
    position: absolute;
    width: 500px;
    height: 500px;
    z-index: 2;
    padding: 100px 10px;
}
.access .accessBody {
    position: absolute;
    width: 450px;
    height: 400px;
    z-index: 2;
    padding: 30px 10px 70px 40px;
    color: #666;
    text-align: left;
    font-size: 13px;
    line-height: 2.0;
}
.access .accessBody h3 {
    margin: 20px 0 10px;
    font-size: 13px;
    font-weight: bold;
}

table, tr, th, td {
    margin: 0;
    padding: 0;
    text-align: left;
}
table, tbody {
    border-spacing: 0px;
    vertical-align: top;
}
table tr th {
    font-weight: normal;
    text-align: center;
    width: 100px;
    padding: 10px;
    vertical-align: middle;
    color: #666;
    font-size: 13px;
    //border-bottom: 1px solid #CCC;
}
table tr td {
    font-weight: normal;
    text-align: left;
    padding: 30px 30px;
    color: #666;
    line-height: 1.6;
    font-size: 13px;
    //border-left: 1px solid #CCC;
    //border-bottom: 1px solid #CCC;
}
table tr.last th,
table tr.last td {
    border-bottom: none;
}


.btnContact {
    width: 300px;
    height: 60px;
    background: #00ADAC;
    padding: 20px 60px;
    font-size: 14px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
.btnContact:hover {
    opacity: 0.6;
    -webkit-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -ms-transition: all 0.15s;
    -o-transition: all 0.15s;
    transition: all 0.15s;
}

.sp {
    display: none;
}
#Works #Branding p.sp {
    display: none;
}












@media screen and (max-width: 1024px) {
/* CSS ドット smart.css */

body {
    width: 100%;
}
#Sunarrows {
    overflow: hidden;
}

header {
    position: fixed;
    height: auto;
    width: 100%;
    height: 65px;
}
#logo {
    position: absolute;
    top: -5px;
    left: -25px;
}
header .header #logo img {
    width: 200px;
}
#gmenu {
    position: absolute;
    top:   40px;
    right: 10px;
}
#gmenu ul li {
    float: left;
    margin: 0px 0px 0px 10px;
    height: auto;
    width: auto;
    padding-top: 0px;
}
#gmenu ul li a {
	color: #333;
    font-size: 11.5px;
    font-weight: normal;
    height: auto;
    width:  auto;
    display: block;
    background: none;
    letter-spacing: 0px;
}
.topHeader #gmenu ul li a {
    color: #FFF;
}
#top-image {
    display: block;
    position: fixed;
    left: 0;
    background-color: #fff;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
}

.scroll {
    bottom: 20%;
}


.top-containts img {
	height: 100vh;
}
.first-view-wrap {
    height: auto;
}
.first-view-inner {
    vertical-align: initial;
    padding: 200px 0px 200px;
    letter-spacing: 0px;
}
.first-view-title {
    font-size: 20px;
    letter-spacing: 0.5px;
}
.first-view-title p {
    font-size: 13px;
    letter-spacing: 0px;
    margin: 30px 0 40px;
    text-shadow: none;
    font-weight: bold;
}

#video video {
    margin: 0px;
}

.first-view {
    width: 100%;
    position: relative;
    display: table;
    height: 100vh;
}
@media screen and (min-height: 811px) {
    .first-view {
        height: 80vh;
        height: 736px;
    }
    @media screen and (max-width: 376px) {
        .first-view {
            height: 82vh;
        }
    }
}

.first-inner {
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    display: table-cell;
    height: 100%;
    overflow: hidden;
    position: relative;
    vertical-align: middle;
    width: 100%;
    margin: 0 auto;
    zoom: 1;
}
.first-title {
    line-height: 1;
    text-align: left;
    text-align: right;
    font-family: "Helvetica Neue LT W1G 25 Ultra Light", 游ゴシック, YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    color: rgb(255, 255, 255);
    letter-spacing: 5px;
    margin: 0px;
    padding: 0px;
    position: absolute;
    left: 5%;
    left: unset;
    right: 4%;
    top: 33%;
    top: 25%;
    top: 30%;
    top: 40%;
}
.first-title p {
    font-size: 32px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 1.4;
    margin-bottom: 10px;
}
.first-title span {
    font-family: 'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 3px;
    padding-left: 4px;
    padding-right: 6px;
}


.vision-wrap {
    width: 100%;
    height: auto;
    background: #FFF;
    padding: 80px 0px 80px;
}
.vision-wrap h3 {
    color: #333;
    font-size: 24px;
    font-weight: bold;
    font-family: "Helvetica Neue LT W1G 25 Ultra Light", 游ゴシック, YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    letter-spacing: -1px;
    line-height: 1.6;
    margin-bottom: 30px;
}
.vision-wrap h3 span.vision {
    display: block;
    color: #333;
    font-size: 32px;
    font-weight: normal;
    letter-spacing: 0px;
    font-family: AvenirLT-Medium, Meiryo, sans-serif;
    margin-bottom: 30px;
}
.vision-wrap h3 span.innovation {
    color: orange;
}
.vision-wrap p {
    color: #333;
    font-size: 14px;
    line-height: 2.0;
    padding: 0px 10px;
}
.vision-wrap {
    display: block;
    width: calc(100% - 40px);
    padding: 0 20px;
}
.vision-wrap .communucationText {
    text-align: left;
    width: 100%;
    margin: 20px auto 0px;
}
.vision-wrap .communucationText h3 {
    color: #7A919C;
    font-size: 15px;
    line-height: 1.6;
    text-align: left;
    letter-spacing: 0px;
    margin-bottom: 20px;
    padding-left: 0;
}
.vision-wrap .communucationText p {
    color: #7A919C;
    font-size: 16px;
    padding: 0;
    margin-bottom: 5px;
}
.vision-wrap .communicationImg {
    width: 100%;
    text-align: center;
    margin: 30px 0;
}




.company-wrap {
    //margin-top: 20px;
    margin-top: 0px;
}
.service-box-left {
    width: 100%;
    height: 60vw;
    float: none;
    position: relative;
    overflow: hidden;
}
.service-box-right-top,
.service-box-right-bottom {
    width: 100%;
    height: 25vw;
    float: none;
    position: relative;
    transition: all .3s linear;
    overflow: hidden;
}

.company-wrap .sp {
    position: relative;
}
.company-box-p {
    top: 40%;
    font-size: 30px;
    font-weight: 400;
    height: auto;
}
.company-box-span {
    font-size: 14px;
    font-weight: 400;
}
.bk .company-box-p,
.bk .company-box-span {
    color: #333;
}


.service-box-left p.company-box-p {
    top: 20px;
    text-shadow: none;
}
.service-box-left .company-box-span {
    top: 30px;"
}
.service-box-left .company-box-p,
.service-box-right-top .company-box-p,
.service-box-right-bottom .company-box-p,
.company-box-bottom-left .company-box-p,
.company-box-bottom-right .company-box-p {
    font-size: 20px;
    font-family: 'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
    //text-shadow: rgba(68, 68, 68, 0.5) 0px 0px 15px;
}
.about-wrap-con {
    width: 100%;
}
.about-wrap {
    min-width: 100%;
}

.company-box-bottom-left,
.company-box-bottom-right {
    width: 100%;
    float: none;
}
#wrapper #accessInner img {
    width: 40%;
}
#accessInner {
    width: 100%;
    height: 600px;
    margin: 15px auto;
    padding: 0;
}
#map_canvas {
    width: 96%;
    height: 200px;
    float: none;
    opacity: 0.9;
    margin-bottom: 20px;
}
.access {
    width: 100%;
    height: auto;
    z-index: 0;
    position: relative;
    float: none;
}
.access .accessBody {
    width: 90%;
    height: auto;
    padding: 10px 5%;
    line-height: 1.6;
}
.access .accessBody h3 {
    margin: 5px 0 0px;
}
.access .accessBG {
    position: absolute;
    width: 100%;
    height: 340px;
}
.access table {
    position: absolute;
    width: 100%;
    height: auto;
    z-index: 2;
    padding: 20px 10px;
}
table tr th {
    font-weight: normal;
    text-align: right;
    width: 100px;
    padding: 8px 5px 8px 0px;
    vertical-align: middle;
}
table tr td {
    width: 200px;
    font-weight: normal;
    text-align: left;
    padding: 8px 0px 8px 5px;
}

.company {
    padding: 80px 0px;
}
.company h3 {
    color: #333;
    margin: 50px 0 30px;
}
.company table tr th {
    width: 24%;
    padding: 10px 10px 10px 15px;
    text-align: right;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.6;
    vertical-align: top;
    border-bottom: 1px solid #DDD;
    border: none;
}
.company table tr td {
    width: 76%;
    padding: 10px 5px;
    text-align: left;
    font-size: 14px;
    line-height: 1.6;
    vertical-align: top;
    border-bottom: 1px solid #DDD;
    border: none;
}
.company a {
    color: #f39523;
    color: #0040ff;
    text-decoration: underline;
}



.secInner {
    width: 100%;
    margin: 60px auto -60px;
    height: auto;
}
.secHead {
    margin: 30px auto -90px;
    height: 120px;
}

#wrapper .secInner img {
    width: 100%;
}
#wrapper .service .secInner a {
    position: relative;
    top: -20px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#consulting .bgImage04 {
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: left 0px bottom 0px;
}
#consulting .service .secInner {
	margin: 0px;
} 
#consulting .section {
	max-height: 480px;
}
#wrapper.serviceWrapper {
    padding-top: 65px;
    padding-bottom: 60px;
}

.sp {
    display: block;
}
span.sp {
    display: inline-block;
}
#Works #Branding p.sp {
    display: inline-block;
}
.pc {
    display: none;
}
#Works #Branding p.pc {
    display: none;
}

.contact img {
    max-width: 100%;
}
.section {
    min-height: 180px;
    max-height: 400px;
}
#wrapper .service .secInner {
    font-size: 10px;
}
#wrapper .service .secInner .font16 {
    font-size: 8px;
}
#wrapper .service .secInner .font18 {
    font-size: 9px;
}
#wrapper .service .secInner .font24 {
    font-size: 11px;
}
#wrapper .service .secInner .font26 {
    font-size: 12px;
}
#wrapper .service .secInner .font28 {
    font-size: 13px;
}
#wrapper .service .secInner .font30 {
    font-size: 13px;
}
#wrapper .service .secInner .ls4,
#wrapper .service .secInner .ls6 {
    letter-spacing: 0px;
}

#Works .worksInner {
    width: 96%;
}
#Works .floatLeft,
#Works .floatRight {
    float: none;
}
#Works #Branding .workDetail {
    width: 100%;
    float: none;
}
#Works #Branding .workDetail .consulting {
    font-size: 14px;
    line-height: 1.6;
}
#Works #Branding .workImage {
    width: 100%;
    float: none;
    margin-top: 12px;
}
#Works .worksInner .case {
    width: 100%;
    margin: 0 0 20px;
    padding: 10px 0px;
    float: none;
    background: #FFF;
}
#Works #Domestic.worksInner .case {
    width: 100%;
}
#Works #Branding .workDetail .info .site {
    padding-top: 0px;
    text-align: right;
}
#Works #Branding .workDetail .info .site a {
    padding-right: 8px;
}
#Works #Overseas .site {
    text-align: right;
}
#Works #Overseas .site a {
    padding-right: 8px;
}
#Works .worksInner .feature,
#Works #Domestic.worksInner .feature {
    width: 100%;
}

#company,
#privacy {
    width: 96%;
    padding: 0 2%;
    margin: 0px auto 50px;
}
#company .mar20,
#privacy .mar20 {
    margin-bottom: 10px;
}
#privacy {
    height: 1600px;
}
#privacy img {
    width: 70%;
}
#privacy .privacyInner {
    font-size: 12px;
    line-height: 1.8;
    width: calc(100% - 40px);
    height: auto;
    padding: 10px 10px 10px 15px;
}
#privacy .privacyInner h3 {
    font-size: 12px;
    margin: 5px 0 2px;
}
#privacy .privacyBG {
    width: 96%;
    height: 1450px;
}
#privacy .privacyInner .right {
    font-size: 12px;
}
#privacy .arrowBtn {
    background: url("../img/arrow.png") no-repeat 0px 2px;
    margin-top: 10px;
}
.backhome img {
    width: 10%;
}


#company {
    height: 800px;
    margin-top: -65px;
    padding-top: 65px;
    margin-bottom: 120px;
}
#company img {
    width: 40%;
}
#company table,
#company .companyBG {
    width: 96%;
    height: 400px;
    padding: 10px 0;
}
#company table tr th {
    height: 10px;
    width: 25%;
    padding-left: 10px;
    padding: 4px 10px 4px 10px;
}
#company table tr td {
    height: 10px;
    padding: 5px 5px;
}

#wrapper h2 img {
    width: 60%;
    margin: 10px auto 10px;
}
#container {
    width: 96%;
    margin: 0px 2% 10px;
    padding: 0px;
    background: none;
    height: 1100px;
    z-index: 0;
    position: relative;
}
#container p.description {
    text-align: left;
    font-size: 13px;
    padding: 0px 10px 10px;
}
form#mailformpro {
    width: 100%;
}
form#mailformpro dl dt {
    padding: 0px 10px !important;
}
form#mailformpro dl dd {
    max-width: 100% !important;
}
dd.mfp_achroma, dd.mfp_colored {
    padding: 0px 5px 5px 10px !important;
}
.must {
    display: inline-block !important;
    float: none !important;
}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
    padding: 3px 3px !important;
}
div.mfp_buttons {
    padding: 0px !important;
}
#container .contactBG {
    width: 100%;
    height: 1100px;
}
.thanks {
    width: auto;
    margin-top: 10px;
    font-size: 11px;
}

.footerInner-con {
    margin: 0 auto;
    display: block;
    width: 100%;
}

footer {
    width: 100%;
    min-width: 100%;
    height: auto;
    position: relative;
    bottom: 0;
    right:  0;
    opacity: 0.9;
}
.contact {
    display: none;
}
.contact .secInner {
    width: 100%;
    padding: 20px 0 0;
    height: 280px;
    margin-top: 0px;
}
.contact .secInner img {
    width: 70%;
}
.contact .secInner a img {
    width: 30%;
}
.footerInner {
    padding-bottom: 0px;
}
.footerPagetop {
    display: none;
}
.footerLook {
    width: 96%;
    padding: 10px 0 0px 4%;
    display: block;
}
footer .copyright {
    bottom: 1%;
    font-size: 1.0em;
    padding-right: 5px;
}
.footerLook ul {
    height: 40px;
}
.footerLook ul li {
    margin-right: 8px;
    height: 20px;
}


}


@media screen and (min-width: 360px) {
  * { -webkit-text-size-adjust: none; }
}


@media only screen and (min-device-width: 414px)
 and (max-device-width: 736px)
 and (orientation : portrait) { 




}
