@import url(https://fonts.googleapis.com/css?family=Lato:400,700);

* {
    margin: 0;
    padding: 0px;
	color:#202020;
	letter-spacing:0.06em;

}
html {
    font-size: 60%;
}

body {
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: bold;
    background: #ffffff;
    margin: 0;
    height: 100%;
    color: #111111;
    /*font-weight: 400;*/
    font-size: 1.0em;/* chromeのバグ対策でbodyだけemに。 */
}

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding-right:9px;
    padding-left: 9px;
}

.clearfix:after{
    content: "";
    clear: both;
    display: block;
}

.none{
    display: none;
}


.fs-010 {font-size:0.1rem;}
.fs-020 {font-size:0.2rem;}
.fs-030 {font-size:0.3rem;}
.fs-040 {font-size:0.4rem;}
.fs-050 {font-size:0.5rem;}
.fs-060 {font-size:0.6rem;}
.fs-070 {font-size:0.7rem;}
.fs-080 {font-size:0.8rem;}
.fs-090 {font-size:0.9rem;}
.fs-100 {font-size:1.0rem;}
.fs-110 {font-size:1.1rem;}
.fs-120 {font-size:1.2rem;}
.fs-130 {font-size:1.3rem;}
.fs-140 {font-size:1.4rem;}
.fs-150 {font-size:1.5rem;}
.fs-160 {font-size:1.6rem;}
.fs-170 {font-size:1.7rem;}
.fs-180 {font-size:1.8rem;}
.fs-190 {font-size:1.9rem;}
.fs-200 {font-size:2.0rem;}
.fs-250 {font-size:2.5rem;}
.fs-300 {font-size:3.0rem;}
.fs-350 {font-size:3.5rem;}
.fs-400 {font-size:4.0rem;}


/*gridのgutter調整*/
.row-0{
    margin-left:0px;
    margin-right:0px;
}
.row-0 > a, .row-0 > div {
    padding-right:0px;
    padding-left:0px;
}
.row-10{
    margin-left:-5px;
    margin-right:-5px;
}
.row-10 > a, .row-10 > div {
    padding-right:5px;
    padding-left:5px;
}
.row-20{
    margin-left:-10px;
    margin-right:-10px;
}
.row-20 > a, .row-20 > div {
    padding-right:10px;
    padding-left:10px;
}
.row-30{
    margin-left:-15px;
    margin-right:-15px;
}
.row-30 > a, .row-30 > div {
    padding-right:15px;
    padding-left:15px;
}
.row-40{
    margin-left:-20px;
    margin-right:-20px;
}
.row-40 > a, .row-40 > div {
    padding-right:20px;
    padding-left:20px;
}

.row-50{
    margin-left:-25px;
    margin-right:-25px;
}
.row-50 > a, .row-50 > div {
    padding-right:25px;
    padding-left:25px;
    display: flex;
    flex-wrap: wrap;
}
.row-60{
    margin-left:-30px;
    margin-right:-30px;
}
.row-60 > a, .row-60 > div {
    padding-right:30px;
    padding-left:30px;
}
.row-70{
    margin-left:-35px;
    margin-right:-35px;
}
.row-70 > a, .row-70 > div {
    padding-right:35px;
    padding-left:35px;
}


::-moz-selection {
    text-shadow: none;
    background: #fcfcfc;
    background: rgba(0,0,0,.2);
}

::selection {
    text-shadow: none;
    background: #fcfcfc;
    background: rgba(0,0,0,.2);
}

img::selection {
    background: 0 0;
}

img::-moz-selection {
    background: 0 0;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: bold;
    /*letter-spacing: 0.5rem;*/
    text-transform: none;
}
h2{
    /*margin-bottom: 3em;*/
    font-weight:bold;
}
h3 {
    height: 52px;
}

p {
    padding: 0 0;
    margin-top: 0px;
    margin-bottom: 1.2rem;
    text-align: left;
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: normal;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: #111111;
    margin-top: 1.0rem;
    text-align: justify;
    text-justify: inter-ideograph;
}


img {
    height: auto;
    max-width: inherit;
}

.centered {
    text-align: center;
}

a ,a p{
    color: #111111;
    padding: 0;
    margin: 0;
    -webkit-tap-highlight-color: rgba(0,0,0,0.2);
    text-decoration: none;
    -webkit-transition: background-color .2s linear, color .2s linear, text-decoration .2s linear;
    -moz-transition: background-color .2s linear, color .2s linear, text-decoration .2s linear;
    -o-transition: background-color .2s linear, color .2s linear, text-decoration .2s linear;
    -ms-transition: background-color .2s linear, color .2s linear, text-decoration .2s linear;
    transition: background-color .2s linear, color .2s linear, text-decoration .2s linear;
    /*
        -webkit-transition: none;
        -moz-transition: none;
        transition: none;
    */
}
a,a:visited,a:active,a:hover{
    cursor: pointer;
    cursor: hand;
}
a:active, a:hover {
    outline: 0;
    text-decoration: none;
}

.graylink a p{
    color:#111111;
    font-size: 1.45rem;
    line-height: 1.6;
    padding-bottom: 0.8rem;
}

a p.link-text{
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: bold;
    color:#014190;
    font-size: 1.4rem;
    text-align: center;
    text-decoration: underline;
}
a:hover p.link-text{
    color:#014190;
    text-decoration: none;
}

a p.box-title{
    font-size: 1.2em;
    text-align: left;
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: bold;
    /*padding-bottom: 1rem;*/
    line-height: 1.4em;
	margin-top:1em;
	letter-spacing:0.14em;
}

a:hover,
a:focus,
a:hover p,
a:focus p{
    text-decoration: none;
    color: #4386d1;
    color: #111111;
}
a img{
    -webkit-transition: opacity .2s linear;
    -moz-transition: opacity .2s linear;
    -o-transition: opacity .2s linear;
    -ms-transition: opacity .2s linear;
    transition: opacity .2s linear;
}
a:hover img,
a:focus img{
    filter:alpha(opacity=75) !important;
    -moz-opacity: 0.75 !important;
    opacity: 0.75 !important;
}

.section > div > div > a{
    padding-top: 10px;
    padding-bottom: 10px;


}
.section > div > div > a > div{
    padding-top: 10px;
    border:1px solid #ddd;
    border-radius: 6px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 6px;
}
.section > div > div > a:hover > div{
    background-color: #f5f7fa;
    /*
      filter:alpha(opacity=4);
      -moz-opacity: 0.04;
      opacity: 0.04;
    */
}
.section > div > div > div > a > div{
    border:1px solid #ddd;
    border-radius: 6px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 6px;
}

.graylink a p.thumb-top-title{
    font-size: 1.6rem;
    font-weight: bold;
    /*   border-bottom:1px dotted #ddd; */
    margin-bottom: 0px;
    padding-bottom: 0px;
}
.graylink a p.thumb-top-title-sub{
    font-size: 1.1em;
    font-weight: normal;
    color:#888888;
}

