.sp-title-wrap {
    display: none;
}

.drawer-hamburger-header {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 60px;
    background-color: #fff;
    opacity: 0.3;
    z-index: 5;
    display: none;
}

.drawer-hamburger-wrapper {
    position: fixed;
    top: -4px;
    right: -8px;
    z-index: 7;
    display: none;
}

@media screen and (max-width: 768px) {
    .drawer-hamburger-header {
        display: block;
    }

    .drawer-hamburger-wrapper {
        display: inline-block;
    }
}

.drawer-hamburger {
    position: relative;
    cursor: pointer;
    width: 50px;
    height: 50px;
    -webkit-transition: opacity 0.26s ease;
    transition: opacity 0.26s ease;
}

.drawer-hamburger:hover {
    opacity: 0.5;
    cursor: pointer;
}

@media screen and (max-width: 768px) {
  .drawer-hamburger:hover {
    opacity: 1;
  }
}

@media screen and (max-width: 768px) {
  .drawer-hamburger {
    margin-top: 3px;
  }
}

.drawer-hamburger span {
  display: inline-block;
  position: absolute;
  width: 35px;
  height: 2px;
  background-color: #2f4d93;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.drawer-hamburger span:nth-of-type(1) {
  top: 15px;
}

.drawer-hamburger span:nth-of-type(2) {
  top: 26px;
}

.drawer-hamburger span:nth-of-type(3) {
  top: 37px;
}

@media screen and (max-width: 768px) {
  .drawer-hamburger span {
    width: 28px;
    height: 2px;
  }
  .drawer-hamburger span:nth-of-type(1) {
    top: 15px;
  }
  .drawer-hamburger span:nth-of-type(2) {
    top: 24px;
  }
  .drawer-hamburger span:nth-of-type(3) {
    top: 34px;
  }
}

.drawer-hamburger.is-open .drawer-line-wrapper {
  -webkit-transform: rotateY(-360deg);
  transform: rotateY(-360deg);
}

.drawer-hamburger.is-open span {
    background-color: #fff;
}

.drawer-hamburger.is-open span:nth-of-type(1) {
  top: 20px;
  left: 0px;
  -webkit-transform: translateY(6px) rotate(-135deg);
  transform: translateY(6px) rotate(-135deg);
  width: 35px;
}

.drawer-hamburger.is-open span:nth-of-type(2) {
  opacity: 0;
}

.drawer-hamburger.is-open span:nth-of-type(3) {
  top: 32px;
  left: 0px;
  -webkit-transform: translateY(-6px) rotate(135deg);
  transform: translateY(-6px) rotate(135deg);
  width: 35px;
}

@media screen and (max-width: 768px) {
  .drawer-hamburger.is-open span:nth-of-type(1) {
    top: 18px;
    width: 28px;
  }
  .drawer-hamburger.is-open span:nth-of-type(2) {
    opacity: 0;
  }
  .drawer-hamburger.is-open span:nth-of-type(3) {
    top: 30px;
    width: 28px;
  }
}

.drawer-line-wrapper {
  width: 35px;
  height: 50px;
}

