@charset "UTF-8";
/*====================================================================================
 * ■002.page-service
 * ■003.page-property
 * ■004.page-flow
 * ■005.page-company
 * ■006.page-news
 * ■007.page-contact
 */
section > [class*="Wrap"] {
    padding-top: 45px;
    padding-bottom: 45px;
}

@media (min-width: 576px) {
    section > [class*="Wrap"] {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

@media (min-width: 768px) {
    section > [class*="Wrap"] {
        padding-top: 75px;
        padding-bottom: 75px;
    }
}

/*====================================================================================
 * ■002.page-service
 */
/* -----------------------------------------------
 * 2-2.  service
 * -------------------------------------------- */
.serviceWrap {
    background-color: #f5f5f0;
}

.serviceSec {
    position: relative;
    padding: 30px 0 0;
}

.serviceSec#service001 {
    margin-top: -15px;
}

.serviceSec#service003 {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.serviceSec__header {
    position: relative;
}

.serviceSec__header::before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    padding-top: 59.58904%;
    background-size: cover;
    background-color: #0c563c;
}

#service001 .serviceSec__header::before {
    background-image: url(../images/top/service001.jpg);
}

#service002 .serviceSec__header::before {
    background-image: url(../images/top/service002.jpg);
}

#service003 .serviceSec__header::before {
    background-image: url(../images/top/service003.jpg);
}

.serviceSec__ttl {
    margin: -75px 15px 0;
    padding: 30px 30px 15px;
    background-color: rgba(255, 255, 255, 0.95);
}

.serviceSec__ttl .ttl-number__hdg {
    font-size: 32px;
}

.serviceSec__inner {
    margin-top: 30px;
}

.serviceSec__hdg {
    margin-bottom: .75em;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: #0c563c;
}

#service001 .serviceSec__item:nth-of-type(1) .crd-simple::before {
    background-image: url(../images/service/service101.jpg);
}

#service001 .serviceSec__item:nth-of-type(2) .crd-simple::before {
    background-image: url(../images/service/service102.jpg);
}

#service001 .serviceSec__item:nth-of-type(3) .crd-simple::before {
    background-image: url(../images/service/service103.jpg);
}

#service002 .serviceSec__item:nth-of-type(1) .crd-simple::before {
    background-image: url(../images/service/service201.jpg);
}

#service002 .serviceSec__item:nth-of-type(2) .crd-simple::before {
    background-image: url(../images/service/service202.jpg);
}

#service002 .serviceSec__item:nth-of-type(3) .crd-simple::before {
    background-image: url(../images/service/service203.jpg);
}

#service003 .serviceSec__item:nth-of-type(1) .crd-simple::before {
    background-image: url(../images/service/service301.jpg);
}

#service003 .serviceSec__item:nth-of-type(2) .crd-simple::before {
    background-image: url(../images/service/service303.jpg);
}

#service003 .serviceSec__item:nth-of-type(3) .crd-simple::before {
    background-image: url(../images/service/service302.jpg);
}

@media (min-width: 576px) {
    .serviceWrap {
        overflow: hidden;
    }
    .serviceSec {
        padding: 45px 0;
    }
    .serviceSec#service001 {
        margin-top: -30px;
    }
    .serviceSec__header::before {
        width: 87.67123%;
        padding-top: 52.24245%;
    }
    #service001 .serviceSec__header::before,
    #service003 .serviceSec__header::before {
        margin-right: auto;
        margin-left: -39px;
    }
    #service002 .serviceSec__header::before {
        margin-right: -39px;
        margin-left: auto;
    }
    .serviceSec__ttl {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 400px;
        height: 300px;
        padding: 30px 30px 0;
        background-color: rgba(12, 86, 60, 0.95);
        /* background-image: url(../common_img/bnrs-mark.svg);
        background-position: right 30px bottom;
        background-repeat: no-repeat; */
    }
    .serviceSec__ttl *,
    .serviceSec__ttl *::before {
        color: #fff;
    }
    .serviceSec__ttl .ttl-number {
        width: 100%;
    }
    .serviceSec__ttl .ttl-number__hdg {
        font-size: 48px;
    }
    .serviceSec__ttl .ttl-number__num {
        background-image: -webkit-gradient(linear, left top, right top, from(rgba(245, 245, 240, 0.9)), to(transparent));
        background-image: -webkit-linear-gradient(left, rgba(245, 245, 240, 0.9) calc(100% - 2em), transparent calc(100% - 2em));
        background-image: linear-gradient(90deg, rgba(245, 245, 240, 0.9) calc(100% - 2em), transparent calc(100% - 2em));
    }
    #service001 .serviceSec__ttl,
    #service003 .serviceSec__ttl {
        right: -24px;
        left: auto;
    }
    #service002 .serviceSec__ttl {
        right: auto;
        left: -24px;
    }
    .serviceSec__hdg {
        font-size: 24px;
        text-align: left;
    }
}