.section .container .row a img.facebook-icon{
    margin-bottom: 0;
    width:24px;
    height:24px;
}
.fa-phone{
    margin-right: 0.1rem;
}
.fa-white { color:#ffffff !important; }

/* ----------ナビゲーションバー----------- */
.navbar{
    padding-top: 10px;
}

.navbar .container{
    padding-bottom: 0px;
}

.navbar-default .navbar-nav > li > a:hover {
    color: #00b3fe;
}
.navbar-custom {
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: bold;
    background-color: #ffffff;
}

.navbar-custom .navbar-brand {
    padding: 0;
}

.navbar-custom a {
    color: #111111;
}

.navbar-custom .nav li a:hover {
    color: rgba(0,0,0,.8);
}
.navbar-custom .nav li.active a {
    background-color: rgba(0,0,0,.3);
}

.navbar-custom .nav li.active a:hover {
    color: #111111;
}
div.navbar-main-collapse a.active span{
    color: #f07f0a;
}

.navbar-fixed-bottom .navbar-collapse,
.navbar-fixed-top .navbar-collapse{
    max-height: inherit;
}

.navbar-nav{
    border-top: 1px #dddddd solid;
    margin-top: 0px;
    margin-bottom: -2px;
    overflow-y: hidden;
    display:block;
}

.navbar.navbar-custom.navbar-fixed-top,
.navbar.navbar-custom.navbar-fixed-top.top-nav-collapse{
    margin-bottom: -2px;
}

.navbar-custom .nav li{
    border-bottom: 1px #dddddd solid;
}

.navbar-header i{
    font-size:1.8rem;
}


.nav a span{
    color: #999999;
    font-size: 1.0rem;
    display:block;
}
.nav a:hover span{
    color: #f07f0a;
    font-size: 1.0rem;
}
.no-submenu-item{
    visibility: hidden;
}
.bs-logo{
    /* margin-left: 10px; */
    margin-top: 0 !important;
    width:200px;
	/*width:20%;*/
}
/* ----------ヘッダーイメージ ----------- */

.intro {
    margin-top:70px;
    height:auto;
    position: relative;
    padding: 0px 0;
    background:inherit;
    background-color: #ffffff;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    background-size: contain;
    -o-background-size: contain;
}

.intro .header-image {
    position: relative;
    left:0;
    top:0;
    width: 100%;
    margin-top: 0;
}

.intro .header-image-under {
    position: relative;
    left:0;
    top:0;
    width: 100%;
    margin-top: 0;
    max-height:300px;
}
.section-header{
	font-size:3rem;
	font-weight:300;
	margin-top:3rem;
	margin-bottom:3rem;
}
.header-image{
    content: "　";
    padding-top: 0;
    padding-bottom: 0;
    background-size:cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.header-image-top{
    /*background-image: url("../img/header-image-top.png");*/
}

.header-image-company{
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-company-history{
    /*background-image: url("../img/cover-company.jpg");*/
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-company-message{
    /*background-image: url("../img/cover-company.jpg");*/
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-company-office{
    background-image: url("../img/cover-company.jpg");
}
.header-image-company-officer{
    /*background-image: url("../img/cover-company.jpg");*/
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-company-philosophy{
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-recruit{
    /*background-image: url("../img/cover-recruit.jpg");*/
    background-image: url("../img/cover-company_new.jpg");
}
.header-image-contact{
    background-image: url("../img/cover-contact.png");
}
.header-image-news{
    /*background-image: url("../img/cover-news.png");*/
    background-image: url("../img/cover-news_new.jpeg");
    background-position: 0 calc(50% + 5px);
}
.header-image-service{
    background-image: url("../img/cover-service.png");
}
.header-image-consumer{
    background-image: url("../img/cover-consumer.png");
}
.header-image-appvisor{
    background-image: url("../img/cover-appvisor.png");
}
.header-image-contract{
    background-image: url("../img/cover-contract.jpg");
}
.header-image-technology{
    background-image: url("../img/cover-technology.png");
}
.header-image-works{
    background-image: url("../img/cover-works.jpg");
}
.header-image-works-detail{
    /*background-image: url("../img/cover-works-detail.png");*/
}
.header-image-interview{
    background-image: url("../img/cover-interview.png")
}
/* ----------サブナビゲーションバー ----------- */

div.navbar-sub{
    background-color: #F4F4F4;
    border-bottom: solid 1px #cccccc;
}
div.navbar-sub .container{
    padding-bottom: 0px;
}
div.navbar-breadcrumb{
    display:none;
}
div.navbar-breadcrumb ul.navbar-nav li a{
    padding-right: 0;
    color:#f07f0a;
    padding-top:11px;
    padding-bottom: 11px;
    padding-right: 4px;
    padding-left: 4px;
    text-decoration: none;
    font-size:12px;
}

div.navbar-breadcrumb ul.navbar-nav li p{
    display: inline-block;
    padding-right: 0;
    color:#000000;
    padding-top:11px;
    padding-bottom:11px;
    margin-top:0;
    margin-bottom:0;
    font-size:12px;
    font-weight: bold;
    margin: 0;
    padding: 11px 10px;
    padding-right: 4px;
    padding-left: 4px;
    line-height: 20px;
}

div.navbar-breadcrumb ul.navbar-nav li a:hover{
    color:#f07f0a;
    text-decoration: underline;
}
/*
div.navbar-breadcrumb a::after,
div.navbar-breadcrumb a:hover::after{
  content: ">";
  text-align: right;
  padding-left:1rem;
  color:#111111;
  text-decoration: none;
}
*/

div.navbar-breadcrumb li:last-child a::after{
    content:"";
}
div.navbar-sub div.container{
    padding-left: 0;
    padding-right: 0;
    font-size: 1.2rem;
}
div.navbar-sub li a:hover{
    color:#f07f0a;
    background-color: inherit;
}

div.navbar-sub li a.active{
    color:#f07f0a;
    background-color: inherit;
}

div.navbar-submenu-list ul{
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;

    flex-wrap:wrap;
    -webkit-flex-wrap:wrap;
}
div.navbar-submenu-list ul li{
    flex-basis: 33.2%;
    -webkit-flex-basis: 33.2%;
    text-align:center;
    /*   border:solid 1px #dddddd; */
}

div.navbar-submenu-list .nav>li>a{
    color:#575757;
    padding-left: 5px;
    padding-right: 5px;
}

div.navbar-submenu-list .nav>li>a:hover{
    color:#f07f0a;
}

div.navbar-submenu-list .nav>li>a>img{
    display:none;
}

div.navbar-submenu-list .nav>li>a.active {
    color:#f07f0a;
}

/* ----------サブナビゲーションバー end ----------- */
div.section{
    margin:0 auto 0;
    text-align: center;
    background-color: #ffffff;
    padding-top:1.0em;
    padding-bottom: 0px;
}



.section .container .row a img{
    width:100%;
    max-width: none;
    margin-bottom: 1.6rem;
}
/* ---------- works一覧  ---------- */

div#works > div > div > a:hover{
    background-color: inherit;
}


.figure {
    position: relative;
    overflow: hidden;
    width: auto;
    cursor: pointer;
}
.figcaption {
    position: absolute;
    bottom: -100%;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    -webkit-transition: .3s;
    transition: .3s;
    opacity: 0.6;
    line-height: 100%;
    text-align: center;
    background-color: #f07f0a;
}
.figcaption p{
    margin: auto;
    /*padding-top: 2.5rem;*/
    padding-left: 0.8rem;
    padding-right: 0.8rem;
    font-size: 1.8rem;
    font-weight: 1.0rem;
    color:#ffffff;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.3rem;
}
.figure:hover .figcaption {
    bottom: 0;
    left: 0;
}

.figure:hover .figcaption p{
    color:#ffffff;
    text-align: center;
    font-weight: bold;
}
#works{
    padding-bottom: 30px;
}

#works .container{
    text-align: center;
    /*margin-top: -20px; */
    margin-bottom: 0px;
    /*padding-bottom: 2.8em;*/

}
#works h3{
    padding-top:20px;
}
#works .container .row a{
    padding:8px;
    display: block;
    margin-top:8px;
    margin-bottom: 2rem;
    padding-bottom: 0;
}

#works .container .row a > div{
    border-radius: 6px;
    border:1px solid #dddddd;
    -webkit-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -moz-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -o-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -ms-transition: background-color .2s linear, color .2s linear, border .2s linear;
    transition: background-color .2s linear, color .2s linear, border .2s linear;
}

#works .container .row a:hover > div{
    border:1px solid #f5f7fa;
    background-color: #f5f7fa;
}