@media screen and (max-width: 768px) {

    p {
        font-size: .8rem;
    }

    /* TOP */
    #wrap {
        min-width: 280px;
    }

    header {
        min-width: 280px;
        border: none;
    }

    .width-full {
        min-width: 280px;
    }

    .width-full-img {
        min-width: 280px;
    }

    .area-wrap {
        min-width: 280px;
        width: 100%;
    }

    .area-header-contact {
        display: none;
    }

    .area-global-navi {
        margin: 0;
    }

    nav.sp-navi {
        width: 100%;
    }


    .sp-navi-items {
        display: flex;
        justify-content: flex-start;
        list-style: none;
        padding: 0;
        margin: 0;
        background: #f9f9f9;
    }

    .sp-navi-item {
        width: 100%;
        padding: 10px;
        text-align: center;
        border: 1px solid #cccccc;

    }

    .sp-navi-item a {
        text-decoration: none;
        color: #333333;
        display: block;
        font-weight: bold;
        font-size: 0.7em;
        padding: 0;
    }    

    .drawer-global-navi {
        position: fixed;
        top: 0;
        left: 800px;
        width: 100vw;
        height: 100vh;
        background-color: #fff;
        background-color: #2f4d93;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        z-index: 6;
    }

    .drawer-global-navi.is-open {
        left: 0;
    }
    
    .drawer-navi {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        height: auto;
        border: none;
        margin: 0 auto;
    }
    
    .drawer-navi li {
        width: 100%;
        float: none;
        border: none;
        margin: 0;
    }

    .drawer-navi li a {
        color: #fff;
    }    

    .drawer-navi li a span {
        color: #c2c2c2;
        font-weight: normal;
    } 
    
    .drawer-navi li a:hover {
        background-color: #2f4d93;
    }

    .area-header-sub-wrap {
        height: 28px;
        padding: 10px;
    }

    .header-logo-sub {
        position: static;
        width: 100%;
    }
    
    .logo-sub-left img {
        width: 155px;
    }

    .area-global-navi-sub {
        border-bottom: 1px solid #2f4d93;
    }

    .area-global-navi-sub .global-navi,
    .area-global-navi-sub .global-navi li {
        border: none;
    }

    .sp-title-wrap {
        display: block;
        width: 100%;
        text-align: center;
    }

    .sp-title-en {
        font-size: 0.7em;
        font-weight: bold;
        color: #000;
    }

    .sp-title-ja {
        font-size: 1.4em;
        color: #2f4d93;
        margin-top: 8px;
    }

    section {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .bnr-wrap img {
      width: 100%;
    }

    /* news */
    .news {
        width: 100%;
        float: none;
    }

    .area-news {
        width: 100%;
        height: 100%;
        border: 12px solid #2f4d93;;
        box-sizing: border-box;
        padding: 15px;
    }

    .area-news h2 {
        display: none;
    }
    
    .news dt, .news dd {
        text-align: left;
        line-height: 24px;
        font-size: 0.8em;
        margin: 0;
    }
    
    /* features */
    .sp-container {
        margin: auto;
        padding: 0 12px;
	width:90%;
        max-width: 500px;
    }

    .service-panel {
        background: #fff;
    }

    .service-panel-list {
        width: 100%;
        height: 100%;
    }

    .service-panel-list li {
        float: none;
        width: 100%;
        background-color: #2f4d93;
        margin-bottom: 18px;
    } 

    /* facility */
    .area-left {
        width: 100%;
        float: none;
        margin-bottom: 14px;
    }
    .area-right {
        width: 100%;
        float: none;
    }

    .panel-facility {
        display: none;
    }

    .technical-panel-list {
        max-width: 100%;
        width: 100%;
        float: none;
    }

    .technical-panel-list li {
        width: 100%;
        height: 160px;
        float: none;
        margin: 0;
        margin-bottom: 14px;
    }

    .technical-panel-list li a {
        width: 100%;
    }

    .technical-panel-list-weld,
    .technical-panel-list-cutting,
    .technical-panel-list-resin,
    .technical-panel-list-molding {
        background-size: cover;
    }
    
    .technical-panel-list li:nth-child(4){
        font-size: 0.7em;
    }
    table.facility-tbl {
        width: calc(100% - 12px);
        margin-left: 12px;   
    }

    /* recruit */
    .area-recruit {
        overflow: hidden;
    }

    .area-recruit .layout-medium {
        width: 100%;
    }

    .area-recruit .layout-medium {
        width: 100%;
    }

    .area-recruit-title img {
        width: 100%;
        max-width: 540px;
    }

    .sp-recruit-image {
        display: block;
        width: 100%;
        max-width: 340px;
        margin: 0 auto;
        margin-bottom: 20px;
    }

    .area-recruit-title {
        margin-top: 30px;
    }

    .area-recruit-title span {
        display: none;
    }

    .area-recruit p {
        font-size: 0.85em;
        margin: 0;
        margin-bottom: 30px;
    }

    .area-recruit p:nth-of-type(2) {
        text-align: center;
        margin-bottom: 40px;
    }

    .area-recruit p a {
        float: none;
        margin: 0 auto;
    }

    .area-recruit .mrgn-t-50 {
        display: none;
    }

    /* footer */
    .footer-logo {
        float: none;
        margin: 0 auto;
    }

    .footer-logo img {
        margin: 0 auto;
    }

    .logo-sub-left {
        float: none;
    }
   
    .footer-address {
        float: none;
        margin: 18px auto;
    }

    .footer-map {
        float: none;
        margin: 10px auto 30px;
    }

    .area-wrap-footericon .bnr-character {
        width: 100%;
    }

    .bnr-character {
        text-align: center;
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .bnr-character .bnr-character-3 {
        display: block;
        margin-bottom: 20px;
    }

    .footer-copyright {
        padding-bottom: 15px;
    }

    .footer-copyright-txt {
        width: 100%;
        font-size: 11px;
    }
    
    /* ABOUT */
    .page-title-main-inner {
      padding-left: 10px;
    }
    .breadcrumb {
        width: 100%;
        flex-wrap: wrap;
    }
    .section-title.title-greeting {
        font-size: 2em;
    }

    .page-title-main::after {
        width: auto;
    }
    
    #wing-greeting p {
        font-size: 0.8em;
    }

    .mission-01,
    .mission-02,
    .mission-03 {
        width: auto;
        float: none;
        margin-bottom: 20px;
    }

    .mission-01::after,
    .mission-02::after,
    .mission-03::before {
        display: none;
    }

    .mission-box-title {
        font-size: .8em;
    }

    .area-mission-title-sub {
        font-size: 1.6em;
    }

    .area-mission-title-sub + p {
        font-size: .8em;
    }

    .area-mission-title {
        padding: 30px 0 30px 0;
    }
    .area-mission-message {
        top: 0;
        width: 100%;
    }

    .area-mission-message p {
        top: 44px;
        width: 100%;
        font-size: .8em;
    }

    .point-box-flex {
        display: block;
    }
    .point-box-detail {
        width: auto;
        margin-left: 20px;
        margin-right: 20px;
    }        

    .company-list {
        margin-left: 20px;
        margin-right: 20px;
    }
    .company-list dt {
        float: none;
        font-size: .8em;
        text-align: left;
    }

    .company-list dd {
        font-size: .8em;
        padding-left: 20px;
    }

    .history-list {
        margin-left: 20px;
        margin-right: 20px;
    }
    .history-list dt {
        float: none;
        font-size: .8em;
        text-align: left;
    }

    .history-list dd {
        width: auto;
        font-size: .8em;
        padding-left: 20px;
        padding-right: 20px;
    }

    .section-title {
        font-size: 2em;
        margin: 50px 0 20px 0;
    }

    .section-title-sub {
        font-size: 2em;
    }    

    .ms-box {
        width: auto;
    }
    .ms-box p {
        font-size: .8em;
        text-align: center;
        padding: 0 20px;
    } 
    
    .company-certify-wrap {
	overflow:hidden;
        display: block;
    }
    
    .certify-item {
        width: 50%;
        margin: 0 auto;
    }    

    .certify-item h3 {
        font-size: .8em;
    }


    .company-patent-wrap {
        margin: 0 auto 80px auto;
    }
    .tbl-patent {
        display: flex;
        width: 100%;
        margin: 0 auto;
        margin-bottom: 40px;
    }
    .tbl-patent-head {
        display: block;
        width: 40%;
    }
    .tbl-patent-body {
        display: block;
        width: 60%;
    }
    .tbl-patent-head tr, .tbl-patent-body tr {
        display: block;
        width: 100%;
        padding: 0;
    }
    .tbl-patent th {
        display: block;
        width: 100%;
        min-height: 35px;
        font-size: 12px;
        padding: 12px 0 12px 0;
    }
    .tbl-patent td {
        display: block;
        width: 100%;
        min-height: 35px;
        font-size: 12px;
        padding: 12px 0  12px 0;
    }

    /* WORK */
    .work-box {
        margin: 0;
    }

    .work-box-item {
        width: 100%;
        margin-bottom: 30px;
    }

    .work-box-item-title {
        text-align: center;
    }

    .work-box-item p {
        font-size: .8em;
        margin: 0 0 20px 0;
    }    

    p.work-box-item-sub {
        font-size: 1.4em;
        text-align: center;
        margin-bottom: 20px;
    }
	
	p.staff-box-item-sub {
		font-size: 1.3em;
		margin: 0 0.5em 20px;
	}

    .area-material {
        padding: 50px 0 50px 0;
    }

    .section-title-repletion {
        font-size: .8em;
    }
    
    .section-title-shadow {
        font-size: 1.2em;
    }
    
    .half-box-item {
        width: 100%;
        margin-bottom: 20px;
    }

    .half-box-item-title {
        font-size: 1em;
        text-align: center;
    }    

    .half-box-item p {
        font-size: .8em;
        margin-left: auto;
        margin-right: auto;
    }

    .half-box-item-img {
        width: 80%;
        float: none;
        margin: 0 auto 20px !important;
    } 
    
    .half-box-item-img img {
        width: 100%;
    }
    
    /* tech/cutting */
    .tech-inner-cutting {
        margin-top: 0;
    }
    .tech-intro-cutting {
        height: 100%;
    }
    .tech-inner {
        background: #fff;
        margin: 0 auto;
        margin-top: -37px;
        box-shadow: 0px 0px 15px -5px #777777;
    }
    .tech-intro-title,
    .tech-inner p {
        color: #000;
    }
    .tech-intro-img img {
        width: 100%;
    }
    .tech-detail-title {
        font-size: 160%;
        text-align: center;
    }    
    .tech-img-list {
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .tech-img-list li {
        float: none;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .tech-img-list li img {
        width: 100%;
        max-width: 374px;
        margin: 0 auto;
    }
    .tech-point li {
        float: none;
        margin: 0 auto 20px auto;
    }
    .tech-point li + li {
        margin: 0 auto 20px auto;
    }
    .tech-category {
        height: auto;
    }
    ul.tech-category li {
        float: none;
        margin: 0 auto 20px auto !important;
    }    

    /* tech/bend_adhesion */
    .tech-intro {
        height: 100%;
    }
    .tech-process-data {
        float: none;
        margin: 0 auto;
    }
    .tech-inner-left {
        float: none;
    }

    /* tech/model */
    .tech-inner-model {
        top: 0;
    }
    .tech-intro-title-left {
        margin-top: 0;
        width: 100%;
        float: none;
    }
    figure.tech-detail-img,
    figure.tech-detail-wide {
        float: none;
        width: 100%;
        height: auto;
        margin: 0 auto 20px auto !important;
    }
    figure.tech-detail-img img,
    figure.tech-detail-wide img {
        width: 100%;
    }
    .tech-list li {
        width: 100%;
        float: none;
        margin: 0 auto 20px auto !important;
    }
    dl.tech-list-item dt img {
        width: 100%;
        max-width: 374px;
    }
    h2.tech-list-title::before {
        width: 100%;
    }    

    /* tech/resin */
    ul.tech-appeal-list li {
        float: none;
        width: 100%;
        max-width: 320px;
        margin: 0 auto 50px auto !important;
    }
    ul.tech-appeal-list li + li {
        margin: 0 auto 50px auto !important;
    }

    /* material/index */
    .material-tbl {
        display: block;
        overflow-x: scroll;
        white-space: nowrap;
    }
    .area-wrap-material {
        width: calc(100% - 12px);
        margin-left: 12px;
    }

    /* material/list */
    h2.material-list-title {
        font-size: 90%;
    }
    ul.material-list li span {
        display: block;
        font-size: 80%;
    }
    ul.material-list li a {
        font-size: 80%;
    }

    /* facility/index */
    .page-intro-box {
        width: 100%;
    }
    .page-intro-box-txt {
        float: none;
        width: 100%;
    }  
    .page-intro-box-img {
        width: 100%;
        float: none;
        margin: 0;
    }
    .page-intro-box-img img {
        width: 100%;
        margin: 0;
    }
    ul.facility-item-navi {
        display: block;
        margin-bottom: 35px;
    }
    ul.facility-item-navi li {
        width: 100%;
        margin-bottom: 8px;
    }
    table.facility-tbl {
        display: block;
        overflow-x: scroll;
        white-space: nowrap;
    }
    table th, table td {
        padding: .625em .625em;
    }

    /* recruit/index */
    .pr-movie-wrap {
        width: 100%;
        height: 195px;
    }
    ul.recruit-app-btn li {
        width: 66%;
        max-width: 300px;
    }
    ul.recruit-app-btn li:nth-child(1) a {
        font-size: 12.5px;
    }
    ul.page-navi-recruit li {
        width: 100%;
    }
    ul.page-navi a {
        font-size: 13px;
    }
    .recruit-box-txt {
        padding-top: 10%;
    }
    .recruit-box-txt blockquote p {
        font-size: 1rem;
        width: 87%;
    }
    .recruit-box-txt blockquote cite {
        font-size: .8rem;
    }
    .recruit-message {
        width: 100%;
    }
    .recruit-message-item {
        width: 100%;
        float: none;
    } 
    .recruit-message-item dt {
        font-size: 1.2em;
    }
    .recruit-message-movie {
        width: 100%;
        height: 195px;
    }
    .area-company-movie h2.area-title {
        font-size: 1.2em;
    }
    .area-recruit-donation h2 {
        font-size: 1.2em;
    }
    .recruit-message-donation-txt {
        width: 100%;
    }
    .recruit-message-donation-txt p {
        font-size: .8rem;
    }
    .recruit-message-donation-img {
        width: 100%;
        float: none;
    }
    .recruit-message-donation-img img {
        width: 69%;
        margin: 0 auto;
    }
    .recruit-system-txt {
        width: 100%;
        margin-bottom: 40px;
    }
    .btn-recruit-system::before {
        right: 50%;
        top: 52px;
    }
    .recruit-system-img {
        float: none;
        width: 80%;
        height: auto;
        margin: 0 auto;
        overflow: unset;
    }
    .recruit-system-img img {
        width: 100%;
    }
    .recruit-family-wrap {
        flex-direction: column-reverse;
    }
    .recruit-family-img,
    .recruit-family-txt {
        width: 80%;
    }
    .recruit-family-txt p {
        font-size: .8rem;
    }
    .recruit-message-bnr .sp-container {
        max-width: 360px;
    }
    .recruit-message-bnr {
        width: 100%;
        height: 384px;
        margin-bottom: 50px;
        /* overflow: unset; */
    }
    .recruit-message-bnr img {
        width: 100%;
    }
    .recruit-message-bnr-txt {
        top: 0px;
        left: 0;
        width: 100%;
    }
    .recruit-message-bnr-txt::before {
        width: 100%;
        height: 175px;
        -webkit-transform: unset;
        -moz-transform:  unset;
        -o-transform:  unset;
        -ms-transform:  unset;
    }
    span.recruit-message-bnr-en {
        font-size: .8em;
        left: 50%;
        transform: translateX(-50%);
        top: -151px;
    }
    span.recruit-message-bnr-jp {
        font-size: 1.3rem;
        top: -128px;
        left: 50%;
        transform: translateX(-50%);
    }
    span.recruit-message-bnr-more {
        font-size: .8em;
        top: -95px;
        left: 50%;
        transform: translateX(-50%);
        padding: .5em 2em;
    }
    .btn-recruit-form {
        width: 65%;
        max-width: 300px;
    }
    .btn-recruit-form::before {
        left: 14px;
    }
    .btn-recruit-form::after {
        right: 14px;
    }
    .btn-recruit-form:hover::before {
       left: 14px;
     }
    .btn-recruit-form:hover::after {
        right: 14px;
    }

    /* quality/index */
    ul.page-navi.page-navi-quality {
        flex-wrap: nowrap;
    }
    ul.page-navi.page-navi-quality li {
        width: 50%;
    }
    .section-title-basic {
        font-size: 1.3em;
    }
    .quality-text  {
        margin-left: 0;
        margin-right: 0;
    }
    .quality-box-wide-title-top {
        font-size: 1.3em;
    }
    .quality-box-wide-head img {
        width: 100%;
    }
    .quality-box-wide-title-top {
        top: -100px;
        width: 80%;
    }
    .quality-box-wide-head p {
        font-size: .8rem;
    }
    .quality-box-txt {
        width: 100%;
        float: none;
        margin: 0;
    }    
    .quality-box-title {
        font-size: 1.3em;
    }
    .quality-box-txt p {
        font-size: .8rem;
    }
    .quality-box-img {
        width: 100%;
        float: none;
    }
    .quality-box-img img {
        width: 100%;
        float: none;
        margin-bottom: 20px;
    }
    .quality-box-img img:last-child {
        margin-left: 0;
    }
    .quality-box-wide-txt {
        margin: 0;
        margin-bottom: 30px;
    }
    .quality-box-wide-img {
        margin-left: 0;
        margin-right: 0;
    }
    .quality-box-wide-img img {
        float: none;
        width: 100%;
        margin-bottom: 20px;
    }
    .quality-box-wide-img img + img {
        margin: 0;
    }
    
    /* quality/training */
    h2.page-title-cat {
        font-size: 1.3em;
    }
    .training-main-wrap {
        width: 100%;
    }
    .training-main-wrap img {
        width: 100%;
    }
    ol.training-list {
        width: 100%;
    }
    ol.training-list li {
        width: 100%;
    }
    ol.training-list li:first-child {
        margin-bottom: 60px;;
    }
    dd.training-img, dd.training-img img {
        width: 100%;
    } 
    dl.training-detail dt {
        font-size: 100%;
    } 
    
    /* recruit/requirements */
    .requirements-title {
        font-size: .8em;
        margin-left: 20px;
        margin-right: 20px;
    }
    .requirements-list dt {
        font-size: .8em;
        float: none;
        text-align: left;
    }
    .requirements-list dd {
        font-size: .8em;
        padding-left: 20px;
    }
    .requirements-list {
        margin-left: 20px;
        margin-right: 20px;
    }
    ul.recruit-app-btn.requirements-btn li:nth-child(1) a { 
        font-size: 12px;
    }

    /* recruit/number */
    .number-container {
        max-width: 320px;
    }
    .column-01,
    .column-01-01,
    .column-01-02,
    .column-01-03, 
    .column-02-01, 
    .column-02-02,
    .column-02-02 img:nth-child(1),
    .column-02-02 img:nth-child(2) {
        width: 100%;
    }
    .column-01-03 .tate  {

        background-color: #2F4D93;
        margin-bottom: 15px;
    }
    .column-01-03 .tate img {
        width: 60%;
        margin: 0 auto;
    }
    .column-02-01 {
        margin-right: 0;
    }
    .column-02-02 {
        margin-top: 0;
    }

    /* recruit/message */
    section.messsage-list-item {
        width: 100%;
        padding: 0;
    }    
    section.messsage-list-item img {
        width: 100%;
    }
    h2.message-list-catch {
        font-size: 90%;
    }
    p.message-list-staff-name {
        font-size: 100%;
    }
    .message-list-staff-join {
        font-size: 80%;
    }
    section.messsage-list-item .message-pror-list-wrap {
        font-size: 70%;
    }

    /* recruit/message/ */
    .message-profile > img {
        width: 100%;
    }
    .message-catch {
        font-size: 100%;
    }
    p.message-staff-name {
        font-size: 100%;
    }
    dl.message-prof-list {
        width: 100%;
    }
    .message-pror-list-wrap {
        font-size: 10px;
    }
    dl.message-question {
        margin: 0 15px 0 15px;
    }
    dl.message-question dt span {
        display: none;
    }
    dl.message-question dt {
        position: relative;
        min-height: 36px;
        font-size: 100%;
        padding-left: 40px;
    }
    dl.message-question dt::before {
        position: absolute;
        top: 0;
        left: -2px;
        content: 'Q.';
        color: #ffffff;
        background: #2f4d93;
        font-size: 140%;
        font-family: 'Roboto', Helvetica, Arial, Verdana, Meiryo, "Hiragino Kaku Gothic Pro", "Meiryo UI", "MS PGothic", sans-serif;
        font-weight: normal;
        padding: 0.2em;
    }
    dl.message-question dd {
        margin: 0 0 2em 0;
    }
    dl.message-for-student dt {
        font-size: 100%;
    }
    .message-question-text {
        display: inline-block;
    }
    h2.message-navi-title span {
        padding-left: .1em;
    }
    h2.message-navi-title span a {
        line-height: 1.6;
    }
    ul.message-navi {
        width: 100%;
    }
    ul.message-navi li {
        width: 100%;
    }
    dl.message-question dd .float-right {
        float: none;
        width: 100%;
    }
    dl.message-question dd .float-left {
        float: none;
        width: 100%;
    }
    .message-offshot-wrap {
        display: block;
        width: auto;
    }
    dl.message-offshot {
        width: 100%;
    }
    .message-offshot-img {
        width: 100%;
    }
    dl.message-offshot dt {
        font-size: 110%;
        margin: 20px 0 20px 0;
    }

    /* recruit/event */
    p.event-top-msg {
        font-size: 100%;
    }
    .event-item-img {
        width: 100%;
    }
    .event-item-wrap-sp-reverse {
        flex-direction: column-reverse;
    }

    /* recruit/child-rearing */
    p.child-rearing-top-msg {
        font-size: 120%;
    }
    .child-rearing-tbl {
        margin-top: 32px;
        margin-bottom: 60px;
    }
    .child-rearing-tbl th, .child-rearing-tbl td {
        font-size: 12px;
        padding: 10px 7px;
    }
    .child-rearing-tbl th:nth-child(1) {
        width: 0;
    }
    .child-rearing-tbl th:nth-child(2) {
        min-width: 80px;
    }
    .child-rearing-tbl th:nth-child(3) {
        min-width: 50px;
    }

    /* contact  */
    .title-contact-form {
        font-size: 1.1em;
    }
    dl.contact-tel {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }
    .contact-tel dt {
        float: none;
        width: 24%;
        font-size: 13px;
    }
    .contact-tel dt:nth-of-type(1) {
        border-bottom: 1px solid;
    }
    .contact-tel dd {
        float: none;
        width: 52%;
        font-size: 13px;
    }
    .contact-tel dt, .contact-tel dd {
        padding: 20px 6%;
    }

    .contact-form-conatainer {
        max-width: 600px;   
    }
    /* ol.contact-form-list li {
        padding: 20px 20px 0px 14%;
    } */
    ol.contact-form-list label {
        float: none;
        font-size: 14px;
    }
    ol.contact-form-list li em {
        font-size: 0.6em;
    }
    .form-input-wrap {
        width: 100%;
        float: none;
        font-size: 14px;
    }
    .contact-form-list input[type="text"] {
        width: 100%
    }
    .contact-form-list .form-input-wrap .your-email {
        width: 85%
    }
    .contact-form-list .your-email + span {
        font-size: 12px;
    }
	
    /* recruit  */
    .title-recruit-form {
        font-size: 1.1em;
    }
    dl.recruit-tel {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }
    .recruit-tel dt {
        float: none;
        width: 24%;
        font-size: 13px;
    }
    .recruit-tel dt:nth-of-type(1) {
        border-bottom: 1px solid;
    }
    .recruit-tel dd {
        float: none;
        width: 52%;
        font-size: 13px;
    }
    .recruit-tel dt, .recruit-tel dd {
        padding: 20px 6%;
    }

    .recruit-form-conatainer {
        max-width: 600px;   
    }
    ol.recruit-form-list label {
        float: none;
        font-size: 14px;
    }
    ol.recruit-form-list li em {
        font-size: 0.6em;
    }
    .form-input-wrap {
        width: 100%;
        float: none;
        font-size: 14px;
    }
    .recruit-form-list input[type="text"] {
        width: 100%
    }
    .recruit-form-list .form-input-wrap .your-email {
        width: 85%
    }
    .recruit-form-list .your-email + span {
        font-size: 12px;
    }
	dl.recruit-form-jobcategory dt {
		width:100%;
		line-height:28px;
	}
	
    textarea.your-text {
        width: 100%;
    }
    .btn-area input[type="submit"] {
        width: 250px;
    }
    
    /* staff/index */
    h3.staff-item-title {
        font-size: 16px;
    }
    p.staff-btn-more {
        width: 50%;
        font-size: 70%;
    }
    .staff-list-all-text {
        margin-top: 0;
        margin-left: 0;
        margin-right: 0;
    }
    .staff-list {
        margin-bottom: 50px;
    }

    /* staff/staffXX */
    h3.staff-interview-title {
        font-size: 1.3rem;
    }
    h3.staff-interview-title ~ p {
        font-size: 1rem;
    }
    dl.interview-question {
        margin: 0 15px 0 15px;
    }
    dl.interview-question dt {
        font-size: 95%;
        line-height: 1.4;
    }
    dl.interview-question dd {
        padding: 0.25em 0.8em;
        margin: 1em 0 3em 0;
    }
    dl.interview-question dt span {
        display: block;
        font-size: 180%;
        padding: 0;
        margin: 0 .5em 0 0;
    }
    dl.interview-question dd p strong {
        font-size: 1em;
    }
    #interview-wrap {
        margin: 0 0 50px;
    }
    h2.message-navi-title {
        margin: 0 0 1.5em 0;
    }
    h2.message-navi-title span {
        padding-left: 1em;
    }
    h2.message-navi-title span a {
        font-size: 12px;
        white-space: nowrap;
    }
    h2.message-navi-title span.message-btn {
        font-size: 12px;
        margin: 0 0 0 6px;
    }
}

.sp-hidden {
    display: inline-block !important;
}

@media screen and (max-width: 768px) {
    .sp-hidden {
        display: none !important;
    }
}

.pc-hidden {
    display: none !important;
}
@media screen and (max-width: 768px) {
    .pc-hidden {
        display: inline-block !important;
    }
}

.sp-hidden-block {
    display: block !important;
}
@media screen and (max-width: 768px) {
    .sp-hidden-block {
        display: none !important;
    }
}

.pc-hidden-block {
    display: none !important;
}
@media screen and (max-width: 768px) {
    .pc-hidden-block {
        display: block !important;
    }
}

.sp-hidden-flex {
    display: flex !important;
}
@media screen and (max-width: 768px) {
    .sp-hidden-flex {
        display: none !important;
    }
}

.intro-flex {
    display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.intro-flex .box {
    width:50%;
}
.intro-flex .box h2{
	margin:0;
	padding:0 0 0 1em;
    font-size: 130%;
    line-height: 160%;
    font-weight: bold;
    color: #2f4d93;
}
@media screen and (max-width: 768px) {
	.intro-flex .box{
		width:100%;
	}
	.intro-flex .box h2{
		padding:0;
    	font-size: 110%;
		margin-bottom:1em;
	}
}

.intro-flex .box img{
    width:100%;
	height:auto;
}


.intro-number {
	margin:0 0 30px;
    display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.intro-number .box {
    width:75%;
}
.intro-number .box2 {
    width:25%;
}

.intro-number .box2 a.btn {
	width:12em;
    padding: 1em;
	margin:0 auto;
    display: block;
    text-align: center;
    text-decoration: none;
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

.intro-number .box2 a.btn:hover {
    background: #ffffff;
    color: #2e4d93;
    border: 1px solid #2e4d93;
}

@media screen and (max-width: 768px) {
	.intro-number .box {
		width:100%;
	}
	.intro-number .box2 {
		width:100%;
		text-align: center;
	}
}