@charset "utf-8";
/*--- br --*/
/*---スマホ時-
@media screen and (max-width: 480px) {
    .pc-br{display:none;}
    .tb-br{display:none;}
    .sp-br{display:block;}
    }-*/
    /*---タブレット時
    @media screen and (min-width:481px) and (max-width: 991px) {
    .pc-br{display:none;}
    .tb-br{display:block;}
    .sp-br{display:none;}
    }--*/
    /*---PC時
    @media screen and (min-width:992px){
    .pc-br{display:block;}
    .tb-br{display:none;}
    .sp-br{display:none;}
    }--*/

/*--PC/TBサイズ（577px以上）--*/
@media only screen and (min-width: 577px) {
	.pc-tb_br::before {
		content: "\A";
		white-space: pre;
	}
}

/*-------------- width992未満 --------------*/
/* mobile menu hidden */
@media (min-width:992px) {
    .hamburger {
        display: none;
    }
}

@media screen and (max-width:991.9px) {
    /* 共通 */
    #header {
        position: fixed;
        height: 80px;
        z-index: 5;
        box-shadow: 0 2px 4px rgba(146, 144, 144, 0.5);
    }
    .header_inner {
        height: 80px;
    }
    .logo {
        padding-top: 14px;
        padding-bottom: 14px;
        padding-left: 1%;
    }
    .logo h1 {
        width: 33.468vw;
    }
    .logo p {
        display: none;
    }
    .logo02 {
        max-width: 100%;
        text-align: right;
        padding: 0 74px 0 0;
        overflow: hidden;
    }
    .logo02 img {
        height: 80px;
        object-fit: cover;
    }
    
    .head_nav {
        display: none;
    }

    .foot_info .corp_name {
        margin-bottom: 2rem;
    }
    .foot_nav ul {
        padding: 0 20px;
    }
    .foot_nav ul li {
        padding: 0 20px;
    }
    .foot_nav ul li a {
        padding: 1em;
        display: block;
    }
    .foot_nav ul li a:hover {
        background-color: #333;
    }

    /* index */
    .intro {
        padding: 0;
    }

    /* under pages */
    .ttl2 h2 {
        width: 100%;
        max-width: 720px;
    }

    /* recruit */
    .rec_inbox dl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .rec_inbox dl dt {
        width: 100%;
        margin-bottom: .5em;
    }
    .rec_inbox dl dd {
        width: 100%;
        padding-left: 2em;
    }

    /* contact form */
    .mailform dt {
        width: 100%;
        height: 40px;
        margin-right: 0;
        text-align: left;
        padding: 9px;
    }
    .mailform dd {
        width: 100%;
        margin-top: 10px;
    }
    input[type="text"], textarea {
        width: 100% !important;
    }

    /* sdgs */
    .sdgs17 {
        width: 100%;
    }    
}

/*-------------- width768未満 --------------*/
@media screen and (max-width:767.9px) {
    /* 共通 */
    .logo h1 {
        width: 43.229vw;
    }

    /* index */
    .swiper-wrapper .swiper-slide {
        width: 100%;
        max-height: 400px;
    }
    .news_inner dt {
        width: 100%;
        padding-bottom: 0;
    }
    .news_inner dd {
        width: 100%;
        padding-top: .5rem;
    }

    /* under pages */
    #u_cover img {
        max-height: 320px;
    }
    .ttl2 h2 {
        max-width: 540px;
    }
    .ttl5 {
        font-size: 3.255vw;
    }
    .to_form_btn {
        width: 100%;
    }
    .info_tel_no {
        font-size: 2.995vw;
    }

    /* contact form */
    .mailform {
        margin-bottom: 80px;
    }
    .chara03box {
        display: none;
    }
    input[type="text"], textarea {
        height: 64px;
        }
    
    /* sdgs */
    .sdgs17_txt {
        text-align: left;
    }

}

/*-------------- width576未満 --------------*/
@media screen and (max-width:575.9px) {
    .logo02 {
        display: none;
    }
    
    .info_box .corp_name {
        font-size: 9.896vw;
    }
    .info_box .corp_name span {
        font-size: 7.465vw;
    }
    .info_box .phone_no {
        font-size: 7.118vw;
    }

    /* under pages */
    #safety .inner {
        padding: 20px;
    }
    .policy_list .list_item {
        font-size: 3.646vw;
    }
    .ttl2 h2 {
        max-width: 95%;
    }
    .ttl3_ul {
        font-size: 6.076vw;
    }
    .ttl3_ul .fs28 {
        font-size: 4.861vw;
    }
}