@media (min-width: 1025px) {
    .serviceSec {
        padding: 60px 0;
    }
    .serviceSec#service001 {
        margin-top: -45px;
    }
    .serviceSec__header::before {
        width: 876px;
        padding-top: 44.61538%;
    }
    #service001 .serviceSec__header::before,
    #service003 .serviceSec__header::before {
        margin-right: auto;
        margin-left: -130px;
    }
    #service002 .serviceSec__header::before {
        margin-right: -130px;
        margin-left: auto;
    }
    .serviceSec__ttl {
        top: 0;
        bottom: 0;
        width: 630px;
        height: 401px;
        padding: 75px 75px 0;
        background-position: right 75px bottom;
    }
    .serviceSec__ttl .ttl-number__hdg {
        font-size: 60px;
    }
    #service001 .serviceSec__ttl {
        right: -60px;
        left: auto;
    }
    #service002 .serviceSec__ttl {
        right: auto;
        left: -60px;
    }
    #service003 .serviceSec__ttl {
        right: -60px;
        left: auto;
    }
    .serviceSec__hdg {
        font-size: 35px;
    }
    .serviceSec__items {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-right: -15px;
        margin-left: -15px;
    }
    .serviceSec__item {
        width: 33.3%;
        padding-right: 15px;
        padding-left: 15px;
    }
}

/* -----------------------------------------------
 * 2-3.  knowledge
 * -------------------------------------------- */
.knowledgeWrap {
    background-size: 30px 30px;
    background-image: -webkit-radial-gradient(#dedede 1px, #ffffff 2px);
    background-image: radial-gradient(#dedede 1px, #ffffff 2px);
}

.knowledgeSec {
    margin-top: 30px;
}

.knowledgeSec__items {
    counter-reset: knowledge;
    margin-top: 15px;
}

.knowledgeSec__item {
    margin-bottom: 30px;
    counter-increment: knowledge;
}

.knowledgeSec__cont {
    padding: 15px;
    border-radius: 15px;
    background-color: #fff;
    -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
}

/* .knowledgeSec__item:last-of-type .knowledgeSec__cont {
    background-color: #f5f5f0;
} */

.knowledgeSec__ttl, .knowledgeSec__check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: .75em;
    padding-right: .25em;
    padding-left: .25em;
    padding: 0.25em;
    border-radius: .9em;
    font-weight: 500;
    line-height: 1.2;
    color: #fff;
}

.knowledgeSec__ttl {
    font-size: 108%;
    background-color: #0c563c;
}

.knowledgeSec__ttl::before {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    flex-shrink: 0;
    width: 1.2em;
    height: 1.2em;
    margin-right: 0.5em;
    line-height: 1.2;
    border-radius: 100%;
    border: 1px solid #fff;
    content: counter(knowledge);
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 500;
}

.knowledgeSec__check {
    font-family: 'Roboto', sans-serif;
    font-size: 120%;
    text-transform: uppercase;
    background-color: rgba(5, 171, 113, 0.5);
}

.knowledgeSec__check::before {
    content: "";
    display: inline-block;
    width: 0.8em;
    height: 0;
    margin-left: .5em;
    margin-right: .5em;
    padding-top: 1.2em;
    background-image: url(../common_img/bnrs-beginner.svg);
    background-size: cover;
}

@media (min-width: 576px) {
    .knowledgeSec {
        margin-top: 45px;
    }
    .knowledgeSec__cont {
        padding: 22.5px;
    }
}

@media (min-width: 768px) {
    .knowledgeSec {
        margin-top: 60px;
    }
    .knowledgeSec__cont {
        height: 100%;
        padding: 22.5px;
    }
    .knowledgeSec__ttl {
        font-size: 132%;
    }
    .knowledgeSec__check {
        font-size: 160%;
    }
}

@media (min-width: 1025px) {
    .knowledgeSec__cont {
        height: 100%;
        padding: 30px;
    }
}

/*====================================================================================
 * ■003.page-property
 */
.propertySec:nth-of-type(odd) .propertyWrap {
    background-color: #fff;
}

.propertySec:nth-of-type(even) .propertyWrap {
    background-color: #f5f5f0;
}

.propertyIn,
.propertyTmb {
    margin-top: 30px;
}

.propertyTmb {
    display: none;
}
.propertyTmb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    width:  100%;
    height: calc(100% - 30px);
    pointer-events: none;
}

