@charset "utf-8";

/* -------------------------------------------------------------*/
/* SiteName : KOURINKENSETSU */
/* FileName : contents.css */
/* Add Day : 2020/03/17(Tue) */
/* Udt Day : 2020/03/17(Tue) */
/* Copyright : ZENEI-PRO */
/* == TOC ======================================================*/
/* 1 : */
/*--------------------------------------------------------------*/

/* ------------ 主要ブラウザのベンダープレフィックス */
/* -moz-     …… Firefox */
/* -webkit-  …… Chrome、Safari */
/* -o-       …… Opera */
/* -ms-      …… IE8～ */
/* ベンダープレフィックス指定無しも明記 */


.t-center{
    text-align: center;
}

@media screen and (max-width: 767px) {
    .visible-xs{
        display: block;
    }
    .hidden-xs{
        display: none;
    }
}
@media screen and (min-width: 768px) {
    .visible-xs{
        display: none;
    }
    .hidden-xs{
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .visible-xs-space{
        display: inline-block;
    }
    .hidden-xs-space{
        display: none;
    }
}
@media screen and (min-width: 768px) {
    .visible-xs-space{
        display: none;
    }
    .hidden-xs-space{
        display: inline-block;
    }
}





/*--------------------------------------------------------------*/
/* レスポンシブ　979px */
/*--------------------------------------------------------------*/

@media screen and (max-width: 979px) {
    
    main{
        padding: 3em 0;
    }
    main .inner aside{
        display: none ;
    }
    main .inner article{
        width: 100%;
        padding: 1em;
    }
    
    
    /*--footer map --*/
    .f_access__detail{
        display: block;
    }
    .f_access__art{
        width: 100%;
        margin-left: 0;
    }
}/*--979px--*/



/*--------------------------------------------------------------*/
/* ドロワー追加スタイル*/
/*--------------------------------------------------------------*/

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after{
    width: 100%;
    /*  height: 2px;*/
    height: 4px;
    -webkit-transition: all .3s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    transition: all .3s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    /*  background-color: #222;*/
    z-index: 100;
}

.drawer-hamburger {
    position: fixed;
    background: rgba(255,255,255,0.8);
    width: 3rem;
    padding: 18px 1.4rem 30px;
    z-index: 999; }

.drawer-hamburger:hover {
    background: #0075b3; }

.drawer-hamburger-icon,
.drawer-hamburger-icon::after,
.drawer-hamburger-icon::before {
    background-color: #000; }

.drawer-nav {
    background: #fff;
    z-index: 999; }

ul.drawer-menu {
    background: #0075b3; }
ul.drawer-menu li {
    display: block;
    padding: 0;
    color: #fff; 
    border: none;
}
ul.drawer-menu li a {
    display: block;
    background: #fff;
    padding: 10px 20px;
    font-size: 14px;
    color: #0075b3;
    font-weight: 400;
    letter-spacing: 0.01em;
    border-bottom: 1px dotted #777;
    letter-spacing: -0.075em;
    transition: none;
}
ul.drawer-menu li a:hover {
    background: #0075b3;
    color: #fff;
    opacity: 1;
    transition: none;
}

.nav-wrap {
    background: #0075b3; }

@media (min-width: 768px) {
    .navbar-nav {
        margin: 0 auto;
        display: table;
        table-layout: fixed;
        float: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }

    .navbar-nav li {
        font-size: 2rem;
        letter-spacing: 0.1rem; }
    .navbar-nav li a {
        color: #fff;
        font-weight: 400;
        padding: 20px 15px;
        transition: linear 0.3s all; }
    .navbar-nav li a:hover, .navbar-nav li a:visited {
        background: #606ca6; } }
.smp-logotype {
    background: #fff; 
}





/*------------------------------------------
contact
-------------------------------------------*/
.contact-form-wrap {
    padding: 0 0 80px;
}

@media screen and (max-width: 767px) {
    .contact-form-wrap {
        padding: 0 0 40px;
    }
}

.contact-form-head {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

.contact-form-head img {
    display: block;
    margin: 10px;
    width: calc(100% - 20px);
}

.p-privacy {
    margin-top: 20px;
    text-align: center;
    font-size: 1.4rem;
}

.p-privacy a {
    text-decoration: underline;
}

.p-privacy a:hover {
    text-decoration: none;
}

.Form {
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    max-width: 720px;
}

@media screen and (max-width: 480px) {
    .Form {
        margin-top: 40px;
    }
}

.Form-Item {
    border-top: 1px solid #ddd;
    padding-top: 24px;
    padding-bottom: 24px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .Form-Item {
        border-top: 1px solid #ddd;
        padding-top: 24px;
        padding-bottom: 24px;
        width: 100%;
        display: block;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}



.Form-Item:nth-child(7) {
    border-bottom: 1px solid #ddd;
}

.Form-Item-Label {
    width: 100%;
    max-width: 248px;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 16px;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .Form-Item-Label {
        width: 100%;
        letter-spacing: 0.05em;
        font-weight: bold;
        font-size: 16px;
        font-weight: 400;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 480px) {
    .Form-Item-Label {
        max-width: inherit;
        font-size: 15px;
    }
}

.Form-Item-Label.isMsg {
    margin-top: 8px;
    margin-bottom: auto;
}
@media screen and (max-width: 767px) {
    .Form-Item-Label.isMsg {
        margin-bottom: 10px;
    }
}



.Form-Item-Label-Required {
    position: relative;
    border-radius: 1px;
    margin-right: 6px;
    padding-top: 2px;
    padding-bottom: 3px;
    margin-top: -1px;
    margin-left: 2px;
    width: 48px;
    display: inline-block;
    text-align: center;
    background: #ff0000;
    color: #fff;
    font-size: 13px;
}

@media screen and (max-width: 480px) {
    .Form-Item-Label-Required {
        border-radius: 3px;
        padding-top: 3px;
        padding-bottom: 3px;
        width: 32px;
        font-size: 10px;
    }
}

.Form-Item-Input {
    border: 1px solid #ddd;
    border-radius: 2px;
    margin-left: 40px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #eaedf2;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
    .Form-Item-Input {
        width: 100%;
        max-width: auto;
        margin-left: 0;
    }
}

@media screen and (max-width: 480px) {
    .Form-Item-Input {
        font-size: 15px;
    }
}

.Form-Item-Textarea {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 40px;
    padding-left: 1em;
    padding-right: 1em;
    height: 216px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #eaedf2;
    font-size: 16px;
}

@media screen and (max-width: 767px) {
    .Form-Item-Textarea {
        width: 100%;
        max-width: auto;
        margin-left: 0;
    }
}

@media screen and (max-width: 480px) {
    .Form-Item-Textarea {
        font-size: 15px;
    }
}

.Form-Btn {
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%;
    max-width: 280px !important;
    display: block;
    letter-spacing: 0.05em;
    border: none;
    background: #0075b3;
    color: #fff;
    font-weight: bold;
    font-size: 1.8rem;
    font-weight: 400;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
}

.Form-Btn:hover {
    background: #f7750d;
}

@media screen and (max-width: 480px) {
    .Form-Btn {
        margin-top: 24px;
        padding-top: 8px;
        padding-bottom: 8px;
        width: 160px;
        font-size: 16px;
    }
}

.Form-Btn2 {
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%;
    max-width: 280px !important;
    display: block;
    letter-spacing: 0.05em;
    border: none;
    background: #555;
    color: #fff;
    font-weight: bold;
    font-size: 1.8rem;
    font-weight: 400;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
}

.Form-Btn2:hover {
    background: #000;
}

@media screen and (max-width: 480px) {
    .Form-Btn2 {
        margin-top: 24px;
        padding-top: 8px;
        padding-bottom: 8px;
        width: 160px;
        font-size: 16px;
    }
}

.txt-confirm {
    font-size: 1.6rem;
}

.txt-confirm-area {
    font-size: 1.6rem;
}

.error-msg {
    margin-top: 3px;
    font-size: 1.3rem;
    color: #ff0000;
}

@media screen and (max-width: 480px) {
    .error-msg {
        display: block;
        margin-top: 5px;
        font-size: 1.2rem;
        color: #ff0000;
    }
}

.p-contact-end {
    margin-top: 60px;
    margin-bottom: 40px;
    text-align: center;
    font-size: 1.6rem;
}

.contact-tel-wrap {
    padding: 10px;
}

.contact-tel {
    border: 4px solid #dcdcdc;
    max-width: 720px;
    margin: 0 auto;
    margin-bottom: 40px;
    text-align: center;
}

.contact-tel .contact-tel-inner {
    border: 1px solid #6388b5;
    background: rgba(255, 250, 250, 0.3);
    padding: 20px;
}

.contact-tel .tel-title {
    font-size: 1.6rem;
    font-weight: 600;
}

.contact-tel .tel-number {
    font-size: 4rem;
}

.contact-tel .tel-number span {
    font-size: 1.9rem;
    color: #154888;
}


input[type="text"]:focus, input[type="search"]:focus, input[type="password"]:focus, input[type="date"]:focus, textarea:focus, select:focus{
    border: 1px solid #6388b5;
    transition: .4s;
}



/*---------------------
汎用ボタン 
----------------------*/
.button-fade {
    display: inline-block;
    width: 100%;
    max-width: 280px;
    background-color: #0075b3;
    margin: 0 auto;
    margin-top: 20px;
    padding: 0.5em 1em;
    font-size: 1.8rem;
    transform: rotate(0.001deg);
    transition: all .5s ease;
    text-align: center;
    color: #fff !important;
    font-weight: 400;
    text-decoration: none;
}

.button-fade:hover {
    color: #fff;
    background: #0075b3;
    text-shadow: none;
}

.button-fade::before,
.button-fade::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

.button-fade,
.button-fade::before,
.button-fade::after {
    box-sizing: border-box;
    transition: all .3s;
}


.ch-recruit{
    font-size: 2rem;
}
.txt-recruit{
    margin-bottom: 20px;
}

/*--------------------------------------------------------------*/
/* テーブル求人 */
/*--------------------------------------------------------------*/
.table--col-rec{
    width: 100%;
    margin-bottom: 3em;
}
.table--col-rec:last-child{
    margin-bottom: 0;
}
.table--col-rec caption{
    margin-bottom: 1em;
    font-weight: bold;
}
.table--col-rec th{
    width: 30%;
    padding: 2em;
    text-align: left;
    border-top: 2px #0075b3 solid;
    border-bottom: 2px #0075b3 solid;
    background: #f8f8f9;
}
@media screen and (max-width: 767px){
    .table--col-rec th{
        width: 100%;
        display: block;
    }
}
.table--col-rec th span{
    font-size: 1.2rem;
    margin-left: 1em;
    padding: 0.1em 0.3em;
    color: #fff;
    background: #7e633f;
}
@media screen and (max-width: 767px){
    .table--col-rec th{
        width: 100%;
        display: block;
    }
}
.table--col-rec td{
    width: 60%;
    padding: 2em;
    text-align: left;
    border-top: 1px #ccc solid;
    border-bottom: 1px #ccc solid;
}
@media screen and (max-width: 767px){
    .table--col-rec td{
        width: 100%;
        display: block;
    }
}
.table--col-rec td p{
    margin-top: 0.5em;
}
.table--col-rec td em{
    padding-left: 0.25em;
    padding-right: 0.5em;
}


/*--------------------------------------------------------------*/
/* トップバナー求人 */
/*--------------------------------------------------------------*/
.top-bn-recruit{
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
}
.top-bn-recruit img{
    display: block;
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
}
.top-bn-recruit img:hover{
    opacity: 0.7;
}


/*--------------------------------------------------------------*/
/* 集合写真 */
/*--------------------------------------------------------------*/
.memberpics{
    width: 100%;
    max-width: 678px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 20px;
}
.memberpics img{
    display: block;
    width: 100%;
}


/*--------------------------------------------------------------*/
/* 4つの理由 */
/*--------------------------------------------------------------*/

.reason-wrap {
    position: relative;
    width: 100%;
    max-width: 1000px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 auto;
    margin-bottom: 40px;
    gap: 40px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .reason-wrap:last-child{
    margin-bottom: 0;
  }

  .reason-thumb{
    width: calc(40% - 20px);
  }
  .reason-thumb img{
    display: block;
    width: 100%;
    padding: 5px;
    background: #fff;
    border: 1px solid #dcdcdc;
  }
  .reason-txt{
    width: calc(60% - 20px);
  }
  .reason-txt h3.sh-head{
    font-size: 2.2rem;
  }

@media (max-width: 767px) {
    .reason-wrap{
        gap: 10px;
    }
    .reason-thumb{
        width: 100%;
      }
    .reason-txt{
        width: 100%;
      }
}
  .reason-txt .i-reason {
    display: block;
    width: 100%;
    max-width: 90px;
    margin-bottom: 10px;
  }
  @media (max-width: 767px) {
    .reason-txt .i-reason {
        display: block;
        width: 100%;
        max-width: 90px;
      }
  }
  @media (max-width: 480px) {
    .reason-txt .i-reason {
        display: block;
        width: 100%;
        max-width: 80px;
      }
  }
  .reason-txt .i-reason img{
    display: inline-block;
    width: 100%;
  }
  .reason-wrap h3{
    font-size: 1.6rem;
    font-weight: 600;
    color: #0075b3;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #0075b3;
  }
  @media (max-width: 767px) {
    .reason-wrap h3{
        font-size: 1.6rem;
        font-weight: bold !important;
        letter-spacing: -0.025em;
      }
  }
  .reason-wrap p span{
    text-decoration: underline;
    font-weight: 600;
  }