@charset "UTF-8";
/*--------------------------------------------------------------
Media Queries
--------------------------------------------------------------*/
.pc {
  display: block;
}
.sp, .sp-step-title .step-no {
  display: none;
}
@media screen and (max-width:980px) {
  .header.flex {
    line-height: 1rem;
  }
	.site-title span {font-size: 0.625rem;}
  .title span {
    font-size: 3rem;
  }
  .title {
    font-size: 1.125rem;
    line-height: 4rem;
  }
  .sub-title {
    font-size: 1.5rem;
  }
  .lede {
    padding: 8.33% 0;
  }
  .flex {
    line-height: 1.8rem;
  }
  .inner, .interview {
    padding: 0 6.25%;
  }
  .staff-detail .inner.article {
    padding: 0;
  }
  .pc, .pc.main-visual {
    display: none;
  }
  .sp {
    display: block;
  }
  /*メインビジュアル*/
  .sp .main-visual {
    display: block;
    height: 190px;
    background-size: contain;
  }
  .copy {
    margin: 0 auto;
    padding: 6.25% 0;
    width: 80%;
    text-align: center;
  }
  .copy h2 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .copy h2 span {
    font-size: 1rem;
  }
  .branding .logo {
    width: 104px;
  }
  .dear .message {
    line-height: 2.3rem;
    padding: 6.25%;
  }
  .dear .image {
    margin: 0 auto;
    width: 85%;
    width: 100%;
    display: block;
    height: 230px;
  }
  
  .header .sp-nav {
    display: flex;
  }
  .sp-nav {
    margin-left: auto;
  }
  .sp-entry {
    background: rgb(245, 170, 0);
    padding: 0 6.55%;
    color: rgb(255, 255, 255);
    white-space: nowrap;
    font-size: 0.65rem;
    display: flex;
    line-height: 3rem;
    align-items: center;
  }
  .branding.flex, .header.flex {
    display: flex;
    line-height: 1rem;
  }
  .branding {
    padding: 0.5rem;
  }
  .top-menu.flex {
    display: none;
  }
  .flex {
    display: block;
  }
  .sub-title, .business dd::after {
    margin: 1rem auto;
  }
  .column-2 .block, .column-3 .block, .recruit .flow dt, .recruit .flow dd, .person img, .work-style .column-2 .block, .staff .list, .footer-entry .block.newgrads, .footer-entry .block.careers, .footer-entry .careers .flex dl,.section-header .title.left {
    width: 100%;
    display: block;
  }
  
  .inner, .interview {
    padding: 0 6.25%;
  }
  .inner {
    margin: 0 auto;
    max-width: 1040px;
  }
  .inner {
    margin: 0 auto;
    max-width: 1040px;
  }
  ul, ol {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  *, ::before, ::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  *, ::before, ::after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
  }
  body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 100%;
    font-weight: 400;
  }
  body {
    color: rgb(17, 17, 17);
  }
  html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
  }
  .recruit .flow dd {
    border: none;
  }
  .entry .column-3 .block, .column-3.flex {
    padding: 8.33%;
  }
  .footer-entry .column-3 {
    margin: 1rem auto;
  }
  .footer-entry .column-3 .block {
    padding-top: 0;
  }
  .site-footer {
    font-size: 0.75rem
  }
  .job .list li a::after {
    position: static;
    display: block;
  }
  .job .list li a::after {
    background-size: contain;
    width: 100%;
    background-position: right;
  }
  .work-style .column-2 .block {
    margin: 0 auto;
    margin-bottom: 2rem;
  }
  .voice {
    margin: 6.25%
  }
  .voice .column-2 .block {
    width: 100%;
    margin: 2rem auto;
    padding: 6.55%;
	position: relative;
  }
  .work-style .column-2 .block.staff02, .work-style .column-2 .block.staff04 {
    top: 0;
  }
  /*コンセプト*/
  .concept .column-2 .block {
    height: auto;
    margin: 0;
  }
  .concept .column-2 .block.slider {
    height: 30vh;
  }
  .concept .column-2 .block.message .title.left, .section-header .title.left {
    text-align: center;
    margin-bottom: 2rem;
  }
  .concept .column-2 .block.message {
    margin-bottom: 0rem;
    text-align: center
  }
  .business dt span, .person .block, .person .title, .dear h3, .voice .profile.flex {
    text-align: center;
  }
  .concept .column-2 .block.message p {
    max-width: 15rem;
    margin: 0 auto;
  }
  .business-bg {
    margin: 0
  }
  /*事業紹介*/
  .business .column-2 .block, .private .block,.profile .block {
    width: 100%;
  }
  .scroll-image {
    overflow: auto; /*スクロールさせる*/
    white-space: nowrap; /*文字の折り返しを禁止*/
    width: 100%;
    height: auto;
    display: flex;
  }
  .scroll-image img {
    min-width: 680px;
  }
  /*モーダル*/
  .remodal {
    height: 95%;
    width: 95%;
  }
  .modal-navi .prev, .modal-navi .next {
    display: none;
  }
  .modal-section .block.img {
    padding: 2rem 0;
    width: auto;
    height: auto;
  }
  .modal-header h3,.job-remodal h5,.job-remodal p {
    width: 100%;
  }
  .sp.modal-navi .prev,.sp.modal-navi .next {width:100%;height: auto;display: block;position: relative;border-top: 1px solid rgb(212, 212, 212);}
	.recommend-link {margin-bottom: 6.25%;}
  /*アコーディオン*/
  .key-word dt, .welfare dt,.voice .column-2 .block .profile {
    padding-bottom: 5rem;
  }
  .key-word dt.active, .welfare dt.active,.voice .column-2 .block dt.active {
    padding-bottom: 1rem;
  }
  .key-word dd, .welfare dd{
    display: none;
    margin-bottom: 4rem;
  }
	.voice .column-2 .block dd p {display: none;}
  .key-word dl, .welfare dl,.voice .column-2 .block dl {
    position: relative;
    margin-bottom: 1rem;
  }
  .key-word dt::after, .welfare dt::after,.voice .column-2 .block dt::after {
    position: absolute;
    bottom: .5rem;
    display: block;
    content: "";
    background-image: url("../images/svg/tab-open.svg");
    background-position: center;
    background-size: 94px 24px;
    background-repeat: no-repeat;
    width: 90%;
    padding: 1.5rem;
    margin: 2rem auto 0 auto;
    height: 24px;
    border-top: 1px solid rgba(212, 212, 212);
    left: 0;
    right: 0;
  }
  .key-word dt::after {
    background-color: rgba(255, 255, 255, 1);
  }
  .welfare dt::after {
    background-color: rgb(237, 241, 249)
  }
  .key-word dt.active::after, .welfare dt.active::after,.voice .column-2 .block dt.active::after {
    background-image: url("../images/svg/tab-close.svg");
  }
  /*社員紹介*/
  .person {
    margin-top: 1rem;
  }
  .person .column-2, .key-word .section-header, .modal-section {
    display: flex;
    flex-wrap: wrap;
  }
  .person .column-2 img, .key-word .section-header .title, .modal-section .block.img {
    margin: 0 auto;
    order: 1;
  }
  .modal-section .block.img {
    padding: 0;
  }
  .person .column-2 img {
    margin-top: 1rem;
  }
  .person .column-2 .block, .key-word .section-header .slider, .modal-section .block {
    margin: 0 auto;
    order: 2;
  }
  .person .thumb {
    max-width: inherit;
  }
  .recruit .flow dt br {
    display: none;
  }
  .recruit .flow .inline-list {
    display: block;
  }
  .main-slider .slider-item img {
    width: 100%;
  }
  .step-no, .staff-detail .profile img {
    display: none;
  }
  .sp-step-title {
    display: flex;
    align-items: center;
  }
  .sp-step-title .step-no {
    display: block;
    font-size: 2rem;
    padding-right: 8.33%;
    padding-bottom: 8.33%;
  }
  .recruit .flow li {
    padding: 8.33%;
  }
  .recruit .flow li p {
    padding: 0 6.25%;
  }
  .section-header .title {
    font-size: 1.25rem;
  }
  .footer-entry .section-header .title.left {
    margin: 0 auto;
    padding: 3rem 0;
    border: 0;
    line-height: 1.8rem;
    text-align: center;
  }
  .modal-close {
    left: 0;
    right: 0;
  }
  .modal-section img {
    position: static;
  }
  .modal-close {
    margin: 0 auto;
  }
  .staff-detail .article {
    padding: 0 6.25%;
  }
  .schedules {
    font-size: 0.875rem;
  }
  .private .block.right {
    margin: 0;
  }
  .private .block.right img,.modal-section .block.img img {
    position: static;
    max-width: inherit;
    height: auto;
    width: 100%;
    transform: none;
    margin: 0 auto;
    padding: 6.25%;
  }
	.modal-section .block.img img {padding: 0;}
  .private .block.left {
    padding-right: 6.25%;
  }
  .page-header {
    height: auto;
    background-image: none !important;
  }
  .page-header .page-title {
    position: static;
    background-color: rgb(79, 116, 190);
  }
  .footer-entry .careers .flex dl {
    border: none;
  }
	.schedules dl {padding: .5rem;}
}
@media screen and (max-width:375px) {
.slider,.slider-item {
    height: 250px;
  }
}