.propertySec:nth-of-type(odd) .propertyTmb {
    background-color: #f5f5f0;
}

.propertySec:nth-of-type(even) .propertyTmb {
    background-color: #fff;
}

.property__img,
.propertyTmb__fig {
    position: relative;
}

.property__hdg,
.propertyTmb__hdg {
    position: absolute;
    bottom: 30px;
}
.propertyTmb__hdg {
    bottom: 1em;
    left: -10px;
}
.property__hdg {
    left: -15px;
}

.property__hdg--txt,
.propertyTmb__hdg--txt {
    display: inline-block;
    margin-top: 0.5em;
    padding: .25em 0.5em;
    font-weight: 500;
    background-color: rgba(12, 86, 60, 0.8);
    color: #fff;
}
.soldout .property__hdg--txt,
.soldout .propertyTmb__hdg--txt {
    background-color: rgba(171, 5, 5, 0.8);
}
.property__hdg--txt {
    font-size: 20px;
}

.propertyTmb__lbl,
.property__lbl {
    display: inline-block;
    font-weight: 500;
    background-color: #0c563c;
    color: #fff;
}

.propertyTmb__lbl.lbl-eme,
.property__lbl.lbl-eme {
    background-color: #05ab71;
}

.propertyTmb__lbl.lbl-red,
.property__lbl.lbl-red {
    background-color: #ab0505;
}

.propertyTmb__lbl {
    position: absolute;
    top:  0;
    left: 15px;
    transform: translateY(-50%);
    padding: .333em .666em;
}

.propertyTmb__fig{
    width: 45%;
    pointer-events: auto;
}
.propertyTmb__cont {
    position: relative;
    width: 55%;
    padding: 15px;
    color: #343434;
}

.propertyTmb__btn {
    display: block;
    width: 8em;
    margin-top: 15px;
    margin-left: auto;
    margin-right: 0;
    padding: .333em .666em;
    color: #0c563c;
    border: 1px solid #0c563c;
    background-color: #fff;
    pointer-events: auto;
    transition: .2s;
}
.propertyTmb__btn::before {
    content: "→";
    margin-right: 0.25em;
}
.propertyTmb__btn.is-active {
    background-color: #05ab71;
    border-color: #05ab71;
    color: #ffffff;
}

.propertyw__btn {
    display: block;
    width: 8em;
    margin-top: 15px;
    margin-left: auto;
    margin-right: 0;
    padding: .333em .666em;
    color: #0c563c;
    border: 1px solid #0c563c;
    background-color: #fff;
    pointer-events: auto;
    transition: .2s;
}
.propertyw__btn::before {
    content: "→";
    margin-right: 0.25em;
}
.propertyw__btn.is-active {
    background-color: #05ab71;
    border-color: #05ab71;
    color: #ffffff;
}