#works .container .row a > div > div{
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
}

#works .container .row a > div > div > div{
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
    -webkit-flex-direction: column;
    flex-direction:column;
}

#works .container .row a > div > div > div > p{
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: 300;
    font-size: 1.2rem;
    color:#666666;
    text-align: right;
    margin: 0px 0px 0px;


}
#works .container .row a > div > div > div > p.app-description{
    line-height: 1.3rem;
}
#works .container .row a:hover > div > div > div > p{
    /*   color:#dddddd; */

}

#works .container .row a > div > div > div > p.app-name{
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 2.3rem;
    color:#333333;
    -webkit-text-wrap:unrestricted;
    text-wrap:unrestricted;
    -webkit-word-break:break-all;
    word-break:break-all;
    -webkit-word-wrap: break-word;
    word-wrap: break-word;
    margin-top: 0.6em;
}

#works .container .row a:hover > div > div > div > p.app-name{
    /* 	color:#ffffff; */
}

#works .container .row a img.app-icon{
    width:100%;
    height: 100%;
    border:solid 1px #cccccc;
    margin-bottom: 0px;
}
.device-categories{
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    border-bottom: 2px solid #014190;
    color: #bbbbbb;
}
a:hover .device-categories{
    border-bottom: 2px solid #014190;
    color: #bbbbbb;
}
.device-categories li{
    padding: 0 10px;
    font-size: 1.2rem;
    -webkit-flex-grow:1;
    flex-grow:1;
}
.device-categories li:last-child{
    -webkit-flex-grow:2;
    flex-grow:2;
    text-align: right;
    color: #014190;
}

.device-categories li.active{
    color: #014190;
}
a:hover .device-categories li.active{
    color: #014190;
}


.process-categories{
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;

    margin-bottom: 0;
}

.process-categories li{
    background-color: #DDDDDD;
    color:#FFF;
    text-align: center;
    font-weight: 300;
    -webkit-flex-grow:1;
    flex-grow:1;
    padding-top: 5px;
    padding-bottom: 5px;
    margin:0 2px;
    width:15%;
}

.process-categories li.active{
    color:#ffffff;
}

.process-categories li.category-plan.active{
    background-color: #FFC900;
}
.process-categories li.category-design.active{
    background-color: #17BB88;
}
.process-categories li.category-develop.active{
    background-color: #014190;
}
.process-categories li.category-server.active{
    background-color: #E2375C;
}
.process-categories li.category-promotion.active{
    background-color: #FF802C;
}


.section .works .container .row a img{
    margin-bottom: 0 !important;
}

/* ---------- works一覧 end ---------- */


a.read-more-button{
    display: inline-block;
    padding:1.6rem 6.4rem;
    border: 1px solid #f07f0a;
    color: #f07f0a;
    border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    text-align: center;
    margin: 4.8rem auto 0;
    font-size: 1.4rem;
    font-weight: 300;
}


a:hover.read-more-button{
    background-color: #f07f0a;
    color: #ffffff;

}


/* -----------お知らせ----------- */

.info-list{
    /*   margin-bottom: 40px; */
}
.info-list dl{
    text-align: left;
}
.info-list dl dt{
    margin-top: 2px;
    font-size: 12px;
    color:#888888;
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: normal;
}

.info-list dl dt span{
    width: 100px;
    display: inline-block;
    text-align: center;
    margin-right: 16px;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 0.8em;
    padding-right: 0.8em;
    min-width:60px;
    background-color: #999999;
    color: #ffffff;
    font-size:10px;
}
.news-image-container{
    border: 1px solid #f1f1f1;
    padding: 0;
    overflow: hidden;
}
.news-image-container img{
    width: 100%;
}
/*
.info-list dl dt span.category-release{
  background-color: #E64068;
  border-radius: 2px;
}
.info-list dl dt span.category-info{
  background-color: #f07f0a;
  border-radius: 2px;
}
.info-list dl dt span.category-blog{
  background-color: #FFD100;
  border-radius: 2px;
}
.info-list dl dt span.category-contents{
  background-color: #17BB88;
  border-radius: 2px;
}
*/
.info-list dl dt span{
    background-color: #f07f0a;
    border-radius: 2px;
	padding:0.8rem;
}

.info-list dl a dd{
    font-size: 1.47rem;
    color:#f07f0a;
    border-bottom: 1px dotted #dddddd;
}

.info-list dl a:link dd{
    padding-bottom: 4px;
    margin-top: 10px;
    margin-bottom: 0px;
    border-bottom: 1px dotted #dddddd;
    color:#f07f0a;
    text-decoration: none;
    font-weight: 300;
}
.info-list dl a{
    padding: 0.4em;
    display: block;
}
.info-list dl a:hover{
    background-color: #faf7f5;
}
.info-list dl a:hover dt{

}
.info-list dl a:hover dd{
    border-bottom: 1px dotted #dddddd;
    color:#f07f0a;
    text-decoration: underline;
}

.info-thumbs{
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0;
    padding-right: 0;
}
.info-thumbs a{
    display:block;
    padding:10px;
}
.info-thumbs a:hover {
    background-color: #f5f7fa;
}
/* -----------お知らせ end ----------- */
.container{
    /*padding-bottom: 2.8em;*/
    padding-bottom: 0em;
}

.section .container .row a img.info-thumb{
    margin-bottom: 5px;
    padding-bottom: 0px;
}
p.thumb-date{
    font-size: 1.2rem;
    color: #999999;
    margin:0 auto;
}
p.thumb-title{
    font-size:2.2rem;
    font-weight: 300;
    padding-top: 2.0rem;
    padding-bottom: 2.4rem;
}
p.thumb-text{
    margin-top: 0px;
    margin-bottom: 16px;
    line-height: 2.3rem;
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: 300;
    font-size: 1.4rem;
    padding-bottom: 1rem;
}

