@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
html {
    font-size: 62.5%;
    position: relative;
    min-height: 100%;
    overflow: auto;
}

body {
    line-height: 1.5;
    font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    position: relative;
    font-weight: Medium;
    letter-spacing: 0.05rem;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    -webkit-text-size-adjust: 100%;
    /* margin-top: -46px; */
}

#wrapper {
    position: relative;
}

main {
    z-index: auto;
}

a {
    text-decoration: none;
    color: #333;
}

a:hover {
    cursor: pointer;
    opacity: .7;
}

a.link,
.mdl-col-left a,
.mdl-col-left-news a {
    color: #90BAFF;
    word-break: break-all;
}

.fadein {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 500ms;
}

.fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.inner {
    width: calc(100% - 50px);
    max-width: 1100px;
    margin: auto;
}


/* 画像をダウンロードさせにくくする対応 */
img {
    pointer-events: none;
    max-width: 100%;
    height: auto; /* resetにないため、ここで追加しておく */
}

/*フォーム系*/

select,
input,
textarea {
    width: 100%;
    background: #F2F2F2;
    padding: 10px;
    font-size: 1.6rem;
    letter-spacing: 0.1rem;
    border: none;
    box-sizing: border-box;
}

select,
input {
    max-width: 500px;
}

.up-file {
    border: none;
    display: inline-block;
    color: #333333;
    font-size: 2rem;
    font-weight: bold;
    background: #F2F2F2;
    text-align: center;
    width: 230px;
    height: 50px;
    line-height: 50px;
    border-radius: 6px;
    margin-bottom: 10px;
    cursor: pointer;
}

.mw_wp_form .up-file input[type="file"] {
    display: none;
}

input::-webkit-input-placeholder {
    color: #717171;
}

.mwform-file-delete {
    display: none;
}

/* 選択項目の▼を追加 */
.mw_wp_form_input .table select {
    background-image:
        linear-gradient(45deg, transparent 50%, gray 50%),
        linear-gradient(135deg, gray 50%, transparent 50%),
        linear-gradient(to right, #ccc, #ccc);
    background-position:
        calc(100% - 20px) calc(1em + 2px),
        calc(100% - 15px) calc(1em + 2px),
        calc(100% - 2.5em) 0.5em;
    background-size:
        5px 5px,
        5px 5px,
        1px 1.5em;
    background-repeat: no-repeat;
}

/*フォーム文字*/

.form-txt-wrap {
    text-align: center;
    margin: 75px 0 0;
}

.form-txt-wrap .normal-txt {
    margin-bottom: 60px;
}

.form-txt {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .form-txt-wrap {
        margin: 60px 0 0;
    }
    .form-txt-wrap .normal-txt {
        margin-bottom: 30px;
    }
    .form-txt {
        font-size: 1.6rem;
    }
}


/*各マージン*/

.ttl-table {
    margin-bottom: 25px;
}

.top-aboutus {
    padding-bottom: 120px;
}

.all-contents {
    margin-bottom: 120px;
}

.ttl-contents {
    margin-top: 40px;
}


/*リンクが上部コンテンツと関連しているとき*/

.contents-pager-wrap {
    margin: 64px auto;
}


/*disabled*/

.disabled {
    opacity: 0.3;
    pointer-events: none;
}


/*モジュールカラー*/

.mdl-orange {
    background-color: #FF5C00;
}

.mdl-pink {
    background-color: #FFC1C1;
}

.mdl-yellow {
    background-color: #FFCC33;
}

.mdl-litegreen {
    background-color: #98FFCF;
}

.mdl-green {
    background-color: #0FD88F;
}

.mdl-darkgreen {
    background-color: #00B45A;
}

.mdl-liteblue {
    background-color: #51CEED;
}

.mdl-iceblue {
    background-color: #90BAFF;
}

.mdl-blue {
    background-color: #007FFF;
}

.mdl-darkblue {
    background-color: #2027EF;
}

.mdl-purple {
    background-color: #603D8E;
}


/*背景色系*/

.bg-clearwhite {
    background: rgba(255, 255, 255, 0.8);
}

.bg-clearblack {
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
}

.bg-cleardarkgrey {
    background: rgba(74, 74, 74, 0.8);
    color: #fff;
}

.bg-cleargrey {
    background: rgba(241, 241, 241, 0.7);
}


/*アイコン系*/

.icon-big-tag {
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_tag.png') no-repeat left center;
    background-size: 18px;
    padding-left: 24px;
}

.icon-big-tag img {
    height: 27px;
}

.icon-small-tag {
    font-size: 1.4rem;
    font-weight: bold;
    cursor: pointer;
    display: inline-block;
}

.icon-small-tag .icon-more_close {
    display: none;
}

.icon-small-tag.opened .icon-more_close {
    display: block;
}

.icon-small-tag.opened .icon-more_open {
    display: none;
}

.icon-more {
    padding-right: 40px;
    height: 20px;
    display: inline-block;
    line-height: 2rem;
}

.icon-more_open {
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_more.png') no-repeat right center;
    background-size: 20px;
}

.icon-more_close {
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_more_close.png') no-repeat right center;
    background-size: 20px;
}


/*別窓アイコン（ヘッダー用）*/

.icon-target-blank {
    position: relative;
}

.icon-target-blank::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_target_blank.png') no-repeat right center;
    background-size: 32px 24px;
    width: 32px;
    height: 24px;
    top: 50%;
    right: -50px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}


/*別窓アイコン（フッター用）*/

.footer .icon-target-blank::after {
    background-size: 18px 13px;
    width: 18px;
    height: 13px;
    right: -25px;
}


/*フォーム系*/

input:placeholder,
input:-webkit-input-placeholder {
    color: #717171;
}


/*テーブル内フォーム*/

.table input {
    background-color: #F2F2F2;
    font-size: 1.6rem;
    padding: 11px 13px;
    width: 100%;
    max-width: 500px;
    box-sizing: border-box;
}

.table select {
    line-height: 1.6rem;
    padding: 12px 13px;
}

.table-select-wrap {
    position: relative;
    width: 100%;
    max-width: 500px;
}

.table-select-wrap::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    right: 15px;
    top: 50%;
    border-style: solid;
    border-width: 8.7px 5px 0 5px;
    border-color: #033333 transparent transparent transparent;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}