.propertyTmb__data {
    margin-top: 15px;
}
.propertyTmb__head {
    display: block;
    font-size: 11px;
    font-weight: bold;
    color: #0c563c;
}
.propertyTmb__desc {
    margin-bottom:  .666em;
    padding-bottom: .666em;
    border-bottom: 1px solid #ddd;
    font-size: 13px;
}

.propertyIn {
    margin-top: 0;
    padding-left: 20px;
    background-color: transparent;
}
.property__hdg {
    left: -15px;
    font-size: 21px;
}
.property__cont {
    padding: 30px 0 150px;
    padding: 30px 0 30px;
    /* iPhone下位機種 head 64 + foot 49*/
    /* iPhone上位機種 head 140 + foot 83*/
}

.property__cont [class*="prg-"] {
    margin-bottom: 15px;
}

.property__lbl {
    margin-bottom: 1em;
    padding: 0.2em 1em 0.3em;
    font-size: 14px;
    line-height: 1.2;
}

.property__more {
    margin-top: 30px;
}
.property__more--items {
    text-align: center;
}
.property__more--item {
    margin-top: 15px;
}
.property__btn--pdf,
.property__btn--out {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: .666em;
    background-color: #101010;
    color: #fff;
    transition: .3s;
}
.property__btn--pdf:hover,
.property__btn--out:hover {
    background-color: #05ab71;
}
.property__btn--pdf::before,
.property__btn--out::before {
    content: "";
    display: inline-block;
    width:  1.2em;
    height: 1.2em;
    margin-right: 0.5em;
    background-repeat: no-repeat;
    background-size: cover;
}
.property__btn--pdf::before {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224px%22%20height%3D%2224px%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M13%2C9H18.5L13%2C3.5V9M6%2C2H14L20%2C8V20A2%2C2%200%200%2C1%2018%2C22H6A2%2C2%200%200%2C1%204%2C20V4A2%2C2%200%200%2C1%206%2C2M10.1%2C11.4C10.08%2C11.44%209.81%2C13.16%208%2C16.09C8%2C16.09%204.5%2C17.91%205.33%2C19.27C6%2C20.35%207.65%2C19.23%209.07%2C16.59C9.07%2C16.59%2010.89%2C15.95%2013.31%2C15.77C13.31%2C15.77%2017.17%2C17.5%2017.7%2C15.66C18.22%2C13.8%2014.64%2C14.22%2014%2C14.41C14%2C14.41%2012%2C13.06%2011.5%2C11.2C11.5%2C11.2%2012.64%2C7.25%2010.89%2C7.3C9.14%2C7.35%209.8%2C10.43%2010.1%2C11.4M10.91%2C12.44C10.94%2C12.45%2011.38%2C13.65%2012.8%2C14.9C12.8%2C14.9%2010.47%2C15.36%209.41%2C15.8C9.41%2C15.8%2010.41%2C14.07%2010.91%2C12.44M14.84%2C15.16C15.42%2C15%2017.17%2C15.31%2017.1%2C15.64C17.04%2C15.97%2014.84%2C15.16%2014.84%2C15.16M7.77%2C17C7.24%2C18.24%206.33%2C19%206.1%2C19C5.87%2C19%206.8%2C17.4%207.77%2C17M10.91%2C10.07C10.91%2C10%2010.55%2C7.87%2010.91%2C7.92C11.45%2C8%2010.91%2C10%2010.91%2C10.07Z%22%20%2F%3E%3C%2Fsvg%3E');
}
.property__btn--out::before {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224px%22%20height%3D%2224px%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M20%2C16V4H8V16H20M22%2C16A2%2C2%200%200%2C1%2020%2C18H8C6.89%2C18%206%2C17.1%206%2C16V4C6%2C2.89%206.89%2C2%208%2C2H20A2%2C2%200%200%2C1%2022%2C4V16M16%2C20V22H4A2%2C2%200%200%2C1%202%2C20V7H4V20H16Z%22%20%2F%3E%3C%2Fsvg%3E');
}