.section.each-service p.thumb-text{
    margin-top: 0px;
    margin-bottom: 16px;
    line-height: 2.3rem;
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    padding-bottom: 1rem;
}
/* ---------- お問い合わせ セクション ----------- */

#contact {
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: solid 8px #FFF008;
    border-bottom: solid 8px #FFF008;
    outline: solid 20px #F5F6F5;
    margin-bottom: 20px;
}

#contact > div{
    margin-left: auto;
    margin-right: auto;
    padding-top: 0px;
    padding-bottom: 0px;
}

#contact > div > p{
    margin-top:40px;
    margin-bottom: 0;
    font-size: 16px;
}
.business-hours{
    margin-top:15px;
    letter-spacing: 0.08em;
    font-size: 15px;
}
#contact p{
    text-align: center;
}




.tel{
    margin-top:20px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: bold;
    font-size:40px;
    letter-spacing: 0.05em;
}
a.blue-button{
    display: block;
    font-size: 20px;
    color:#FFFFFF;
    background-color: #f07f0a;
    margin-left: auto;
    margin-right: 20px;
    padding:30px 30px;
    border-bottom: 5px solid #6b091d;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;

    -webkit-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -moz-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -o-transition: background-color .2s linear, color .2s linear, border .2s linear;
    -ms-transition: background-color .2s linear, color .2s linear, border .2s linear;
    transition: background-color .2s linear, color .2s linear, border .2s linear;
}
a:hover.blue-button{
    background-color: #bb072c;
    border-bottom: 5px solid #6b091d;
    color:#FFFFFF;
}

/* -------------- */
a p.box-title{
    /*padding-bottom: 1rem;
    line-height: 2.4rem;*/
}
a p.box-subtitle{
    /*color:#999999;*/
    font-size: 1.4rem;
    /*font-weight: bold;*/
    padding-bottom: 0;
}
a p.box-service-subtitle{
    font-size: 1.24rem;
	padding:0.8rem 0.4rem;
	margin-bottom:0.4rem;
}
a p.box-catchcopy{
    color:#014190;
    font-size: 1.1rem;
    font-weight: bold;
}


/* -----------サービス紹介----------- */

.section#service-concept p{
    margin-bottom: 20px;
}

.section.each-service .read-more-button{
    margin: auto auto 0;
}
.right-info{
    padding-left:2.3rem;
    padding-right:0.9rem;
}
#service-concept.section div.container div.row div img{
    width:100%;
}


div.section#partner{
   	background-image: url(../company/img/partner-bg.png);
    background-size: cover;
}


/* -----------個人情報保護方針---------------- */
.privacy {}
/* -----------利用規約------------------------ */
.terms {}
.terms ul {padding-top:0.4em;}
.terms ul li {
	position:relative;
	margin-bottom:0.8em;
	margin-left:0.4em;
	padding-left:1.4em;
}
.terms ul li span {
	position:absolute;
	margin-left:-1.4em;
	font-weight:bold;
}
.terms ul li ol {
	margin-top:1em;
	margin-bottom:1em;
	margin-left:1.4em;
	padding-left:1.4em;
}
.terms ul li ol li {
	margin-left:-1.4em;
	list-style:upper-alpha;
	margin-bottom:0.4em;
	padding-left:0.4em;
}



/* -----------フッター サイトマップ----------- */

#footer-banner{
    padding-top: 14px;
    padding-bottom: 0px;
}

footer{
    padding: 0px 0 1rem;
    background-color: #f07f0a;
    color: #ffffff;
    text-align: center;
}
footer .container:first-child {
    padding-top: 0px;
    padding-bottom: 0px;
}
footer a,
footer a:visited,
footer a:active,
footer a:hover{
    /*cursor: default;*/
}
footer ul.container{
    margin: 0 auto;
    font-size: 1rem;
    position: relative;
    padding-left: 0px;
    padding-right: 0px;
}
footer ul li{
    padding-top: 0px;
    padding-bottom: 0px;
    font-size: 1rem;
    border-bottom: 1px solid #dddddd;

    padding-left: 8px;
    padding-right: 8px;
	width:100%;
}
footer ul li dl a{
    display: block;
    padding-top: 15px;
    padding-bottom: 15px;
}
footer dl {
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
    -webkit-justify-content:flex-start;
    justify-content:flex-start;
    margin-bottom: 0px;
}

footer dl:after{
    background-image: url("../img/arrow.png");
    content: "　";
    float:right;
    text-align: right;
    margin-left: auto;
    padding-top: 15px;
    padding-bottom: 15px;

    background-size: 8px 14px;
    background-repeat: no-repeat;
    background-position: center center;
}

footer dt{
    color: #F8FAFB;
    margin-right: 25px;
    width: 100%;
    text-align: left;
}
footer dd{
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: normal;
    display: none;
    text-align: left;
}
/*
footer dd::after{
  display: block;
  content: "｜";
  padding-left: 4px;
  padding-right: 4px;
  padding-top: 15px;
  padding-bottom: 15px;
  color: #dddddd;
}
*/

footer dd:last-child::after{
    content:none;
}
footer dt a,
footer dt a:link,
footer dt a:visited{
    color: #e9e9e9;
}
footer dd a,
footer dd a:link,
footer dd a:visited{
    color: #ffffff;
}

footer dt a:hover,
footer dt a:active,
footer dd a:hover,
footer dd a:active{
    color: #ffffff;
    text-decoration: underline;
    transform: scale(1.1);
}
.bs-logo-link{
    /*   position: absolute; */
    /*   right:15px; */
    /*   top:0; */
    width: 250px;
    /*   float:left; */
    margin-top: 20px;
    display: none;
    font-size: 26px;
    color: white;
}
.bs-logo-link img{
    width:250px;
}
.facebook-link,
.bsblog-link{
    display: none;
}
.copyright{
    /*margin-top: 20px;*/
    text-align: center;
    color:#eeeeee;
    padding:1.2rem;
/*    background:#041764;*/
    font-size:1.2rem;
}
.copyright-mark{
    font-size:1.6rem;
    vertical-align: bottom;
    padding-right: 5px;
    color: #FFF;
}
/* -----------TOPへ戻るボタン----------- */

#to-page-top-button {
    position: fixed;
    bottom: 10px;
    right: 20px;
    font-size: 100%;
    z-index:10;
    line-height: 1.0rem;
}

#to-page-top-button i {
    font-size: 2.0rem;
}

#to-page-top-button a {
    background: #000;
    opacity: 0.6;
    text-decoration: none;
    color: #fff;
    font-family: "HiraKakuProN-W3",Helvetica,Arial,sans-serif;
    font-weight: bold;
    width: 40px;
    height: 40px;
    padding: 0px 0;
    text-align: center;
    display: block;
    -webkit-border-radius: 8px;
    border-radius: 8px;
    display: table-cell;
    vertical-align: middle;
}

#to-page-top-button a:hover {
    text-decoration: none;
    opacity: 0.8;
}
.fa-angle-up {
  color: white;
}
.row{
    margin-right: -5px !important;
    margin-left: -5px !important;
}

