@charset "utf-8";

/* article {
    background-image: url(../images/bg.png);
    background-repeat: repeat-y;
    background-position: left top;
} */

#top #head {
    background-color: inherit;
    z-index: 99999999999;
}

#top #head.fixed {
    background-color: #fff;
}

#top #head #tbl #global a {
    border-bottom: none;
    color: #fff;
    transition: ease-in-out .3s;
}

#top #head.fixed #tbl #global a {
    border-bottom: 4px #fff solid;
    color: #464646;
}

#top #head #tbl #global span {
    color: #fff;
}

#top #head.fixed #tbl #global span {
    color: #40857a;
}

#top #head.fixed #tbl #global a:hover {
    border-bottom: 4px #40857a solid;
}

#visual {
    max-width: 1140px;
    margin: auto;
    width: 100%;
}

@media screen and (max-width:980px) {
    #top #head {
        background-color: #fff;
    }

    #visual {
        height: inherit;
        max-width: 1140px;
        margin: auto;
        position: relative;
        width: 100%;
    }
}

@media screen and (max-width:480px) {
    #head.fixed #tbl h1 img {
        width: 70px;
    }

    article {
        background-image: none;
    }
}

.slide-box {
    overflow: hidden;
}

#news ul {
    margin-left: -2%;
    margin-right: -2%;
}
#news li {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
    margin-bottom: 50px;
}
#news li a {
    font-size: 95%;
    color: #464646;
    text-decoration: none;
    display: block;
}
#news li a:hover {
    opacity: 0.80;
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    -ms-filter: "alpha(opacity=80)";
}
#news li .date {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#news li .title {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#news li .rows {
    display: -webkit-flex;
    display: flex;
    margin-top: 8px;
}
#news li .rows .text {
    padding-left: 20px;
    line-height: 1.6;
}
#news li p {
    margin-top: 7px;
    line-height: 1.5;
}
@media screen and (max-width:980px) {
    #news li {
        width: 48%;
        margin-bottom: 20px;
    }

    .slide-box {
        height: auto;
    }
    
    #news {
        margin-top: 0;
    }
}

@media screen and (max-width:480px) {
    #news .ttl img {
        width: 200px;
    }
    #news ul {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 15px;
    }
    #news li {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    #news li .date {
        font-size: 14px;
    }
    #news li .title {
        font-size: 14px;
    }
    #news li p {
        margin-top: 5px;
    }
    #news li a {
        font-size: 86%;
    }
}


@media screen and (max-width:480px) {
    #booking .ttl img {
        width: 160px;
    }
}

#info ul {
    margin-bottom: 50px;
}

#info li a {
    color: #464646;
    text-decoration: none;
    display: block;
    padding: 12px;
}

#info li a:hover {
    text-decoration: underline;
}

#info li:nth-child(odd) a {
    background-color: #fff;
}

#info li a dt {
    color: #9b9b9b;
    float: left;
    margin-right: 30px;
}

#info li .cat {
    background-color: #40857a;
    color: #fff;
    font-size: 85%;
    padding-left: 5px;
    padding-right: 5px;
    display: inline-block;
    width: 90px;
    text-align: center;
    margin-left: 15px;
}

#info li a dd {
    overflow: hidden;
}

@media screen and (max-width:980px) {
    #info li a dt {
        float: none;
        margin-right: 0px;
        margin-bottom: 10px;
    }
}

#pickup {
    margin-bottom: 70px;
    background-color: #fff;
}

#pickup a {
    text-decoration: none;
    display: block;
    color: #464646;
}

#pickup a:hover {
    opacity: 0.80;
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    -ms-filter: "alpha(opacity=80)";
}

#pickup a h2.ttl {
    color: #fff;
    text-decoration: none;
    margin-bottom: 0px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 125px;
    padding-bottom: 125px;
    position: relative;
}

#pickup a h2.ttl.tech {
    background-image: url(../images/bg_technology.jpg);
}

#pickup a h2.ttl.recruit {
    background-image: url(../images/bg_recruit.jpg);
}

#pickup a h2.ttl.support {
    background-image: url(../images/bg_support.jpg);
}

#pickup a h2.ttl span {
    color: #fff;
}

#pickup a h2.ttl:after {
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    margin-top: -5px;
    width: 10px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#pickup li {
    width: 33.333%;
}

#pickup p {
    padding: 15px;
}

@media screen and (max-width:980px) {
    #pickup li {
        width: 100%;
        margin-bottom: 15px;
    }
}

@media screen and (max-width:480px) {
    #pickup a h2.ttl {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

#cooperate {
    color: #fff;
    text-align: center;
    background-image: url(../images/bg_cooperation.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 60px;
    padding-bottom: 60px;
    background-size: cover;
    padding-left: 3%;
    padding-right: 3%;
}

#cooperate h3 {
    font-size: 135%;
    margin-bottom: 25px;
}

