@charset "utf-8";


/*
Name: responsive CSS
Description: 株式会社物産フードサービス
Version: 1.0
*/
@media screen and (max-width: 1730px) {
    section.top_message > .inner {
        width: 95%;
    }
}
@media screen and (max-width: 1640px) {
    .main_image {
        background-size: cover;
    }
    .top_message .inner .smbc {
        width: 60%;
    }
    .top_message .inner > div:last-child {
        width: 40%;
    }
}
@media screen and (max-width: 1560px) {
    .top_message .inner .smbc {
        background-position: 80% top;
        width: 65%;
    }
    .top_message .inner > div:last-child {
        width: 35%;
    }
    .top h3 {
        font-size: 8.0rem;
    }
    .top_message .inner > div:last-child p {
        width: 90%;
        margin: 5em auto;
        font-size: 2.0rem;
    }
    .top_message .inner > div:last-child::after {
        height: 95%;
        width: 115%;
    }
}
@media screen and (max-width: 1450px) {
    section > .inner {
        width: 90%;
    }
    .top_message .inner .smbc {
        background-position: 50% top;
    }
    .top_message .inner .smbc .smbc_inner {
        /*width: 70%;
        width: 80%;*/
    }
    .top_message .inner > div:last-child p {
        width: 100%;

    }
    section.top_business > .inner {
        width: 90%;
    }
    /*.main_image {
        background-size: cover;
    }*/
    .top_business .inner div {
        width: 48%;
        height: 350px;
    }
    .top_business .inner div a {
        padding: 3em 4em;
    }
    .list_voice li {
        width: 30%;
    }
    .topics .topics_list .inner {
        width: 90%;
    }
    
}

@media screen and (max-width: 1420px) {
    .top_message .inner .smbc .smbc_inner {
        width: 60%;
    }
    .top_message .inner .smbc h4 {
        font-size: 4.0rem;
    }
}

@media screen and (max-width: 1300px) {
    header h1 {
        font-size: 2.4rem;
    }
}
    
@media screen and (max-width: 1260px) {
    section.top_message > .inner {
        -ms-flex-flow: column;
        -webkit-flex-flow: column;
        flex-flow: column;
    }
    .top_message .inner .smbc {
        width: 100%;
        background-position: 50% 70%;
    }
    .top_message .inner > div:last-child {
        margin-left: 0;
        padding-right: 0;
        width: 100%;
        margin-top: 100px;
        padding: 2em;
        /*padding-top: 0;*/
        background: #fff;
        position: relative;
    }
    .top_message .inner > div:last-child::after {
        content: none;
    }
    .top_message .title_box {
        position: absolute;
        top: -2.5em;
        left: 50%;
        transform: translateX(-50%) ;
    }
    .top_message .inner > div:last-child p {
        width: 100%;
    }
    .top_message .inner p {
        font-size: 2.0rem;
    }
    .top_message .inner > div:last-child::after {
        top: 2.5em;
        height: 100%;
    }
    .voice_ctg {
        width: 140px;
        font-size: 1.8rem;
    }
    .voice_ctg::before {
        width: 140px;
    }
    .voice_ctg::after {
        /*width: 140px;*/
    }
}
@media screen and (max-width: 1200px) {
    .main_image .catch {
        left: 45%;
    }
    .main_image .catch h2 {
        font-size: 8.0rem;
    }
    .main_image .catch img {
        max-width: 90%;
    }
    .main_image .catch span {
        font-size: 1.8rem;
    }
    .main_image .catch .break {
        display: block;
    }
    /*.top_message {
        padding: 80px 0;
    }
    .top_message .inner .smbc .smbc_inner {
        width: 70%;
    }*/
    /*.top_message .inner .smbc {
        width: 60%;
        height: 600px;
    }    
    .top_message .inner .smbc h3 {
        font-size: 6.0rem;
    }
    .top_message .inner .smbc h4 {
        font-size: 3.8rem;
        margin-top: .5em;
    }
    .top_message .inner > div:last-child {
        width: 40%;
        margin-left: 1em;
    }  */  
    .top h3 {
        font-size: 8.0rem;
    }
    .top .sub_title {
        font-size: 1.6rem;
    }
    .voice_catch p {
        font-size: 3.6rem;
    }
    .voice_ctg {
        padding: .2em;
    }
    .list_voice li p {
        font-size: 2.0rem;
        font-size: 1.9rem;
    }
    .list_voice li p::before, .list_voice li p::after {
        background-size: 80%;
        background-repeat: no-repeat;
    }
    .topics_list .inner {
        width: 90%;
    }
    .topics_list .inner ul:first-of-type li {
        padding-left: 0;
        text-indent: 0;
    }
    .topics_list ul li time {
        display: block;
        margin: 0;
        margin-bottom: .3em;
    }
    footer .footer_inner {
        width: 90%;
    }
    table th {
        width: 20%;
    }
    table td {
        width: 79%;
    }
    .list_bnr li {
        width: 31%;
        margin-right: 3%;
    }
    .list_bnr li:nth-child(3) {
        margin-right: 0;
    }
    .list_bnr li:nth-child(4n) {
        margin-right: 3%;
        margin-top: 2em;
    }
    .list_bnr li:last-child {
        margin-top: 2em;
    }
    .voice_year {
        font-weight: 500;
        font-size: 1.6rem;
    }
    
    article.no_margin {
        margin: 80px 0;
    }
    .no_margin section {
         padding-bottom: 105px; 
    }
    header nav ul li {
        font-size: 1.4rem;
        /*width: 30%;*/
        margin-right: 3%;
    }
    header nav ul {
        -ms-flex-pack: end;
        -webkit-box-pack: end;
        justify-content: flex-end;
    }
}