/* ーーーーーーーーーーiPadサイズ対応ーーーーーーーーーー */
@media(min-width:768px) {
    p{
        padding: 0 0;
        margin-top: 0px;
        margin-bottom: 1.2rem;
        text-align: left;
        font-family: "HiraKakuProN-W3",sans-serif;
        font-weight: normal;
        font-size: 1.4rem;
        line-height: 2.4rem;
        color: #111111;
        /*margin-top: 1.0rem; */
        text-align: justify;
        text-justify: inter-ideograph;
    }
    /* ------- ヘッダー画像 ------ */
    .intro{
        margin-top:70px;
    }


    /* ------- ナビゲーションバー ------ */
    .navbar{
        min-height:inherit;
    }
    .navbar-custom {
        padding: 5px 0;
        border-bottom: 0;
        letter-spacing: 1px;
        background: #ffffff;
        /*-webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;
        -moz-transition: background .5s ease-in-out,padding .5s ease-in-out;
        transition: background .5s ease-in-out,padding .5s ease-in-out;*/
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+66,ffffff+100&amp;0.7+66,0+100 */
        /*background: -moz-linear-gradient(top,  rgba(255,255,255,0.9) 88%, rgba(255,255,255,0) 100%); /* FF3.6+ */
        /*background: -webkit-gradient(linear, left top, left bottom, color-stop(88%,rgba(255,255,255,0.9)), color-stop(100%,rgba(255,255,255,0))); /* Chrome,Safari4+ */
        /*background: -webkit-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* Chrome10+,Safari5.1+ */
        /*background: -o-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* Opera 11.10+ */
        /*background: -ms-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* IE10+ */
        /*background: linear-gradient(to bottom,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* W3C */
        /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
    }

    .navbar-custom.top-nav-collapse {
        padding: 5px 0;

        background: #ffffff;
        filter:alpha(opacity=96);
        -moz-opacity: 0.96;
        opacity: 0.96;
        /* box-shadow */
        box-shadow:rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
        -webkit-box-shadow:rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
        -moz-box-shadow:rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
    }
    .navbar-custom .nav li{
        border-bottom: none;
		margin-left:0.4rem;
		margin-right:0.4rem;
    }
    .navbar-custom.top-nav-collapse a {
        color: #111111;
    }
    .navbar-nav{
        border-top:none;
    }
    .navbar-custom .nav li a {
        color:#f07f0a;
        line-height: 1.6rem;
        text-align: center;
    }
    .navbar-custom .nav li a:hover{
        color:#f07f0a;
    }

    div.navbar-sub div.container{
        padding-left: 15px;
        padding-right: 15px;
        /*font-size: 14px;*/
		font-size:1.3rem;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    div.navbar-breadcrumb{
        display:block;
    }
    div.navbar-submenu-list ul{
        margin-left:auto;
        flex-wrap: nowrap;
        -webkit-flex-wrap: nowrap;
        -webkit-justify-content:flex-end;
        justify-content:flex-end;
    }
    div.navbar-submenu-list ul li{
        flex-basis: inherit;
        -webkit-flex-basis: inherit;
        border:solid 1px #f4f4f4;
        padding-left:3rem;
    }
    div.navbar-submenu-list .nav>li>a{
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 0px;
        padding-right: 0px;
        line-height: 24px;
    }
    div.navbar-submenu-list .nav>li>a>img{
        display: inline;
        margin-right: 0.5rem;
    }
    a.page-scroll{
        font-size:1.4rem;
    }
    a.page-scroll span{
        font-weight: 300;
        font-size:1.0rem;
    }






    /* -------グローバルナビ アニメーション------ */
    .cl-effect-21 a {
        padding: 10px;
        color: #333333;
        font-weight: 700;
        text-shadow: none;
        -webkit-transition: color 0.3s;
        -moz-transition: color 0.3s;
        transition: color 0.3s;
    }

    .cl-effect-21 a::after {
        position: absolute;
        left: 0;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        height: 2px;
        background: #f07f0a;
        content: '';
        opacity: 0;
        -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
        -moz-transition: opacity 0.3s, -moz-transform 0.3s;
        transition: opacity 0.3s, transform 0.3s;
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    .cl-effect-21 a::after {
        bottom: 10px;
        -webkit-transform: translateY(5px);
        -moz-transform: translateY(5px);
        transform: translateY(5px);
    }

    .cl-effect-21 a:hover,
    .cl-effect-21 a:focus,
    .cl-effect-21 a.active {
        color: #4386d1;
    }

    .cl-effect-21 a:hover::before,
    .cl-effect-21 a:focus::before,
    .cl-effect-21 a.active::before,
    .cl-effect-21 a:hover::after,
    .cl-effect-21 a:focus::after,
    .cl-effect-21 a.active::after {
        opacity: 1;
        -webkit-transform: translateY(0px);
        -moz-transform: translateY(0px);
        transform: translateY(0px);
    }
    /* -------グローバルナビ アニメーション end------ */


    .detail-right-info{
        padding-left:2.3rem;
        padding-right:0.9rem;
    }



    /*----------- フッター　サイトマップ--------- */
    .bs-logo-link{
        display: block;
        height:5.4rem;
        width: 290px;
    }
    .bs-logo-link img{
        width: 100%;
        padding-left: 4px;
    }
    .facebook-link{
        display: inline-block;
        height:4rem;
        width: auto;
        /*float:right;*/
		text-align:center;
        /*margin-left: auto;*/
		margin-right:0;
        margin-top: 33px;
    }
    .facebook-link img{
        height:100%;
        width: auto;
        padding-right: 0.6rem;
    }
	.bsblog-link {
		display: block;
        height:4rem;
        width: auto;
        float:right;
        margin-left: auto;
        margin-top: 33px;
	}
	.bsblog-link img {
		height:100%;
        width: auto;
        padding-right: 20px;
	}
    footer{
        padding: 0 0 0;
    }
    footer .container:first-child {
        padding-top: 0px;
        padding-bottom: 0px;
    }
    footer ul{
        padding-top: 30px;
        display:-webkit-box;
        display:-webkit-flex;
        display:flex;
        -webkit-flex-direction:row;
        flex-direction:row;
        margin-bottom: 0px;

        font-size: 1rem;
        position: relative;

        padding-left: 0px;
        padding-right: 0px;
        margin: 0 auto;
        margin-bottom: 30px;
    }


    footer ul li{
        padding-top: 0;
        padding-bottom: 0px;
        font-size: 1rem;
        border-bottom: none;
    }
    footer dl {
        display:-webkit-box;
        display:-webkit-flex;
        display:flex;
        -webkit-justify-content:flex-start;
        justify-content:flex-start;
        -webkit-flex-direction:column;
        flex-direction:column;
        margin-bottom: 0px;
    }
    footer dl:after{
        display: none;
    }

    footer ul li dl a,
    footer ul li dt a,
    footer ul li dl p {
        display: block;
        padding-top: 8px;
        padding-bottom: 8px;
    }
    footer ul li dl dd a {
        padding-bottom: 0px;
    }
    footer ul li dl dt p {
        color: #e9e9e9;
        font-size: 1.2rem;
        font-weight: 600;
        line-height: 1.42857143;
    }
    footer dd::after{
        padding-top: 8px;
        padding-bottom: 8px;
    }

    footer dt{
        width: 100%;
        border-bottom:solid 1px #FFFFFF;

    }
    footer dd{
        display: inherit;
    }
    #footer-banner{
        display: none;
    }

    /* -----------TOPへ戻るボタン----------- */
    #to-page-top-button {
        bottom: 20px;
        right: 40px;
        font-size: 100%;
        line-height: 1.5rem;
    }

    #to-page-top-button i {
        font-size: 2.5rem;
    }

    #to-page-top-button a {
        width: 72px;
        height: 72px;
        -webkit-border-radius: 16px;
        border-radius: 16px;
    }
}
/* ーーーーーーーーーーPCサイズ対応ーーーーーーーーーー */

