/*!
 * Start Bootstrap - Modern Business (https://startbootstrap.com/template-overviews/modern-business)
 * Copyright 2013-2019 Start Bootstrap
 * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-logomodern-business-nav/blob/master/LICENSE)
 */
body {
    background-color: white;
    font-family: "SF Pro JP", "SF Pro Display", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: black;
}

.en {
    font-family: 'Lato', sans-serif;
}
img {
    image-rendering: -webkit-optimize-contrast;
}

/*.carousel-item {
    height: 65vh;
    min-height: 300px;
    background: no-repeat center center scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}*/

.portfolio-item {
    margin-bottom: 30px;
}

.menu-arrow-b {
    display: none;
}

.nav-item {
    padding-left: 30px;
}

.custom-toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-light .navbar-toggler {
    background-image: url(../img/bak-blue.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 15px;
    border: none;
    border-radius: 0px;
}

.navbar-toggler {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}

/*
Extra small devices (portrait phones, less than 576px)
No media query since this is the default in Bootstrap because it is "mobile first"
*/
.navbar-brand {
    height: 45px;
    width: 200px;
    background-image: url(../img/logo.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    margin-top: 5px;
    margin-bottom: 5px;
}

.navbar-light .navbar-nav .nav-link {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: white;
    border-bottom: 1px solid #efefef;
}

.footer-logo {
    height: 49px;
    background-image: url(../img/logo.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    margin: auto auto;
}

.text-footer {
    text-align: center;
    font-size: 12px;
    margin-bottom: 10px;
}

.text-footer1 {
    text-align: center;
}

.top-slide {
    height: 400px;
}

.circle {
    display: inline-block;
    text-align: center;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    border: 2px solid #0073BD;
    display: table;
    margin-left: auto;
    margin-right: auto;
}

.childElement {
    display: table-cell;
    vertical-align: middle;
    font-size: 90%;
}

.text-tomoni {
    font-size: 100%;
    font-weight: bold;
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
}

.bg-work {
    height: 260px;
    background-image: url(../img/top-work.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-comp {
    height: 260px;
    background-image: url(../img/top-company.jpg);
    background-position: bottom 0px right -320px;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-rec {
    height: 260px;
    background-image: url(../img/top-recruit.jpg);
    background-position: bottom 0px left -320px;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-contact {
    height: 260px;
    background-image: url(../img/top-contact.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}

.pr-40 {
    padding-right: 0px;
}

.pl-40 {
    padding-left: 15px;
    padding-right: 15px;
}

.slide-bar {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.carousel-caption {
    position: absolute;
    right: 0px;
    bottom: 0px;
    left: 0;
    z-index: 10;
    padding-top: 14px;
    padding-bottom: 12px;
    color: #fff;
    width: 96%;
    margin: auto;
    font-size: 90%;
    line-height: 1rem;
}

.box-blue {
    position: absolute;
    z-index: 5;
    bottom: 0px;
    left: 0;
    margin: 0px;
    height: 54px;
    width: 100%;
    background-image: url(../img/hover-blue.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.slide1 {
        background-image: url(../img/slide1-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

    .slide2 {
        background-image: url(../img/slide2-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

    .slide3 {
        background-image: url(../img/slide3-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

    .slide4 {
        background-image: url(../img/slide4-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

    .slide5 {
        background-image: url(../img/slide5-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

    .slide6 {
        background-image: url(../img/slide6-ss.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 85.5555%;
    }

.bg-sky {
    /* height: 400px; */
    /* height: 2026px; */
    padding-bottom: 250px;
    background-image: url(../img/bak-sky2.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}


.txt-sky {
    width: 100%;
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    .text-tomoni {
        font-size: 180%;
        border: none;
        font-weight: normal;
    }
/* 
    .slide1 {
        background-image: url(../img/slide1-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 59.50%;
    }

    .slide2 {
        background-image: url(../img/slide2-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
         background-size: contain;
        padding-top: 59.50%;
    }

    .slide3 {
        background-image: url(../img/slide3-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
         background-size: contain;
        padding-top: 59.50%;
    }

    .slide4 {
        background-image: url(../img/slide4-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 59.50%;
    }

    .slide5 {
        background-image: url(../img/slide5-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
         background-size: contain;
        padding-top: 59.50%;
    }

    .slide6 {
        background-image: url(../img/slide6-s.jpg);
        background-position: top center;
        background-repeat: no-repeat;
         background-size: contain;
        padding-top: 59.50%;
    } */

    .box-blue {
        position: absolute;
        z-index: 5;
        bottom: 0px;
        left: 0;
        margin: 0px;
        height: 40px;
        width: 100%;
        background-image: url(../img/hover-blue.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .bg-sky {
        /* height: 400px; */
        /* height: 2026px; */
        padding-bottom: 250px;
        background-image: url(../img/bak-sky2.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .txt-sky {
        width: 96%;
    }
}

/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 768px) {
    .footer-logo {
        height: 49px;
        width: 317px;
        background-image: url(../img/logo.svg);
        background-size: contain;
        background-position: left center;
        background-repeat: no-repeat;
        margin-left: inherit;
        margin-right: inherit;
    }

    .seishain {
        width: 80%;
    }

    .text-footer {
        text-align: left;
        margin-bottom: 10px;
    }

    .bg-sky {
        /* height: 400px; */
        /* height: 2026px; */
        padding-bottom: 250px;
        background-image: url(../img/bak-sky2.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }



    .txt-sky {
        width: 90%;
    }

    .text-footer1 {
        text-align: right;
    }

    .top-slide {
        height: 500px;
    }

    .circle {
        display: inline-block;
        text-align: center;
        width: 180px;
        height: 180px;
        border-radius: 50%;
        border: 2px solid #0073BD;
        display: table;
        margin-left: auto;
        margin-right: auto;
    }

    .childElement {
        display: table-cell;
        vertical-align: middle;
        font-size: 1rem;
    }

    .space-last {
        margin-bottom: 160px;
    }

    .bg-work {
        height: 260px;
        background-image: url(../img/top-work.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .bg-comp {
        height: 260px;
        background-image: url(../img/top-company.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .bg-rec {
        height: 260px;
        background-image: url(../img/top-recruit.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .bg-contact {
        height: 260px;
        background-image: url(../img/top-contact.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .pr-40 {
        padding-right: 10px;
    }

    .pl-40 {
        padding-left: 40px;
        padding-right: 0px;
    }

    .slide-bar {
        width: 690px;
        margin-left: auto;
        margin-right: auto;
    }

    .carousel-caption {
        position: absolute;
        right: 0px;
        bottom: 0px;
        left: 0;
        z-index: 10;
        padding-top: 14px;
        padding-bottom: 12px;
        color: #fff;
        width: 690px;
        margin: auto;
        font-size: 90%;
        line-height: 1rem;
    }

    .box-blue {
        position: absolute;
        z-index: 5;
        bottom: 0px;
        left: 0;
        margin: 0px;
        height: 41px;
        width: 100%;
        background-image: url(../img/hover-blue.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .slide1 {
        background-image: url(../img/slide1.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }

    .slide2 {
        background-image: url(../img/slide2.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }

    .slide3 {
        background-image: url(../img/slide3.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }

    .slide4 {
        background-image: url(../img/slide4.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }

    .slide5 {
        background-image: url(../img/slide5.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }

    .slide6 {
        background-image: url(../img/slide6.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 460px;
        padding-top: 0px;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .navbar-brand {
        height: 45px;
        width: 317px;
        background-image: url(../img/logo.svg);
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
    }

    .text-tomoni {
        font-size: 300%;
        font-weight: normal;
        border: none;
    }

    .seishain {
        width: 55%;
    }

    .bg-sky {
        /* height: 480px; */
        /* height: 2026px; */
        padding-bottom: 250px;
        background-image: url(../img/bak-sky2.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .txt-sky {
        width: 75%;
    }

    .navbar-light .navbar-nav .nav-link {
        padding-top: 20px;
        padding-bottom: 20px;
        background-color: white;
        border-bottom: none;
    }

    .menu-pc {
        width: 120px;
        text-align: center;
        background-image: url(../img/menu-line.png);
        background-position: center left;
        background-repeat: no-repeat;
    }

    .menu-pc-top {
        width: 120px;
        text-align: center;
    }

    .menu-pc-act {
        width: 120px;
        text-align: center;
        border-bottom: 3px solid #0073BD;
    }

    .menu-pc-act-top {
        width: 120px;
        text-align: center;
        border-bottom: 3px solid #0073BD;
    }

    .menu-height-rs {
        height: 80px;
        font-size: 90%;
    }

    .menu-arrow-b {
        display: block;
    }

    .menu-space {
        line-height: 80px;
        font-size: 1rem !important;
    }

    .nav-item {
        padding-left: 0px;
    }

    .navbar-light .navbar-nav .nav-link {
        padding-top: 0px;
        padding-bottom: 0px;
        background-color: transparent;
    }

    .bg-taikou-blue-menu {
        /*background: rgb(0,75,160);
background: linear-gradient(315deg, rgba(0,75,160,1) 0%, rgba(0,119,192,1) 20%, rgba(0,119,192,1) 80%, rgba(0,75,160,1) 100%);*/
        background-image: url(../img/bak-blue.png);
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .text-rec {
        color: white !important;
    }

    .top-slide {
        height: 700px;
    }

    .act-arrow {
        background-image: url(../img/menu-act.png);
        background-position: center 55px;
        background-repeat: no-repeat;
        background-size: 10px;
    }

    .act-arrow-w {
        background-image: url(../img/menu-act-w.png);
        background-position: center 55px;
        background-repeat: no-repeat;
        background-size: 10px;
    }

    .pr-40 {
        padding-right: 40px;
    }

    .pl-40 {
        padding-left: 40px;
        padding-right: 0px;
    }

    .slide-bar {
        width: 930px;
        margin-left: auto;
        margin-right: auto;
    }

    .carousel-caption {
        position: absolute;
        right: 0px;
        bottom: 0px;
        left: 0;
        z-index: 10;
        padding-top: 14px;
        padding-bottom: 12px;
        color: #fff;
        width: 930px;
        margin: auto;
        font-size: 96%;
        line-height: 1rem;
    }

    .box-blue {
        position: absolute;
        z-index: 5;
        bottom: 0px;
        left: 0;
        margin: 0px;
        height: 41px;
        width: 100%;
        background-image: url(../img/hover-blue.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .slide1 {
        background-image: url(../img/slide1.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide2 {
        background-image: url(../img/slide2.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide3 {
        background-image: url(../img/slide3.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide4 {
        background-image: url(../img/slide4.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide5 {
        background-image: url(../img/slide5.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide6 {
        background-image: url(../img/slide6.jpg);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .menu-pc-act {
        width: 120px;
        text-align: center;
        height: 80px;
        background-image: url(../img/menu-line.png);
        background-position: center left;
        background-repeat: no-repeat;
    }

    .menu-pc-act-top {
        width: 120px;
        text-align: center;
        height: 80px;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .menu-pc {
        width: 150px;
        text-align: center;
        height: 80px;
    }

    .bg-sky {
        /* height: 480px; */
        /* height: 2026px; */
        padding-bottom: 250px;
        background-image: url(../img/bak-sky2.jpg);
        background-position: bottom center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .txt-sky {
        width: 75%;
    }

    .menu-pc-top {
        width: 150px;
        text-align: center;
        height: 80px;
    }

    .menu-pc-act {
        width: 150px;
        text-align: center;
        height: 80px;
        background-image: url(../img/menu-line.png);
        background-position: center left;
        background-repeat: no-repeat;
    }

    .menu-pc-act-top {
        width: 150px;
        text-align: center;
        height: 80px;
    }

    .pr-40 {
        padding-right: 40px;
    }

    .pl-40 {
        padding-left: 40px;
        padding-right: 0px;
    }

    .slide-bar {
        width: 1110px;
        margin-left: auto;
        margin-right: auto;
    }

    .carousel-caption {
        position: absolute;
        right: 0px;
        bottom: 0px;
        left: 0;
        z-index: 10;
        padding-top: 14px;
        padding-bottom: 12px;
        color: #fff;
        width: 1110px;
        margin: auto;
        font-size: 96%;
        line-height: 1rem;
    }

    .box-blue {
        position: absolute;
        z-index: 5;
        bottom: 0px;
        left: 0;
        margin: 0px;
        height: 41px;
        width: 100%;
        background-image: url(../img/hover-blue.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .slide1 {
        background-image: url(../img/slide1.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide2 {
        background-image: url(../img/slide2.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide3 {
        background-image: url(../img/slide3.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide4 {
        background-image: url(../img/slide4.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide5 {
        background-image: url(../img/slide5.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }

    .slide6 {
        background-image: url(../img/slide6.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 50%;
    }
}

@media (min-width: 1500px) {
    .slide1 {
        background-image: url(../img/slide1.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }

    .slide2 {
        background-image: url(../img/slide2.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }

    .slide3 {
        background-image: url(../img/slide3.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }
    .slide4 {
        background-image: url(../img/slide4.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }

    .slide5 {
        background-image: url(../img/slide5.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }

    .slide6 {
        background-image: url(../img/slide6.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        height: 800px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 0px;
    }
}

.navbar {
    padding: 0px;
}

.navbar-light .navbar-nav .nav-link {
    color: #333;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 90%;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: #0073BD;
}

.nav-link {
    padding-top: 0px;
    padding-bottom: 0px;
}

.bg-taikou-blue {
    /*background: rgb(0,75,160);
background: linear-gradient(315deg, rgba(0,75,160,1) 0%, rgba(0,119,192,1) 20%, rgba(0,119,192,1) 80%, rgba(0,75,160,1) 100%);*/
    background-image: url(../img/bak-blue.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-recruit {
    /*background: rgb(0,75,160);
background: linear-gradient(315deg, rgba(0,75,160,1) 0%, rgba(0,119,192,1) 20%, rgba(0,119,192,1) 80%, rgba(0,75,160,1) 100%);*/
    background-image: url(../img/bak-recruit.jpg);
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-taikou-blue-circle {
    background: rgb(0, 119, 192);
    background: radial-gradient(circle, rgba(0, 119, 192, 1) 61%, rgba(0, 75, 160, 1) 100%);
}



.menu-active {
    color: #0073BD !important;
}
@media only screen and (max-width:991px) {
    .menu-active-2 {
        color: #0073BD !important;
    }
}

.title {
    color: #0073BD;
    letter-spacing: 1px;
    font-size: 3rem;
    margin: 0px;
    padding: 0px;
}

.title-w {
    color: white;
    letter-spacing: 1px;
    font-size: 3rem;
    margin: 0px;
    padding: 0px;
}

/******************************************/
.box9 {
    background: #000;
    text-align: center;
    position: relative
}

.box9 img {
    width: 100%;
    height: auto
}

.box9:hover img {
    opacity: 1
}

.box9 .box-content {
    padding: 30px 10px 30px 0;
    background: -webkit-radial-gradient(rgba(20, 136, 204, .8), rgba(43, 50, 178, .8));
    background: radial-gradient(rgba(20, 136, 204, .9), rgba(43, 50, 178, .9));
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
    transition: .2s;
}

.box9:hover .box-content {
    top: 6px;
    left: 6px;
    bottom: 6px;
    right: 6px;
    opacity: 1
}

.box9 .title {
    font-weight: 700;
    font-size: 13px;
    color: #0073BD;
    line-height: 17px;
    margin: 0px 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    transition: .4s;
}

.box99 {
    background: #000;
    text-align: center;
    position: relative;
}

.box99 img {
    width: 100%;
    height: auto;
    cursor: auto;
}

.ls-1 {
    letter-spacing: 1px;
}

.box9:hover .title {
    color: white;
}

@media only screen and (max-width:990px) {
    .box9 {
        margin-bottom: 20px
    }
}

/******************************************/

.line {
    height: 20px;
    background-image: url(../img/line.png);
    background-position: center center;
    background-repeat: no-repeat;
}

.work-top a:link {
    color: black !important;
    text-decoration: none !important;
}

.work-top a:visited {
    color: black !important;
    text-decoration: none !important;
}

.work-top a:hover {
    color: #0073BD !important;
    text-decoration: none !important;
}

.work-top a:active {
    color: black !important;
    text-decoration: none !important;
}

.concept-top a:link {
    color: white !important;
    text-decoration: none !important;
}

.concept-top a:visited {
    color: white !important;
    text-decoration: none !important;
}

.concept-top a:hover {
    color: white !important;
    text-decoration: none !important;
}

.concept-top a:active {
    color: white !important;
    text-decoration: none !important;
}

.line-btn {
    background-image: url(../img/line-h.png);
    background-position: 5px center;
    background-repeat: no-repeat;
    width: 30px;
}

.line-btn-w {
    background-image: url(../img/line-h-w.png);
    background-position: 5px center;
    background-repeat: no-repeat;
    width: 30px;
}

.line-btn:hover {
    background-image: none;
}

.line-btn-w:hover {
    background-image: none;
}

.work-btn .btn {
    border-radius: 0px;
}

.btn-outline-work-top {
    border-color: #0073BD !important;
}

.btn-outline-work-top:hover {
    background-color: #0073BD !important;
    color: white;
}

.btn-outline-contact-top {
    border-color: white !important;
    color: white;
    border-radius: 0px;
}

.btn-outline-contact-top:hover {
    background-color: white !important;
    color: #0073BD;
    border-radius: 0px;
}

.yess-bnr {
	width: 728px;
	margin: 0 auto 3rem;
}

.yess-bnr img {
	width: 100%;
}

.bak-work {
    background-image: url(../img/bak_work.jpg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
}

.border-bottom-1 {
    height: 2px;
    border-bottom: 1px solid white;
}

.text-large {
    font-size: 120%;
}

.text-phone {
    font-size: 160%;
    letter-spacing: 1px;
}

.text-normal {
    font-size: 16px;
    letter-spacing: 0px;
}

.orikin {
    white-space: nowrap;
}

#scrollup {
    cursor: pointer;
    z-index: 10;
}

.bg-scroll {
    background-color: #EFEEEF;
    color: #0073BD;
}

.bg-bred {
    background-color: #EFEEEF;
    letter-spacing: 1px;
    line-height: 14px;
    word-spacing: 10px;
    padding-top: 18px;
    padding-bottom: 18px;
    font-size: 14px;
}


.bg-bred a {
    color: #000;
}

.bg-bred a:hover {
    color: #0073BD;
    text-decoration: none;
}

.bg-bred a:visited {
    color: dimgray;
}

.grayout {
    color: dimgray;
}


.f-nor,.f-act {
    position: relative;
}

.f-nor:before {
    content: url(../img/f-a-nor.png);
    /* margin-right: 8px; */
    position: absolute;
    left: -18px;
    top: 1px;
}

.f-act:before {
    content: url(../img/f-a-act.png);
    /* margin-right: 8px; */
    position: absolute;
    left: -18px;
    top: 1px;
}



.let-1 {
    letter-spacing: 1px;
}

.footer-menu {
    font-size: 65%;
    letter-spacing: 1px;
    text-align: center;
}

.footer-menu a {
    color: black;
}

.footer-menu a:hover {
    color: #0073BD;
    text-decoration: none;
}

.text-work {
    font-size: 120%;
    font-weight: bold;
}

.child {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    transform: translateY(-50%);
}



.b-arrow {
    background-image: url(../img/button-r.png);
    background-position: center right 10px;
    ;
    background-repeat: no-repeat;
    background-size: 16px;
}

.b-arrow:hover {
    background-image: url(../img/button-r-w.png);
    background-position: center right 10px;
    ;
    background-repeat: no-repeat;
    background-size: 16px;
}

.bb-arrow {
    background-image: url(../img/button-r-w.png);
    background-position: center right 10px;
    ;
    background-repeat: no-repeat;
    background-size: 16px;
}

.bb-arrow:hover {
    background-image: url(../img/button-r.png);
    background-position: center right 10px;
    ;
    background-repeat: no-repeat;
    background-size: 16px;
}

.cop {
    font-size: 65%;
    letter-spacing: 1px;
}

.title-page {
    margin-top: 100px;
}

/*.sidebar-m {
    position: sticky;
    top: 10px;
    width: 140px;
    height: 140px;
}*/

ul.nav1 li a {
    color: black;
}

ul.nav1 li a:hover {
    color: #0073BD;
    text-decoration: none;
}

ul.nav1 li a {
    background-image:
        url("../img/button-r.png"),
        url(../img/block-w.gif);
    background-size:
        14px,
        cover;
    background-repeat:
        no-repeat,
        repeat;
    background-position:
        center right 10px,
        center;
    border-bottom: 1px solid #ddd;
}

ul.nav1 li a.selected {
    /*background-image: url(../img/bak-blue.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;*/
    background-image:
        url("../img/button-r-w.png"),
        /* 最前面の背景レイヤーの背景画像 */
        url("../img/bak-blue.png");
    background-size:
        14px,
        cover;

    background-repeat:
        no-repeat,
        /* 最前面の背景レイヤーに対応 */
        repeat;

    background-position:
        center right 10px,
        /* 最前面の背景レイヤーに対応 */
        center;
    color: white !important;
    transition: .4s;
}

.title-side {
    color: #003858;
    font-size: 160%;
}

.title-results {
    font-size: 32px;
    margin: 0px;
    padding-left: 20px;
    letter-spacing: 2px;
}

.line-work {
    border-left: 3px solid #0073BD;
}

.modal-backdrop {
    background-image: url(../img/bak-blue.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: .6 !important;
}

.bg-modal {
    background: rgba(255, 255, 255, 1);
    border-radius: 0px;
    box-shadow: 0 0 8px black;
}

.modal-title {
    font-size: 120%;
}

.modal-koumoku {
    margin-right: 5px;
}

.modal-koumoku:after {
    content: "/";
    margin-left: 5px;
}

.work-name {
    background-image: url(../img/line-15.png);
    background-position: top 6px left;
    background-repeat: no-repeat;
    line-height: 1rem;
    padding-left: 20px;
    font-size: 90%;
    font-weight: bold;
}

/******************************************/
.box-w {
    background: #000;
    text-align: center;
    position: relative
}

.box-w img {
    width: 100%;
    height: auto
}

.box-w:hover img {
    opacity: 1
}

.box-w .box-content {
    padding: 30px 10px 30px 0;
    background: -webkit-radial-gradient(rgba(20, 136, 204, .8), rgba(43, 50, 178, .8));
    background: radial-gradient(rgba(20, 136, 204, .9), rgba(43, 50, 178, .9));
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
    transition: .2s;
    cursor: pointer;
}

.box-w:hover .box-content {
    top: 6px;
    left: 6px;
    bottom: 6px;
    right: 6px;
    opacity: 1
}

.box-w .title {
    font-weight: 700;
    font-size: 13px;
    color: #0073BD;
    line-height: 17px;
    margin: 0px 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    transition: .4s;
}

.box-w:hover .title {
    color: white;
}

.box-w:hover + .work-name {
    color: #0073BD;
}

/*slide*/

.rslides {
    position: relative;
    list-style: none;
    overflow: hidden;
    width: 100%;
    padding: 0;
    margin: 0;
}

.rslides li {
    -webkit-backface-visibility: hidden;
    position: absolute;
    display: none;
    width: 100%;
    left: 0;
    top: 0;
}

.rslides li:first-child {
    position: relative;
    display: block;
    float: left;
}

.rslides img {
    display: block;
    float: left;
    width: 100%;
    border: 0;
}

.rslides_tabs {
    list-style: none;
    padding: 0;
    background: #ddd;
    font-size: 18px;
    list-style: none;
    margin: 0 auto 0px;
    padding: 10px 0;
    text-align: center;
    width: 100%;
}

.rslides_tabs li {
    display: inline;
    float: none;
    margin-right: 1px;
}

.rslides_tabs a {
    width: auto;
    line-height: 20px;
    padding: 9px 20px;
    height: auto;
    background: transparent;
    display: inline;
}

.rslides_tabs li:first-child {
    margin-left: 0;
}

.rslides_tabs .rslides_here a {
    background: rgba(255, 255, 255, .1);
    color: #fff;
    font-weight: bold;
}

.slider-tk-pager a {
    display: inline-block;
}

.slider-tk-pager img {
    float: left;
}

.slider-tk-pager .rslides_here a {
    background: transparent;
    padding: 3px;
    border: 1px solid #0073BD;
}

.slider-tk-pager a {
    padding: 5px;
}







/*slide*/

.img-scroll {
    overflow-x: scroll;
}

/*test*/

/*test*/

.text-aisatu {
    line-height: 1.8rem;
}

.text-hito {
    font-size: 42px;
    color: #0073BD;
}

.text-rinenn {
    font-size: 160%;
}

.rinnen li {
    color: #0073BD;
}

.rinnen li span {
    color: black;
}


.box-gyoumu {
    border: 1px solid #0073BD;
    background-color: #F6F7F7;
    position: relative;

}

.num-gyoumu {
    color: #C2D0E9;
    font-size: 280%;
    position: absolute;
    top: 0px;
    right: 10px;
}

.title-gyoumu {
    font-size: 140%;
    border-left: 10px solid #0073BD;
    padding-left: 10px;
}

.taikou table {
    width: 100%;
}

.taikou th,
.taikou td {
    padding: 10px;
    border: 1px solid #ddd;
}

.taikou th {
    background: #f4f4f4;
}

.tb01 th {
    width: 30%;
    text-align: center;
}
    
.okhotsk .sp-only {
    display: none;
}
    
.okhotsk .pc-only {
    display: block;
}

.okhotsk img {
    width: 100%;
}

.okhotsk .ok-img-top {
    width: 100%;
}

.okhotsk .ok-cont-block {
    margin: 0 auto;
}

.okhotsk .ok-cont {
    width: 100%;
    display: flex;
    align-items:  center;
    justify-content: space-between;
    border-bottom: 1px solid #646464;
    padding: 90px 0;
}

.okhotsk .ok-cont:last-child {
    border-bottom: none;
}

.okhotsk .ok-cont-img {
    width: 174px;
}

.okhotsk .ok-cont-txt-box {
    width: 608px;
}

.okhotsk .ok-cont-ttl {
    width: 100%;
    margin-bottom: 25px;
}

.okhotsk .ok-cont-txt {
    text-indent: -2rem;
    padding-left: 2rem;
}

.okhotsk .ok-bnr-block {
    margin: 60px 0 0;
}

.okhotsk .ok-bnr {
    width: 308px;
}

@media only screen and (max-width:480px) {
    
    .okhotsk .sp-only {
        display: block;
    }
    
    .okhotsk .pc-only {
        display: none;
    }
    
    .okhotsk .ok-img-top {
        width: 100%;
    }

    .okhotsk .ok-cont {
        padding: 40px 0;
    }

    .okhotsk .ok-cont:last-child {
        border-bottom: none;
    }

    .okhotsk .ok-cont-img {
        width: 25%;
    }

    .okhotsk .ok-cont-txt-box {
        width: 70%;
    }

    .okhotsk .ok-cont-ttl {
        width: 100%;
        margin-bottom: 10px;
    }

    .okhotsk .ok-cont-txt {
        font-size: 11px;
        text-indent: -22px;
        padding-left: 22px;
    }

    .okhotsk .ok-bnr-block {
        margin: 60px 0 0;
    }

    .okhotsk .ok-bnr {
        width: 50%;
    }
	
	.yess-bnr {
		width: 90%;
		margin-bottom: 1rem;
	}
    
}

@media only screen and (max-width:480px) {
    .tb01 {
        margin: 0 0px;
    }

    .tb01 th,
    .tb01 td {
        width: 100%;
        display: block;
        border-top: none;
    }

    .tb01 tr:first-child th {
        border-top: 1px solid #ddd;
    }
}

.taikou table {
    width: 100%;
}

.taikou th,
.taikou td {
    padding: 15px;
    border: 1px solid #ddd;
}

.taikou th {
    background: #f4f4f4;
}

.contt th {
    width: 30%;
    font-weight: normal;
}

@media only screen and (max-width:992px) {
    .contt {
        margin: 0 0px;
    }

    .contt th,
    .contt td {
        width: 100%;
        display: block;
        border-top: none;
    }

    .contt tr:first-child th {
        border-top: 1px solid #ddd;
    }
}

.b-blue {
    border-top: 2px solid #0073BD;
    font-weight: bold;
    letter-spacing: 2px;
}

.b-gray {
    border-top: 1px solid #ddd;
}

.bb-gray {
    border-bottom: 1px solid #ddd;
}

.rec li {
    list-style: circle;
}

.rec-bot {
    color: #0073BD;
}

.text-shokushu {
    font-size: 150%;
    color: #0073BD;
}

.text-hissu {
    font-size: 70%;
}

.form-zenkaku :after {
    content: "aaa";
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}

@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    .rslides img {
        max-height: 400px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    *::-ms-backdrop,
    .banner-ie {
        margin-top: 100px;
    }

}

@media only screen and (max-width:1199px) {
    .t-first {
        display: block;
    }

    .t-last {
        display: block;
    }
}

.carousel-indicators li {
    box-sizing: content-box;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 50px;
    height: 50px;
    margin-right: 10px;
    margin-left: 0px;
    text-indent: 0px;
    cursor: pointer;
    background-color: transparent;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: 1;
    transition: opacity .6s ease;
    padding: 5px;
    border: 1px solid transparent;
}

.carousel-indicators .active {
    border: 1px solid #D71718;
}

.bg-no {
    background-image: none !important;
}

.mt-5px {
    margin-top: 25px;
}

.half {
    height: 50px;
    width: 50px;
}

.top-border {
    border-top: 1px solid #ddd;
}

.w-90 {
    width: 90%;
}

.carousel-indicators li .top-thumb1 {
    background-image: url(../img/top-thumb1-bk.jpg);
    height: 50px;
    width: 50px;
    background-size: contain;
}

.carousel-indicators .active .top-thumb1 {
    background-image: url(../img/top-thumb1.jpg);
}

.carousel-indicators li .top-thumb2 {
    background-image: url(../img/top-thumb2-bk.jpg);
    height: 50px;
    width: 50px;
    background-size: contain;
}

.carousel-indicators .active .top-thumb2 {
    background-image: url(../img/top-thumb2.jpg);
}


/* work202111 */
 
[modalpager=tabs] a {
    display: inline-block;
}
[modalpager=tabs] img {
    float: left;
}
[modalpager=tabs] .rslides_here a {
    background: transparent;
    padding: 3px;
    border: 1px solid #0073BD;
}
[modalpager=tabs] a {
    padding: 5px;
}
.modal {
    max-width: 800px!important;
}
.iziModal-navigate>button {
    opacity: 1;
}
@media only screen and (min-width:481px) and (max-width:768px) {
    .modal {
        max-width: 80%!important;
    }
    .iziModal-navigate>button {
        width: 84px;
    }
    .iziModal-navigate-prev {
        left:-1%;
        margin-left: 0!important;
    }
    .iziModal-navigate-next {
        right:-1%;
        margin-right: 0!important;
    }
}
@media only screen and (max-width:480px) {
    .modal {
        max-width: 80%!important;
    }
    .iziModal-navigate>button {
        width: 40px;
    }
    .iziModal-navigate-prev {
        left:-1%;
        margin-left: 0!important;
    }
    .iziModal-navigate-next {
        right:-1%;
        margin-right: 0!important;
    }
}

/* csr */
.bg-csr {
    height: 260px;
    background-image: url(../img/top-csr.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media only screen and (max-width:768px) {
    .bg-csr {
        height: 260px;
        background-image: url(../img/top-csr.jpg);
        background-position: bottom 0px right -320px;
        background-repeat: no-repeat;
        background-size: cover;
    }
}
.b-blue-gray:before {
    border-bottom: 4px solid #0073BD;
    font-weight: bold;
    letter-spacing: 2px;
    position: absolute;
    left: 0;
    width: 57px;
    z-index: 2;
    bottom: -4px;
    display: block;
    content: "";
}
.b-blue-gray {
    position: relative;
    border-bottom: 4px solid #ddd;
    font-weight: bold;
    letter-spacing: 2px;
}
.csr-span-h {
    vertical-align: middle;
    font-size:38px;
    color: #0073BD;

}
@media only screen and (max-width:768px) {
    .b-blue-gray:before {
        width: 50px;
    }
    .b-blue-gray {
        font-size: 18px;
    }
    .csr-span-h {
        font-size: 24px;
    }
}

.blue-box {
    border: 2px solid #0073BD;
    background: #f7f7f7;
    padding: 35px 30px 30px 30px;
}
.blue-box h4{
    font-size: 14px;
    color: #0073BD;
}
.blue-box ul{
    padding: 0;
}
.blue-box ul li{
    list-style-type: none;
    position: relative;
    padding-left: 18px;
    padding-bottom: 0.1em;
}
.blue-box ul li:before{
    border-radius: 50%;
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    left: 0;
    top: 5px;
    content: "";
    background: #0073BD;
}
.sdgs-img-block01 {
    width: 650px;
    box-sizing: border-box;
    padding: 0;
    margin: auto;
}
.sdgs-img-block03 {
    width: 750px;
    box-sizing: border-box;
    padding: 0;
    margin: auto;
}
.sdgs-img-block-banner {
    width: 340px;
}
.mt-60 {
    margin-top: 60px;
}
.mt-80 {
    margin-top: 80px;
}

@media only screen and (max-width:768px) {
    .blue-box {
        padding: 20p;
    }
    .sdgs-text-long {
        font-size: 16px;
        letter-spacing: -0.1px;
    }
}

/* 20220325 */

/* csr 202204 */

.w730 {
  width: 100%;
  max-width: 730px;
}
.div-youtube-box {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* width: 100%;
  aspect-ratio: 16 / 9; */
}
.mw-445 {
  width: 100%;
  max-width: 445px;
  margin: auto;
}
.div-youtube-box iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width:768px) {
    .fb_iframe_widget iframe{
        width: 100%;
    }
}

.top-ul-li-box {
    padding-left: 0.8rem!important;
    display: flex;
    flex-wrap: nowrap;
    justify-content: left;
}
@media only screen and (max-width:569px) {
    .top-ul-li-box {
        display: block;
    }
}
.top-news-block li:first-child{
    border-top: 1px solid #ccc;
}
.top-news-block li {
    border-bottom: 1px solid #ccc;
    padding: 14px 0 14px 0;
    margin: auto;
}

.news-all-li-div-block {
    width: 280px;
    display:flex;
    align-items: center;
}


.news-all-li-div-block-title {
    align-items: center;
    display: flex;
}
.top-news-cate-box {
    margin: 0;
    box-sizing: border-box;
    padding: 5px 2rem 6px 2rem;
    background: #efeeef;
    margin: 0px 1.5rem 0 1.5rem;
    width: 150px;
    text-align: center;
}

.top-news-cate-box a {
    color: #000;
    font-size: 0.9rem;
}

.top_news_ul_box_li_read_a {
    color:#000;
}
@media only screen and (max-width:768px) {
    .top_news_ul_box_li_read_a {
        display: block;
    }
}
@media only screen and (max-width:576px) {
    .top_news_ul_box_li_read_a {
        display: block;
        margin-top: 1rem;
    }
}



/* recruit */

.h-l-specing {
	letter-spacing: 0.3em;
	padding-left: 0.3em;
}
.btn-rec-box {
	width: 340px;
	height: 80px;
	box-sizing: border-box;
	position: relative;
	background: #fff;
	margin-left: auto;
	margin-right: auto;
}
.btn-rec-box:after {
	content: " ";
	position: absolute;
	right: 22px;
	top: 36px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #0073bc;
	border-right: 2px solid #0073bc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.btn-rec-box:hover {
	background: #0073bc;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-rec-box:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn-rec-box:hover a {
	color: #fff;
}

.btn-rec-box a {
	display: block;
	font-weight: bold;
	font-size: 1.2rem;
	color: #0073bc;
	text-align: center;
	line-height: 82px;
	letter-spacing: 0.1em;
}
.btn-rec-box a:hover {
	text-decoration: none;
}

/* 求人-個別 */
.rec-api-block h2{
	color: #0073bc;
    font-size: 20px;
}
.rec-api-block h3{
	color: #0073bc;
    font-size: 16px;
}
.rec-api-block ul{
    padding-left: 1em;
    margin-bottom: 0;
}
.rec-api-block li {
    list-style: none;
    text-indent: -1em;
    margin-bottom: 0.5em;
    line-height: 1.4;
}
.rec-api-block li:last-child {
    margin-bottom: 0;
}
.rec-api-block li:before {
    content: '●';
    color: #0073bc;
}
.w-beak {
    word-break: break-word;
}
.ul-big-circle {
    padding-left: 1em;
    margin-bottom: 0; 
}
.ul-big-circle li {
    list-style: none;
    text-indent: -1em;
    line-height: 1.4;
}
.ul-big-circle li:before {
    content: '●';
}
.bb-gray-sp-none {
    border-bottom: 1px solid #ddd;
}
@media only screen and (max-width:768px) {
    .bb-gray-sp-none {
        border-bottom: none;
    }
}

.rec-flow-block {
    position: relative;
}
.rec-flow-under-arrow:after {
	content: " ";
	position: absolute;
    margin: 0 auto 0 auto;
    left: 0;
    right: 0;
	bottom: -16px;
	width: 16px;
	height: 16px;
	border-top: 2px solid #0073bc;
	border-right: 2px solid #0073bc;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.rec-flow-btn {
	width: 340px;
	height: 60px;
	box-sizing: border-box;
	position: relative;
	background: #fff;
	margin-left: auto;
	margin-right: auto;
    border:1px solid #0073bc;
    display: flex;
    align-items: center;
    justify-content: center;
    color:#0073bc;
}
.rec-flow-blue-back {
    background: #ebf4fa;
}
.rec-entry-block {
    background: rgb(0,75,159);
    background: linear-gradient(90deg, rgba(0,75,159,1) 0%, rgba(0,119,191,1) 50%, rgba(0,75,159,1) 100%);
}
/* 問合せ20220401 */

.screen-reader-response,.wpcf7-response-output {
    display: none;
}
.wpcf7-not-valid-tip {
    font-size: 12px;
    color:red;
}
::placeholder {
    font-size: 12px;
    color: #8b8b8b!important;
}
.form-radio-mini-h {
    margin-right: 2px;
    width: 70px;
} 
.form-left-radio-box {
    margin-left: 88px!important;
}
.fs-1 {
   font-size: 0.8rem; 
}
.fs-2 {
    font-size: 0.9rem; 
 }
.fs-3 {
    font-size: 1rem; 
}
.fs-4 {
    font-size: 1.2rem; 
}
.fs-5 {
    font-size: 1.4rem; 
}
.fs-color {
    color: #0073bc!important;
}
.file-box-1,.file-box-2,.file-box-3 {
    font-size: 0.8rem;
}

/* single */
.title-under-line {
    border-bottom: 1px solid #ccc;
}

.single-head-block {
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
}
.single-cate-box {
    border-left: 1px solid #ddd;

    padding-left: 1rem;
    margin-left: 1rem;
}
.single-cate-box a{
    font-size: 0.9rem;
    color: #000;
}

.single-tags a {
    border: 1px solid #ddd;
    padding: 2px 1rem 1px 1rem;
    font-size: 0.8rem;
    color: #000;
}
.single-tags a:hover {
    color: #0073BD;
    text-decoration: none;
}

.single-content-box p {
    text-justify : auto;
    line-height: 1.5;
    font-size: 1rem;
    text-align: justify;
}
.btn-single-all-box {
	width: 300px;
	height: 60px;
	box-sizing: border-box;
	position: relative;
	background: #fff;
	margin-left: auto;
	margin-right: auto;
    border: 1px solid #0073bc;
}
.btn-single-all-box:hover {
	background: #0073bc;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-single-all-box:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn-single-all-box:hover a {
	color: #fff;
}

.btn-single-all-box a {
	display: block;
	font-weight: bold;
	font-size: 1rem;
	color: #0073bc;
	text-align: center;
	line-height: 61px;
	letter-spacing: 0.1em;
}
.btn-single-all-box a:hover {
	text-decoration: none;
}
.single_pager_box {
    padding-top: 20px;
    border-top: 1px solid #ddd;
    margin-top: 60px;
}
.single_pager_pre a{
	box-sizing: border-box;
	position: relative;
    padding-left: 1rem;
    color:#0073bc;
}
.single_pager_next a {
	box-sizing: border-box;
	position: relative;
    padding-right: 1rem;
    color:#0073bc;
}
.single_pager_pre a:before {
	content: " ";
	position: absolute;
    right: 45px;
    top: 7px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #0073bc;
	border-right: 1px solid #0073bc;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.single_pager_next a:after {
	content: " ";
	position: absolute;
    left: 45px;
    top: 7px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #0073bc;
	border-right:1px solid #0073bc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.sidebar-tag-ul {
    padding-left: 0;
    /* display: flex; */
}
.sidebar-tag-ul li {
    list-style: none;
    padding-left: 0;
}


.single-head-block-archive {
    border: none;
}
.archive-single-block {
    border-bottom: 1px solid #ccc;
}

.arrow-right {
    position: relative;
}
.arrow-right:after {
    content: " ";
    position: absolute;
    left: 93px;
    top: 16px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #0073bc;
    border-right: 1px solid #0073bc;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.pagination {
    justify-content: center;
    margin: -20px auto 0 auto;
}
@media only screen and (max-width:768px) {
    .pagination {
        margin: 0px auto 0 auto;
    }
    
}
.pagination a {
    color: #0073bc!important;
}
.page-numbers {
    margin: 0 10px;
}

.prev.page-numbers {
    margin-right: 30px;
}
.next.page-numbers {
    margin-left: 30px;
}

.single-content-img-block {
    padding: 0 40px;
    margin-bottom: 30px;
}
.archive-content-img-block {
    margin-right: 30px;
    max-width: 300px;
}
@media only screen and (max-width:768px) {
    .single-content-img-block {
        padding: 0 10px;
        margin-bottom: 20px;
    }
    .archive-content-img-block {
        margin-right: 0px;
        margin-bottom: 20px;
        max-width: 100%;
    }
}
.single-content-img-block img {
    width: 100%;
}
.archive-content-img-block img {
    width: 100%;
}
.archive-contents-block {
    text-align: justify;
}

/* side */
.archive-side-nav-ul li {
    max-width: 230px;
    width: 100%;
    height: 57px;
    line-height: 57px;
    border-bottom: 1px solid #ddd;
    padding-left: 1rem;
    position: relative;
}


.archive-side-nav-ul li:after {
    content: " ";
    position: absolute;
    right: 12px;
    top: 23px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #0073bc;
    border-right: 1px solid #0073bc;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.archive-side-nav-ul li:first-child {
    border-top: 1px solid #ddd;
}
.archive-side-nav-ul li a{
    border: none!important;
    background: none!important;
    display: block!important;
}
.side-nav-under-border {
    border-bottom: 1px solid #ddd;
}

/* 20240401 50周年追加 */
.top-50th {
    /* aspect-ratio: 16/9; */
    width: 100%;
    overflow: hidden;
}
.top-50th-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mt-10 {
    margin-top: 6rem;
}
.border-bottom-2 {
    height: 2px;
    border-bottom: 1px solid #ccc;
}
.yess-bnr {
    width: 100%;
    max-width: 728px;
    margin: 3rem auto 3rem;
}
.text-blue {
    color: #0073BD;
}
@media only screen and (max-width: 569px) {
    .top-50th {
        height: 40vh;
    }
}

/* 202505 沿革追加 */
.history-section {
  padding: 0;
}

.history-title {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
  border-bottom: 2px solid #ccc;
  display: inline-block;
}

.history-list {
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.history-item {
  border-bottom: 1px solid #ddd;
  padding-left: 15px;
}  

.history-inner {
  padding: 20px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.history-year {
  width: 120px;
  font-weight: bold;
}

.history-detail {
  flex: 1;
  margin: 0;
  padding-left: 50px;
}

@media screen and (max-width: 600px) {
  .history-inner {
    flex-direction: column;
  }

  .history-year {
    width: 100%;
    margin-bottom: 5px;
  }

    .history-detail {
    padding-left: 0;
  }
}

/* 202505 フッター追加 */
.footer-recruit-link {
  width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: #333;
  transition: color 0.3s ease;
  text-align: right;
}

.footer-recruit-link:hover {
  color: #ccc;
  text-decoration: none;
}

.footer-recruit-link svg {
  width: 15px;
  height: 15px;
}


.footer-sns-icons {
  display: flex;
  gap: 10px; /* ← アイコンの間隔 */
  align-items: center;
  margin-top: 15px;
}

.footer-sns-icons a img {
  width: 24px;   /* ← アイコンサイズ（お好みで） */
  height: auto;
  transition: transform 0.3s ease;
}

.footer-sns-icons a:hover img {
  transform: scale(1.2); /* ← ホバーでちょっと拡大 */
}

@media screen and (max-width:768px) {
  .footer-recruit-link {
    justify-content: center;
    text-align: center;
  }
    .footer-sns-icons {
    justify-content: center;
    text-align: center;
  }
}

/* work202506バナー追加 */
.work-recruit-banner {
  display: block;
  position: relative;
  width: 100%;
  max-width: 1200px;
  height: 200px;
  margin: 0 auto;
  overflow: hidden;
}

.work-recruit-banner:hover {
  cursor: pointer;
}

.work-recruit-banner:hover .work-recruit-img {
  transform: scale(1.05);
  filter: brightness(50%);
}

.work-recruit-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: brightness(65%);
  transition: transform 0.5s ease, filter 0.3s ease;
}

.work-recruit-text {
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translateY(-50%);
  color: #fff;
  z-index: 2;
  max-width: 80%;
}

.work-recruit-subtitle {
  font-size: 12px;
  margin: 0 0 5px;
  letter-spacing: 0.1em;
}

.work-recruit-title {
  margin: 0 0 15px;
  letter-spacing: 2px;
}

.work-recruit-desc {
  font-size: 14px;
  margin-bottom: 0px;
}

.work-recruit-link {
  display: inline-block;
  color: #fff;
  font-size: 18px;
  text-decoration: none;
  padding: 10px 20px;
  border-bottom: 1px solid #fff;
  border-radius: 100px;
}