@media screen and (max-width: 1180px) {
    header h1 {
        font-size: 2.0rem;
    }
    header nav {
        /*-ms-flex-align: flex-start;
        -webkit-box-align: flex-start;
        align-items: flex-start;*/
        -ms-flex-align: center;
        -webkit-box-align: center;
        align-items: center;
    }
    header nav ul {
        
        /*-ms-flex-align: flex-start;
        -webkit-box-align: flex-start;
        align-items: flex-start;*/
    }
    
    header nav ul li:last-child {
        /*margin-right: 0;*/
    }
    .rl_right h3 .main_title {
        width: 100%;
    }
}

/* タブレット横 */
@media screen and (max-width: 1024px) {
    section {
        padding: 80px 0;
    }
    
    header h1 {
        font-size: 1.8rem;
    }
    
    .main_image .catch {
        left: 30%;
    }
    .main_image .catch img {
        /*max-width: 75%;*/
    }
    .main_image .catch h2 {
        font-size: 6.5rem;
    }
    .main_image .catch span {
        font-size: 1.6rem;
        line-height: 0;
    }
    .top h3 {
        font-size: 7.0rem;
    }
    @-moz-document url-prefix() {
        .top h3 {
            width: unset;
        }
    }
    .top_business .inner {
        -ms-flex-flow: column;
        -webkit-flex-flow: column;
        flex-flow: column;
    }
    .top_business .inner div {
        width: 70%;
        height: inherit;
        margin-bottom: 4em;
    }
    .top_business .inner div:last-child {
        margin-bottom: 0;
    }
    section.top_voice > .inner {
        width: 75%;
    }
    .list_voice {
        flex-wrap: wrap;    
    }
    .list_voice li {
        /*width: 43%;*/
        width: 48%;
        margin-right: 4%;
        margin-bottom: 3em;
    }
    .list_voice li:nth-child(2) {
        margin-top: 0;
    }
    .list_voice li:nth-child(2n) {
        margin-right: 0;
    }
    .list_voice li:nth-child(3n) {
        margin-right: 4%;
    }
    .list_voice li:nth-child(6) {
        margin-right: 0;
    }
    .list_voice li:last-child {
        margin-top: 0;
        margin-bottom: 0;
    }
    .list_voice li p {
        /*font-size: 2.0rem;*/
        margin: 1.5em 0;
    }
    .list_voice li p::before, .list_voice li p::after {
        background-size: 50%;
        top: -1em;
    }
    .list_voice li p::after {
        top: inherit;
        bottom: -1em;
    }
    .breadcrumbs + article {
        margin: 100px 0;
        margin-bottom: 0;
    }
    h3 {
        font-size: 2.2rem;
    }
    @-moz-document url-prefix() {
        h3 {
            width: 100%;
        }
    }
    h3 .sub_title {
        font-size: 9.0rem;
        right: 50%;
        transform: translateX(50%);
    }
    @-moz-document url-prefix() {
        h3 .sub_title {
            width: 100%;
            display: inline-block;
            right: 0;
            transform: translateX(0%);
        }
    }
    .two_column_wrap {
        -ms-flex-flow : column-reverse;
        -webkit-flex-flow :column-reverse;
        flex-flow: column-reverse;
    }
    
    .two_column_wrap > div {
        width: 100%;
        margin: 0;
    }
    .two_column_wrap > div:first-child {
        width: 100%;
        margin-top: 2em;
    }
    .two_column_wrap .img_wrap::after {
        content: none;
    }
    .two_column_wrap .img_wrap img {
        margin: 0 auto;
    }
    .list_philo {
        margin-top: 1em;
    }
    .list_philo li:first-child,
    .list_philo li:nth-child(2),
    .list_philo li:nth-child(3) {
        margin-bottom: 3em;
        /*margin-left: 10%;*/
    }
    .list_philo li:first-child .line_phi,
    .list_philo li:nth-child(2) .line_phi,
    .list_philo li:nth-child(3) .line_phi {
        width: 14%;
    }
    list_philo li h4 {
        font-size: 4.0rem;
    }
    .list_philo li:first-child p,
    .list_philo li:nth-child(2) p,
    .list_philo li:nth-child(3) p {
        margin-left: 15%;
    }
    .rl_column_wrap,.rl_right {
        -ms-flex-flow: column;
        -webkit-flex-flow: column;
        flex-flow: column;
    }
    .rl_column_wrap > div:first-child {
        width: 100%;
    }
    .rl_column_wrap h3 {
        display: block;
    }
    .rl_column_wrap h3 .sub_title {
        /*writing-mode: horizontal-tb;*/
        
        -ms-writing-mode: lr-tb;         /* IE用　*/
        writing-mode: horizontal-tb;
        
        position: absolute;
    }
    .rl_column_wrap h3 .main_title {
        position: relative;
    }
    .rl_right h3 .main_title {
        left: 0;
    }
    .rl_right h3 .main_title br {
        display: none;
    }
    .rl_column_wrap > div:last-child {
        width: 100%;
    }
    .title_left .title_box {
        text-align: center;
    }
    .title_left h3 .sub_title {
        position: absolute;
    }
    .title_left h3 .main_title {
        position: relative;
    }
    .list_history::before {
        content: none;
    }
    .list_history li .history_content li::before {
        content: none;
    }
    .list_history > li {
        border-bottom: 1px solid #ccc;
        padding: 1.5em 0;
    }
    .list_history li .history_content li p {
        margin-bottom: 0;
    }
    .list_history li .history_content li h5 {
        padding-bottom: .3em;
    }
    section:nth-child(2n) {
        padding-top: 120px;
    }
    section.breadcrumbs {
        padding-top: 0!important;
    }
    section:last-child {
        padding-bottom: 120px;
    }
    .list_business {
        margin-top: 2em;
        margin-left: 0;
        padding-left: 1.4em;
        text-indent: -1.4em;
    }
    .list_business li {
        font-weight: 500;
        font-size: 1.6rem;
    }
    .flow p {
        font-size: 1.6rem;
    }
    .list_voice li:nth-child(3n),
    .list_voice li:nth-child(5) {
        margin-top: 0;
    }
    article.no_margin {
        margin: 50px 0;
    }
    .no_margin section {
        padding-bottom: 75px; 
    }
    .voice_catch > div:first-child {
        margin-top: 1em;
    }
    .voice_catch {
        text-align: center;
    }
    .voice_catch p {
        font-size: 2.8rem;
        margin: 1.5em 0;
    }
    .voice_catch p::before, .voice_catch p::after {
        font-size: 20.0rem;
    }
    .voice_catch .voice_ctg {
        margin: 0 auto;
    }
    .voice_catch .voice_year {
        text-align: center;
    }
    .voice_year {
        display: block;
    }
    .voice_catch {
        margin-bottom: 50px;
    }
    .voice h4 {
        margin-left: 1.5em;
    }
    .voice h4::before {
        font-size: 7.0rem;
    }
    .voice_name {
        font-size: 1.8rem;
    }
    .harf_column {
        margin-top: 0;
    }
    .harf_column > div:first-child {
        width: 100%!important;
    }
    .harf_column > div {
        width: 100%!important;
    }
    .oneday {
        width: 100%!important;
    }
    .oneday h4 {
        padding-left: 1.7em;
    }
    .topics .breadcrumbs + article {
        margin-top: 100px;
    }

}