@media(min-width:992px) {
    .container{
        width:960px;
    }
    h2{
        font-size: 2.4rem;
    }
    h3{
        font-size: 2.4rem;
    }
    div.navbar-sub div.container{
        font-size: 14px;
    }
    .navbar-submenu-list .nav>li>a{
        padding-left: 0px;
        padding-right: 0px;
        font-size:1.4rem;
    }
    footer ul li{
        font-size: 1.3rem;
    }

}

@media(min-width:1200px) {
    .container{
        width:960px;
    }

}
/*iphone*/
@media screen and (max-width: 480px) {
    a p.box-title{
        margin-top: 1em !important;
    }
	footer ul li{
        font-size: 1.6rem;
    }
	.section-header{
		font-size:2.6rem;
		font-weight:300;
		margin-top:4rem;
		margin-bottom: 1.6em;
	}
  .bs-logo{
    margin-top: 10px;
  }
}
@media screen and (min-width: 481px) {
	.section-header{
		font-size:3rem;
		font-weight:300;
		margin-top:5rem;
		margin-bottom: 1.8em;
	}
}

.app-description {
	font-size:1.2rem !important;
	padding-top:1rem;
}
.app-name {
	font-size:1.6rem !important;
	padding-top:0rem;
}
/*.app-description {
	font-size:1.6rem !important;
	padding-top:1rem;
}
.app-name {
	font-size:1.8rem !important;
	padding-top:0rem;
}*/
label.has-error{
	font-size: 1.4rem;
    margin-top: 1rem;
    color: #cc0000;
}

.page-title{
    font-size:1em;
    color:#ffffff;
    background-color:#f07f0a;
    margin-top:-1em;
    padding:0.6em 0.8em;
}

.section-header {
    color: #f07f0a;
    font-weight: 300;
    /*white-space: nowrap;*/
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;

    -webkit-align-items: center; /* Safari 7.0+ */
    align-items: center;

    text-align: center; /* for no-flexbox browsers */
}

.section-header:before,
.section-header:after {
    border-top: 1px solid;
    content: "";
    display: inline; /* for IE */

    -webkit-box-grow: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

.section-header:before {
    /*     margin-left: 0.5em; */
    margin-right: 0.5em;
}

.section-header:after {
    margin-left: 0.5em;
    /*     margin-right: 0.5em; */
}

/* 新規追加部分 */
div#company-overview.section{
  font-size: 1.5rem;
  text-align: left;
	font-family: "HiraKakuProN-W3",sans-serif;
	font-weight: normal;
}
div#company-overview.section a,
div#company-overview.section a:link{
  color:#f07f0a;
  text-decoration: none;
}
div#company-overview.section ul{
  display:-webkit-box;
  display:-webkit-flex;
  display:flex;
}
div#company-overview.section ul li:first-child{
  width:35%;
  -webkit-flex-basis:35%;
  flex-basis:35%;
  color: #999999;
}
div#company-overview.section ul li{
  padding: 0rem 0.5rem 0rem 0.5rem;
  vertical-align: top;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  width:65%;
  -webkit-flex-basis:65%;
  flex-basis:65%;
}

.recruit-container {
    padding-bottom: 10%;
}

.recruit-title-p{
    font-size: 2.4rem;
    line-height:1.4;
    font-family: "HiraKakuProN-W3",sans-serif;
    font-weight: bold;
    padding-bottom: 0.8em;
}

.news-content {
    padding: 10px 0;
}

.news-texts {
    margin: 12px 0;
}


.work-texts {
    border: none!important;
    background-color: #fff!important;
    padding: 0 6px;
}

.work-texts :hover {
    border: none!important;
    background-color: #fff!important;
}

.work-name {
    font-size: 1.6rem;
    font-weight: bold;
    height:3em;
    word-wrap: break-word;
}

.work-client {
    font-size: 1.3rem;
    color: #777;
}

.work-container {
    padding-bottom: 300px;
}

.btn-contact {
    background-color: #f07f0a;
    border-color: #f07f0a;
}

.btn-contact:hover {
    background-color: #f07f0a;
    border-color: #f07f0a;
}






/* ーーーーーーーーーー201903修正分ーーーーーーーーーー */



@media screen and (max-width: 767px){
	.pcOnly{
		display: none;
	}
}

@media screen and (min-width: 768px){
	.spOnly{
		display: none;
	}
}

/*	ナビ20190319	*/

.bs-logo {
	margin-top: 10px;
}

/* ーーーーーーーーーーiPadサイズ対応ーーーーーーーーーー */

@media(min-width:768px) {
	
	.bs-logo {
		margin-top: 16px;
	}
	
	.navbar-header {
		margin-top: 5px;
	}

	.navbar-custom {
		border-top: 5px solid #f07f0a;
	}
	
	.navbar .container {
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;	
	}
	
	.bs-logo {
		width: 190px;
	}
	
	.navbar-custom .nav li {
		margin: 0;
		position: relative;
	}
	
	#main_header_nav > li > a {
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.navbar-custom .nav li a {
		color: #000;
		line-height: 2rem;
	}
	
	#main_header_nav a span {
		color: #f07f0a;
		font-size: 7px;
	}
	
	#main_header_nav a:hover span {
		font-size: 7px;
	}
	
	#main_header_nav > li::after {
		content: '';
		display: inline-block;
		position: absolute;
		right: 0;
		top: 15px;
		background-color: #dcdcdc;
		width: 1px;
		height: 35px;
	}
	
	#main_header_nav > li.contact {
		margin-left: 5px;
	}
	
	#main_header_nav > li.recruit::after, #main_header_nav > li.contact::after {
		display: none;
	}
	
	#main_header_nav > li.contact a {
		margin-top: 10px;
		display: block;
		background-color: #f07f0a;
		color: #fff;
		padding: 12px 10px;
		font-size: 11px;
	}
	
	#main_header_nav > li.contact a:hover {
		background-color: #d5740b;
		color: #fff;
	}
	
	#main_header_nav > li.contact a:hover::after {
		display: none;
	}
	
	#main_header_nav > li.contact a span {
		display: none;
	}
	
}

/* ーーーーーーーーーーPCサイズ対応ーーーーーーーーーー */
@media(min-width:992px) {
	
	.navbar-header {
		margin-top: 0;
	}
	
	.navbar .container {
		max-width: 1220px;
	}
	
	.bs-logo {
		width: 260px;
	}
	
	#main_header_nav a span {
		color: #f07f0a;
		font-size: 9px;
	}
	
	#main_header_nav a:hover span {
		font-size: 9px;
	}
	
	#main_header_nav > li.contact {
		margin-left: 10px;
	}
	
	#main_header_nav > li > a {
		padding-left: 20px;
		padding-right: 20px;
	}
	
}
	