@media (max-width: 374px) {
    .propertyTmb__hdg--txt {
        font-size: 10px;
    }
    .propertyTmb__cont .prg-l2 {
        font-size: 10px;
    }
    .propertyTmb__lbl {
        font-size: 8px;
    }
    .propertyTmb__head {
        font-size: 6px;
    }
    .propertyTmb__desc {
        font-size: 8px;
    }
    .propertyTmb__btn {
        font-size: 11px;
    }
}
@media (min-width: 375px) and (max-width: 575px) {
    .propertyTmb__hdg--txt {
        font-size: 10px;
    }
    .propertyTmb__cont .prg-l2 {
        font-size: 11px;
    }
    .propertyTmb__lbl {
        font-size: 9px;
    }
    .propertyTmb__head {
        font-size: 8px;
    }
    .propertyTmb__desc {
        font-size: 9px;
    }
    .propertyTmb__btn {
        font-size: 12px;
    }
}

@media (min-width: 576px) {
    .propertyTmb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        width:  100%;
        height: calc(100% - 45px);
        margin-top: 45px;
        pointer-events: none;
    }
    .propertyTmb__fig{
        width: 33%;
        pointer-events: auto;
    }
    .propertyTmb__cont {
        width: 66%;
        padding: 30px;
        color: #343434;
    }
    .propertyTmb__lbl {
        left: 30px;
        padding: 0.333em 1em;
        font-size: 108%;
    }
}
@media (min-width: 576px) and (max-width: 1024px) {
    .propertyIn {
        max-width: 660px;
        margin-right: auto;
        margin-left:  auto;
    }
}
@media (min-width: 1025px) {
    .propertyTmb__fig {
        width: 50%;
    }
    .propertyTmb__cont {
        width: 50%;
        padding: 30px;
        color: #343434;
    }
    .propertyTmb__hdg {
        left: -15px;
    }
    .propertyTmb__hdg--txt {
        font-size: 120%;
    }

    .propertyIn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding-left: 30px;
        padding-bottom: 30px;
    }
    .property__img {
        width: 45%;
    }
    .property__cont {
        width: 100%;
        padding-top: 0;
        padding-bottom: 0;
    }
    .property__img + .property__cont {
        width: 55%;
        padding-left: 30px;
    }
    .property__lbl {
        font-size: 18px;
    }
    .property__more--items {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .property__more--item {
        width: 48%;
    }
    .property__more--item +.property__more--item {
        margin-left:  4%;
    }
}

.modal {
    display: none;
    position: fixed;
    z-index: 4001;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
}
.modal_bg {
    z-index: 4000;
    width:  100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.6);
}
.modal_content {
    position: absolute;
    top: 5vh;
    left: 50%;
    width: 96vw;
    height: 80vh;
    transform: translate(-50%, 0);
    border-radius: 5px;
    background-color: #fff;
}
.modal_content_inner {
    overflow: auto;
    width: 100%;
    height: calc(100%);
    padding: 20px 20px 0 0;
}
.modal_close {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: -22.5px;
    right: 10px;
    width:  45px;
    height: 45px;
    border-radius: 100%;
    background-color: #131313;
    color: #fff;
    border: 0 none !important;
    outline-color: transparent !important;
}
.modal_close::before {
    content: "＋";
    font-size: 30px;
    line-height: 1;
    transform: rotate(45deg);
}
.modal_close span {
    display: none;
}

@media (max-width: 1024px) {
    .modal_content {
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        transform: translate(0);
        border-radius: 0;
    }
    .modal_bg {
        /* display: none; */
        height: 200vh;
        background-color: #fff;
    }
    .modal_close {
        top:   5px;
        right: 5px;
    }
}
@media (min-width: 576px) and (max-width: 1024px) {
    .modal_close {
        top:   15px;
        right: 15px;
    }
    .propertyIn {
        max-width: 660px;
        margin-right: auto;
        margin-left:  auto;
    }
}
@media (min-width: 1025px) {
    .modal_content {
        top: 50%;
        left: 50%;
        width: 96vw;
        height: 90vh !important;
        transform: translate(-50%, -50%);
        max-width: 1200px;
    }
    .modal_content_inner {
        padding: 30px 30px 0 0;
    }
}