@media screen and (max-width: 900px) {
    .list_bnr li {
        width: 48%;
        margin-right: 4%;
    }
    .list_bnr li:nth-child(2n) {
        margin-right: 0;
    }
    .list_bnr li:nth-child(3) {
        margin-top: 2em;
        margin-right: 4%;
    }
}

/* タブレット縦 */
@media screen and (max-width: 812px) {
    .drawer--top .drawer-nav ul li a {
        font-size: 1.6rem;
    }
    section {
        padding: 50px 0;
    }
    section .inner, .footer_inner {
        width: 95%;
    }
    /*.main_image .catch img {
        max-width: 55%;
    }*/
    .main_image .catch {
        left: 30%;
    }
    .top_message .inner .smbc {
        height: inherit;
        padding: 1em 0;
        background-position: right 80%;
    }
    .top_message .inner .smbc .smbc_inner {
        padding-left: 1em;
        height: 100%;
    }
    .top_message .inner .smbc h3 {
        font-size: 4.5rem;
        letter-spacing: 1.0rem;
        margin-bottom: 1em;
    }
    .top_message .inner .smbc h4 {
        /*font-size: 2.8rem;*/
        font-size: 2.6rem;
    }
    .top_message .inner .smbc p {
        margin-bottom: 0;
    }
    .top_message .inner > div:last-child p {
        width: 100%;
        margin: 3.5em auto 3em;
        font-size: 1.8rem;
    }
    .top_business {
        padding: 50px 0;
    }
    section.top_business > .inner {
        width: 95%;
    }
    .list_philo li:first-child .line_phi, .list_philo li:nth-child(2) .line_phi, .list_philo li:nth-child(3) .line_phi {
        width: 7%;
    }
    .list_philo li:first-child p, .list_philo li:nth-child(2) p, .list_philo li:nth-child(3) p {
        margin-left: 8%;
    }
    .top_business .inner div {
        width: 100%;
    }
    .top_business .inner div::before, .top_business .inner div::after {
        top: -2.5em;
        background-size: 90%;
        background-repeat: no-repeat;
    }
    .top_business .inner div::after {
        top: inherit;
        bottom: -2.5em;
    }
    section.top_voice > .inner {
        width: 85%;
    }
    .list_voice li p {
        font-size: 1.8rem;
    }
    .btn a {
        width: 250px;
        padding: .5em 2em;
    }
    .btn a::after {
        height: 46px;
    }
    .topics_list h3::before {
        top: -.8em;
        left: -1.2em;
        background-size: 80%;
        background-repeat: no-repeat;
    }
    .topics_list ul {
        margin: 2em 0;
    }
    .topics_list ul li {
        padding-right: 0;
    }
    .topics_list ul li a:hover::after {
        content: none;
    }
    .pagetop {
        /*top: -65px;*/
        font-size: 2.0rem;
        width: 50px;
        height: 50px;
    }
    footer .footer_inner {
        padding: 50px 0;
    }
    footer h2 {
        font-size: 1.8rem;
    }
    .btn {
        justify-content: center;
    }
    footer .footer_inner div:nth-child(2) {
        align-items: flex-end;
    }
    
    footer .btn a {
        width: 100%;
    }
    footer nav ul {
        font-size: 1.4rem;
    }
    footer nav ul li {
        margin-left: 1em;
    }
    footer nav ul li::before {
        margin-right: 1.2em;
    }
    footer nav + ul {
        width: 80%;
    }
    table tr {
        -ms-flex-flow: column;
        -webkit-flex-flow: column;
        flex-flow: column;
    }
    table th,table td {
        width: 100%;
        border-bottom: none;
    }
    table th {
        background: #fff3e1;
    }
    .contact table th {
        width: 100%;
    }
    .list_history li {
        -ms-flex-flow: column;
        -webkit-flex-flow: column;
        flex-flow: column;
    }
    
    .list_history li h4 {
        font-size: 2.8rem;
        color: #666;
        text-align: left;
    }
    .list_history li .history_content {
        padding-left: 0;
    }
    .list_history li .history_content li h5 {
        color: #f1a632;
        font-weight: 600;
    }
    section:nth-child(odd) {
        padding-top: 100px;
    }
    .inner iframe {
        height: 300px;
    }
    _::-webkit-full-page-media, _:future, :root table th {
        border-bottom: none;
    }
}