/*	スライドショー20190319	*/

.swiper-container {
	margin-top: 70px !important;
}

.swiper-container, .swiper-wrapper, .swiper-slide {
	width: 100%;
}		

.swiper-container {
}

.swiper-pagination-bullet {
	background: #666 !important;
	opacity: 1 !important;
}

.swiper-pagination-bullet-active {
	background: #fff !important;
}

.swiper-slide a {
	display: block;
	height: 100%;
}

.slide_01 {
	background: url("../img/toppage_slide_2025_opt.jpg") no-repeat 50% 50%;
	background-size: cover;
	position: relative;
}

.slide_01 div {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.slide_01 div .ttl {
	font-weight: bold;
	font-size: 64px;
	line-height: 1.3;
	text-align: center;
	color: #fff;
	margin-bottom: 40px;
	text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
}

.slide_01 div .desc {
	font-size: 22px;
	color: #fff;
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
	margin-bottom: 50px;
	text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
}

.slide_01 div .link {
	border: 2px solid #fff;
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	height: 70px;
	line-height: 70px;
	width: 360px;
}

.slide_02 {
	background: url("../img/toppage_slide_05_opt.jpg") no-repeat 50% 50%;
	background-size: cover;
}

.slide_03 {
	background: url("../img/toppage_slide03_new_opt.jpg") no-repeat 50% 50%;
	background-size: cover;
}

@media screen and (max-width: 1365px){
	
	.slide_01 div .ttl {
		font-size: 46px;
		margin-bottom: 25px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
	}

	.slide_01 div .desc {
		font-size: 16px;
		margin-bottom: 35px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
	}

	.slide_01 div .link {
		border: 2px solid #fff;
		font-size: 16px;
		height: 50px;
		line-height: 50px;
		width: 360px;
	}
	
}

@media screen and (max-width: 991px){
	
	.slide_01 div .ttl {
		font-size: 30px;
		margin-bottom: 20px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
	}

	.slide_01 div .desc {
		font-size: 14px;
		margin-bottom: 30px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.5);
	}

	.slide_01 div .link {
		border: 2px solid #fff;
		font-size: 14px;
		height: 44px;
		line-height: 44px;
		width: 250px;
	}
	
}

@media screen and (max-width: 767px){

	.swiper-container {

	}

	.swiper-pagination-bullet {
		width: 8px !important;
		height: 8px !important;
		margin: 0 5px !important;
	}

	/* モバイル用軽量画像 */
	.slide_01 {
		background: url("../img/toppage_slide_2025_mobile.jpg") no-repeat 50% 50%;
		background-size: cover;
	}
	.slide_02 {
		background: url("../img/toppage_slide_05_mobile.jpg") no-repeat 50% 50%;
		background-size: cover;
	}
	.slide_03 {
		background: url("../img/toppage_slide03_new_mobile.jpg") no-repeat 50% 50%;
		background-size: cover;
	}

	.slide_01 div .ttl {
		font-size: 24px;
		margin-bottom: 20px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.8);
	}

	.slide_01 div .desc {
		font-size: 12px;
		margin-bottom: 20px;
		text-shadow: 2px 2px 3px rgba(0,0,0,0.8);
	}

	.slide_01 div .link {
		border: 1px solid #fff;
		font-size: 11px;
		height: 36px;
		line-height: 36px;
		width: 200px;
	}

}



/*	トップページ20190319*/

.home_wrapper {
	padding: 40px 10px;
}

.h2box {
	text-align: center;
	margin-bottom: 30px;
}

.h2box h2 {
	font-size: 22px;
	margin-bottom: 20px;
	font-weight: normal;
}

.h2box span {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	letter-spacing: 0.1em;
	display: block;
	font-size: 14px;
	color: #f07f0a;
}

/*	ニュース	*/

#home_info .home_wrapper {
	padding-top: 0;
}

.home_newslist {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}

.home_newslist li {
	width: 100%;
	border-bottom: 1px solid #e5e5e5;
}

.home_newslist li:last-child {
	border: none;
}

.home_newslist a {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 20px 0;

}

.home_newslist .img {
	width: 140px;
	height: 120px;
	background-color: #f7f7f7;
}

.home_newslist .object-fit-img {
	width: 140px;
	height: 120px;
	object-fit: contain;
	font-family: 'object-fit: contain;'
}

.home_newslist .txt {
	width: calc( 100% - 160px );
	border: none !important;
}

.home_newslist .date {
	font-size: 13px;
	margin-bottom: 20px;
}

.home_newslist .date span {
	font-size: 11px;
	color: #fff;
	display: inline-block;
	background-color: #f07f0a;
	padding: 0 10px;
	margin-right: 15px;
}

.home_newslist a .desc {
	color: #f07f0a;
}

/*	サービス紹介	*/

#home_service {
	background-color: #faf7f5;
}

#home_service .home_wrapper {
	padding-bottom: 20px;
}

.home_service_wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}

.home_service_wrap a {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 20px 0;
	border-bottom: 1px solid #e5e5e5;
}

.home_service_wrap a:last-of-type {
	border: none;
}

.home_service_wrap .img {
	width: 140px;
	border: none;
}
.home_service_wrap img {
	max-width: 100%;
	height: auto;
}

.home_service_wrap .txt {
	width: calc( 100% - 160px );
	border: none !important;
}

.home_service_wrap .ttl {
	color: #f07f0a;
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 20px;
}

.home_service_wrap .desc {
	font-size: 14px;
}

/*	ファングッズの強み	*/

#home_adv .lead_txt {
	font-size: 14px;
	line-height: 2;
	margin: 0;
}

.adv ul {
	padding: 0 10px;
}

.adv li {
	margin-bottom: 20px;
}

.adv li a {
	color: #fff;
	width: 100%;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.adv li a.teian {
	background: url("../img/img_adv_01.jpg") no-repeat left top;
	background-size: cover;
}

.adv li a.taiou {
	background: url("../img/img_adv_02.jpg") no-repeat left bottom;
	background-size: cover;
}

.adv li a.hinshitsu {
	background: url("../img/img_adv_03.jpg") no-repeat left bottom;
	background-size: cover;
}

.adv li a div p {
	color: #fff;
	text-align: center;
}

.adv li a div p.ttl {
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 20px;
}

.adv li a div p.desc {
	font-size: 14px;
	margin-bottom: 20px;
}

.adv li a div p.link {
	font-size: 13px;
	border: 1px solid #fff;
	padding: 5px 20px;
	display: inline-block;
}

/*	リスト	*/

ul.home_itemlist {
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
}

ul.home_itemlist li {
	width: 47%;
	margin-bottom: 30px;
}

ul.home_itemlist li a {
	display: block;
}

ul.home_itemlist li .inner {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

ul.home_itemlist li .inner div {
	opacity: 0;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 16px;
	background-color: rgba(144,0,28,0.6);
	transition: all 0.3s ease;
}

ul.home_itemlist li:hover .inner div {
	opacity: 1;
}

ul.home_itemlist li img {
	width: 100%;
}

ul.home_itemlist li p.ttl {
	font-weight: bold;
	word-wrap: break-word;
}

.read-more-button {
	margin-top: 0 !important;
	width: 100%;
}

#home_case {
	background-color: #faf7f5;
}

/*	会社概要	*/

ul.home_companylist {
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
}

ul.home_companylist li {
	width: 47%;
	margin-bottom: 30px;
}

ul.home_companylist li a {
	display: block;
}

ul.home_companylist li .inner {
	width: 100%;
	height: 120px;
	margin-bottom: 15px;
	position: relative;
	overflow: hidden;
}

ul.home_companylist li img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 100%;
	height: auto;
	transition: all 0.3s ease;
}

