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-size:100%;
    font:inherit;
    vertical-align:baseline
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{
    display:block
}
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
}
.ios .iziModal div::-webkit-scrollbar,.android .iziModal div::-webkit-scrollbar{
    display:none
}
*{
    -moz-box-sizing:border-box;
    box-sizing:border-box
}
ul,ol,dl{
    list-style:none
}
img{
    width:100%;
    height:auto;
    vertical-align:top
}
img[usemap],map area{
    outline:none
}
img.svg{
    width:100%;
    height:auto
}
img[src$="svg"]{
    display:block;
    max-width:auto;
    width:100%;
    height:auto
}
canvas,video{
    vertical-align:top
}
button{
    padding:0;
    cursor:pointer;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    background:none;
    border:none;
    outline:none;
    font-size:inherit;
    font-family:inherit
}
select{
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    font-size:inherit;
    font-family:inherit
}
html{
    -webkit-tap-highlight-color:rgba(255,255,255,0);
    font-size:62.5%
}
body{
    -webkit-text-size-adjust:100%;
    -webkit-font-smoothing:antialiased;
    color:#000000;
    font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","游ゴシック体","Yu Gothic","YuGothic","Meiryo","メイリオ","ＭＳ Ｐゴシック","MS PGothic",Verdana,Roboto,"Droid Sans",sans-serif;
    line-height:1.5;
    -webkit-font-feature-settings:"palt";
    -moz-font-feature-settings:"palt";
    font-feature-settings:"palt";
    letter-spacing:.15em;
    position:relative
}
input,button,textarea{
    -webkit-text-size-adjust:100%;
    -webkit-font-smoothing:antialiased;
    font-size:inherit;
    font-family:inherit;
    letter-spacing:inherit
}
a{
    color:#000000;
    text-decoration:none
}
a:hover{
    text-decoration:none
}
i{
    display:inline-block
}
html.lock{
    overflow:hidden;
    height:100%
}
html.lock body{
    position:fixed;
    width:100%;
    overflow-y:hidden
}
.pcOnly{
    display:none !important
}
.clearfix:after{
    content:"";
    display:block;
    clear:both
}
.em-1after{
    margin-right:-0.5em
}
.em-1before{
    margin-left:-0.5em
}
.hide{
    display:none
}
.hidden{
    display:none
}
.bold{
    font-weight:bold
}
.swap-img{
    opacity:0
}
.swap-img[src]{
    opacity:1
}
.fixed{
    position:fixed
}
.tapHover{
    background-color:rgba(255,255,255,0.5)
}
.header-logo .tapHover.btn,.page-top .tapHover.btn,.more-btn-holder .tapHover.btn{
    opacity:0.5
}
.tapHover.gallery-photos-item.list-item .pic,.tapHover.gallery-photos-item.list-item .info,.tapHover.gallery-photos-item.list-item .like-total{
    opacity:0.5
}
.wrap{
    position:relative;
    z-index:1;
    width:100%;
    overflow:hidden
}
.wrap img{
    width:100%
}
.font-yumin{
    font-family:"游明朝","YuMincho",serif;
    font-weight:bold
}
.android .font-yumin{
    font-weight:400 !important;
    font-family:"Sawarabi Mincho",serif
}
.barba-container{
    padding-top:18.66667%
}
.barba-container[data-namespace="home"]{
    padding-top:0
}
.list-inner{
    margin:0 auto;
    margin:6.84932vw auto
}
.list-inner .btn-list{
    display:none;
}
.list-inner .btn-list.active{
    display:block;
}
.list-inner .title{
    color:#9a9a9a;
    position:relative
}
.list-inner .text{
    color:#9a9a9a
}
.list-inner .text .txt{
    width:90%;
    color:#9a9a9a;
    padding:2.93333vw;
    display:inline-block
}
.list-inner .text:first-of-type{
    margin-top:2.56849vw
}
.list-inner .text:before{
    content:"-";
    display:inline-block;
    margin-right:0.2em;
    text-align:left
}
.list-inner .text.wantedly{
    display:none
}
.list-inner .text.wantedly:before{
    content:"";
    display:inline-block
}
.list-inner.active .title:after{
    -webkit-transform:rotate(180deg);
    transform:rotate(180deg)
}
.list-inner.active .text{
    opacity:1;
    display:block;
    -webkit-transition:opacity 0.8s ease;
    transition:opacity 0.8s ease
}
.list-inner.active .plus:after{
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg)
}
.list-inner .title{
    font-size:3.73333vw;
    color:#FFF;
    position:relative;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -moz-box-pack:justify;
    justify-content:space-between;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center
}
.list-inner .plus{
    display:inline-block;
    position:absolute;
    width:20px;
    height:20px;
    right:0
}
.list-inner .plus:after,.list-inner .plus:before{
    content:"";
    display:block;
    background:#9a9a9a;
    position:absolute;
    width:10px;
    height:1px;
    top:10px;
    right:0
}
.list-inner .plus:after{
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
    -webkit-transform:rotate(90deg);
    transform:rotate(90deg)
}
.list-inner .arrow{
    display:inline-block;
    position:absolute;
    width:20px;
    height:20px;
    right:0
}
.list-inner .arrow:after,.list-inner .arrow:before{
    content:"";
    display:block;
    background:#9a9a9a;
    position:absolute;
    width:10px;
    height:1px;
    top:9px;
    right:0;
    -webkit-transform-origin:right 50%;
    transform-origin:right 50%
}
.list-inner .arrow:before{
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}
.list-inner .arrow:after{
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}
header.header{
    width:100%;
    margin:0 auto;
    position:fixed;
    top:0;
    left:0 !important;
    z-index:10;
    background:#fff
}
header.header .header-inner{
    padding-top:18.66667vw
}
header.header .header-logo,header.header .nav-logo{
    width:35.06667%;
    padding:5.6% 6%;
    display:inline-block;
    position:absolute;
    left:0;
    top:0
}
header.header .header-logo .btn,header.header .nav-logo .btn{
    display:block
}
header.header .nav-logo{
    opacity:1;
    top:0;
    z-index:10
}
header.header.active .nav{
    opacity:1;
    visibility:visible
}
header.header.active .nav .list-inner{
    pointer-events:auto;
    opacity:1;
    -webkit-animation:upIn 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),fadeIn 0.6s both;
    animation:upIn 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),fadeIn 0.6s both
}
header.header.active .nav .list-inner:nth-of-type(1){
    -webkit-animation-delay:0.2s;
    animation-delay:0.2s
}
header.header.active .nav .list-inner:nth-of-type(2){
    -webkit-animation-delay:0.28s;
    animation-delay:0.28s
}
header.header.active .nav .list-inner:nth-of-type(3){
    -webkit-animation-delay:0.36s;
    animation-delay:0.36s
}
header.header.active .nav .list-inner:nth-of-type(4){
    -webkit-animation-delay:0.44s;
    animation-delay:0.44s
}
header.header.active .nav .list-inner:nth-of-type(5){
    -webkit-animation-delay:0.52s;
    animation-delay:0.52s
}
header.header.active .nav .title{
    opacity:1;
    -webkit-transform:translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0);
    backface-visiblity:visible
}
header.header.active .nav .title.recruit .nav-top{
    display:block;
    width:100%
}
header.header.active .nav .btn:after{
    -webkit-transform:translate3d(0, -100%, 0);
    transform:translate3d(0, -100%, 0);
    backface-visiblity:visible
}
header.header.active .btn-menu .menu{
    background:#9a9a9a;
    -webkit-transform:rotate(135deg);
    transform:rotate(135deg);
    -webkit-transition:all 0.6s ease;
    transition:all 0.6s ease
}
header.header.active .btn-menu .menu:before,header.header.active .btn-menu .menu:after{
    background:#9a9a9a;
    top:0
}
header.header.active .btn-menu .menu:before{
    -webkit-transform:rotate(90deg);
    transform:rotate(90deg)
}
header.header.active .btn-menu .menu:after{
    opacity:0
}
header.header .btn-menu{
    width:22.66667%;
    padding:18.66667% 6% 0;
    position:absolute;
    top:0;
    right:0;
    z-index:100
}
header.header .btn-menu .menu{
    width:47.05882%;
    height:2px;
    background:#000;
    position:absolute;
    left:26.47059%;
    top:49.28571%;
    -webkit-transition:all 0.6s ease;
    transition:all 0.6s ease
}
header.header .btn-menu .menu:before,header.header .btn-menu .menu:after{
    content:"";
    display:block;
    background:#000;
    position:absolute;
    width:100%;
    height:2px;
    -webkit-transition:all 0.6s ease;
    transition:all 0.6s ease
}
header.header .btn-menu .menu:before{
    top:-7px
}
header.header .btn-menu .menu:after{
    top:7px
}
header.header .nav{
    width:100%;
    height:100vh;
    padding-top:18.66667%;
    position:absolute;
    top:0;
    left:0;
    display:block;
    background:#202020;
    display:block;
    overflow-y:scroll;
    -webkit-transition:all 0.5s ease;
    transition:all 0.5s ease;
    z-index:0;
    opacity:0;
    visibility:hidden
}
header.header .nav .nav-top{
    color:#fff;
}
header.header .nav .list-inner{
    width:77.86667%;
    overflow:hidden;
    pointer-events:none;
    margin:6.93333vw auto 8vw;
    opacity:0
}
header.header .nav .list-inner.site{
    margin-top:14.93333vw
}
header.header .nav .title{
    font-size:4.26667vw
}
header.header .nav .text{
    font-size:3.46667vw
}
header.header .nav .text-en{
    font-size:4.26667vw;
    color:#9a9a9a
}
header.header .nav .nav-serviceSite{
    opacity:1
}
header.header .nav .nav-serviceSite .nav-btn{
    overflow:hidden
}
header.header .nav .nav-serviceSite .btn{
    width:100%;
    display:block;
    opacity:1;
    text-align:center;
    position:relative;
    padding:5.2%;
    backface-visiblity:hidden
}
header.header .nav .nav-serviceSite .btn-serviceSite{
    padding:3.78007vw 0 2.92096vw;
    border:2px solid #434343
}
footer.footer{
    position:relative;
    z-index:1;
    background:#202020;
    padding:9.73333vw 0 16vw
}
footer.footer .list-inner{
    margin:4.4vw auto
}
footer.footer .list-inner .text:first-of-type{
    margin-top:2vw
}
footer.footer .list-inner .txt{
    padding:2.39726vw
}
footer.footer .contact{
    margin:0 auto;
    font-size:0
}
footer.footer .contact .text{
    opacity:1
}
footer.footer .contact .txt{
    padding:0
}
footer.footer .contact .icon.weare{
    width:10.4vw;
    margin-top:0;
    margin-right:10vw;
    margin-left:3.2vw
}
footer.footer .contact .icon.weare a{
    width:100%
}
footer.footer .contact .icon.sitateru{
    width:18.8vw;
    height:23px;
    margin-top:2.53333vw;
    margin-right:4vw;
    margin-left:1.06667vw
}
footer.footer .contact .icon.sitateru a{
    width:100%
}
footer.footer .contact .icon-text{
    display:inline-block;
    width:57.33333vw;
    margin-top:3vw;
    padding:1.33333vw 0 1.33333vw 3.33333vw;
    border-left:1px solid #434343
}
footer.footer .contact .icon,footer.footer .contact .icon-text{
    display:inline-block;
    vertical-align:middle;
    letter-spacing:0.05em
}
footer.footer .contact .icon:before,footer.footer .contact .icon-text:before{
    content:"";
    display:inline-block
}
footer.footer .contact .icon-area{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center
}
footer.footer .contact .icon-area:first-of-type{
    margin-bottom:4vw
}
footer.footer .contact .info{
    display:block;
    text-align:center;
    margin-top:8.90411vw;
    margin-bottom:9.93151vw;
    padding:4.10959vw 0;
    border:1px solid #434343
}
footer.footer .contact .info:before{
    content:"";
    display:inline-block
}
footer.footer .site-map,footer.footer .sns-block{
    width:77.86667%;
    margin:0 auto
}
footer.footer a{
    color:#9a9a9a
}
footer.footer .site-map .list-inner .title{
    font-size:3.46667vw
}
footer.footer .site-map .list-inner .title .text:before{
    content:""
}
footer.footer .site-map .list-inner .text{
    font-size:3.2vw
}
footer.footer .site-map .list-inner .wantedly{
    display:none
}
footer.footer .site-map .list-inner .wantedly:before{
    content:"";
    display:inline-block
}
footer.footer .sns-block{
    position:relative
}
footer.footer .sns-block .icon{
    display:inline-block;
    vertical-align:bottom
}
footer.footer .sns-block .facebook{
    width:4.45205%
}
footer.footer .sns-block .pintarest{
    width:6.84932%
}
footer.footer .sns-block .twitter{
    width:9.76027%;
    margin-left:7.02055vw;
    margin-right:5.82192vw
}
footer.footer .sns-block .footer-copy{
    color:#767676;
    margin-top:5.47945vw;
    font-size:8px
}
footer.footer .sns-block .page-top{
    width:8.21918%;
    position:absolute;
    bottom:0;
    right:0
}
@font-face{
    font-family:'Now-Medium';
    src:url("../font/Now-Medium.otf") format("opentype");
    src:url("../font/Now-Medium.eot?#iefix") format("embedded-opentype"),url("../font/Now-Medium.otf") format("opentype");
    font-weight:normal;
    font-style:normal
}
@font-face{
    font-family:'Now-Regular';
    src:url("../font/Now-Regular.otf") format("opentype");
    src:url("../font/Now-Regular.eot?#iefix") format("embedded-opentype"),url("../font/Now-Regular.otf") format("opentype");
    font-weight:normal;
    font-style:normal
}
.title-en{
    letter-spacing:.24em;
    font-family:"Now-Medium","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","游ゴシック体","Yu Gothic","YuGothic","Meiryo","メイリオ","ＭＳ Ｐゴシック","MS PGothic",Verdana,Roboto,"Droid Sans",sans-serif
}
.title-ja{
    letter-spacing:.24em
}
.text-en{
    letter-spacing:1px;
    font-family:"Now-Regular","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","游ゴシック体","Yu Gothic","YuGothic","Meiryo","メイリオ","ＭＳ Ｐゴシック","MS PGothic",Verdana,Roboto,"Droid Sans",sans-serif
}
.map__holder{
    position:relative
}
.map__canvas{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0
}
input,button,textarea,select{
    margin:0;
    padding:0;
    background:none;
    border:none;
    border-radius:0;
    outline:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
.bgc-white{
    background-color:#fff
}
.bgc-lightBlue{
    background-color:#e5eef5
}
.standBy{
    visibility:hidden
}
.row{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    margin:0 -1rem
}
.column{
    padding:0 -1rem;
    width:8.33333%
}
.f-blue{
    color:#0058a9
}
.f-gold{
    color:#d3b429
}
.text-error{
    font-size:12px;
    color:#ec0000
}
.text-error .ttl:before{
    content:"、"
}
.text-error .ttl:first-of-type:before{
    content:none
}
.ws-pl{
    white-space:pre-line;
    word-wrap:break-word
}
.vertical-center{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center
}
.ti-1{
    text-indent:-.5em;
    padding-left:.5em
}
.ti-2{
    text-indent:-1em;
    padding-left:1em
}
.ti-3{
    text-indent:-1.5em;
    padding-left:1.5em
}
.ti-4{
    text-indent:-2em;
    padding-left:2em
}
.standby{
    visibility:hidden
}
.relative{
    position:relative
}
.imageSlide .item{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    -webkit-transition:opacity 0.5s;
    transition:opacity 0.5s;
    opacity:0
}
.imageSlide .item:first-of-type{
    opacity:1
}
.imageSlide[data-activennum="0"] .item:nth-child(1){
    opacity:1
}
.imageSlide[data-activennum="1"] .item:nth-child(2){
    opacity:1
}
.imageSlide[data-activennum="2"] .item:nth-child(3){
    opacity:1
}
.imageSlide[data-activennum="3"] .item:nth-child(4){
    opacity:1
}
.imageSlide[data-activennum="4"] .item:nth-child(5){
    opacity:1
}
.imageSlide[data-activennum="5"] .item:nth-child(6){
    opacity:1
}
.imageSlide[data-activennum="6"] .item:nth-child(7){
    opacity:1
}
.imageSlide[data-activennum="7"] .item:nth-child(8){
    opacity:1
}
.imageSlide[data-activennum="8"] .item:nth-child(9){
    opacity:1
}
.imageSlide[data-activennum="9"] .item:nth-child(10){
    opacity:1
}
.imageSlide[data-activennum="10"] .item:nth-child(11){
    opacity:1
}
@-webkit-keyframes fadeUp{
    0%{
        opacity:0;
        -webkit-transform:translateY(40px);
        transform:translateY(40px)
    }
    100%{
        opacity:1;
        -webkit-transform:translateY(0);
        transform:translateY(0)
    }
}
@keyframes fadeUp{
    0%{
        opacity:0;
        -webkit-transform:translateY(40px);
        transform:translateY(40px)
    }
    100%{
        opacity:1;
        -webkit-transform:translateY(0);
        transform:translateY(0)
    }
}
@-webkit-keyframes fadeIn{
    0%{
        opacity:0
    }
    100%{
        opacity:1
    }
}
@keyframes fadeIn{
    0%{
        opacity:0
    }
    100%{
        opacity:1
    }
}
@-webkit-keyframes upIn{
    0%{
        -webkit-transform:translateY(30px);
        transform:translateY(30px)
    }
    100%{
        -webkit-transform:translateY(0);
        transform:translateY(0)
    }
}
@keyframes upIn{
    0%{
        -webkit-transform:translateY(30px);
        transform:translateY(30px)
    }
    100%{
        -webkit-transform:translateY(0);
        transform:translateY(0)
    }
}
.loaded .item:nth-child(1),.loaded .panel:nth-child(1){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .1s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .1s both
}
.loaded .item:nth-child(2),.loaded .panel:nth-child(2){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .2s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .2s both
}
.loaded .item:nth-child(3),.loaded .panel:nth-child(3){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .3s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .3s both
}
.loaded .item:nth-child(4),.loaded .panel:nth-child(4){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .4s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .4s both
}
.loaded .item:nth-child(5),.loaded .panel:nth-child(5){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .5s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .5s both
}
.loaded .item:nth-child(6),.loaded .panel:nth-child(6){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .6s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .6s both
}
.loaded .item:nth-child(7),.loaded .panel:nth-child(7){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .7s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .7s both
}
.loaded .item:nth-child(8),.loaded .panel:nth-child(8){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .8s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .8s both
}
.loaded .item:nth-child(9),.loaded .panel:nth-child(9){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .9s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) .9s both
}
.loaded .item:nth-child(10),.loaded .panel:nth-child(10){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1s both
}
.loaded .item:nth-child(11),.loaded .panel:nth-child(11){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.1s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.1s both
}
.loaded .item:nth-child(12),.loaded .panel:nth-child(12){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.2s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.2s both
}
.loaded .item:nth-child(13),.loaded .panel:nth-child(13){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.3s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.3s both
}
.loaded .item:nth-child(14),.loaded .panel:nth-child(14){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.4s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.4s both
}
.loaded .item:nth-child(15),.loaded .panel:nth-child(15){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s both
}
.loaded .item:nth-child(16),.loaded .panel:nth-child(16){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.6s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.6s both
}
.loaded .item:nth-child(17),.loaded .panel:nth-child(17){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.7s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.7s both
}
.loaded .item:nth-child(18),.loaded .panel:nth-child(18){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.8s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.8s both
}
.loaded .item:nth-child(19),.loaded .panel:nth-child(19){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.9s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 1.9s both
}
.loaded .item:nth-child(20),.loaded .panel:nth-child(20){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2s both
}
.loaded .item:nth-child(21),.loaded .panel:nth-child(21){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.1s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.1s both
}
.loaded .item:nth-child(22),.loaded .panel:nth-child(22){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.2s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.2s both
}
.loaded .item:nth-child(23),.loaded .panel:nth-child(23){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.3s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.3s both
}
.loaded .item:nth-child(24),.loaded .panel:nth-child(24){
    -webkit-animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.4s both;
    animation:fadeUp 1s cubic-bezier(0.39, 0.575, 0.565, 1) 2.4s both
}
@-webkit-keyframes rotateSwing{
    from{
        -webkit-transform:rotateY(-30deg);
        transform:rotateY(-30deg)
    }
    to{
        -webkit-transform:rotateY(30deg);
        transform:rotateY(30deg)
    }
}
@keyframes rotateSwing{
    from{
        -webkit-transform:rotateY(-30deg);
        transform:rotateY(-30deg)
    }
    to{
        -webkit-transform:rotateY(30deg);
        transform:rotateY(30deg)
    }
}
@-webkit-keyframes wrapFade{
    0%{
        opacity:0
    }
    100%{
        opacity:1
    }
}
@keyframes wrapFade{
    0%{
        opacity:0
    }
    100%{
        opacity:1
    }
}
@-webkit-keyframes loading{
    0%{
        width:0
    }
    100%{
        width:100%
    }
}
@keyframes loading{
    0%{
        width:0
    }
    100%{
        width:100%
    }
}
.loading{
    position:fixed;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:#fff;
    z-index:10
}
.loading .num{
    font-size:18px;
    color:#000;
    position:absolute;
    left:50%;
    top:42%;
    -webkit-transform:translate(-50%, -50%);
    transform:translate(-50%, -50%);
    text-align:center
}
.loading .load-bar{
    width:0;
    padding-top:20px;
    position:absolute;
    left:0;
    top:50%;
    -webkit-transform:translate(0, -50%);
    transform:translate(0, -50%);
    background:#000
}
.load-logo{
    position:absolute;
    top:50%;
    left:50%;
    -webkit-transform:translate(-50%, -50%);
    transform:translate(-50%, -50%);
    width:230px
}
.load-logo .cover{
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:100%;
    background:#fff
}
.barba-container{
    background-color:#fff
}
.barba-container:nth-of-type(2){
    position:absolute;
    top:100%;
    left:0;
    visibility:hidden;
    opacity:0
}
.transitionOver{
    position:fixed;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:#fff;
    visibility:hidden;
    opacity:0
}
.transitionOver.anim{
    visibility:visible;
    z-index:10
}
@-webkit-keyframes jsUpShow{
    0%{
        opacity:0;
        -webkit-transform:translateY(100px);
        transform:translateY(100px);
        visibility:hidden
    }
    100%{
        opacity:1;
        -webkit-transform:translateY(0);
        transform:translateY(0);
        visibility:visible
    }
}
@keyframes jsUpShow{
    0%{
        opacity:0;
        -webkit-transform:translateY(100px);
        transform:translateY(100px);
        visibility:hidden
    }
    100%{
        opacity:1;
        -webkit-transform:translateY(0);
        transform:translateY(0);
        visibility:visible
    }
}
.jsStanby{
    visibility:hidden
}
.jsStanby.jsShow{
    -webkit-animation-name:jsUpShow;
    animation-name:jsUpShow;
    -webkit-animation-duration:1.7s;
    animation-duration:1.7s;
    -webkit-animation-timing-function:cubic-bezier(0.18, 1.01, 0.29, 1.04);
    animation-timing-function:cubic-bezier(0.18, 1.01, 0.29, 1.04);
    -webkit-animation-fill-mode:forwards;
    animation-fill-mode:forwards
}
.title-block{
    text-align:center;
    padding:10vw 0 11.2vw;
    border-bottom:2px solid #e1e0e1
}
.title-block .page-title .text{
    display:block;
    font-size:6.93333vw;
    letter-spacing:0.15em
}
.title-block .sub-title .text{
    display:block;
    font-size:2.93333vw;
    letter-spacing:0.4em
}
.recruit-block{
    border-top:2px solid #e1e0e1;
    padding-top:14.93333vw;
    padding-bottom:18vw
}
.recruit-block.bg-gray{
    background-color:#f7f8f8
}
.recruit-block .th{
    width:88.18182%;
    margin:0 auto
}
.recruit-block .left,.recruit-block .right{
    display:block
}
.recruit-block .left .title{
    display:block;
    font-size:4.26667vw;
    margin:0 auto 9.06667vw
}
.recruit-block .left .title .text{
    font-size:4.26667vw
}
.recruit-block .right{
    width:88.18182%;
    margin:0 auto
}
.recruit-block .right .text{
    text-align:left;
    margin:0 auto 10.30928vw
}
.recruit-block .right .btn-square{
    display:block;
    margin:0 auto 5.15464vw
}
.recruit-block .right .wantedly .icon{
    display:block;
    width:35.05155%;
    margin:0 auto 1.71821vw
}
.recruit-block .right .wantedly .txt{
    color:#9a9a9a
}
.check-block .txt-our{
    display:inline-block
}
.check-block .btn-check{
    height:22px;
    position:relative;
    display:inline-block;
    margin-bottom:2.57732vw
}
.check-block .btn-check .txt{
    margin-left:10.30928vw
}
.check-block .btn-check input{
    display:none
}
.check-block input[type="checkbox"]+i::before,.check-block input[type="checkbox"]:checked+i::after{
    content:"";
    display:inline-block;
    position:absolute
}
.check-block input[type="checkbox"]+i::before{
    top:0px;
    left:0;
    width:20px;
    height:20px;
    border:1px solid #e1e0e1
}
.check-block input[type="checkbox"]:checked+i::after{
    top:5px;
    left:5px;
    width:12px;
    height:12px;
    background:url("/img/icon-check.png")
}
input,select,textarea{
    border:none;
    background-color:#f7f8f8;
    color:#000;
    width:100%;
    padding:3.63636vw;
    margin-bottom:3.0303vw;
    font-size:4.26667vw
}
select{
    background:#f7f8f8 url("/img/icon-arrow-down.svg") no-repeat 97% center
}
input[type="submit"],input[type="button"]{
    background:#fff
}
input[type="address"]{
    display:block;
    width:100%;
    font-size:4.26667vw;
    padding:3.63636vw
}
.place-number+input[type="address"]{
    display:inline-block;
    width:45.45455%;
    margin-bottom:3vw
}
.check .left{
    display:none
}
.check .left:after{
    content:"";
    display:block
}
.btn-send{
    background:#fff
}
.news-list a[target="_blank"]:after{
    content:"";
    display:inline-block;
    vertical-align:middle;
    width:12px;
    padding-top:10px;
    background:url("/img/svg/icon-blank.svg") center center/100% 100% no-repeat;
    margin-left:0.5em
}
.section-error{
    margin:0 auto;
    padding-top:9vw
}
.section-error .container{
    padding-bottom:0 !important
}
.section-error .title{
    display:block;
    width:60.60606%;
    margin:0 auto 0 !important;
    padding-top:18.93939vw;
    padding-bottom:8.63636vw
}
.section-error .text{
    display:block;
    text-align:left;
    font-size:3.73333vw;
    line-height:2;
    letter-spacing:0.28em
}
.section-error .btn{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    width:100%;
    height:60px;
    margin:0 auto;
    background:#000;
    color:#fff;
    font-size:4vw;
    letter-spacing:0.15em;
    letter-spacing:0.05em;
    margin-top:8.48485vw;
    margin-bottom:22.57576vw
}
.top-main-visual {
    position: relative;
    width: 100%;
    height: 450px;
    overflow: hidden;
    margin-bottom: 60px;
}
.top-main-visual .movie{
    display:none
}
.top-main-visual .visual:after{
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%
}
.top-main-visual .inner{
    width:100%;
    margin-top:18.66667vw;
    height:130.66667vw;
    position:relative;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -webkit-flex-direction:column;
    -moz-box-orient:vertical;
    -moz-box-direction:normal;
    flex-direction:column;
    color:#FFF;
    text-align:center
}
.top-main-visual .t-catch{
    width:77.6%;
    margin-bottom:7.06667vw;
    position:relative
}
.top-main-visual .t-catch .text-img.n1{
    position:relative;
    z-index:1;
    display:block
}
.top-main-visual .t-catch .text-img.n2{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.top-main-visual .title{
    width:77.6%;
    font-size:3.46667vw;
    font-weight:bold;
    text-align:left;
    padding-bottom:9.73333vw;
    letter-spacing:0.01em;
    line-height:1.6
}
.top-main-visual .btn-message{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    width:77.6%;
    color:#fff;
    border:#fff solid 1px;
    padding:4.4vw 0
}
.top-main-visual .btn-message span{
    font-weight:bold
}
.top-main-visual .btn-message .img{
    margin-right:0.5em
}
.section .container{
    width:88%;
    margin:0 auto;
    padding-bottom:16.06061vw
}
.section .row{
    display:block;
    position:relative;
    margin:0 auto
}
.section.sec-news .container{
    border-bottom:1px solid #e1e0e1
}
.section.sec-news .row{
    width:88%
}
.section.sec-company{
    border-top:1px solid #e1e0e1
}
.section.sec-company .row{
    width:100%
}
.section.sec-recruit{
    width:88%;
    margin:0 auto;
    border-bottom:1px solid #e1e0e1
}
.section.sec-recruit .container{
    width:100%
}
.section .title{
    margin-top:-6.53333vw;
    margin-bottom:9.09091vw;
    text-align:center
}
.section .title .title-en{
    display:inline-block;
    font-size:4.26667vw;
    letter-spacing:0.19em
}
.section .title .title-ja{
    font-size:2.13333vw;
    letter-spacing:0.08em
}
.section .title .title-ja:before{
    content:"/";
    display:inline-block;
    margin:0 1em
}
.section .text{
    font-size:3.46667vw
}
.section .btn-square{
    font-size:3.2vw;
    text-align:center;
    display:block;
    padding:4.12371vw 0;
    border:1px solid #c3c3c3
}
.sec-news{
    padding-bottom:24.39394vw
}
.sec-news .container{
    padding-bottom:15vw
}
.sec-news .title{
    text-align:left
}
.sec-news .link-news{
    position:absolute;
    top:1%;
    right:0;
    font-size:2.93333vw
}
.sec-news .link-news .text{
    text-decoration:underline
}
.sec-news .news-list .item{
    padding-top:6.51515vw
}
.sec-news .news-list .item:first-of-type{
    padding-top:0
}
.sec-news .news-list .date{
    font-size:2.93333vw;
    color:#8b8b8b;
    letter-spacing:0.18em
}
.sec-news .news-list .text{
    color:#000;
    letter-spacing:0.12em
}
.sec-news .news-list .text a{
    text-decoration:underline
}
.sec-product{
    width:100%;
    position:relative
}
.sec-product .container{
    width:100%
}
.sec-product .title{
    text-align:center
}
.sec-product .pic-holder{
    position:absolute;
    top:11%;
    left:0;
    background:url("/img/product_pic_base-sp.jpg") no-repeat;
    background-size:100% auto;
    width:99.6%;
    height:66.8%
}
.sec-product .pic-holder .swiper-container{
    position:absolute;
    left:12%;
    top:4%;
    width:76%
}
.sec-product .pic-holder .swiper-pagination{
    bottom:0;
    padding-top:14vw
}
.sec-product .pic-holder .swiper-pagination-bullet{
    width:5px;
    height:5px;
    margin:0 4px
}
.sec-product .info{
    width:77.6%;
    margin:0 auto;
    margin-top:77.5vw
}
.sec-product .t-catch{
    font-size:3.73333vw;
    font-weight:bold;
    text-align:center;
    letter-spacing:0.25em;
    padding-top:12.02749%
}
.sec-product .text{
    line-height:1.65;
    letter-spacing:0.06em;
    padding-top:5.49828vw
}
.sec-product .btn-square{
    margin-top:7.04467vw
}
.sec-company{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -moz-box-pack:justify;
    justify-content:space-between;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    padding-bottom:1.51515vw;
    padding-top:24vw;
    width:88%;
    margin:0 auto
}
.sec-company .container{
    width:100%
}
.sec-company .item{
    width:48.93939%;
    display:inline-block
}
.sec-company .item:nth-child(odd){
    padding-right:1%
}
.sec-company .item:nth-child(even){
    padding-left:1%
}
.sec-company .item .text{
    text-align:center;
    letter-spacing:0.08em;
    margin:3.93939vw auto 6.81818vw;
    font-size:3.2vw
}
.sec-company .item:nth-child(3) .text,.sec-company .item:nth-child(4) .text{
    margin-bottom:0
}
.sec-recruit .container{
    margin-top:7vw;
    padding-bottom:13.18182vw
}
.sec-recruit .info,.sec-recruit .link-box{
    width:88.18182%;
    margin:0 auto;
    display:block
}
.sec-recruit .info{
    padding-top:11.16838vw
}
.sec-recruit .info .text{
    line-height:1.6;
    padding-bottom:10.30928vw
}
.sec-recruit .info .btn-square{
    margin-bottom:3.95189vw
}
.sec-recruit .info .btn-square:last-of-type{
    margin-bottom:0
}
.sec-recruit .link-box{
    padding-top:9.27835vw
}
.sec-recruit .link-box .logo{
    display:block;
    width:35.05155%;
    margin:0 auto 1.37457vw
}
.sec-recruit .link-box .text{
    display:block;
    font-size:2.93333vw;
    color:#8b8b8b;
    text-align:center
}
.sec-press{
    padding-top:14.93333vw
}
.sec-press .title{
    width:77.6%;
    margin:0 auto;
    text-align:left;
    padding-bottom:1.46667vw
}
.sec-press .container{
    width:100%;
    padding-bottom:7.95796vw
}
.sec-press .campany-list{
    overflow:hidden
}
.sec-press .campany-list.media{
    margin-bottom:9.45946vw
}
.sec-press .inner{
    margin-left:auto;
    overflow-y:hidden;
    overflow-x:scroll;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    padding-left:13.33333%;
    -webkit-overflow-scrolling:touch
}
.sec-press .inner .item{
    width:33.03303%;
    height:18.01802%;
    margin-right:3.6036vw;
    -webkit-box-flex:0;
    -webkit-flex:0 0 38%;
    -moz-box-flex:0;
    flex:0 0 38%
}
.sec-press .inner .pic{
    height:100%;
    display:inline-block;
    vertical-align:middle
}
.section-about{
    position:relative;
    padding-bottom:88vw
}
.section-about .b-border{
    border-top:2px solid #e1e0e1
}
.section-about .b-border.vision{
    border-top:0
}
.section-about .container .title{
    margin:0;
    padding:0;
    font-size:4.26667vw;
    letter-spacing:0.3em
}
.section-about .container .txt{
    font-size:3.46667vw;
    line-height:2
}
.section-about .title-block{
    text-align:center;
    padding-bottom:14.53333vw;
    border-bottom:none
}
.section-about .title-block .page-title .text{
    font-size:6.93333vw;
    letter-spacing:0.15em
}
.section-about .title-block .sub-title .text{
    font-size:2.93333vw;
    letter-spacing:0.4em
}
.section-about .pic{
    margin-bottom:10vw
}
.section-about .category-block{
    padding:0 0 18.21306vw
}
.section-about .category-block.mission{
    padding-top:17.18213vw;
    border-bottom:2px solid #e1e0e1
}
.section-about .category-block .text,.section-about .category-block .txt{
    padding:0 5.2vw
}
.section-about .category-block .title{
    margin-bottom:9.45017vw
}
.section-about .category-block .title .text{
    font-size:4.26667vw
}
.section-about .category-block .text{
    line-height:2;
    letter-spacing:0.2em
}
.section-about .value-block{
    padding:17.01031vw 0 0;
    margin:0 auto
}
.section-about .value-block.close,.section-about .value-block.expand{
    padding-top:2.5vw
}
.section-about .value-block .inner{
    padding:0 5.2vw
}
.section-about .value-block .pic{
    margin-bottom:11vw
}
.section-about .value-block .title,.section-about .value-block .ttl{
    text-align:center
}
.section-about .value-block .title .text,.section-about .value-block .ttl .text{
    font-size:4.26667vw
}
.section-about .value-block .txt-block{
    padding-bottom:10.4811vw
}
.section-about .value-block .title{
    margin-bottom:9.62199vw
}
.section-about .value-block .title.sub{
    margin-bottom:6.01375vw;
    letter-spacing:0.18em
}
.section-about .value-block .ttl{
    font-size:4.26667vw;
    padding-bottom:4.12371vw;
    letter-spacing:0.1em
}
.section-about .value-block .txt{
    letter-spacing:0.17em
}
.section-about .title{
    font-size:4.26667vw
}
.section-about .title.sub .text{
    display:inline-block;
    font-size:2.13333vw
}
.section-about .title.sub .text:before{
    content:"/";
    display:inline-block;
    font-size:2.13333vw;
    margin:0 7px
}
.section-about .service-block{
    position:absolute;
    left:0;
    right:0;
    padding-top:14.94845vw;
    padding-bottom:20vw;
    background:#f7f8f8;
    border-top:2px solid #e1e0e1
}
.section-about .service-block .row{
    width:88%;
    margin:0 auto
}
.section-about .service-block .text-block{
    padding:0 5.90909vw
}
.section-about .service-block .title .text{
    font-size:4.26667vw
}
.section-about .service-block .ttl{
    font-size:3.73333vw;
    font-weight:bold;
    text-align:center;
    letter-spacing:0.2em;
    padding:9.45017vw 0 5.49828vw
}
.section-about .service-block .txt{
    line-height:1.6;
    padding-bottom:7vw;
    letter-spacing:0.1em
}
.section-about .service-block .btn-area{
    font-size:3.2vw;
    text-align:center;
    border:1px solid #e1e0e1
}
.section-about .service-block .btn-area .btn-service{
    display:block;
    padding:4.3vw 0
}
.section-company .block-default{
    padding-bottom:13.05842vw;
    border-bottom:2px solid #e1e0e1
}
.section-company .block-default .title{
    width:88.18182%;
    margin:0 auto;
    padding:13.93939vw 0 10.60606vw;
    text-align:left
}
.section-company .block-default .pic,.section-company .block-default .message{
    display:block;
    width:88.18182%;
    margin:0 auto
}
.section-company .block-default .message{
    font-size:3.46667vw;
    line-height:2
}
.section-company .block-default .ttl{
    font-size:4.26667vw;
    text-align:center;
    margin:8.59107vw auto 5.15464vw
}
.section-company .block-default .name{
    margin:5.6701vw auto 0
}
.section-history .block-default{
    margin:0 auto
}
.section-history .block-default .title{
    text-align:left
}
.section-history .block-default .item{
    width:88.18182%;
    margin:0 auto 8.93471vw;
    font-size:3.46667vw
}
.section-history .block-default .item:last-of-type{
    margin-bottom:12.54296vw
}
.section-history .block-default .th,.section-history .block-default .td{
    line-height:1.26
}
.section-history .block-default .th{
    color:#8b8b8b;
    font-weight:bold
}
.section-history .block-default .td{
    margin-top:3.43643vw;
    letter-spacing:0.03em
}
.section-boardmember .member-list .title,.section-boardmember .member-list .list{
    width:88.18182%;
    margin:0 auto
}
.section-boardmember .member-list .title{
    display:block;
    text-align:left;
    padding:14.94845vw 0 10.60606vw
}
.section-boardmember .info{
    padding-bottom:11.51203vw
}
.section-boardmember .name{
    display:block;
    font-size:4.8vw;
    line-height:1.38;
    margin-top:6.01375vw
}
.section-boardmember .pic.kimura{
    display:none
}
.section-boardmember .position{
    display:block;
    font-size:2.93333vw;
    color:#8b8b8b;
    line-height:1.5;
    margin-bottom:4.46735vw
}
.section-boardmember .text{
    font-size:3.46667vw;
    line-height:1.6
}
.section-boardmember .plus-text{
    margin-top:5.15464vw;
    letter-spacing:0.03em
}
.banner-block{
    padding:18.66667vw 0 0
}
.banner-block .btn-banner{
    display:block;
    position:relative
}
.banner-block .btn-banner:after{
    content:"";
    display:block;
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.5)
}
.banner-block .item{
    position:relative;
    margin-bottom:4.63918vw
}
.banner-block .item .inner-text{
    width:100%;
    position:absolute;
    top:38%;
    left:0;
    z-index:2
}
.banner-block .item .ttl,.banner-block .item .txt{
    text-align:center;
    color:#fff
}
.banner-block .item .ttl{
    font-size:4.26667vw
}
.banner-block .item .txt{
    font-size:2.13333vw
}
.section-outline .b-border{
    border-bottom:2px solid #e1e0e1
}
.section-outline .container{
    padding-top:12vw
}
.section-outline .container .title{
    margin:0;
    padding:0;
    font-size:4.26667vw;
    letter-spacing:0.3em
}
.section-outline .title-block{
    text-align:center;
    padding-bottom:12vw
}
.section-outline .title-block .page-title{
    font-size:6.93333vw;
    letter-spacing:0.15em
}
.section-outline .title-block .sub-title{
    font-size:2.93333vw;
    letter-spacing:0.4em
}
.section-outline .outline-block{
    padding-top:15vw
}
.section-outline .outline-block .inner{
    padding-bottom:21vw;
    width:88.18182%;
    margin:0 auto
}
.section-outline .outline-block .title{
    display:block;
    text-align:left;
    margin-bottom:10vw
}
.section-outline .outline-block .title .title-en{
    letter-spacing:0.3em;
    margin-left:5.15464vw
}
.section-outline .outline-block .th{
    margin-bottom:8.41924vw
}
.section-outline .outline-block .th.place{
    margin-bottom:0
}
.section-outline .outline-block .th.number{
    margin-bottom:8vw
}
.section-outline .outline-block .th.business{
    margin-bottom:7vw
}
.section-outline .outline-block .left,.section-outline .outline-block .right{
    display:block;
    text-align:left;
    font-size:3.46667vw;
    line-height:1.26
}
.section-outline .outline-block .left{
    color:#8b8b8b;
    margin-bottom:2.57732vw
}
.section-outline .outline-block .number{
    margin-bottom:10vw
}
.section-outline .outline-block .number .text:first-of-type{
    margin-bottom:2vw
}
.section-outline .outline-block .text{
    line-height:1.26;
    letter-spacing:0.05em
}
.section-outline .outline-block .text.kumamoto,.section-outline .outline-block .text.tokyo{
    letter-spacing:-0.01em;
    line-height:1.6
}
.section-outline .outline-block .text.boardmemmber{
    letter-spacing:0.02em
}
.section-outline .outline-block .text.business,.section-outline .outline-block .text.supplier{
    line-height:1.65;
    letter-spacing:0.03em
}
.section-outline .outline-block .map{
    margin-top:3vw;
    margin-bottom:8vw
}
.section-outline .outline-block .map .map__holder{
    width:100%;
    padding-top:65.2921%
}
.section-outline .outline-block .map-btn{
    display:block;
    font-size:2.93333vw;
    text-align:right;
    margin-top:3vw;
    color:#8b8b8b
}
.section-outline .outline-block .icon-target{
    width:4.12371%;
    display:inline-block;
    vertical-align:middle
}
.section-outline .banner-block{
    border-top:2px solid #e1e0e1
}
.section-outline .banner-block .item{
    position:relative
}
.section-outline .banner-block .btn-banner{
    display:block
}
.section-outline .banner-block .btn-banner.company .ttl{
    margin-top:17.5vw
}
.section-outline .banner-block .btn-banner.member .ttl{
    margin-top:17.5vw
}
.section-outline .banner-block .btn-banner.history .ttl{
    margin-top:17.5vw
}
.section-outline .banner-block .btn-banner:after{
    content:"";
    display:block;
    background-color:rgba(0,0,0,0.5);
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0
}
.section-outline .banner-block .inner-text{
    color:#fff;
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:0 auto;
    text-align:center;
    width:100%;
    height:100%;
    z-index:1
}
.section-outline .banner-block .ttl{
    display:block;
    font-size:4.26667vw;
    line-height:1.3
}
.section-outline .banner-block .txt{
    font-size:2.13333vw;
    line-height:1.6
}
.section-outline .recruit-block .th{
    width:88.18182%;
    margin:0 auto
}
.section-outline .recruit-block .left{
    margin-bottom:0
}
.section-outline .recruit-block .left .title{
    font-size:4.26667vw;
    color:#000;
    text-align:center;
    margin-bottom:7vw
}
.section-outline .recruit-block .left .title .text{
    font-size:4.26667vw
}
.section-outline .recruit-block .right .text{
    font-size:3.46667vw;
    line-height:1.6;
    margin-bottom:7vw
}
.section-outline .recruit-block .btn-info{
    display:block;
    text-align:center;
    padding:4.8vw 0 4.2vw;
    border:1px solid #e1e0e1;
    margin-bottom:4.2vw
}
.section-outline .recruit-block .btn-info:last-of-type{
    margin-bottom:8vw
}
.section-outline .recruit-block .wantedly .icon{
    display:block;
    width:35.05155%;
    margin:0 auto
}
.section-outline .recruit-block .wantedly .txt{
    display:block;
    color:#8b8b8b;
    font-size:2.93333vw;
    line-height:1.1;
    margin-top:4vw;
    text-align:center;
    letter-spacing:0.13em
}
.section-service{
    position:relative;
    padding-bottom:123vw
}
.section-service .title{
    margin:0
}
.section-service .title .text{
    font-size:4.26667vw
}
.section-service .b-border{
    border-bottom:2px solid #e1e0e1
}
.section-service .title-block{
    text-align:center;
    padding-bottom:15.46667vw
}
.section-service .title-block .page-title{
    font-size:6.93333vw;
    letter-spacing:0.15em
}
.section-service .title-block .sub-title{
    font-size:2.93333vw;
    letter-spacing:0.4em
}
.section-service .logo-block .top-logo{
    margin:0 auto;
    padding:18.78788vw 0;
    background:#f7f7f7
}
.section-service .logo-block .top-logo img{
    width:54.54545%;
    margin:0 auto
}
.section-service .text-block{
    width:88.18182%;
    margin:0 auto;
    padding-top:12.12121vw;
    padding-bottom:19.24242vw
}
.section-service .text-block .title{
    margin:0 auto 4.84848vw;
    font-size:4.26667vw;
    font-weight:bold
}
.section-service .text-block .text{
    line-height:2;
    letter-spacing:0.2em
}
.section-service .product-block{
    padding-top:19.69697vw;
    padding-bottom:21.21212vw;
    position:relative
}
.section-service .product-block .title{
    margin-bottom:281px
}
.section-service .product-block .icon{
    display:inline-block;
    vertical-align:middle;
    font-size:4vw;
    margin-left:2.57732vw
}
.section-service .info-area{
    width:88.18182%;
    margin:0 auto
}
.section-service .info-area .text{
    font-size:3.46667vw;
    line-height:2;
    margin-bottom:4.63918vw
}
.section-service .info-area .title-min{
    font-size:2.4vw;
    font-weight:normal;
    letter-spacing:0.08em
}
.section-service .pic-block{
    position:absolute;
    top:35vw
}
.section-service .study-block{
    padding:17.57576vw 0
}
.section-service .study-block .title{
    padding-bottom:14.09091vw
}
.section-service .study-block .title .text{
    letter-spacing:0.3em
}
.section-service .study-block .inner{
    width:88.18182%;
    margin:0 auto
}
.section-service .study-block .txt-block{
    margin-bottom:12.19931vw
}
.section-service .study-block .txt-block:last-of-type{
    margin-bottom:0
}
.section-service .study-block .ttl,.section-service .study-block .txt{
    font-size:3.73333vw
}
.section-service .study-block .ttl{
    font-weight:bold;
    margin:6.01375vw auto 2.23368vw
}
.section-service .study-block .txt{
    line-height:1.55;
    letter-spacing:0.07em
}
.section-service .company-block{
    position:absolute;
    left:0;
    right:0;
    padding-top:14.94845vw;
    padding-bottom:20vw;
    background:#f7f8f8;
    border-top:2px solid #e1e0e1
}
.section-service .company-block .th{
    width:77.6%;
    margin:0 auto
}
.section-service .company-block .left,.section-service .company-block .right{
    display:block
}
.section-service .company-block .title{
    font-size:4.26667vw;
    text-align:center;
    padding-bottom:5.49828vw
}
.section-service .company-block .text{
    line-height:1.6;
    padding-bottom:8vw
}
.section-service .company-block .btn-square{
    margin-bottom:5.15464vw
}
.section-service .company-block .btn-square:last-of-type{
    margin-bottom:0
}
.section-staff{
    padding-bottom:15vw
}
.section-staff .recrui-banner .btn-banner{
    display:block;
    position:relative
}
.section-staff .recrui-banner .pic{
    margin:0
}
.section-staff .recrui-banner .inner-text{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.5)
}
.section-staff .recrui-banner .inner-text .info{
    position:absolute;
    top:50%;
    left:0;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    width:100%
}
.section-staff .recrui-banner .inner-text .info .logo{
    display:block;
    width:38.63636%;
    margin:0 auto;
    padding-bottom:1.9697%
}
.section-staff .recrui-banner .inner-text .info .text{
    display:block;
    color:#fff;
    font-size:2.13333vw;
    text-align:center
}
.section-staff .title-block{
    border-bottom:none
}
.section-staff .staff-list{
    margin:18.66667vw auto;
    padding:15vw 0 0;
    border-top:2px solid #e5e4e5;
    border-bottom:2px solid #e5e4e5
}
.section-staff .staff-list .title,.section-staff .staff-list .list{
    width:88.18182%;
    margin:0 auto
}
.section-staff .staff-list .title{
    text-align:left;
    margin-bottom:10vw
}
.section-staff .staff-list .pic{
    margin-bottom:5.3vw
}
.section-staff .staff-list .name{
    font-size:4.8vw
}
.section-staff .staff-list .position{
    font-size:2.93333vw;
    color:#8b8b8b;
    margin:1vw auto 3.5vw
}
.section-staff .staff-list .text{
    font-size:3.46667vw;
    line-height:1.6;
    letter-spacing:0.13em;
    margin-bottom:10vw
}
.section-privacy .privacy-block{
    width:88.18182%;
    margin:0 auto;
    padding-top:15.15152vw
}
.section-privacy .inner{
    margin-bottom:9.45017vw
}
.section-privacy .inner:last-of-type{
    margin-bottom:0
}
.section-privacy .inner .title{
    display:block;
    font-size:3.73333vw;
    text-align:left;
    font-weight:bold;
    margin:0 auto 2.74914vw
}
.section-privacy .inner .sub-title{
    font-size:3.46667vw;
    margin-bottom:1.71821vw
}
.section-privacy .inner .text{
    font-size:3.46667vw;
    line-height:1.6
}
.section-privacy .inner .rule-area .text{
    padding-left:1em;
    text-indent:-1em
}
.section-contact .wpcf7-form-control-wrap{
    display:block;
    width:100%
}
.section-contact .wpcf7-form-control-wrap .wpcf7-checkbox .wpcf7-list-item{
    margin:0;
    padding-left:2.2em
}
.section-contact .wpcf7-form-control-wrap .wpcf7-checkbox{
    height:25px
}
.section-contact .wpcf7-form-control-wrap .wpcf7-textarea{
    display:block
}
.section-contact .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-not-valid{
    position:relative
}
.section-contact .wpcf7-form-control-wrap .wpcf7-not-valid-tip{
    margin:-10px 0 15px 0;
    text-align:left;
    white-space:nowrap;
    color:#d04a4a;
    font-size:10px
}
.section-contact .wpcf7c-conf{
    background:#fff;
    border:none;
    padding:0
}
.section-contact .wpcf7c-elm-step2.confirm-text{
    text-align:left
}
.section-contact .wpcf7-mail-sent-ok{
    display:none !important
}
.section-contact .wpcf7-validation-errors{
    text-align:center;
    border:none;
    color:#d04a4a;
    margin:0
}
.section-contact .btn-check .wpcf7-not-valid-tip{
    margin-top:5px
}
.section-contact .check-block--privacy .wpcf7-not-valid-tip{
    margin-top:22px
}
.section-contact .btn-area{
    margin-top:50px
}
.section-contact .btn-area br{
    display:none
}
.section-contact .btn-area .ajax-loader:empty{
    display:none
}
.section-contact .info-text,.section-contact .entry-block{
    width:88.18182%;
    margin:0 auto
}
.section-contact .info-text{
    font-size:3.46667vw;
    letter-spacing:0.1em;
    text-align:center;
    margin-top:15vw;
    padding-bottom:5vw
}
.section-contact .entry-block{
    margin-top:6.66667vw
}
.section-contact .th{
    width:100%;
    margin-bottom:9.33333vw
}
.section-contact .th.contact-area{
    margin-bottom:0
}
.section-contact .left{
    display:inline-block;
    font-size:3.46667vw;
    margin-bottom:6.06061vw;
    position:relative
}
.section-contact .left:after{
    content:"必須";
    display:inline-block;
    color:#d04a4a;
    font-size:2.4vw;
    position:absolute;
    top:2px;
    right:-30px
}
.section-contact .check .left:after,.section-contact .department .left:after{
    content:none
}
.section-contact .right{
    display:block;
    width:100%;
    font-size:4vw
}
.section-contact .right .name,.section-contact .right .long,.section-contact .right .project{
    display:block;
    width:100%
}
.section-contact .right .project{
    height:250px
}
.section-contact .right .born-date{
    width:100%
}
.section-contact .right .place{
    display:block
}
.section-contact .right .place-number{
    font-size:4.26667vw;
    margin-right:1.33333vw;
    color:#8b8b8b
}
.section-contact .right .policy{
    border-bottom:1px solid #000
}
.section-contact .callback-area{
    text-align:left
}
.section-contact .callback-area .check-block{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center
}
.section-contact .callback-area .btn-check{
    -webkit-box-pack:start;
    -webkit-justify-content:flex-start;
    -moz-box-pack:start;
    justify-content:flex-start;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    font-size:3.46667vw
}
.section-contact .callback-area .btn-check .wpcf7-list-item{
    width:125px;
    position:relative;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center
}
.section-contact .callback-area .btn-check .wpcf7-checkbox{
    width:250px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex
}
.section-contact .check-block--privacy{
    font-size:3.46667vw;
    position:relative;
    padding:0 0 0 35px;
    text-align:left
}
.section-contact .check-block--privacy .wpcf7-list-item-label{
    display:none
}
.section-contact .check-block--privacy>*{
    display:inline
}
.section-contact .check-block--privacy .btn-check{
    position:absolute;
    left:0;
    top:0
}
.section-contact .name br{
    display:none
}
.section-contact .th.check .right .btn-check{
    width:20px;
    display:inline-block
}
.section-contact .th.check .right .btn-check:after{
    display:none
}
.section-contact .confirmation-block .info-text{
    margin-bottom:10vw
}
.section-contact .confirmation-block .right{
    font-size:3.46667vw;
    text-align:left
}
.section-contact .confirmation-block .btn-square{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    width:88%;
    margin:0 auto;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center
}
.section-contact .confirmation-block .btn-square.btn-back{
    margin-bottom:3.5vw
}
.section-contact .complete-block{
    padding-top:15vw
}
.section-contact .complete-block .info-text{
    margin:0 auto
}
.section-contact .complete-block .btn-square{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    width:88%;
    margin:3vw auto 0;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center
}
.nav-tabs{
    border-bottom:#dfdfdf solid 1px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -moz-box-pack:center;
    justify-content:center;
    margin:13vw auto 7vw
}
.nav-tabs .tab{
    height:75px;
    margin:auto 5vw;
    position:relative
}
.nav-tabs .tab .text{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    height:100%
}
.nav-tabs .tab.active{
    pointer-events:none;
    cursor:default
}
.nav-tabs .tab.active:after{
    content:"";
    background-color:#000;
    position:absolute;
    bottom:0;
    left:0;
    width:40px;
    height:2px
}
.nav-tabs .tab.active .text:after{
    -webkit-animation:line-in 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) both;
    animation:line-in 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) both
}
.tab-content{
    margin:0 auto;
    padding-bottom:20vw
}
.tab-content .tab-panel{
    display:none
}
.tab-content .tab-panel.active{
    display:block
}
.tab-content .item{
    padding-top:5vw
}
.tab-content .item a{
    text-decoration:underline
}
.tab-content .date{
    font-size:2.93333vw;
    color:#8b8b8b;
    line-height:1.8;
    letter-spacing:0.18em
}
.tab-content .content{
    font-size:3.73333vw;
    letter-spacing:0.13em
}
.section-release .f-bold{
    font-weight:bold
}
.section-release .title-block,.section-release .top-block,.section-release .about-block{
    width:88.18182%;
    margin:0 auto
}
.section-release .title-block{
    border-bottom:0
}
.section-release .title{
    margin:0;
    text-align:left;
    font-size:4vw;
    margin-bottom:5vw;
    line-height:1.4
}
.section-release .text{
    font-size:3.46667vw;
    line-height:1.6;
    letter-spacing:0.12em
}
.section-release .date-block{
    display:-webkit-box;
    display:-webkit-flex;
    display:-moz-box;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -moz-box-align:center;
    align-items:center;
    text-align:left;
    margin-bottom:10vw
}
.section-release .icon-release{
    font-size:2.66667vw;
    padding:0.5vw 1vw;
    margin-right:5vw;
    letter-spacing:0.03em;
    border:1px solid #8b8b8b
}
.section-release .date{
    font-size:2.93333vw;
    color:#8b8b8b
}
.section-release .news-title{
    font-size:4.8vw;
    text-align:left
}
.section-release .pic{
    margin-bottom:10vw
}
.section-release .target{
    color:#477dca
}
.section-release .btn-more{
    display:block;
    font-size:3.46667vw;
    color:#8b8b8b;
    margin-top:4vw
}
.section-release .btn-more:after{
    content:"";
    width:12px;
    height:12px;
    display:inline-block;
    margin-left:8px;
    background-image:url(../img/news/pressrelease/icon-target.png);
    background-repeat:no-repeat;
    background-size:100% auto
}
.section-release .about-block{
    padding:10vw 0;
    margin-top:10vw;
    border-top:2px solid #e1e0e1
}
.section-release .about-block .inner{
    margin-bottom:10vw
}
.section-release .about-block .inner:last-of-type{
    margin-bottom:0
}
.section-release .about-block .inner.investment .text{
    letter-spacing:0.03em
}
.section-release .about-block .contents-area{
    margin-top:4vw
}
.section-release .about-block .contents-area.small{
    margin-top:0
}
.section-release .about-block .ttl{
    font-size:3.73333vw;
    margin-bottom:3vw
}
.section-release .about-block .txt{
    font-size:3.46667vw
}
.section-release .contact-block{
    background:#f7f8f8;
    padding:10vw 0 12vw
}
.section-release .contact-block .title{
    font-size:3.73333vw;
    text-align:center;
    margin-bottom:8vw
}
.section-release .contact-block .th{
    width:88.18182%;
    margin:0 auto;
    font-size:3.46667vw;
    margin-bottom:4vw
}
.section-release .contact-block .th:last-of-type{
    margin-bottom:0
}
.section-release .contact-block .left,.section-release .contact-block .right{
    display:block;
    text-align:left
}
.section-release .contact-block .left{
    margin-bottom:2vw
}
    .section .container {
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}
th.aboutleft {
    padding: 25px 0px;
    font-weight: 500;
}   
.sec-news .news-list .text a {
    font-size: 12px;
    text-decoration: underline;
}
.sec-product .info {
    width: 100%;
    margin: 0 auto;
    margin-top: 180px;
}
.sec-product .t-catch {
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    margin-bottom: 20px;
    padding-top: 40px;
}
p.text-concept {
    width: 100%;
    line-height: 24px;
    letter-spacing: 2px;
    font-size: 12px;
    margin-bottom: 25px;
}
.section .btn-square {
    width: 100%;
    font-size: 12px;
    text-align: center;
    display: block;
    padding: 0px 0;
    border: 1px solid #c3c3c3;
}