@media screen and (max-width: 750px) {
    /*.top_message .inner .smbc {
        background-position: right bottom;
    }
    .top_message .inner .smbc .smbc_inner {
        width: 80%;
    }*/
    .top_message .inner .smbc {
        background-image: none !important;
        /*background: #eee;*/
        border: 2px solid #fff;
        border-image: linear-gradient(0deg, #8fc31f 0%,#fff028 25%, #f1a632 75%);
        border-image-slice: 1;
    }
    .top_message .inner .smbc_sp {
        display: block;
        height: 300px;
        margin-bottom: 50px;
        background-position: 80% 35%;
        /*background-size: contain;*/
        display: none;
    }
    .top_message .inner .smbc .smbc_inner {
        width: 95%;
        text-shadow: none;

    }
    .top_message .inner .smbc h3 {
        font-size: 4.0rem;
        /*color: #333;*/
        color: #666;
    }
    _::-webkit-full-page-media, _:future, :root .top_message .inner .smbc h3 {
        -webkit-text-fill-color: #666; 
    }
    .top_message .inner .smbc h4 {
        font-size: 2.8rem;
        color: #666;
    }
    .top_message .inner .smbc .grad {
        color: #ff7f27;
    }
    .top_message .inner .smbc p {
        font-weight: 500;
        font-size: 1.6rem;
        color: #333;
    }
    header {
        padding-left: .8em;
    }
    header nav .mail {
        width: 80px;
    }
    header nav .mail a i {
        font-size: 2.8rem;
    }
}



/*スマホ横*/
@media screen and (max-width: 667px) {
    header {
        height: 50px;
    }
    header h1 {
        font-size: 1.6rem;
    }
    header nav {
        display: none;
    }
    .drawer-hamburger {
        display: block;
    }
    .drawer--top .drawer-nav {
        width: 100%;
    }
    .drawer-hamburger {
        padding: 1.5rem 1.5rem;
    }
    .main_image {
        background-position: 15% 20%;
    }
    .main_image .catch {
        left: 15%;
    }
    .main_image .catch h2 {
        font-size: 5.0rem;
    }
    .main_image .catch span {
        font-size: 1.4rem;
    }
    
    section.top_voice > .inner {
        width: 95%;
    }
    .list_voice {
        margin-top: 30px;
    }
    .list_voice li {
        width: 48%;
        margin-right: 4%;
    }
    
    .list_voice li:nth-child(2n) {
        margin-right: 0;
    }
    .list_voice li:nth-child(3n) {
        margin-right: 0;
    }
    .list_voice li:nth-child(3) {
        margin-right: 4%;
    }
    .list_voice li p::before, .list_voice li p::after {
        background-size: 40%;
        left: 0;
    }
    .list_voice li p::after {
        left: auto;
        right: 0;
    }
    footer .footer_inner {
        -ms-flex-flow: column; -webkit-flex-flow: column; flex-flow: column;
    }
    footer .footer_inner > div:first-child {
        display:-ms-flexbox; display:-webkit-box; display: flex;
        -ms-flex-pack: justify; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between;
        align-items: flex-start;
    }
    footer .footer_inner div:nth-child(2) {
        margin-top: 0;
    }
    footer .btn a {
        width: 180px;
    }
    footer .footer_inner div:nth-child(2) {
        margin-top: 0;
    }
    footer nav {
        margin-bottom: 1em;
    }
    .copy {
        padding: .5em 0;
    }
    .content_title {
        margin-top: 50px;
        height: 160px;
    }
    .content_title h2::before {
        left: -2em;
        width: 70px;
        height: 70px;
        background-repeat: no-repeat;
    }
    .content_title h2 {
        font-size: 3.0rem;
        line-height: 1.0;
        letter-spacing: 0.5rem;
    }
    .content_title span {
        font-size: 1.2rem;
    }
    .list_bnr li {
        /*width: 100%; */
        /*margin-top: 2em;*/
    }
    .list_bnr li:first-child {
        margin-top: 0;
        /*margin-right: 0;*/
    }
    .list_bnr li:nth-child(3) {
        /*margin-right: 0;*/
    }
    article.no_margin {
        margin: 25px 0;
    }
    .no_margin section {
        padding-bottom: 50px; 
    }
    
    .voice_year {
        font-size: 1.4rem;
    }
    .voice .list_voice li p::before, .voice .list_voice li p::after {
        background-size: 70%;
        background-repeat: no-repeat;
    }
    .voice h4 {
        line-height: 1.2;
    }
    .topics .breadcrumbs + article {
        margin-top: 50px;
    }
    .topics h4 {
        font-size: 2.0rem;
    }
    .topics .btn {
        margin-top: 2em;
    }
    .topics section:last-child {
        padding-bottom: 75px;
    }
}

/* スマホ縦 */
@media screen and (max-width: 480px) {
    .breadcrumbs ul {
        display: block;
        text-align: left;
    }
    .breadcrumbs ul li {
        display: inline-block;
    }
    .top section {
        padding: 50px 0;
    }
    .main_image .catch {
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        width: 80%;
    }
    .main_image .catch img {
        max-width: 100%;
    }
    .main_image .catch h2 {
        font-size: 4.0rem;
        letter-spacing: 1.0rem;
    }
    .top h3 {
        font-size: 5.0rem;
        letter-spacing: 1.0rem;
    }
    .top_message .title_box {
        top: -2.0em;
    }
    .top_message .inner .smbc h3 {
        margin-bottom: .2rem;
        font-size: 3.8rem;
        letter-spacing: .5rem;
    }
    .top_message .inner .smbc h4 {
        margin: .5em 0 .2em;
        letter-spacing: 0.2rem;
    }
    .top h3.h3_small {
        font-size: 4.0rem;
        letter-spacing: .5rem;
    }
    .top_business .inner div p {
        margin: 2em auto 0;
    }
    .top_business .inner div {
        margin-bottom: 3em;
    }
    .top_business .inner div::before, .top_business .inner div::after {
        top: -2.0em;
        background-size: 75%;
        left: 1.5em;
    }
    .top_business .inner div::after {
        top: inherit;
        left: inherit;
        right: 1.0em;
        bottom: -3.5em;
    }
    .top_business .inner div a {
        padding: 2em 2em;
    }
    .top_voice h3::after {
        width: 60%;
        height: 2px;
    }
    .list_voice li {
        width: 90%;
        margin: 0 auto 2em;
    }
    .list_voice li:nth-child(2n),
    .list_voice li:nth-child(3n) {
        margin-right: auto;
    }
    .voice_ctg {
        top: 0;
        left: 0;
        font-size: 1.6rem;
        padding: .3em;
    }
    .voice_ctg::after {
        /*border: none;*/
    }
    .list_voice li p {
        font-size: 1.8rem;
    }
    .list_voice li p::before {
        left: -1.5em;
    }
    .list_voice li p::after {
        right: -1.5em;
    }
    .topics_list ul {
        margin: 1em 0;
    }
    .topics_list ul li:first-child {
        padding-top: 0;
    }
    .topics_list {
        padding-bottom: 80px;
    }
    .btn a {
        width: 100%;
        padding: .6em 2em;
    }
    footer .footer_inner > div:first-child {
        -ms-flex-flow: column; -webkit-flex-flow: column; flex-flow: column;
        margin-bottom: 2em;
    }
    footer .footer_inner div:nth-child(2) {
        width: 100%;
    }
    footer .btn a {
        width: 100%;
        padding: 1em 2em;
    }
    footer nav {
        width: 100%;
    }
    footer nav ul {
        -ms-flex-flow: column; -webkit-flex-flow: column; flex-flow: column;
    }
    footer nav ul li {
        margin-left: 0;
        text-align: center;
        margin-bottom: .5em;
    }
    footer nav ul li::before {
        content: none;
    }
    footer nav + ul {
        width: 100%; 
        -ms-flex-flow: column; -webkit-flex-flow: column; flex-flow: column;
    }
    footer nav + ul li {
        margin: 0 auto 1em;
    }
    footer nav + ul li:last-child {
        margin-bottom: 0;
    }
    .breadcrumbs + article {
        margin: 80px 0;
        margin-bottom: 0;
    }
    section {
        padding: 40px 0;
    }
    section:last-child {
        padding-bottom: 80px;
    }
    h3 {
        margin-bottom: 1em;
    }
    h3 .sub_title {
        font-size: 6.0rem;
        letter-spacing: .5rem;
    }
    .two_column_wrap > div:first-child {
        margin-top: 1em;
    }
    section.philosophy > .inner {
        width: 95%;
        margin: 0 auto;
    }
    .list_philo li:first-child .line_phi, .list_philo li:nth-child(2) .line_phi, .list_philo li:nth-child(3) .line_phi {
        width: 0;
    }
    .list_philo li:first-child,
    .list_philo li:nth-child(2),
    .list_philo li:nth-child(3) {
        margin-bottom: 2em;
        margin-left: 0;
    }
    .list_philo li h4 {
        font-size: 3.8rem;
        display: inline-block;
        text-align: left;
        margin-left: 0;
    }
    /*.list_philo li:first-child h4::before,
    .list_philo li:nth-child(2) h4::before,
    .list_philo li:nth-child(3) h4::before {
        content: none;
    }*/
    .list_philo li h4 span {
        padding-left: 0;
        padding-top: 0;
        display: block;
    }
    .list_philo li p {     
        margin-top: .5em;
    }
    .list_philo li:first-child p, .list_philo li:nth-child(2) p, .list_philo li:nth-child(3) p {
        margin-left: 0;
    }
    section:nth-child(2n),
    section:nth-child(odd) {
        padding-top: 50px;
    }
    .list_bnr li {
        /*margin-right: 0;*/
    }
    .list_bnr li:nth-child(3) {
        /*margin-right: 0;*/
    }
    .voice article {
        /*margin: 25px 0;*/
    }
    .voice section:last-child {
        /*padding-bottom: 100px;*/
    }
    .voice_catch p {
        font-size: 2.2rem;
        margin: .5em 0;
    }
    .voice_catch p::before, .voice_catch p::after {
        font-size: 15.0rem;
    }
    .voice_catch p::before {
        top: -.15em;
        left: 0;
    }
    .voice_catch p::after {
        bottom: -.15em;
        right: 0;
    }
    .voice h4 {
        font-size: 1.8rem;
    }
    .voice h4::before {
        font-size: 5.0rem;
    }
    .voice_catch {
        margin-bottom: 30px;
    }
    
}

@media screen and (max-width: 320px) {
    .content_title span {
        letter-spacing: .1rem;
    }
    .list_voice li {
        width: 100%;
    }
}



/*————-20210401――――-*/
@media screen and (min-width: 813px) {
    .sp_only {
        display: none;
    }
    .top_newservice h3 {
        position:relative;
    }
    .top_newservice h3::after {
     content: "";
     width: 200px;
     height: 4px;
     background: #8fc31f;
     position: absolute;
	 top: 0;
     bottom: 0;
     margin: auto 0;
  }

    .top_pos img,
    .business_pos img {
        width: 90%;
        margin: 50px auto 0;
    }
	.top_pos img {max-width:1440px;}
	.business_pos img {max-width:1200px;}

    .pickup {
        background: #fff !important;
    }
    .pickup h3 {
        width: 300px;
    }
    .pickup .btn a {
         width: 360px;
    }
    .pickup_txt {
         text-align: center;
         margin: 50px 20px;
    }
     .pickup_txt p {
         margin-bottom: 30px;
     }
     .consumer {
         max-width: 1200px;
         margin: 0 auto 80px;
         padding: 100px 50px;
         text-align: center;
         background: #fffaf1;
         border: 3px solid #fff;
         border-image: linear-gradient(
-135deg
, #8fc31f 0%,#fff028 25%, #f1a632 75%);
         border-image-slice: 1;
     }
     .consumer span {
         font-size: 1.8rem;
     }
     .consumer h4 {
         display: inline-block;
         font-size: 3rem;
         font-weight: bold;
         /* color: #8fc31f; */
         /* border-bottom: 4px solid #8fc31f; */
         margin: 30px;
     }
     .consumer h5 {
         font-size: 2.1rem;
         font-weight: 600;
         margin-top: 15px;
     }
    .consumer_inner {
        /* margin: 20px auto; */
        display: block;
     }
    .consumer img {
        max-width: 300px;
        display: inline-block;
     }
    .consumer_txt {
        width: 90%;
        display: inline-block;
     }
    .consumer p {
        margin-left: 40px;
        text-align: left;
        vertical-align: top;
        font-size: 1.6rem;
     }
    section.flow {
        background: #fffaf1;
        z-index: -2;
		  padding-bottom: 160px;
     }
}

@media screen and (max-width: 1024px) {
     .consumer p {
           margin: 0 auto;
           display: inline-block;
           width: 100%;
           text-align: left;
           vertical-align: top;
           font-size: 1.4rem;
     }

}

@media screen and (max-width: 812px) {
    .pc_only {
        display: none;
    }
	.pos_wrap {
		background: #fffaf1;
		padding: 0 0 80px;
	}
    .top_pos,
    .business_pos {
       background: #fffaf1;
       padding: 30px 0;
       margin-top: 20px;
    }
    .top_pos img {
        width: 100%;
        margin: 30px 0 0;
    }
    .top_newservice h3 {
        position: relative;
        text-align: left;
    }
    .top_newservice h3::after {
        content: "";
        width: 90px;
        height: 2px;
        background: #8fc31f;
        position: absolute;
        top: 50px;
        bottom: 0;
        /*right: -2em;*/
        margin: auto 0;
    }
    .top_newservice .btn_wrap {
        width: 100%;
        background: #fffaf1;
    }
    .top_newservice .btn {
        padding: 50px 20px;
        margin-top: 0;
    }
    .top_newservice .btn a {
        width: 350px;
        padding: .5em 2em;
}
	section.pickup {
        padding-top: 80px;
        background: #fffaf1;
        margin: 100px 0 0;
    }
    .pickup_txt {
        margin: 0 30px
    }
    .pickup .btn a {
        margin: 0 20px;
        width: 350px;
        padding: .5em 2em;
    }
    
     .consumer {
         width: 100%;
         /* margin: 100px 0 0; */
         padding: 10px 30px;
         text-align: center;
         background: #fff;
         /* border: 2px solid #fff; */
         /* border-image: linear-gradient(
0deg
, #8fc31f 0%,#fff028 25%, #f1a632 75%); */
         /* border-image-slice: 1; */
     }
     .consumer span {
         font-size: 4.2vw;
     } 
     .consumer h4 {
         /* display: inline-block; */
         font-size: 3rem;
         font-weight: bold;
         /* color: #8fc31f; */
         /* border-bottom: 4px solid #8fc31f; */
         margin: 30px 0;
     }
     .consumer h5 {
         font-size: 5.3vw;
         font-weight: 600;
         margin-top: 15px;
     }
    .consumer_inner {
        margin: 20px auto;
        display: block;
     }
    .consumer img {
        /* max-width: 300px; */
        width: 100%;
        /* display: inline-block; */
     }
    .consumer_txt {
        width: 100%;
        display: inline-block;
     }
    .consumer p {
        text-align: left;
        vertical-align: top;
        font-size: 1.6rem;
     }
     section.flow {
        background: #fffaf1;
        z-index: -2;
     }
	section:nth-child(2n) {
		background: none;
		z-index: -2;
		margin-top: 0;
		padding-top: 50px;
	}
}

@media screen and (min-width: 1025px) {
	img.organization{max-width:70%;}
}

@media screen and (min-width: 813px) {
	.rl_column_wrap table th {width: 20%;}
}

/*――――-20210401――――-*/