ul.home_companylist li a:hover img {
	transform: translate(-50%, -50%) scale(1.1);
}

ul.home_companylist li p.en {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	letter-spacing: 0.1em;
	font-size: 14px;
	margin: 0 0 10px !important;
}

ul.home_companylist li h3 {
	font-weight: bold;
	font-size: 12px;
	color: #f07f0a;
	margin: 0;
	text-align: left;
	height: auto;
}

/*	リクルート	*/

ul.home_recruitlist {
	display: flex;
	justify-content: space-evenly;
	width: 100%;
	flex-wrap: wrap;
}

ul.home_recruitlist li {
	width: 47%;
	margin-bottom: 30px;
}

ul.home_recruitlist li a {
	display: block;
}

ul.home_recruitlist li .inner {
	width: 100%;
	height: 100px;
	position: relative;
	overflow: hidden;
}

ul.home_recruitlist li img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 100%;
	height: auto;
	transition: all 0.3s ease;
}

ul.home_recruitlist li a:hover img {
	transform: translate(-50%, -50%) scale(1.1);
}

ul.home_recruitlist li h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    word-break: break-all;
	font-size: 14px;
	color: #fff;
	background-color: #f07f0a;
	min-height: 40px;
	/* line-height: 40px; */
	margin: 0;
	height: auto;
    text-align: center;
    padding: 10px 4px;
}

/*iphone*/
@media(max-width: 480px) {
    ul.home_recruitlist {
        display: flex;
        justify-content: space-between;
    }
}

/* ーーーーーーーーーーiPadサイズ対応ーーーーーーーーーー */

@media(min-width:768px) {

	/*	ニュース	*/
	
	.home_newslist {
		margin-bottom: 30px;
	}
	
	.home_newslist li {
		width: 30%;
		border-bottom: none;
	}

	.home_newslist a {
		width: 100%;
		display: block;
		padding: 0;
	}

	.home_newslist .img {
		width: 100%;
		height: 200px;
		margin-bottom: 20px;
	}

	.home_newslist .object-fit-img {
		width: 100%;
		height: 200px;
	}

	.home_newslist .txt {
		width: 100%;
	}
	
	/*	サービス紹介	*/
	
	#home_service .home_wrapper {
		padding-bottom: 10px;
	}
	
	.home_service_wrap a {
		width: 48.5%;
		padding: 0;
		border: none;
		background-color: #fff;
		margin-bottom: 30px;
	}

	.home_service_wrap .img {
		width: 45%;
		padding: 20px 0 20px 20px;
	}

	.home_service_wrap .txt {
		width: 55%;
		padding: 20px 0;
	}

	.home_service_wrap .ttl {
		font-size: 18px;
		margin-bottom: 20px;
		text-align: center;
	}

	.home_service_wrap .desc {
		font-size: 14px;
		padding: 0 20px;
	}
	
	/*	ファングッズの強み	*/
	
	#home_adv .lead_txt {
		font-size: 16px;
		text-align: center;
	}
	
	.adv ul {
		padding: 0;
		width: 100%;
		display: flex;
	}

	.adv li {
		margin-bottom: 0;
		width: 33.3333%;
		background-color: #000;
	}

	.adv li a {
		height: 430px;
		background: #000 url("../img/img_adv_02.jpg") no-repeat  50% bottom;
		background-size: cover;
		margin-bottom: 0;
		transition: opacity 0.3s ease;
	}
	
	.adv li a:hover {
		opacity: 0.7;
	}

	.adv li a div {
		width: 80%;
	}
	
	.adv li a div p.ttl {
		font-size: 34px;
		margin-bottom: 40px;
	}

	.adv li a div p.desc {
		font-size: 16px;
		margin-bottom: 40px;
		font-weight: bold;
		line-height: 1.8;
	}

	.adv li a div p.link {
		font-size: 15px;
		padding: 10px 25px;
		font-weight: bold;
	}
	
	/*	リスト	*/
	
	ul.home_itemlist li {
		width: 22%;
		margin-bottom: 30px;
	}
	
	ul.home_itemlist li a {
		margin-bottom: 15px;
	}

	ul.home_itemlist li .inner div {
		font-size: 16px;
	}

	.read-more-button {
		width: auto;
	}

	/*	会社概要	*/
	
	#home_company .home_wrapper {
		padding-bottom: 10px;
	}
	
	ul.home_companylist li {
		width: 30%;
		margin-bottom: 50px;
	}

	ul.home_companylist li .inner {
		height: 140px;
		margin-bottom: 20px;
	}

	ul.home_companylist li p.en {
		font-size: 20px;
		margin: 0 0 20px !important;
	}

	ul.home_companylist li h3 {
		font-size: 13px;
	}

	/*	リクルート	*/
	
	ul.home_recruitlist li {
		width: 22%;
	}

	ul.home_recruitlist li .inner {
		height: 120px;
	}

	ul.home_recruitlist li h3 {
        display: flex;
        align-items: center;
        justify-content: center;
            font-weight: bold;
        word-break: break-all;
		font-size: 14px;
		height: 50px;
		/* line-height: 50px; */
	}
	
}

/* ーーーーーーーーーーPCサイズ対応ーーーーーーーーーー */
@media(min-width:992px) {

	.home_wrapper {
		padding: 60px 10px;
		width: 100%;
		max-width: 1220px;
		margin: 0 auto;
	}

	.h2box {
		margin-bottom: 50px;
	}

	.h2box h2 {
		font-size: 30px;
	}

	.h2box span {
		font-size: 15px;
	}

	/*	ニュース	*/
	
	#home_info .home_wrapper {
		padding-top: 20px;
	}
	
	#home_info .h2box {
		margin-bottom: 40px;
	}
	
	/*	サービス	*/
	
	#home_service .home_wrapper {
		padding-bottom: 30px;
	}
	
	.home_service_wrap .img {
		width: 270px;
		padding: 0;
	}

	.home_service_wrap div {
		width: calc( 100% - 270px );
	}
	
	.home_service_wrap .txt {
		padding: 30px 0 0;
	}

	.home_service_wrap .ttl {
		margin-bottom: 25px;
	}
	
	/*	会社概要	*/
	
	ul.home_companylist li .inner {
		height: 180px;
	}
	
	/*	リクルート	*/

	ul.home_recruitlist li .inner {
		height: 155px;
	}
	
}

@media(min-width:1200px) {


}


.advantage-section-title {
	padding-top: 100px;
}