#cooperate .link-btn a {
    color: #fff;
    border: #fff solid 1px;
}

#cooperate .link-btn a:hover {
    background-color: rgba(255,255,255,0.40);
}

#cooperate .link-btn a:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}


#top #banner ul {
    margin-left: -1%;
    margin-right: -1%;
    text-align: center;
}
#top #banner {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 20px;
    padding-right: 20px;
    border-bottom: 1px solid #DDDDDD;
}
#top #banner li {
    width: 31.33%;
    margin-left: 1%;
    margin-right: 1%;
    text-align: center;
}
#top #banner a {
    display: block;
}
#top #banner a:hover {
    opacity: 0.70;
    filter: alpha(opacity=70);
    -moz-opacity: 0.70;
    -ms-filter: "alpha(opacity=70)";
}
@media screen and (max-width:980px) {
    #top #banner li {
        width: 48%;
        margin-left: 1%;
        margin-right: 1%;
    }
}
@media screen and (max-width:480px) {
    #top #banner .ttl img {
        width: 260px;
    }
    #top #banner ul {
        margin-left: 0%;
        margin-right: 0%;
    }

    #top #banner li {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        text-align: center;
        margin-bottom: 10px;
    }

    #top #banner li:last-child {
        margin-bottom: 0px;
    }
}

#report ul {
    margin-left: -2%;
    margin-right: -2%;
}
#report li {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
    margin-bottom: 50px;
}
#report li a {
    font-size: 95%;
    color: #464646;
    text-decoration: none;
    display: block;
}
#report li a:hover {
    opacity: 0.80;
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    -ms-filter: "alpha(opacity=80)";
}
#report li .date {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#report li .title {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#report li .rows {
    display: -webkit-flex;
    display: flex;
    margin-top: 8px;
}
#report li .rows .text {
    padding-left: 20px;
    line-height: 1.6;
}
#report li p {
    margin-top: 7px;
    line-height: 1.5;
}
@media screen and (max-width:980px) {
    #report li {
        width: 48%;
        margin-bottom: 20px;
    }
    
    #report {
        margin-top: 0;
    }
}

@media screen and (max-width:480px) {
    #report .ttl img {
        width: 260px;
    }
    #report ul {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 15px;
    }
    #report li {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    #report li .date {
        font-size: 14px;
    }
    #report li .title {
        font-size: 14px;
    }
    #report li p {
        margin-top: 5px;
    }
    #report li a {
        font-size: 86%;
    }
}

#voice ul {
    margin-left: -2%;
    margin-right: -2%;
}
#voice li {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
    margin-bottom: 50px;
}
#voice li a {
    font-size: 95%;
    color: #464646;
    text-decoration: none;
    display: block;
}
#voice li a:hover {
    opacity: 0.80;
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    -ms-filter: "alpha(opacity=80)";
}
#voice li .date {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#voice li .title {
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
#voice li .rows {
    display: -webkit-flex;
    display: flex;
    margin-top: 8px;
}
#voice li .rows .text {
    padding-left: 20px;
    line-height: 1.6;
}
#voice li .rows .text .target {
    margin-bottom:10px;
    font-weight: bold;
    font-size: 14px;
}
#voice li p {
    margin-top: 7px;
    line-height: 1.5;
}
@media screen and (max-width:980px) {
    #voice li {
        width: 48%;
        margin-bottom: 20px;
    }
    
    #voice {
        margin-top: 0;
    }
}

@media screen and (max-width:480px) {
    #voice .ttl img {
        width: 230px;
    }
    #voice ul {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 15px;
    }
    #voice li {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    #voice li .date {
        font-size: 14px;
    }
    #voice li .title {
        font-size: 14px;
    }
    #voice li .rows .photo {
        flex: 0 0 37%;
    }
    #voice li p {
        margin-top: 5px;
    }
    #voice li a {
        font-size: 86%;
    }
}

#gallery ul {
    margin-left: -1%;
    margin-right: -1%;
}
#gallery li {
    width: 23%;
    margin-left: 1%;
    margin-right: 1%;
    margin-bottom: 25px;
}
#gallery li a {
    display: block;
}
#gallery li a:hover {
    opacity: 0.80;
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    -ms-filter: "alpha(opacity=80)";
}
@media screen and (max-width:980px) {
    #gallery li {
        width: 30.3%;
        margin-left: 1.5%;
        margin-right: 1.5%;
        margin-bottom: 10px;
    }
    #gallery {
        margin-top: 0;
    }
}
@media screen and (max-width:480px) {
    #gallery .ttl img {
        width: 260px;
    }
    #gallery ul {
        margin-bottom: 15px;
    }
}