/*====================================================================================
 * ■004.page-flow
 */
.flowTab {
    padding-top: 30px;
}

.flowTab:nth-of-type(odd) {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(184, 184, 148, 0.3)), color-stop(50%, transparent));
    background-image: -webkit-linear-gradient(bottom, rgba(184, 184, 148, 0.3) 0%, transparent 50%);
    background-image: linear-gradient(0deg, rgba(184, 184, 148, 0.3) 0%, transparent 50%);
}

.flowTab:nth-of-type(even) {
    background-image: -webkit-linear-gradient(bottom, #f5f5f0 1px, rgba(0, 0, 0, 0.05) 1px, transparent 50%);
    background-image: linear-gradient(0deg, #f5f5f0 1px, rgba(0, 0, 0, 0.05) 1px, transparent 50%);
}

.flowTab:nth-of-type(4) {
    background-color: #f5f5f0;
}

.flowTab__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

.flowTab__items li:last-of-type {
    border-right: 1px solid #ddd;
}

.flowTab__item--w,
.flowTab__item--b {
    width: 33%;
}

.flowTab__lnk {
    display: block;
    padding: .666em 1em;
    border-width: 1px 0 0 1px;
    border-style: solid;
    /* border-color: #f5f5f0; */
    border-color: #ddd transparent transparent #ddd;
    font-size: 13px;
    text-align: center;
    color: #4e4e4e;
}

.flowTab__item--w .flowTab__lnk {
    background-color: #fff;
}

.flowTab__item--b .flowTab__lnk {
    background-color: #f5f5f0;
}

@media (min-width: 576px) {
    .flowTab__lnk {
        padding: .75em;
        font-size: 18px;
    }
}

@media (min-width: 1025px) {
    .flowTab:nth-of-type(even) {
        padding-top: 60px;
    }
    .flowTab__lnk {
        font-size: 22px;
    }
}

.flowSec:nth-of-type(even) {
    background-color: #f5f5f0;
}

.flowSec__items {
    counter-reset: step;
}

.flowSec__item {
    counter-increment: step;
    padding: 15px;
}

.flowSec__item + .flowSec__item {
    position: relative;
    margin-top: 30px;
}

.flowSec__item + .flowSec__item::before {
    content: "";
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 1px;
    height: 1px;
    border-width: 20px 15px;
    border-style: solid;
}

.flowSec:nth-of-type(odd) .flowSec__item {
    background-color: #f5f5f0;
}

.flowSec:nth-of-type(odd) .flowSec__item::before {
    border-color: #f5f5f0 transparent transparent;
}

.flowSec:nth-of-type(even) .flowSec__item {
    background-color: #fff;
}

.flowSec:nth-of-type(even) .flowSec__item::before {
    border-color: #fff transparent transparent;
}

.flowSec__header::before {
    content: "step0" counter(step);
    font-family: 'Roboto Condensed', sans-serif;
    color: #0c563c;
    font-style: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.flowSec__cont {
    padding-top: 15px;
}

.flowSec__cont [class*="prg-"] + [class*="prg-"] {
    margin-top: 15px;
}

.flowSec__hdg {
    font-size: 20px;
    font-weight: 500;
}

.flowSec__sub {
    display: block;
    margin-top: 15px;
    font-size: 108%;
    font-weight: 500;
    color: #0c563c;
}

.flowSec__desc + .flowSec__desc {
    margin-top: 15px;
}

@media (min-width: 576px) {
    .flowSec__item {
        padding: 30px;
    }
    .flowSec__item + .flowSec__item {
        margin-top: 45px;
    }
    .flowSec__item + .flowSec__item::before {
        top: -45px;
        border-width: 30px 22.5px;
    }
    .flowSec__header::before {
        font-size: 14px;
    }
    .flowSec__hdg {
        font-size: 22px;
    }
}

@media (min-width: 1025px) {
    .flowSec__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        background-image: -webkit-linear-gradient(left, transparent 315px, #4e4e4e 315px, #4e4e4e 316px, transparent 316px);
        background-image: linear-gradient(90deg, transparent 315px, #4e4e4e 315px, #4e4e4e 316px, transparent 316px);
        background-size: auto calc(100% - 60px);
        background-repeat: no-repeat;
        background-position: left center;
    }
    .flowSec__item + .flowSec__item {
        margin-top: 60px;
    }
    .flowSec__item + .flowSec__item::before {
        top: -60px;
        border-width: 40px 30px;
    }
    .flowSec__header {
        width: 330px;
        padding-right: 60px;
    }
    .flowSec__header::before {
        font-size: 16px;
    }
    .flowSec__cont {
        width: calc(100% - 330px);
        padding-top: 0;
    }
}

/*====================================================================================
 * ■005.page-company
 */
/* -----------------------------------------------
 * 5-1.  profile & philosophy
 * -------------------------------------------- */
.philosophy__catch {
    margin-bottom: 1.5em;
    text-align: center;
    color: #0c563c;
}

/* -----------------------------------------------
 * 5-2.  access
 * -------------------------------------------- */
.accessWrap {
    background-color: #f5f5f0;
}

.accessMap {
    position: relative;
    background-color: #fff;
}

.accessMap__map {
    padding: 15px;
}

.accessMap__data {
    padding: 0 15px 30px;
    background-color: #fff;
}

.accessMap__head {
    display: block;
    color: #0c563c;
}

.accessMap__desc {
    margin-top: 0.5em;
}

.accessMap__desc + .accessMap__head {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px solid #c5c5c5;
}

@media (min-width: 576px) {
    .accessMap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .accessMap__map {
        width: 52%;
    }
    .accessMap__data {
        width: 48%;
        padding: 15px;
    }
}

@media (min-width: 1025px) {
    .accessMap__map {
        padding: 30px;
    }
    .accessMap__data {
        padding: 30px;
    }
}

/*====================================================================================
 * ■006.page-news
 */
/* TMPL_news.css */
.newsContent {
    width: 100%;
    max-width: 1020px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
    padding-bottom: 30px;
}

@media (min-width: 768px) {
    .newsContent {
        padding-bottom: 60px;
    }
}

/*====================================================================================
 * ■007.page-contact
 */
/* -----------------------------------------------
 * 7-1.  contact
 * -------------------------------------------- */
.contactWrap .l-container {
    max-width: 990px;
}

/* -----------------------------------------------
 * 7-2.  phone
 * -------------------------------------------- */
.phoneWrap {
    position: relative;
}

.phoneWrap::after {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    content: "";
    display: block;
    width: calc(100% - 30px);
    max-width: 990px;
    height: 1px;
    border-bottom: 1px dashed #8d8d8d;
}

.phoneWrap .l-container {
    max-width: 990px;
}

.phone__lst {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.phone__lst .mod-inquiry__lnk {
    color: #222222 !important;
}

.phone__lst .mod-inquiry__tel,
.phone__lst .mod-inquiry__fax {
    margin-right: 0;
    margin-left: 0;
    white-space: nowrap;
}

.phone__lst .mod-inquiry__fax {
    margin-left: 30px;
}

@media (min-width: 576px) {
    .phone__lst .mod-inquiry__tel,
    .phone__lst .mod-inquiry__fax {
        -webkit-transform: scale(1.333);
        transform: scale(1.333);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    .phone__lst .mod-inquiry__fax {
        margin-left: 120px;
    }
}

@media (min-width: 1025px) {
    .phone__lst .mod-inquiry__tel,
    .phone__lst .mod-inquiry__fax {
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
    }
    .phone__lst .mod-inquiry__fax {
        margin-left: 225px;
    }
}

/* -----------------------------------------------
 * 7-3.  pp
 * -------------------------------------------- */
.ppWrap {
    background-color: #f5f5f0;
}

.ppWrap .l-container {
    max-width: 990px;
}