.form-txt-wrap .mwform-checkbox-field {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.form-txt-wrap > p:first-child {
    display: inline-block;
    font-size: 1.6rem;
}

.form-txt-wrap input[type="checkbox"] {
    display: none;
}

.form-txt-wrap input[type="checkbox"] + span{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 24px;
    font-size: 1.6rem;
    padding-left: 32px;
}

.form-txt-wrap input[type="checkbox"] + span::before{
    position: absolute;
    content: '';
    width: 20px;
    height: 20px;
    border: 2px solid #717171;
    border-radius: 3px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.form-txt-wrap input[type="checkbox"]:checked + span::before{
    background-color: #FF5C00;
    border-color: #FF5C00;
}

.form-txt-wrap input[type="checkbox"]:checked + span::after{
    position: absolute;
    content: '';
    width: 12px;
    height: 6px;
    border-width: 0 0 2px 2px;
    border-style: solid;
    border-color: #fff;
    top: 43%;
    left: 5px;
    transform: translateY(-50%) rotate(-45deg);
}

.mw-wp-form-error-text {
    font-size: 1.4rem;
    color: rgba(183,0,0,1);
    text-align: center;
    padding: 8px;
    margin: 8px auto 12px;
    background-color: rgba(183,0,0,.1);
}

@media (min-width: 768px) {
    .mw-wp-form-error-text {
        font-size: 2rem;
    }
}

.privacy-text {
    font-size: 1rem;
    margin-top: 6px;
}

.mw_wp_form.mw_wp_form_input .error {
    padding: 8px;
    background-color: rgba(183,0,0,.1);
}

/*パーツ*/

.mdl-col {
    padding: 120px 0;
}

.mdl-flex {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-align-items: center;
    align-items: center;
}

.mdl-flex.flex-top {
    -webkit-align-items: flex-start;
    align-items: flex-start;
}

.mdl-flex.flex-ruler {
    -webkit-align-items: normal;
    align-items: normal;
}

.mdl-flex-simple {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
}

@media screen and (max-width: 768px) {
    .mdl-flex-simple {
        display: block;
    }
}


/*タイトル系*/

.ttl-large,
.ttl-middle,
.ttl-small {
    font-weight: bold;
}


/*h1*/

.ttl-large {
    font-size: 6.4rem;
    line-height: 7.6rem;
}

.ttl-large img {
    height: 66px;
    display: block;
    margin: auto;
}


/*h2*/

.ttl-middle {
    font-size: 5.2rem;
    line-height: 6.4rem;
}

.ttl-middle img {
    height: 58px;
    display: block;
}

.ttl-middle.ttl-mazrica_times {
    margin-bottom: 5px;
}

.ttl-middle.ttl-mazrica_times img {
    height: 70px;
    transform: translateX(-14px);
}


/*h3-英語*/

.ttl-small {
    font-size: 4.0rem;
    line-height: 5.2rem;
}


/*h3-日本語*/

.ttl-small-jp {
    font-weight: 900;
    font-family: 'Noto Sans JP';
}

.ttl-min-jp,
.ttl-txt {
    font-weight: bold;
    font-family: 'Noto Sans JP';
}

.ttl-small-jp {
    font-size: 3.2rem;
    line-height: 5.2rem;
}

.ttl-small-jp img {
    height: 36px;
}

.ttl-min-jp {
    font-size: 2.4rem;
    line-height: 3.6rem;
}

.ttl-min-jp.ttl-3excerpt {
    font-size: 2rem;
    line-height: 3.2rem;
}

.ttl-txt {
    font-size: 1.6rem;
    line-height: 2.6rem;
}

.normal-txt {
    font-size: 1.4rem;
    line-height: 2.4rem;
}

.small-txt {
    font-size: 1.2rem;
    line-height: 2.2rem;
}

.small-txt-gray {
    font-size: 1.2rem;
    line-height: 1.8rem;
    color: #676767;
}


/*メディアタイトル*/

.mt-ttl-wrap {
    margin-top: 32px;
}

.mt-ttl {
    font-weight: normal;
    line-height: 1;
}

.mt-ttl img {
    height: 36px;
    margin-right: 10px;
}

.mt-ttl .normal-txt {
    vertical-align: bottom;
}


/*各セクションh1*/

.main-ttl {
    margin: 125px 0 80px;
    text-align: center;
}

.br-sp {
    /*0802-add*/
    display: block;
}

@media screen and (max-width: 768px) {
    .mdl-col {
        padding: 60px 0;
    }
    .mt-ttl img {
        height: 30px;
    }
    /*h1*/
    .ttl-large {
        font-size: 4.8rem;
        line-height: 6.6rem;
    }
    .ttl-large img {
        height: 40px;
    }
    .ttl-large img.col2 {
        height: 95px;
    }
    /*h2*/
    .ttl-middle {
        font-size: 3.6rem;
        line-height: 6.4rem;
    }
    .ttl-middle img {
        height: 50px;
    }
    .ttl-middle.ttl-mazrica_times img {
        height: 60px;
    }
    .ttl-middle img.col2 {
        height: 100px;
    }
    /*h3-英語*/
    .ttl-small {
        font-size: 3.0rem;
        line-height: 5.2rem;
    }
    /*h3-日本語*/
    .ttl-small-jp {
        font-size: 2rem;
        line-height: 3rem;
    }
    .ttl-min-jp {
        font-size: 2.0rem;
        line-height: 3rem;
    }
    .ttl-small-jp img {
        height: 27px;
    }
    .ttl-small-jp img.col2 {
        height: 56px;
    }
    .ttl-small img {
        height: 27px;
    }
    .ttl-txt {
        font-size: 1.4rem;
        line-height: 2.6rem;
    }
    /*
.normal-txt{
  font-size: 1.2rem;
  line-height: 2.4rem;
}
*/
    .small-txt {
        font-size: 1.0rem;
        line-height: 2.2rem;
    }
    .small-txt-gray {
        font-size: 1.0rem;
        line-height: 2.2rem;
        color: #676767;
    }
    /* .page-ttlWrap img {
        width: 50px;
    }
    .page-ttlWrap {
        margin-bottom: 0;
    } */
    .br-sp {
        /*0802-add*/
        display: none;
    }
}


/*下層セクションマージン*/

.lower-main-ttl {
    margin: 120px 0 90px;
    text-align: center;
}

.lower-industry {
    font-size: 40px;
    margin-bottom: 2px;
}

.lower-industry img {
    height: 45px;
}


/*ボタン*/

.btn-wrap {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.btn {
    font-size: 1.6rem;
    width: 280px;
    height: 60px;
    line-height: 60px;
    display: inline-block;
    text-align: center;
    border-radius: 6px;
    font-weight: bold;
    position: relative;
}

.btn.white {
    background-color: #fff;
    color: #FF8800;
}

.btn.black {
    background-color: #333;
    color: #fff;
}

.btn.orange {
    background-color: #FF5C00;
    color: #fff;
}

.btn.txt-black {
    color: #000033;
}

.btn-long {
    font-size: 2rem;
    width: 400px;
    height: 80px;
    line-height: 80px;
}

.btn-entry,
.return-button {
    font-size: 2rem;
    width: 100%;
    max-width: 360px;
    height: 60px;
    line-height: 60px;
    border-radius: 0;
    padding: 0;
}

.btn.next::after {
    position: absolute;
    content: "";
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_right_wh.png') no-repeat;
    background-size: 20px 7px;
    width: 20px;
    height: 7px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.btn.target-blank::after {
    position: absolute;
    content: "";
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_target_blank_bk.png') no-repeat right center;
    background-size: 32px 24px;
    width: 32px;
    height: 24px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.btn.coming-soon {
    pointer-events: none;
    line-height: 45px;
}

.btn.coming-soon::after {
    content: "COMING SOON";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0px;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 6px;
    font-size: 1.4rem;
    letter-spacing: 0.2rem;
    padding-top: 21px;
    box-sizing: border-box;
}

.conversion-area .btn.coming-soon {
    line-height: 60px;
}

.conversion-area .btn.coming-soon::after {
    background: rgba(255, 255, 255, 0.5);
    padding-top: 26px;
}

.return-button {
    margin-bottom: 20px;
}


/*応募完了*/

.entry-completed {
    max-width: 740px;
    margin: auto;
    margin-top: 30px;
}

@media screen and (max-width: 768px) {
    .entry-completed {
        display: block;
    }
    .entry-completed a+a {
        margin-top: 30px;
    }
    .conversion-area .btn.coming-soon {
        line-height: 48px;
    }
}

.modal-primary {
    font-size: 1.4rem;
    width: 260px;
    height: 40px;
    line-height: 40px;
    border-radius: 0;
    text-align: left;
    padding-left: 24px;
    box-sizing: border-box;
}


/*文字ボタン*/

.txt-link-wrap {
    text-align: right;
}

.txt-link,
.txt-link-white {
    font-size: 1.4rem;
    padding-right: 100px;
    position: relative;
}

.txt-link-min-white {
    font-size: 1.4rem;
    padding-right: 55px;
    position: relative;
}

.txt-link-min-white img {
    height: 19px;
}

.txt-link a {
    color: #333;
}

.txt-link::before {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/txt_link.png') no-repeat;
    background-size: 81px 35px;
    width: 81px;
    height: 35px;
    right: 0;
    bottom: -6px;
    /*
  width: 34px;
  height: 34px;
  top: -16px;
  right: 0;
  border: 2px solid #333333;
  border-radius: 50%;
*/
}

.txt-link-white,
.txt-link-min-white {
    color: #fff;
}

.txt-link-white::before {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/txt_link_white.png') no-repeat;
    background-size: 81px 35px;
    width: 81px;
    height: 35px;
    right: 0;
    bottom: -6px;
}

.txt-link-min-white::before {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/txt_link_white.png') no-repeat;
    background-size: 43px 18px;
    width: 43px;
    height: 18px;
    right: 0;
}

@media screen and (max-width: 768px) {
    .btn {
        width: 100%;
        font-size: 2rem;
        height: 60px;
        line-height: 60px;
    }
    .btn+.btn {
        margin-top: 20px;
    }
    .btn-long {
        font-size: 1.6rem;
        width: 100%;
        height: 70px;
        line-height: 70px;
    }
    .btn-entry,
    return-button {
        font-size: 1.6rem;
    }
}


@media screen and (max-width: 768px) {
    .header-nav-btn {
        width: 30px;
        height: 26px;
        top: 0;
    }
    .header-nav-txt {
        display: none;
    }
}

/*フッター*/

.footer {
    position: relative;
    background: #000033;
    padding: 30px 40px 40px;
    color: #fff;
    font-size: 1.2rem;
    box-sizing: border-box;
    z-index: 20;
}

.footer a {
    color: #fff;
}

.footer .footer-flex {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-align-items: center;
    align-items: flex-end;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.footer .footer-flex.reverse {
    flex-flow: row-reverse;
}

.footer-menu-list {
    font-size: 2rem;
    font-weight: bold;
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
}


/*フッター2段目*/

.footer-bunner-list {
    margin-top: 24px;
}

.footer-bunner-list img {
    height: 65px;
    display: block;
}

.footer-bunner-list li {
    display: inline-block;
}

.footer-bunner-list a {
    display: block;
}

.footer-address {
    margin: 30px 0;
    line-height: 2rem;
}

.footer-sns {
    margin-left: 14px;
}

.footer-sns li {
    width: 36px;
    height: 36px;
    display: inline-block;
}

.footer-sns li+li {
    margin: 0 0 0 12px;
}

.footer-sns li a {
    display: block;
}

.footer-link {
    margin-top: 30px;
    text-align: right;
    font-size: 1rem;
}

.footer-link li {
    display: inline-block;
    margin-right: 12px;
    padding-right: 12px;
    border-right: 1px solid #fff;
}

.footer-link li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: none;
}

.footer-copyright {
    margin-top: 22px;
    font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
    .footer {
        padding: 45px 30px 70px;
    }
    .footer .footer-flex {
        display: block;
    }
    .footer-link {
        text-align: left;
    }
    .footer-link li {
        margin-top: 10px;
    }
    .footer-menu-list li {
        width: 50%;
    }
    .footer-menu-list>li+li {
        margin-left: 0;
    }
    .footer-menu-list li:nth-child(n + 3) {
        margin-top: 20px;
    }
    .footer-bunner-list img {
        height: auto;
        width: 100%;
    }
}

.pagetop {
    display: block;
    z-index: 2;
}

.pagetop img {
    width: 15px;
}


/*コンバージョンエリア*/

.conversion-area {
    padding: 160px 240px;
}

.conversion-btn-wrap {
    max-width: 892px;
    margin: auto;
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    justify-content: space-between;
}

.conversion-btn-txt {
    text-align: center;
    margin-bottom: 28px;
}

@media screen and (max-width: 768px) {
    .conversion-area {
        padding: 40px 25px;
    }
    .conversion-btn-wrap {
        display: block;
    }
    .conversion-btn-txt {
        margin-bottom: 8px;
    }
    .conversion-col2 {
        margin-top: 20px;
    }
}


/*SNS*/


/*ツイッター用調整*/

#twitter-widget-0 {
    vertical-align: bottom;
}


/*ページ送り*/

.contents-pager-wrap,
.pager-wrap {
    display: flex;
    text-align: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.pager-prev-wrap,
.pager-next-wrap {
    width: 80px;
    display: table-cell;
    vertical-align: middle;
}

.page-numbers,
.page-numbers.current {
    display: inline-block;
    font-size: 1.6rem;
    width: 40px;
    height: 40px;
    margin: 0 5px;
    padding: 13px 0;
    border: 1px solid #333;
    background-color: #fff;
    text-decoration: none;
    box-sizing: border-box;
}

.page-numbers.current {
    color: #fff;
    background-color: #333;
    padding: 8px;
}

a.page-numbers {
    line-height: 1.6rem;
    color: #333;
}

.page-numbers.dots {
    border: none;
    width: 20px;
    font-weight: bold;
    line-height: 0.5rem;
}


/* 前へ */

.prev.page-numbers {
    margin-right: 5px;
}


/* 次へ */

.next.page-numbers {
    margin-left: 5px;
}

.prev.page-numbers,
.next.page-numbers {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    width: 64px;
    height: 40px;
    display: block;
}

.prev.page-numbers {
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_left.png') no-repeat center center;
    background-size: 28px 9px;
}

.next.page-numbers {
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_right.png') no-repeat center center;
    background-size: 28px 9px;
}

@media screen and (max-width: 768px) {
    .page-numbers,
    .page-numbers.current {
        display: table-cell;
        font-size: 2rem;
        text-align: center;
        width: 30px;
        height: 40px;
    }
    .page-numbers.current {
        padding: 8px 0;
    }
    .prev.page-numbers,
    .next.page-numbers {
        width: 30px;
    }
    .prev.page-numbers {
        background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_left_sp.png') no-repeat center center;
        background-size: 16px 9px;
        width: 28px;
    }
    .next.page-numbers {
        background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_right_sp.png') no-repeat center center;
        background-size: 16px 9px;
        width: 28px;
    }
}


/*下層ページ送り*/


/*BACK TO ALL ARTICLES*/

.article {
    font-size: 1.4rem;
    line-height: 1.6;
    margin: 64px 0;
    flex-wrap: wrap;
}

.article-prev,
.article-next {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-align-items: center;
    align-items: center;
}

.news-pager .article-prev a,
.news-pager .article-next a {
    padding: 25px 70px;
    box-sizing: border-box;
    position: relative;
    display: block;
    word-break: inherit;
    color: #333;
}

.footer-link .article-prev a,
.footer-link .article-next a {
    width: 100%;
    box-sizing: border-box;
    position: relative;
    display: block;
    text-align: left;
    font-size: 2rem;
    font-weight: bold;
}

.footer-link .article-prev a {
    padding: 25px 90px 25px 0;
    margin-right: 40px;
}

.footer-link .article-next a {
    padding: 25px 90px 25px 60px;
}

.article-prev {
    width: calc(50% + 1px);
    border-right: 1px solid #707070;
    text-align: right;
}

.news-pager .article-prev a::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_left.png') no-repeat center left;
    background-size: 28px 10px;
    width: 28px;
    height: 10px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.footer-link .article-prev a::after,
.footer-link .article-next a::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/txt_link.png') no-repeat center left;
    background-size: 81px 34px;
    width: 81px;
    height: 34px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.article-next {
    width: calc(50% - 2px);
    text-align: left;
}

.news-pager .article-next a::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/common/icon_arrow_right.png') no-repeat center right;
    background-size: 28px 10px;
    width: 28px;
    height: 10px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.article-all {
    display: block;
    margin: 40px auto 0;
}

.article-all img {
    height: 25px;
}

@media screen and (max-width: 768px) {
    .mdl-flex .article {
        display: block;
    }
    .mdl-flex .article.news-pager {
        display: flex;
    }
    .article-prev {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #707070;
    }
    .news-pager .article-prev {
        text-align: left;
        border-right: 1px solid #707070;
    }
    .news-pager .article-prev,
    .news-pager .article-next {
        width: calc((100% - 1px) / 2);
        display: inline-block;
        border-top: 1px solid #707070;
        border-bottom: 1px solid #707070;
    }
    .news-pager .article-prev a {
        padding: 25px 0px 25px 40px;
    }
    .article-next {
        width: 100%;
    }
    .article-next a {
        padding: 25px 40px 25px 0px;
    }
    .article-all img {
        height: 18px;
    }
    .footer-link .article-prev a,
    .footer-link .article-next a {
        font-size: 1.6rem;
        padding: 25px 60px 25px 0;
        margin-right: 0;
    }
    .footer-link .article-prev a::after,
    .footer-link .article-next a::after {
        background: url('https://corp-site.mazrica.com/assets/images/common/txt_link.png') no-repeat center left;
        background-size: 54px 22px;
        width: 54px;
        height: 22px;
    }
}


/*汎用　リストマーカー*/

.list-disc li,
.list-note li {
    position: relative;
    font-size: 1.4rem;
    line-height: 1.5;
    padding-left: 16px;
}

.list-disc li::before {
    content: "・";
    position: absolute;
    left: 0;
}

.list-disc li+li,
.list-note li+li {
    margin-top: 5px;
}


/*注釈用　リストマーカー*/

.list-note li::before {
    content: "※";
    position: absolute;
    left: 0;
}

.prevacy .list-disc {
    margin-left: 20px;
}

.prevacy {
    margin-bottom: 1.6em;
}

.privacy-policy {
    padding-bottom: 130px;
}

ol.list-policy {
    counter-reset: cnt;
    margin-left: 3rem;
}
ol.list-policy > li {
    list-style-type: none;
    counter-increment: cnt;
} 
ol.list-policy > li::before {
    content: counter(cnt);
    display:inline-block;
    margin-left: -2.5rem;
    width: 2.5rem;
}

ol.list-policy > li ol {
    counter-reset: cnt2;
    margin-left: 3rem;
}
ol.list-policy > li ol > li {
    list-style-type: none;
    counter-increment: cnt2;
} 
ol.list-policy > li ol > li::before {
    content: "(" counter(cnt2) ")";
    display:inline-block;
    margin-left: -3rem;
    width: 3rem;
}

@media screen and (max-width: 768px) {
    .list-disc li,
    .list-note li {
        font-size: 1.2rem;
    }
}

main {
    position: relative;
}

/*２カラム*/

.mdl-col-left {
    width: 100%;
    max-width: 650px;
    margin-right: 30px;
    font-size: 1.6rem;
    line-height: 1.8;
}

.mdl-col-left h4 {
    margin-bottom: 12px;
}


/*wp独自設定*/

.wp-block-image {
    margin-top: 50px;
}

.wp-block-image img {
    object-fit: contain;
    height: auto;
}


/*幅800px*/

.mdl-col-left-news {
    width: 100%;
    max-width: 800px;
    margin-right: 90px;
    font-size: 1.4rem;
    line-height: 1.8;
}

.mdl-col-left-news strong {
    font-size: 2.4rem;
    line-height: 1.8;
    margin-bottom: 12px;
}

.mdl-col-left-news p>strong,
.mdl-col-left-news a>strong {
    font-size: 1.4rem;
}

.mdl-col-left-news ul,
.mdl-col-left-news ol {
    margin: 1rem 0;
}

.mdl-col-left-news ul {
    padding-left: 24px;
}

.mdl-col-left-news ol {
    padding-left: 20px;
}

.mdl-col-left-news ul li {
    list-style: disc;
}

.mdl-col-left-news ol li {
    list-style: decimal;
}

.mdl-col-left-news ul[style*="list-style-type"] li {
    list-style-type: inherit;
}

.mdl-col-right {
    width: 100%;
    max-width: 280px;
}

.widget-container {
    align-self: stretch;
}

.mdl-col-right-news {
    width: 100%;
    max-width: 200px;
}

.mdl-col-right-block {
    margin-bottom: 60px;
}
.mdl-col-right-block:last-child {
    margin-bottom: 0px;
}
.mdl-col-right-block.widget-item.sticky-widget {
    position: sticky;
    top: 8px;
    z-index: 99999;
}
.mdl-col-right-block.widget-item a {
    display: inline-block;
}


/*2カラム　みぎがわナビ（表）*/

.news-details .sub-category-ttl img {
    height: 27px;
    margin: 0;
    padding-bottom: 16px;
}

.sub-category {
    border-top: 2px solid #707070;
    font-size: 1.6rem;
    font-weight: bold;
}

.sub-category li {
    border-bottom: 1px solid #B7B7B7;
}

.sub-category li a {
    padding: 20px 0;
    display: block;
}

.sub-category+.sub-category-ttl {
    margin-top: 72px;
}

@media screen and (max-width: 768px) {
    .mdl-col-left {
        font-size: 1.4rem;
    }
    .col-2list {
        display: block;
    }
    .mdl-col-right,
    .mdl-col-right-news {
        margin-top: 80px;
    }
    .mdl-col-left,
    .mdl-col-left-news {
        width: 100%;
        max-width: none;
        margin-right: 0;
    }
    .mdl-col-right,
    .mdl-col-right-news {
        width: 100%;
        max-width: none;
    }
}


/*タブメニュー*/

.mdl-tab {
    overflow: hidden;
}

.mdl-tab-content .hide {
    display: none;
}

.mdl-square-tab {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-justify-content: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}

.mdl-square-tab li {
    padding: 0 8px;
    position: relative;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.mdl-square-tab li.select a {
    color: #FF5C00;
}

.mdl-square-tab li::after {
    position: absolute;
    content: "";
    background: #FF5C00;
    width: 100%;
    height: 0px;
    bottom: 0;
    left: 0;
    border-radius: 2px;
}

.mdl-square-tab li.select::after {
    height: 2px;
    transition: .2s;
    -webkit-transition: .2s
}

.mdl-square-tab li+li {
    margin-left: 70px;
}

.mdl-square-tab li a:hover {
    transition: .4s;
    position: relative;
    opacity: 1;
    color: #FF5C00;
}

.mdl-square-tab li a::after {
    backface-visibility: hidden;
    border: 1px solid rgba(255, 255, 255, 0);
    content: "";
    display: block;
    margin: 10px auto 0;
    position: relative;
    transition: all 280ms ease-in-out;
    width: 0;
}

.mdl-square-tab li a:hover:after {
    backface-visibility: hidden;
    border-color: #FF5C00;
    transition: width 350ms ease-in-out;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .mdl-col-left {
        font-size: 1.4rem;
    }
    .mdl-square-tab {}
    .mdl-square-tab li+li {
        margin-left: 20px;
    }
    .sp-scroll-wrap {
        overflow-x: scroll;
        /*    width: calc(100% + 30px);*/
        white-space: nowrap;
        margin: 0px -20px 0px -20px;
        padding-left: 15px;
    }
    /*フロート時*/
    .sp-fixed-wrap.is-fixed {
        position: fixed !important;
        top: 52px !important;
        left: 0;
        z-index: 12;
        padding-top: 10px !important;
        transition: all 0.1s ease;
        background-color: #fff;
        width: 100%;
        padding-left: 10px;
    }
    .mdl-square-tab {
        width: 440px;
        margin-top: 10px;
        padding-right: 30px;
    }
}


/*テーブル基本設計*/

.table {
    width: 100%;
    text-align: left;
    border-collapse: collapse;
}

.table tr {
    border-collapse: separate;
}

.table th {
    font-size: 1.6rem;
    box-sizing: border-box;
    vertical-align: top;
}

.table td {
    font-size: 1.4rem;
    line-height: 1.7;
    vertical-align: top;
}


/*ニューステーブル*/

.news-table th {
    width: 180px;
    padding-left: 40px;
    padding: 16px 0 16px 40px;
}

.news-table td {
    padding: 16px 0;
}

.news-table td.table-news-category {
    display: flex;
    flex-direction: column;
}
.news-table td.table-news-category .news-table-label {
    box-sizing: border-box;
    height: auto;
    margin: 1px;
}

.news-table td:nth-child(2) {
    width: 180px;
}


/*ニュース用のラベル*/

.news-table-label {
    width: 140px;
    height: 25px;
    margin-right: 40px;
    text-align: center;
    line-height: 2;
    display: table-cell;
    vertical-align: middle;
    background:rgba(58,58,255,.1);
    border-radius:12px;
    font-size:1.2rem;
    font-weight:bold;
}

.table-txt {
    margin-top: 5px;
    margin-right: 40px;
}

.table-link {
    margin: 80px 0 70px;
    text-align: right;
}


/*デフォルトテーブル*/

.def-table th {
    width: 320px;
    padding: 32px 0 32px 40px;
}

.def-table td {
    padding: 32px 0;
}


/*input横のth*/

.def-table-inputside {
    padding: 6px 0;
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-align-items: start;
    align-items: start;
}

.inputside-right {
    width: calc(100% - 100px);
}

@media screen and (max-width: 768px) {
    .def-table th,
    .def-table td,
    .news-table th,
    .news-table td {
        display: block;
    }
    .def-table th {
        width: 100%;
        padding: 32px 0 0 0;
    }
    .news-table th {
        width: 100px;
        display: inline-block;
        padding-left: 0;
        padding: 16px 0 0 0;
    }
    .news-table tr td:first-of-type {
        display: inline-block;
        line-height: 1.2;
    }
    .news-table td:nth-child(2) {
        width: auto;
        margin-left: 20px;
    }
    .table-txt {
        margin-top: 0;
        margin-right: 0;
    }
    /*必須ラベル*/
    .def-table-label {
        margin-right: 16px;
    }
    .news-table-label {
        width: 120px;
        height: 20px;
        font-size: 1.2rem;
        margin-right: 0;
        line-height: 1.8;
    }
    .inputside-right {
        width: auto;
        margin-right: 20px;
    }
}


/*必須ラベル*/

.def-table-label {
    color: #fff;
    font-size: 1.2rem;
    font-weight: normal;
    background-color: #CE2222;
    padding: 5px 8px;
    display: inline-block;
}


/*横幅違いのテーブル（通常の幅狭め）*/

.min-table th {
    width: 160px;
    padding: 32px 0 32px 16px;
}

.min-table .table-txt {
    margin-right: 16px;
}

@media screen and (max-width: 768px) {
    .min-table th {
        width: 100%;
        padding: 32px 0 0 0;
    }
    .min-table .table-txt {
        margin-right: 16px;
    }
}


/*テーブル＋googlemap*/

.table-map {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-align-items: normal;
    align-items: normal;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.table-map iframe {
    width: 100%;
    max-width: 460px;
    margin-left: 90px;
}

.table-map .table {
    max-width: 560px;
}

@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop,
    .table-map iframe {
        height: 780px;
    }
}

@media screen and (min-width: 768px) {
    _:-ms-lang(x)::-ms-backdrop,
    .table-map .table {
        width: auto;
    }
}

@media screen and (max-width: 768px) {
    .table-map {
        display: block;
    }
    .table-map iframe {
        margin-top: 40px;
        margin-left: 0;
        height: 240px;
        max-width: none;
    }
    .table-map .table {
        max-width: none;
    }
}


/*メッセージ＋画像*/

.mdl-common .ttl-middle {
    line-height: 6.2rem;
    /*マージン調整*/
}

.mdl-common .ttl-txt {
    margin-bottom: 33px;
}

.mdl-common .ttl-small-jp {
    margin-bottom: 30px;
}

.mdl-common-txt,
.mdl-3col-txt {
    color: #6E6E6E;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.7;
}

.mdl-common-txt {
    width: 100%;
    max-width: 560px;
}

.mdl-common-txt p+p {
    margin-top: 20px;
}

.mdl-common-txt.wide {
    width: 100%;
    max-width: 100%;
}

.mdl-common-txt+.business-blockimg {
    margin-top: 60px;
}

@media screen and (max-width: 768px) {
    .mdl-common-txt {
        width: 100%;
        max-width: none;
    }
    /*
  .mdl-common-txt + .business-blockimg{
    margin-top: 30px;
  }
    */
    .mdl-common-txt+.mdl-common-imgsp {
        margin-top: 30px;
    }
}


/*職種リスト＋画像*/

.job-type-wrap {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}

.job-type-wrap.reverse {
    flex-flow: row-reverse;
}

.job-type-img {
    width: 100%;
    max-width: 500px;
}

.job-type-txt {
    width: 100%;
    max-width: 510px;
    margin-right: 30px;
}

.reverse .job-type-txt {
    margin-right: 0;
}

@media screen and (max-width: 768px) {
    .job-type-wrap {
        display: block;
    }
    .job-type-txt {
        max-width: none;
    }
    .job-type-img {
        margin-top: 30px;
        max-width: none;
    }
}

.mdl-common.message1 {
    background: url('https://corp-site.mazrica.com/assets/images/aboutus/message_01.png') no-repeat top right;
    background-size: 460px 470px;
    min-height: 470px;
}

.mdl-common.message2 {
    background: url('https://corp-site.mazrica.com/assets/images/aboutus/message_02.png') no-repeat top right;
    background-size: 460px 470px;
    min-height: 470px;
}

.mdl-common.message1+.mdl-common.message2 {
    margin-top: 95px;
}

.mdl-common.recruit {
    background: url('https://corp-site.mazrica.com/assets/images/top/recruit_01.png') no-repeat top right;
    background-size: 537px 549px;
    min-height: 549px;
}

.mdl-common.revenue {
    background: url('https://corp-site.mazrica.com/assets/images/top/recruit_01.png') no-repeat top right;
    background-size: 537px 549px;
    min-height: 549px;
}

.mdl-common.mission,
.mdl-col.mission {
    background: url('https://corp-site.mazrica.com/assets/images/recruit/bg_recruit_mission.jpg') no-repeat right bottom;
    background-size: cover;
    height: 800px;
    padding-bottom: 0;
    box-sizing: border-box;
    margin-bottom: 100px;
}

.mdl-common.mission .inner,
.mdl-col.mission .inner {
    height: 100%;
    position: relative;
}

.mdl-common .mission-img,
.mdl-col .mission-img {
    position: absolute;
    width: 440px;
    right: 0;
    bottom: 230px;
}

.mdl-common.key-message {
    background: url('https://corp-site.mazrica.com/assets/images/business/key-message_01_pc.png') no-repeat bottom right;
    background-size: 520px auto;
    min-height: 520px;
}

.mdl-common.problem {
    /*0802-add*/
    background: url('https://corp-site.mazrica.com/assets/images/business/problem_01_pc.png') no-repeat bottom right;
    background-size: 450px auto;
    min-height: 700px;
}

.mdl-common.solution {
    /*0802-add*/
    background: url('https://corp-site.mazrica.com/assets/images/business/solution_01_pc.png') no-repeat bottom right;
    background-size: 450px auto;
    min-height: 520px;
}

.business-blockimg {
    width: 100%;
    max-width: 758px;
    margin: auto;
    display: block;
    margin-bottom: 60px;
}

.mdl-col.product {
    background: #192F3A;
    box-sizing: border-box;
    color: #fff;
}

.mdl-common.product-img {
    background: url('https://corp-site.mazrica.com/assets/images/business/product_01_pc.png') no-repeat center right;
    background-size: 529px 342px;
    min-height: 342px;
}

.mdl-col.product .mdl-common-txt {
    color: #fff;
}

.message-name {
    text-align: right;
}

.message-name img {
    height: 27px;
}

@media screen and (max-width: 768px) {
    .mdl-common.message1,
    .mdl-common.message2,
    .mdl-common.recruit,
    .mdl-common.key-message,
    .mdl-common.problem,
    .mdl-common.solution,
    .mdl-common.product-img {
        background: none;
    }
    .mdl-common.message1+.mdl-common.message2 {
        margin-top: 60px;
    }
    .mdl-common-imgsp,
    .business-blockimg {
        margin-bottom: 30px;
    }
    .mdl-common.mission,
    .mdl-col.mission {
        height: auto;
    }
    .mdl-common .mission-img,
    .mdl-col .mission-img {
        width: auto;
        height: auto;
        right: 50%;
        bottom: 40px;
        transform: translateX(50%);
        -webkit-transform: translateX(50%);
    }
    .mdl-common.mission .inner,
    .mdl-col.mission .inner {
        padding-bottom: 220px;
    }
}


/*メンバーリスト（一人・幅いっぱい）*/

.mdl-member-details-wrap+.mdl-member-details-wrap {
    margin-top: 40px;
}

.mdl-member-details {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    -webkit-align-items: start;
    align-items: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.mdl-member-img {
    width: 100%;
    min-width: 240px;
    margin-right: 70px;
    flex: 1;
}

.mdl-member-details .small-txt,
.mdl-member-details .mdl-member-comment {
    color: #676767;
}

.mdl-member-neutral {
    margin-top: 16px;
}

.mdl-member-neutral .small-txt-gray {
    line-height: 1.1rem;
}

.mdl-member-neutral .ttl-txt {
    line-height: 1.6rem;
}

.mdl-member-neutral .mdl-member-comment {
    margin-top: 32px;
}

.mdl-member-neutral .post {
    margin-top: 3px;
}


/*名前の上につくバッジ*/

.mdl-member-badge {
    margin: 0 0 5px 310px;
    padding-top: 7px;
}


/*member写真が裏返る*/

@media screen and (max-width: 768px) {
    .mdl-member-details {
        display: block;
    }
    .mdl-member-img {
        width: 50%;
        min-width: 50%;
        margin: auto;
    }
    .mdl-member-comment normal-txt {
        margin-top: 16px;
    }
    .mdl-member-badge {
        margin: auto;
        padding: 0 0 8px 0;
        text-align: center;
    }
    .mdl-member-neutral .small-txt,
    .mdl-member-neutral .ttl-min-jp,
    .mdl-member-neutral .ttl-txt,
    .mdl-member-neutral .post {
        text-align: center;
    }
}


/*3カラムのリスト（画像＋タイトル＋テキスト）*/

.mdl-3col-list {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    margin-top: 42px;
}

.mdl-3col-list>li,
.mdl-3col-list .list-symbol {
    display: inline-block;
    width: calc((99.9% - 80px) / 3);
    position: relative;
}


/*is-hideがついたら非表示に*/

.mdl-3col-list article.is-hide {
    display: none;
}

.mdl-3col-list>li+li {
    margin-left: 40px;
}

.mdl-3col-list article {
    margin: 54px 0 0 40px;
    display: inline-block;
    width: calc((99.9% - 120px) / 3);
    position: relative;
}

.mdl-3col-list>li:nth-child(3n+1) {
    margin-left: 0;
}

.mdl-3col-list>li:nth-child(n+4) {
    margin-top: 54px;
}

.mdl-3col-list.report .mdl-3col-img img {
    height: 230px;
    width: 100%;
}

.flow-character-wrap+.mdl-3col-list {
    width: calc(100% + 40px);
    margin-left: -40px;
}

@media screen and (max-width: 768px) {
    .flow-character-wrap+.mdl-3col-list {
        width: 100%;
        margin-left: 0;
    }
    .mdl-3col-list.report .mdl-3col-img img {
        height: auto;
    }
}

.mdl-3col-img {
    margin-bottom: 12px;
}

.mdl-3col-txt {
    margin-top: 8px;
}

.mdl-3col-ttl {
    margin-top: 18px;
    margin-bottom: 0px;
    padding-bottom: 18px;
    border-bottom: 4px solid #676767;
}


/*2カラムのリスト（画像＋タイトル＋テキスト）*/

.mdl-2col-list {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    margin-top: 16px;
}

.mdl-2col-list>li,
.mdl-2col-list .list-symbol {
    display: inline-block;
    width: calc((100% - 36px) / 2);
    position: relative;
}

.mdl-2col-list>li+li {
    margin-left: 36px;
}

.mdl-2col-list>li:nth-child(2n+1) {
    margin-left: 0;
}

.mdl-2col-list>li:nth-child(n+3) {
    margin-top: 40px;
}

.mdl-2col-img {
    margin-bottom: 8px;
}

.mdl-2col-img img {
    width: 100%;
    height: 200px;
    object-fit: contain;
    object-position: center;
}

.mdl-2col-list.report .report-ttl {
    font-weight: bold;
}

.mdl-2col-list.report .report-txt {
    font-size: 2rem;
    font-weight: bold;
    margin-top: 2px;
    line-height: 1.5;
}

.mdl-2col-list.report .report-date {
    color: #B7B7B7;
    margin-top: 10px;
}

@media screen and (max-width: 768px) {
    .mdl-2col-list>li,
    .mdl-2col-list .list-symbol,
    .mdl-3col-list article {
        width: 100%;
    }
    .mdl-3col-list article {
        margin-left: 0;
        margin-top: 36px;
    }
    .mdl-2col-list>li+li {
        margin-left: 0;
        margin-top: 36px;
    }
    .mdl-2col-list.report .report-txt {
        font-size: 1.6rem;
    }
    .mdl-2col-img img {
        width: 100%;
        height: auto;
    }
}


/*1カラムのリスト（画像＋タイトル＋テキスト）*/

.mdl-1col-list {
    margin-top: 16px;
}

.mdl-1col-list>li,
.mdl-1col-list .list-symbol {
    display: inline-block;
    width: 100%;
    position: relative;
}

.mdl-1col-list>li+li {
    margin-top: 18px;
}

.mdl-1col-img {
    margin-bottom: 8px;
}

.mdl-1col-img img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    object-position: center;
}

.mdl-1col-list.report .report-txt {
    font-weight: bold;
    margin-top: 2px;
    line-height: 1.5;
}

.mdl-1col-list.report .report-date {
    color: #B7B7B7;
    margin-top: 2px;
}

@media screen and (max-width: 768px) {
    .mdl-1col-list {
        display: flex;
        display: -webkit-flex;
        display: -ms-flexbox;
        /* IE10 */
        flex-wrap: wrap;
    }
    .mdl-1col-list>li,
    .mdl-1col-list .list-symbol {
        width: calc((100% - 24px) / 2);
    }
    .mdl-1col-list>li+li {
        margin-top: 0;
    }
    .mdl-1col-list>li:nth-child(even) {
        margin-left: 24px;
    }
    .mdl-1col-list>li:nth-child(n+3) {
        margin-top: 20px;
    }
}


/*日付が入る場合*/

.mdl-3col-date {
    height: 32px;
    margin-left: 104px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #6E6E6E;
    position: relative;
}

.mdl-3col-date::before {
    content: "";
    position: absolute;
    width: 40px;
    height: 70px;
    background: url('https://corp-site.mazrica.com/assets/images/common/list_pass_orange.png') no-repeat top center;
    background-size: 40px 70px;
    top: 2px;
    left: -50px;
}

@media screen and (max-width: 768px) {
    .mdl-3col-list {
        margin-top: 24px;
    }
    .mdl-3col-list>li {
        width: 100%;
        margin: 0;
    }
    .mdl-3col-list>li+li {
        margin: 0;
    }
    .mdl-3col-list>li:nth-child(n+2) {
        margin-top: 40px;
    }
    .mdl-3col-img img {
        width: 100%;
    }
    .mdl-1col-img img {
        height: auto;
    }
}


/*アイコン３カラムリスト*/

.mdl-icon-img img {
    display: block;
    margin: auto;
    max-height: 200px;
    padding-bottom: 24px;
}


/*object-fit*/

.mdl-1col-img img,
.mdl-separate-img img,
.mdl-3col-img img,
.mdl-icon-img img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -o-object-position: top center;
    object-position: top center;
}


/*縦長名前*/

img.mdl-team-nameimg {
    width: 16px;
    margin-right: 8px;
}

img.mdl-team-faceimg {
    width: calc(100% - 24px);
}


/*#リンク*/

.mdl-label {
    display: inline;
}

.mdl-label li {
    display: inline-block;
    position: relative;
    padding: 0 20px 6px 0;
    font-size: 1.2rem;
    font-weight: bold;
}

.mdl-label li button {
    font-size: 1.2rem;
    font-weight: bold;
}

.mdl-label li::before {
    content: "#";
}

.mdl-label a,
.mdl-label button {
    color: #333;
}

.ttl-min-jp+.mdl-label {
    margin-top: 10px;
    display: block;
}

.mdl-nametag {
    margin-left: 24px;
}

.mdl-label.gray,
.mdl-label.gray a,
.mdl-label.gray button {
    color: #B4B4B4;
}


/*#リンク（たて）*/

.mdl-label.label-length {
    margin-top: 14px;
    display: block;
}

.mdl-label.label-length li {
    display: block;
}

@media screen and (max-width: 768px) {
    .mdl-label.label-length li {
        display: inline-block;
        width: 50%;
        box-sizing: border-box;
    }
    .mdl-label.label-length {
        display: flex;
        display: -webkit-flex;
        display: -ms-flexbox;
        /* IE10 */
        flex-wrap: wrap;
    }
}


/*画像＋の下リスト*/

.mdl-3col-line {
    margin-top: 5px;
}

.mdl-3col-line li {
    border-bottom: 1px solid #D8D8D8;
    position: relative;
}

.col-line-link {
    padding: 18px 30px 18px 0;
    display: block;
}

.col-job-link {
    padding: 18px 30px 5px 0;
    display: block;
}

.mdl-3col-line li::after {
    position: absolute;
    content: "";
    background: url('https://corp-site.mazrica.com/assets/images/common/txt_link_small.png') no-repeat;
    background-size: 30px 18px;
    width: 30px;
    height: 18px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.col-line-toptxt {
    height: 27px;
    display: block;
    margin-bottom: 18px;
}


/*3カラムリストの画像の上にシンボルアイコンが入る*/

.mdl-3col-list .list-symbol {
    position: absolute;
    width: 100%;
    z-index: 1;
    left: 40px;
    top: -16px;
}

.list-symbol li {
    display: inline-block;
}

.list-symbol li+li {
    margin-left: 10px;
}


/*画像＋横にタイトル（主にマツリカタイムスで使用）*/

.mdl-separate-list li {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    /* IE10 */
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.8;
}

.mdl-separate-list li+li {
    margin-top: 24px;
}

.mdl-separate-img {
    width: 120px;
    margin-right: 16px;
}

.mdl-separate-txt {
    flex: 1;
}


/*リスト＋リスト*/

.mdl-1col-list+.mdl-separate-list {
    margin-top: 40px;
}


/*メンバータグ*/

.member-tag-wrap,
.menu-border {
    border-top: 4px solid #FF5C00;
    border-bottom: 4px solid #FF5C00;
    padding: 24px 0;
}

.member-tag-wrap .member-tag-area {
    margin: 12px 0 30px;
}

.tag-toggle {
    display: none;
    opacity: 0;
}

.tag-toggle.active {
    display: inline;
    opacity: 1;
    transition: all 500ms 0s ease;
}


/*オレンジボーダー上下*/

.menu-border {
    margin-bottom: 160px;
}

.menu-anchor {
    font-weight: bold;
    text-align: center;
}

.menu-anchor img {
    height: 16px;
    display: block;
}

.menu-anchor li {
    display: inline-block;
    width: 240px;
    padding: 4px 6px;
    margin: 0 24px;
    background: rgba(11, 2, 118, .1);
    border-radius: 16px;
}

.menu-anchor li a {
    display: block;
    font-size: 1.0rem;
}

@media screen and (max-width: 768px) {
    .recruitment-type-img {
        width: 100%;
    }
    .menu-anchor {
        display: flex;
        display: -webkit-flex;
        display: -ms-flexbox;
        /* IE10 */
        flex-wrap: wrap;
    }
    .menu-anchor li {
        width: 50%;
        margin: 0;
    }
    .menu-anchor li a {
        display: inline-block;
    }
    .menu-anchor li:nth-child(-n+2) {
        margin-bottom: 16px;
    }
    .menu-anchor img {
        height: 16px;
    }
}


/*キャラクターアイコンタグ（一覧）*/

.flow-character-wrap {
    width: 100%;
    position: fixed;
    margin: auto;
    top: 120px;
    left: 0;
    right: 0;
    z-index: 1;
}

.flow-character {
    width: 24px;
    position: absolute;
    top: 0;
    right: 30px;
}

.flow-character-ttl {
    width: 13px;
    margin: auto;
    padding-bottom: 22px;
}

.character-icon-list {}

.character-icon-list li {
    position: relative;
    margin-bottom: 20px;
}

.character-icon-list li::before,
.character-icon-list li::after {
    position: absolute;
    transition: all 0.3s ease 0s;
    opacity: 0;
}

.character-icon-list li::before {
    content: "";
    border: 8px solid transparent;
    border-left-color: #333;
    top: 4px;
    left: -12px;
}

.character-icon-list li::after {
    content: attr(data-tooltip);
    display: block;
    font-size: 1.2rem;
    padding: 5px;
    background: #333;
    color: #fff;
    top: 0;
    right: 35px;
    word-break: keep-all;
}

.character-icon-list li:hover::before {
    opacity: 1;
}

.character-icon-list li:hover::after {
    opacity: 1;
}

.character-icon-symbol {
    width: 33px;
    margin: auto;
    display: block;
}

.character-icon-list li .sp-symbol-txt {
    display: none;
}

@media screen and (max-width: 768px) {
    .character-icon-list {
        /* margin-bottom: 45px; */
    }
    .flow-character-wrap {
        position: static;
    }
    .flow-character {
        position: static;
        width: 100%;
    }
    .flow-character-ttl {
        width: 100%;
        padding-bottom: 15px;
    }
    .flow-character-ttl img {
        height: 13px;
    }
    .character-icon-list li {
        display: inline-block;
        padding: 0 5px;
        margin-bottom: 12px;
        position: relative;
        height: 50px;
    }
    .character-icon-list li:hover::before {
        opacity: 0;
    }
    .character-icon-list li:hover::after {
        opacity: 0;
    }
    .character-icon-symbol {
        width: 24px;
    }
    .character-icon-list li::before {
        border-top-color: #333;
        top: -11px;
        left: 14px;
    }
    .character-icon-list li::after {
        top: -35px;
        right: -30px;
        min-width: 70px;
        text-align: center;
    }
    .character-icon-list li .character-icon-symbol {
        width: 24px;
        position: absolute;
        left: 50%;
        transform: translate(-50%, -40%);
        top: 30%;
    }
    .character-icon-list li .sp-symbol-txt {
        display: block;
        font-size: 0.9rem;
        font-weight: bold;
        padding-top: 35px;
    }
}


/*個別設定*/

.top-aboutus .mdl-common {
    width: 100%;
    max-width: 580px;
    padding-right: 80px;
    box-sizing: border-box;
}

.top-aboutus .ttl-small-jp {
    margin-bottom: 50px;
}

.top-aboutus-bg {
    position: relative;
}

@media screen and (max-width: 768px) {
    .top-aboutus .mdl-flex {
        display: block;
    }
    .top-aboutus .mdl-common {
        max-width: 100%;
        padding-right: 0;
    }
    .top-aboutus {
        padding: 70px 0;
    }
    .top-aboutus .ttl-small-jp {
        margin-bottom: 40px;
    }
    .top-aboutus .normal-txt {
        margin-top: 40px;
    }
}

.mdl-separate-left,
.mdl-separate-right {
    padding: 120px 0;
    width: 50%;
    position: relative;
}

/* .mdl-separate-left::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/top/bg_business.png') no-repeat top center;
    background-size: contain;
    width: 100%;
    max-width: 466px;
    height: 100%;
    max-height: 466px;
    top: 40%;
    left: -10%;
    z-index: -1;
}

.mdl-separate-right::after {
    content: "";
    position: absolute;
    background: url('https://corp-site.mazrica.com/assets/images/top/bg_senses.png') no-repeat top center;
    background-size: contain;
    width: 100%;
    max-width: 580px;
    height: 100%;
    max-height: 350px;
    top: 10%;
    right: -20%;
    z-index: -1;
} */

.mdl-separate-left .mdl-separate-inner {
    width: 100%;
    max-width: 400px;
    margin: 0 150px 0 auto;
}

.mdl-separate-right .mdl-separate-inner {
    width: 100%;
    max-width: 400px;
    margin: 64px auto 0 72px;
}

.position-link {
    position: absolute;
    bottom: 50px;
    right: 32px;
}

@media screen and (max-width: 768px) {
    .mdl-separate-left,
    .mdl-separate-right {
        padding: 70px 30px;
        width: 100%;
        box-sizing: border-box;
    }
    .business.mdl-flex {
        display: block;
    }
    .position-link {
        position: static;
        text-align: right;
        margin-top: 40px;
    }
    .mdl-separate-right .mdl-separate-inner {
        max-width: 100%;
        margin: 0;
    }
}


/*TOP マツリカタイムス　タイトル＋リンク*/

.ttl-link .txt-link {
    margin: -10px 0 0 21px;
}

@media screen and (max-width: 768px) {
    .ttl-link {
        display: block;
    }
    .ttl-link .txt-link {
        margin: 30px 0;
        display: inline-block;
    }
}


/* マツリカタイムス RECOMMEND */
.recommend-block{
    clear: both;
}
.recommend-block ul.related_post{
    margin:15px 0;
}
.recommend-block ul.related_post li{
    margin-bottom: 10px;
    clear: both;
    padding: 20px;
    display: block;
    border:1px solid #dedede;
    height:160px;
}
.recommend-block ul.related_post .wp_rp_publish_date{
    float: left;
    display: block;
}
.recommend-block ul.related_post .wp_rp_thumbnail{
    display: block;
    float: left;
    margin-right: 20px;
}
.recommend-block ul.related_post .wp_rp_title{
    float: left;
    display: block;
    /* clear: both; */
    font-weight: bold;
}
@media screen and (min-width:1004px) {
    .recommend-block ul.related_post .wp_rp_publish_date{
        width: 50%;
    }
    .recommend-block ul.related_post .wp_rp_thumbnail img{
        width:280px;
        height: 160px;
    }
    .recommend-block ul.related_post .wp_rp_title{
        width: 47%;
    }
}
@media screen and (min-width:769px) {

}
@media screen and (max-width: 1003px) {
    .recommend-block ul.related_post li{
        padding: 13px;
        height: 80px;
    }
    .recommend-block ul.related_post .wp_rp_publish_date{
        width: 47%;
    }
    .recommend-block ul.related_post .wp_rp_publish_date::after{
        clear:both;
        content:" ";
    }
    .recommend-block ul.related_post .wp_rp_thumbnail{
        margin-right: 13px;
        height: auto;
    }
    .recommend-block ul.related_post .wp_rp_thumbnail img{
        width:140px;
        height: 80px;
    }
    .recommend-block ul.related_post .wp_rp_title{
       width: 60%;
       font-size: 0.8em;
    }
}
@media screen and (max-width: 588px) {

    .recommend-block ul.related_post .wp_rp_title{
       width: 48%;
       font-size: 0.8em;
    }
}
@media screen and (max-width: 320px) {
    .recommend-block ul.related_post{

    }
    .recommend-block ul.related_post li{
        height: 70px
    }
    .recommend-block ul.related_post .wp_rp_thumbnail img{
        width:77px;
        height:44px;
    }
    .recommend-block ul.related_post .wp_rp_title{
        width: 60%;
        font-size: 0.7em;
    }
}
.footer__copyright {
    margin-top: 3rem;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-end;
}
@media screen and (max-width: 768px) {
    .footer__copyright {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }
}

.isms_certified {
    text-align: center;
    font-size: 1rem;
}
.isms_certified__logos {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin-bottom: 8px;
    gap: 24px;
}
.isms_certified__logos img {
    width: 80px;
    height: auto;
}

