@charset "utf-8";

@media screen and (max-width:1140px) {
    .cont,
    .grid-960,
    .grid-1000{
        padding-left: 10px;
        padding-right: 10px;
    }
    .toItem ul li:nth-child(5n){
        margin-right: 50px;
    }
}
@media screen and (max-width:1095px) {
    .heR02 ul li a{
        font-size: 14px;
    }
    .heR02 ul li{
        padding-bottom: 0;
        padding-right: 2.020vw;
    }
    
    .hoNLeft{
        padding-right: 20px;
    }
    .heR02 ul{
        max-width: 368px;
    }
}
@media screen and (max-width:990px) {
    .heLang{
        padding-left: 2.020vw;
    }
    .logo img{
        max-width: 32.323vw;
        width: 100%;
    }
    .heLang ul li{
        max-width: 15.758vw;
    }
    .heLang ul li a{
        font-size: 1.515vw;
    }

    
    .hoCtList ul li h3{
        font-size: 2.525vw;
    }
    .hoCtList ul li span{
        font-size: 1.616vw;
    }
    span.hoAbTxt{
        font-size: 1.818vw;
    }
    #hoAbout h2{
        font-size: 3.535vw;
    }
    #hoAbout,
    #hoNews,
    .hoCtList{
        padding-top: 4.040vw;
        padding-bottom: 4.040vw;
    }
    #hoAbout::before{
        background-size: cover;
    }
    span.hoJITxt{
        font-size: 3.535vw;
    }
    .ftLeft{
        width: 30%;
    }
    .ftRight ul li span a{
        font-size: 14px;
    }
    .ftLeft ul li{
        font-size: 14px;
    }
    .btnContact a{
        font-size: 28px;
    }
    .raGroup .container{
        font-size: 15px;
    }
    .tbItem ul li{
        font-size: 15px;
    }
    .ctForm table tr td{
        font-size: 15px;
    }
    .ctForm table tr td:first-child span.ctRight{
        font-size: 14px;
        height: 25px;
        line-height: 25px;
        max-width: 45px;
    }
    span.btnSubmit button{
        font-size: 20px;
        max-width: 300px;
        height: 50px;
        line-height: 50px;
    }
    .checkmark{
        width: 18px;
        height: 18px;
    }
    .container .checkmark:after{
        top: 4px;
        left: 4px;
    }
}
@media screen and (max-width:767px) {
    .imgSp{
        display: inline-block;
    }
    .imgPc{
        display: none;
    }
    .heLang.langPc{
        display: none;
    }
    .heLang.langSp{
        display: block;
        width: 100%;
        overflow: hidden;
        text-align: center;
        padding-left: 0;
        padding-top: 22px;
    }
    .heLang.langSp ul{
        text-align: center;
        
    }
    .heLang ul li{
        display: block;
        float: none;
        margin-left: auto;
        margin-right: auto;
        max-width: 156px;
        margin-bottom: 15px;
    }
    .heLang ul li a{
        font-size: 17px;
    }
    .cont,
    .grid-1000{
        padding-left: 20px;
        padding-right: 20px;
    }
    .heR01{
        display: none;
    }
    .amp-moblie {
        display: block;
    }
    .amp-moblie a {
        width: 50px;
        height: 50px;
        display: block;
        background-color: #D70A2A;
        border-radius: 3px;
        text-decoration: none;
        font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
    }
    .open-menu {
        font-size: 13px;
        color: #ffffff;
        text-align: center;
        display: block;
    }
    .chane-x {
        width: 100%;
        max-width: 33px;
        margin: 0 auto;
    }
    .bar1, .bar2, .bar3 {
        width: 33px;
        height: 1px;
        background-color: #ffffff;
        margin: 6px 0;
        transition: 0.4s;
    }
    .bar1 {
        margin-top: 0;
    }
    .bar3 {
        margin-bottom: 0;
    }
    .change .bar1 {
        -webkit-transform: rotate(-45deg) translate(-5px, 5px);
        transform: rotate(-45deg) translate(-5px, 5px);
        -moz-transform: rotate(-45deg) translate(-5px, 5px);
        -ms-transform: rotate(-45deg) translate(-5px, 5px);
        -o-transform: rotate(-45deg) translate(-5px, 5px);
    }
    .change .bar2 {
        opacity: 0;
    }
    .change .bar3 {
        -webkit-transform: rotate(45deg) translate(-5px, -5px);
        transform: rotate(45deg) translate(-5px, -5px);
        -moz-transform: rotate(45deg) translate(-5px, -5px);
        -ms-transform: rotate(45deg) translate(-5px, -5px);
        -o-transform: rotate(45deg) translate(-5px, -5px);
    }
    .heR02 ul.nvMenu{
        display: none;
        position: absolute;
        top: 65px;
        left: 0;
        width: 100%;
        z-index: 1;
        max-width: 100%;
    }
    .heR02 ul.nvMenu li{
        float: left;
        width: 100%;
        text-align: center;
        background-color: rgba(215, 10, 42, 0.8);
        border-bottom: 1px solid rgba(255, 255, 255, 0.8);
        padding-right: 0;
    }
    .heR02 ul.nvMenu li:last-child{
        border-bottom: 0;
    }
    .heR02 ul.nvMenu li a{
        font-size: 15px;
        color: #fff;
        display: block;
        padding-top: 3px;
        padding-bottom: 2px;
    }
    .logo img{
        max-width: 100%;
    }
    .wrapHeader{
        padding-top: 6px;
        position: relative;
        z-index: 2;
        overflow: visible;
        padding-bottom: 15px;
    }
    .heR02{
        padding-top: 2px;
    }
    span.txtSp{
        display: block;
    }
    .txtPc{
        display: none;
    }
    .heR02 ul li.nvSp{
        display: block;
    }
    #slide .item{
        min-height: 40.625vw;
    }
    #hoNews{
        padding-top: 20px;
        padding-bottom: 38px;
    }
    .grid-960{
        padding-left: 20px;
        padding-right: 20px;
    }
    .hoNLeft{
        width: 100%;
        text-align: center;
        padding-right: 0;
    }
    .hoNRight{
        padding-top: 15px;
        width: 100%;
    }
    .hoNRight table tr td a{
        font-size: 12px;
    }
    .hoNRight table tr td{
        font-size: 12px;
        float: left;
        width: 100%;
        padding-left: 25px;
        padding-top: 6px;
        padding-bottom: 4px;
    }
    .hoNRight table tr td:last-child{
        line-height: 210%;
    }
    .hoNRight table tr td:first-child{
        width: 100%;
        background-position: top 9px left;
    }
    #hoAbout{
        margin-top: 20px;
        padding-top: 30px;
        padding-bottom: 40px;
    }
    #hoAbout::before{
        background-image: url(../../img/top/ho-img04-sp.png);
        background-position: top left;
        background-size: 180px;
    }
    #hoAbout h2{
        font-size: 20px;
    }
    span.hoAbTxt{
        font-size: 12px;
        padding-top: 20px;
        padding-bottom: 18px;
        letter-spacing: 0.5px;
        line-height: 200%;
    }
    .br-sp{
        display: inline-block;
    }
    span.btnStyle00 a{
        font-size: 15px;
        line-height: 36px;
    }
    span.btnStyle00{
        max-width: 230px;
        height: 38px;
    }
    #hoJob{
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .hoJItem{
        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
        padding-top: 34px;
    }
    .hoJItem:last-child{
        margin-bottom: 0;
    }
    span.hoJITxt{
        font-size: 24px;
    }
    .hoJItem:first-child h2 span img{
        max-width: 54px;
        width: 100%;
    }
    .hoJItem ul,
    .hoJItem:last-child ul{
        margin-top: 20px;
    }
    .hoJItem:last-child h2 span img{
        max-width: 40px;
        width: 100%;
    }
    .btnContact a{
        font-size: 20px;
        padding-top: 10px;
        padding-bottom: 8px;
    }
    .hoCtList{
        padding-top: 30px;
        padding-bottom: 22px;
    }
    .hoCtList ul li{
        float: left;
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }
    .hoCtList ul li h3{
        font-size: 22px;
    }
    .hoCtList ul li span{
        font-size: 18px;
    }
    .ftLeft{
        width: 100%;
    }
    .ftRight{
        display: none;
    }
    .ftLeft ul li{
        float: left;
        width: 100%;
        padding-right: 0;
    }
    .ftLeft ul li:first-child{
        text-align: center;
    }
    .ftLeft ul{
        max-width: 175px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .ftLeft ul li h3{
        font-size: 18px;
    }
    .ftLeft ul li span{
        font-size: 12px;
    }
    .ftRows{
        padding-top: 15px;
    }
    .ftLeft ul li:last-child {
        padding-top: 25px;
    }
    .ftRows01{
        font-size: 10px;
        padding-top: 10px;
    }
    .ftLeft ul li span.ftCt{
        display: block;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .scrolltop{
        bottom: 30px;
    }
    .ftLeft ul li:first-child img{
        max-width: 90px;
        width: 100%;
    }
    .ttStyle00{
        font-size: 24px;
    }
    span.abI00RTxt{
        font-size: 14px;
    }
    .abI00Left{
        width: 100%;
        margin-right: 0;
        text-align: center;
        margin-bottom: 20px;
    }
    .abI00Right{
        width: 100%;
        margin-top: 0;
    }
    span.abI00RSing{
        padding-top: 20px;
    }
    .abItem{
        margin-bottom: 60px;
    }
    .abI01Txt{
        font-size: 14px;
    }
    .abI01Txt ul{
        display: block;
    }
    .abI01Txt ul li{
        width: 100% !important;
        font-size: 14px;
        text-align: center;
        padding-left:0;
    }
    .abI01Txt ul li:first-child{
        padding-right: 0;
        padding-bottom: 20px;
    }
    .abI01Txt ul li:last-child{
        padding-left: 0;
        text-align: left;
    }
    table.tbStyle00 tr td{
        font-size: 14px;
    }
    #about .btnContact .cont{
        padding-left: 0;
        padding-right: 0;
    }
    table.tbStyle00 tr td:first-child{
        width: 130px;
        padding-left: 15px;
    }
    ul.inList li{
        width: 100%;
        float: left;
        margin-bottom: 20px;
    }
    /* ul.inList li:last-child{
        margin-bottom: 0;
    } */
    ul.inList{
        display: block;
    }
    #individual{
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .inI00Txt{
        font-size: 14px;
    }
    .inIItem00 h4, .inII03Item h4{
        font-size: 18px;
        line-height: 140%;
    }
    .inII00Left{
        width: 100%;
        font-size: 14px;
    }
    .inII00Right{
        width: 100%;
        margin-left: 0;
        text-align: center;
        margin-top: 20px;
    }
    .inItem{
        margin-bottom: 40px;
    }
    .inI01FullTxt{
        font-size: 14px;
    }
    .inI03{
        font-size: 14px;
    }
    .inII03Item ul li{
        width: 100%;
        float: left;
        margin-bottom: 20px;
    }
    .inII03Item ul li:last-child{
        margin-bottom: 0;
    }
    .inII03Left{
        width: 100%;
        margin-right: 0;
    }
    .inII03LtxtItem span:first-child{
        font-size: 16px;
    }
    .inII03LtxtItem span{
        font-size: 14px;
    }
    .inII03Right{
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }
    span.inII03FullTxt{
        font-size: 14px;
    }
    #individual .btnContact .cont{
        padding-left: 0;
        padding-right: 0;
    }
    span.coI00{
        font-size: 14px;
    }
    .coIR00ILeft{
        font-size: 14px;
        width: 100%;
    }
    .coIR00Right{
        width: 100%;
        margin-left: 0;
        text-align: center;
        margin-top: 20px;
    }
    .coItem{
        margin-bottom: 50px;
    }
    span.coIR00Item03{
        font-size: 14px;
    }
    .coItem:last-child ul li{
        display: block;
        margin-right: 0;
        margin-bottom: 20px;
        margin-left: auto;
        margin-right: auto;
        font-size: 18px;
        width: 150px;
        height: 150px;
        line-height: 150px;
    }
    .coItem:last-child ul li:last-child{
        margin-right: auto;
    }
    .coI03Txt{
        font-size: 14px;
        padding-top: 0px;
    }
    #company{
        padding-bottom: 50px;
    }
    
    .coItem .btnContact .cont{
        padding-left: 0;
        padding-right: 0;
    }
    .coIR00Item h4{
        font-size: 18px;
        line-height: 140%;
    }
    span.coI00Img{
        padding-top: 10px;
    }
    span.toTxt{
        font-size: 24px;
    }
    span.toTxt::before{
        display: none;
    }
    span.toFullTxt{
        font-size: 14px;
        padding-top: 10px;
    }
    #tokuteiginou{
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .toContent01{
        padding-top: 30px;
    }
    span.toItem01FullTxt{
        font-size: 14px;
    }
    .toItem ul li span{
        font-size: 16px;
    }
    .toItem{
        margin-bottom: 40px;
    }
    .toItem ul li:last-child{
        margin-bottom: 0;
    }
    span.toItem02FullTxt{
        font-size: 14px;
    }
    .toItem table.toTbStyle00 tr:first-child td:last-child{
        font-size: 14px;
    }
    .toItem table.toTbStyle00 tr:first-child td:first-child{
        font-size: 18px;
    }
    .toItem table.toTbStyle00 tr td{
        font-size: 14px;
        padding-right: 10px;
    }
    .toItem table.toTbStyle00 tr td:first-child{
        width: 150px;
        padding-left: 20px;
    }
    .toItem:last-child{
        margin-bottom: 0;
    }
    .toContent02 h3{
        font-size: 20px;
    }
    .toICo02R{
        font-size: 14px;
    }
    span.tCo02Txt{
        font-size: 20px;
    }
    #tokuteiginou .btnContact .cont{
        padding-left: 0;
        padding-right: 0;
    }
    span.traTxt{
        font-size: 14px;
    }
    .traItem{
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
    .traItem img{
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    .traItem h4{
        font-size: 20px;
    }
    .traItem span{
        font-size: 14px;
    }
    .traTxt01{
        font-size: 14px;
        padding-top: 20px;
        padding-bottom: 30px;
    }
    #translation .btnContact .cont{
        padding-left: 0;
        padding-right: 0;
    }
    .priTxt{
        font-size: 14px;
        padding-top: 20px;
        padding-bottom: 30px;
    }
    .priTxt span{
        font-size: 16px;
    }
    #privacy{
        padding-top: 25px;
    }
    .ctForm table tr td{
        float: left;
        width: 100%;
        padding: 10px;
    }
    .ctForm table tr td:first-child{
        width: 100%;
        padding: 10px;
    }
    span.ctNOte{
        display: block !important;
        font-size: 14px;
    }
    .tbItem ul li:last-child{
        padding-left: 20px;
    }
    textarea.form-control{
        height: 250px;
    }
    #contact{
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .raGroup .container{
        line-height: 150%;
        padding-left: 25px;
    }
    .checkmark{
        top: 20px;
    }
    .check .ctForm table tr td:first-child{
        width: 100%;
        text-align: left;
        padding: 10px;
    }
    .check .ctForm table tr td{
        padding: 10px;
        font-size: 15px;
    }
    .check .ctForm table tr:last-child td:last-child{
        padding: 10px;
    }
    .check .ctForm table tr td:last-child{
        padding: 10px;
    }
    .check #contact{
        padding-bottom: 40px;
    }
    .check span.btnSubmit button{
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
    }
    .check .btnSubmit button:first-child{
        margin-right: auto;
    }
    .sendFullTxt span{
        font-size: 14px;
        padding-left: 0;
        padding-top: 30px;
    }
    span.btnBackTop{
        margin-top: 40px;
        max-width: 300px;
        height: 50px;
    }
    span.btnBackTop a{
        font-size: 20px;
        line-height: 50px;
    }
    .send #contact{
        padding-bottom: 60px;
    }
    .arItem{
        margin-bottom: 40px !important;
    }
    .arItemContent{
        font-size: 14px !important;
    }
    .wp-pagenavi a, .wp-pagenavi span{
        font-size: 14px !important;
    }
    .wrap-pagi{
        margin-top: 20px !important;
    }
    #archive{
        padding-bottom: 60px !important;
    }
    .bannerPo h2{
        background-color: rgba(87, 87, 87, 0.5);
        padding: 10px;
        min-width: 80%;
    }
}
@media screen and (max-width:480px) {
    .hoNLeft h2 img{
        max-width: 135px;
        width: 100%;
    }
    .bannerPo{
        min-height: 150px;
    }
    .bannerPo h2 span.ttJp{
        font-size: 20px;
    }
    .bannerPo h2 span.ttEn{
        font-size: 14px;
    }
    .abItem iframe{
        height: 200px;
    }
    table.tbStyle00 tr td:first-child {
        width: 90px;
        padding-left: 8px;
    }
    .ttStyle00 {
        padding-bottom: 4px;
        font-size: 18px;
        padding-left: 15px;
    }
    .toItem ul li{
        margin-right: 20px;

    }
    .toItem ul li:nth-child(5n){
        margin-right: 20px;
    }
    .toItem ul li span{
        width: 100px;
        height: 100px;
        font-size: 14px;
    }
    /* .toItem ul li:nth-child(2n){
        margin-right: 0;
    } */
    .toItem table.toTbStyle00 tr td{
        float: left;
        width: 100%;
        padding: 10px;
    }
    .toItem table.toTbStyle00 tr td:last-child br{
        display: none;
    }
    .toItem table.toTbStyle00 tr td:last-child{
        padding-top: 0;
    }
    .toItem table.toTbStyle00 tr td:first-child{
        width: 100%;
    }
    .toItem table.toTbStyle00 tr:first-child td:last-child{
        padding-top: 10px;
    }
    .toICo02R::before{
        display: none;
    }
    .toICo02R{
        padding-left: 15px;
        padding-right: 15px;
        width: 100%;
        padding-bottom: 15px;
    }
    .toCo02L{
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    span.toTxt {
        font-size: 18px;
    }
    /* =============================================

    2024.11 変更

    ============================================= */
    #slide .item{
        min-height: 37vw;
    }
}