@charset "utf-8";

html {
    font-size: 16px;
}

body {
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;
    line-height: 1.7;

    color: #000000;

    text-size-adjust: 100%;

    -webkit-text-size-adjust: 100%;

    -moz-text-size-adjust: 100%;

    -ms-text-size-adjust: 100%;

    -o-text-size-adjust: 100%;

    overflow-x: hidden;

}

* {

    box-sizing: border-box;

    margin: 0;

    padding: 0;

}



*::after,
*::before {

    box-sizing: border-box;

}



img {

    max-width: 100%;

    height: auto;

}

main {

    display: block;

}

a:hover,
a:focus,
a:visited {

    outline: none;

    border: none;

}



a {

    text-decoration: none;

    color: inherit
}



.clear {

    clear: both;

}



a[href^="tel:"] {

    cursor: default;

}



a[href^="tel:"]:hover {

    text-decoration: none;

}



br {

    font-size: 0;

}

.anchor_fixtop {

    display: block;

    position: relative;

    top: -80px;

    width: 100%;

    visibility: hidden;

}

.hv-o:hover {

    opacity: .7;

}

.fx {

    transition: .3s ease;

}

.flex {

    display: flex;

    flex-wrap: wrap;

}

.cont1280 {

    max-width: 1280px;

    width: 100%;

    margin: 0 auto;

}

.cont1160 {

    max-width: 1160px;

    width: 100%;

    margin: 0 auto;

}

.cont1700 {

    max-width: 1700px;

    width: 100%;

    margin: 0 auto;

}

.meiryo {

    font-family: "メイリオ", 'Meiryo', sans-serif;

}

.show-on-640 {

    display: none;

}



/* Header */

.hd::after {

    content: '';

    display: block;

    width: 100%;

    height: 5px;

    margin-top: 0.813rem;

    background: url('../img/common/hd-border.png');

}

.hd__logo {

    align-items: flex-end;

    padding-top: 1.438rem;

    padding-left: 4.375rem;

}

.hd__logo img {

    width: 173.083px;

}

.hd__logo__desc {

    font-size: 0.625rem;

    margin-left: 2.5rem;

    position: relative;

    top: -3px;

}

.hd__menu li {

    font-size: 1rem;

    font-family: "ヒラギノ明朝 Pro W5", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;

    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;

    font-weight: 500;

    margin-right: 3.125rem;

}

.hd__menu li:last-child {

    margin-right: 0;

}

.hd__menu {

    align-self: flex-end;

    margin-left: auto;

    padding-right: 4.375rem;

}

.hd__menu a:hover {

    text-decoration: underline;

}





header {

    position: fixed;

    z-index: 2147483647;

    background-color: white;

    width: 100%;

}





/* End Header */



/* Footer */

.ft-p1 {

    text-align: center;

    padding: 5.25rem 10px 4.688rem 10px;

}

.ft-logo {

    margin-bottom: 1.688rem;

}

.ft-logo img {

    width: 173.083px;

}

.ft-desc {

    font-size: 1rem;

    letter-spacing: 0.4px;

    line-height: 1.6875;

}

.ft-p2__item {

    background-repeat: no-repeat;

    background-position: center;

    background-size: cover;

    width: 50%;

    padding: 3.438rem 0 2.813rem 0;

    text-align: center;

}

.ft-p2__phone {

    margin-bottom: 1rem;

    display: inline-block;

}

.ft-p2__phone img {

    width: 238.424px;

}

.ft-p2__item-desc img {

    width: 211.311px;

}

.ft-p2__item__wrap {

    max-width: 640px;

    width: 100%;

    margin-left: auto;

}

.ft-p2__contact img {

    width: 263.334px;

}

.ft-p2__item__wrap--ct-1 {

    margin: 0;

}

.ft-p2__item--ct-1 {

    padding: 4.063rem 0;

}

.ft-map iframe {

    width: 100%;

    height: 580px;

    display: block;

}

.copyright {

    color: #fff;

    text-align: center;

    font-size: 0.625rem;

    padding: 0.625rem 10px;

    background: url('../img/common/ft-bg.png') no-repeat top center / cover;

}

#pagetop {

    cursor: pointer;

    position: fixed;

    bottom: 20px;

    right: 20px;

    border: none;

    outline: none;

    background: none;

    z-index: 999;

}

#pagetop img {

    width: 68px;

    height: 68px;

}

@media screen and (max-width: 1800px) {

    #pagetop {

        right: 20px;

    }

}

/* End Footer */



/* Elements */

.home-top-banner {
    text-align: center;
    position: relative;
    width: 100%;
    height: 100vh;
}

.home-top-banner__txt {

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

}

.home-top-banner__txt img {

    width: 135px;

}

video {

    width: 100%;

    height: 100%;

    object-fit: cover;

}

.home-sec-1 {

    position: relative;

    padding: 14.375rem 10px 13.75rem 10px;

}

.home-sec-1::before {

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    display: block;

    background: url('../img/top/bg-7.png') no-repeat 50% 8.125rem;

}

.gal-1__left {

    width: 47.65%;

    padding-right: 6.875rem;

    text-align: right;

}

.gal-1__left__img img {

    width: 312.437px;

}

.gal-1__right {

    position: relative;

    width: 52.35%;

}

.gal-1__p {

    font-family: "ヒラギノ明朝 Pro W4", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;

    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;

    font-weight: 400;

    letter-spacing: 0.4px;

    line-height: 1.68;

    font-size: 1rem;

    max-width: 496px;

}

.gal-1__p::before {

    content: '';

    display: block;

    background-color: #FA9708;

    width: 30px;

    height: 2px;

    margin-bottom: 3rem;

}

.home-sec-2 {

    background: url('../img/top/bg-3.png') no-repeat 50% 20%;

}

.title-1 {

    margin-bottom: 3.25rem;

}

.title-1 img {

    width: 119.429px;

}

.gal-2__left {

    padding-left: 4.063rem;

    padding-top: 8.125rem;

    width: 36.32%;

}

.gal-2__right {

    width: 63.68%;

    padding-bottom: 5rem;

}

.gal-2__img {

    margin-right: 2.45%;

    width: 48.71%;

}

.gal-2__img:last-child {

    margin-right: 0;

}

.gal-1__p--ct-1 {

    color: #fff;

    max-width: 265px;

    margin-bottom: 3.25rem;

}

.gal-1__p--ct-1::before {

    display: none;

}

.btn-link img {

    width: 257px;

}

.gal-3 {

    padding: 6.563rem 0 24.688rem 0;

    margin-bottom: 0.938rem;

    background: url('../img/top/bg-4.jpg') no-repeat top center / cover;

}

.gal-3__wrap {

    margin-left: auto;

    max-width: 810px;

    background-color: #fff;

    padding: 5.313rem 0 4.563rem 6.563rem;

}

.title-2 {

    margin-bottom: 1.875rem;

}

.title-2 img {

    width: 119.429px;

}

.gal-1__p--ct-2::before {

    display: none;

}

.gal-1__p--ct-2 {

    max-width: 278px;

}

.gal-4 {

    padding: 0 15px 7rem 15px;

    background-color: #EEEEEE;

}

.gal-4__item {

    margin-right: 1.04%;

    width: 24.22%;

}

.gal-4__item:last-child {

    margin-right: 0;

}

.gal-4__item5 {

    margin-right: 1.25%;

    width: 19%;

}

.gal-4__item5:last-child {

    margin-right: 0;

}


.gal-4__btn {

    text-align: center;

    margin-top: 3.75rem;

}

.gal-3--ct-1 {

    background-image: url('../img/top/bg-5.jpg');

    padding-bottom: 7rem;

    margin-bottom: 0;

}

.gal-3__btn {

    margin-top: 1.688rem;

}

.gal-5__img img {

    width: 174px;

}

.gal-5__left {

    width: 40.23%;

}

.gal-5__right {

    width: 59.77%;

}

.gal-5 {

    padding: 8.438rem 0 3.563rem 0;

}

.title-3 {

    margin-bottom: 1.563rem;

}

.title-3 img {

    width: 118.589px;

}

.gal-1__p--ct-3 {

    max-width: 587px;

}

.gal-1__p--ct-3::before {

    display: none;

}

.home-sec-5 {

    padding-bottom: 6.563rem;

    background: url('../img/top/bg-6.png') no-repeat 83% 25px;

}

.gal-5__left {

    padding-right: 9.063rem;

    text-align: right;

}

.gal-5__right {

    align-self: center;

}

.gal-6__item {

    width: 34.54%;

    margin-right: 3.125%;

    margin-left: -65px;

}

.gal-6__item:first-child {

    margin-left: 0;

}

.gal-6__item:last-child {

    margin-right: 0;

}

.gal-6-btn {

    margin-top: 3.125rem;

    text-align: center;

}

.gal-6__desc {

    line-height: 1.64;

    font-size: 1rem;

    /*color: #c8c8c8;*/

    padding: 0 15px;

    margin-top: 5.313rem;

}

.title-4 {

    text-align: center;

    margin-bottom: 0.75rem;

}

.title-4 img {

    width: 39.476px;

}

.home-sec-6 {

    padding: 4.25rem 20px 4.375rem 20px;

    background-color: #FAFAFA;

}

.para-1 {

    text-align: center;

    font-size: 0.938rem;

    letter-spacing: 0.4px;

    margin-bottom: 2.063rem;

}

.banner {

    text-align: center;

}

.banner img {

    /*width: 362.739px;*/

    width: 300px;

}

.banner a {

    background-color: #fff;

    display: inline-block;

    /*padding: 1.875rem 2.375rem;*/

    padding: 1.25rem 2.375rem;

    border: 1px solid #C9C9C9;

    border-radius: 10px;

}

.sub-top-banner {

    background-size: cover;

    background-position: bottom center;

    min-height: 510px;

    padding-top: 90px;

}

.sub-top-banner__txt {

    padding: 4.688rem 0 3.5rem 8.6rem;

}

.sub-top-banner__txt img {

    width: 100px;

}

.para-2 {

    font-size: 1rem;

    text-align: center;

    font-family: "ヒラギノ明朝 Pro W4", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;

    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;

    letter-spacing: 0.4px;

    line-height: 1.6875;

}

.ct-sec-1 {

    padding: 8.438rem 20px 16.125rem 20px;

}

.required {

    display: inline-block;

    color: #fff;

    background-color: #fa9708;

    font-family: "ヒラギノ明朝 Pro W4", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;

    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;

    font-size: 1rem;

    line-height: 1;

    letter-spacing: 0.4px;

    padding: 5px 9px;

    margin-right: 0.875rem;

}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {

    .required {

        padding: 8px 9px 3px 9px;

    }

}

.para-2--ct-1 {

    margin-top: 3.75rem;

    margin-bottom: 2.5rem;

}

.contact-form {

    max-width: 950px;

    width: 100%;

    margin: 0 auto;

}

.contact-form table {

    width: 100%;

    font-family: "ヒラギノ明朝 Pro W4", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;

    font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;

}

.contact-form td {

    border-bottom: 4px solid #fff;

    vertical-align: middle;

}

.contact-form td:first-child {

    width: 24.84%;

}

.contact-form input[type="text"],

.contact-form input[type="email"],

.contact-form input[type="tel"] {

    width: 100%;

    height: 36px;

    background-color: #f2f2f2;

    border: 1px solid #cccccc;

    outline: none;

    padding-left: 1rem;

    font-family: inherit;

    display: block;

}

.contact-form input[type="text"]::-ms-clear,

.contact-form input[type="email"]::-ms-clear,

.contact-form input[type="tel"]::-ms-clear {

    display: none;

}

.contact-form input[type="checkbox"] {

    width: 12px;

    height: 12px;

    display: block;

}

.contact-form__wrap {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

}

.required--ct-1 {

    margin-left: auto;

}

.contact-form__cb {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

}

.contact-form__cb input {

    margin-right: 1.25rem;

}

.contact-form__ct-pd td {

    padding: 1.563rem 0 1.563rem 0;

    vertical-align: top;

}

.contact-form__ct-pd td:last-child {

    padding-left: 1.563rem;

}

.contact-form textarea {

    width: 100%;

    height: 206px;

    display: block;

    background-color: #f2f2f2;

    border: 1px solid #cccccc;

    resize: none;

    outline: none;

    padding: 1rem;

    -ms-overflow-style: none;

}

.vertical-top td {

    vertical-align: top;

}

.contact-form__btn {

    text-align: center;

    margin-top: 1.375rem;

}

.contact-form__btn button {

    outline: none;

    background: none;

    cursor: pointer;

    border: none;

}

.contact-form__btn img {

    width: 338px;

}

.bg-gray {

    background-color: #fafafa;

}

.com-gal-1 {

    display: flex;

    flex-wrap: wrap;

}

/* End Elements */





/* RWD */

@media screen and (max-width: 1280px) {

    .home-sec-2 {

        padding-left: 15px;

        padding-right: 15px;

        background-size: cover;

        margin-bottom: 4rem;

    }

    .gal-2__right {

        padding-top: 4rem;

    }

    .gal-3__wrap {

        max-width: 485px;

    }

    .home-sec-5 {

        background-position: 113% 25px;

        background-size: 350px auto;

    }

}

@media screen and (max-width: 1250px) {

    .hd__logo {

        padding-left: 15px;

    }

    .hd__menu {

        padding-right: 15px;

    }

    .hd__menu li {

        margin-right: 25px;

    }

    .home-top-banner {
        height: auto;
        padding-top: 22px;
    }

    .home-top-banner__txt img {

        width: 24%;

    }

}

@media screen and (max-width: 1050px) {

    .hd__logo {

        width: 100%;

        justify-content: center;

        padding-left: 0;

        margin-bottom: 1rem;

    }

    .hd__menu {

        width: 100%;

        align-self: flex-start;

        padding-right: 0;

    }

    .hd__menu ul {

        justify-content: center;

    }

    .gal-2__left {

        padding-top: 3rem;

        padding-right: 1rem;

        padding-left: 0;

    }



    .sub-top-banner {

        padding-top: 137px;

    }

    .home-top-banner {
        padding-top: 67px;
    }





}

@media screen and (max-width: 992px) {

    .home-sec-1 {

        padding: 6rem 20px 7rem 20px;

    }

    .gal-1__left {

        padding-right: 4rem;

    }

    .title-1 {

        margin-bottom: 1rem;

    }

    .gal-1__p--ct-1 {

        margin-bottom: 1.5rem;

    }

    .gal-3 {

        padding-bottom: 12rem;

    }

    .gal-5__left {

        padding-right: 4rem;

    }

    .gal-5 {

        padding-right: 20px;

        padding-left: 20px;

    }

    .gal-6__item {

        width: 100%;

        text-align: center;

        margin-left: 0;

        margin-right: 0;

        margin-bottom: 2rem;

    }

    .gal-6__item:last-child {

        margin-right: auto;

        margin-bottom: 0;

    }

    .contact-form td:first-child {

        width: 30%;

    }
    
    .home-top-banner {
        padding-top: 72px;
    }

}

@media screen and (max-width: 767px) {

    .home-sec-2 {

        background-size: cover;

        padding: 3rem 20px 0 20px;

        margin-bottom: 3rem;

    }

    .gal-2__left {

        width: 100%;

        max-width: 400px;

        margin: 0 auto 3rem auto;

        padding: 0;

    }

    .gal-2__right {

        width: 100%;

        padding-top: 0;

    }

    .gal-1__p--ct-1 {

        max-width: 100%;

    }

    .gal-2__btn {

        text-align: center;

    }

    .gal-4__item {

        width: 49%;

        margin-right: 2%;

        margin-bottom: 1rem;

        text-align: center;

    }

    .gal-4__item:nth-child(2n) {

        margin-right: 0;

    }

    .gal-4__item5 {

        width: 49%;

        margin-right: 2%;

        margin-bottom: 1rem;

        text-align: center;

    }

    .gal-4__item5:nth-child(2n) {

        margin-right: 0;

    }
	
	
	
	
	
    .gal-4 {

        padding-right: 20px;

        padding-left: 20px;

        padding-bottom: 4rem;

    }

    .gal-4__btn {

        margin-top: 2rem;

    }

    .gal-3__btn {

        text-align: center;

    }

    .btn-link img {

        width: 220px;

    }

    .home-sec-5 {

        background-size: 250px auto;

    }

    .contact-form td:first-child {

        width: 100%;

    }

    .contact-form td {

        width: 100%;

        float: left;

    }

    .required--ct-1 {

        margin-right: 0;

    }

    .contact-form td:last-child {

        padding-bottom: 1rem;

    }

    .contact-form__wrap {

        margin-bottom: 0.5rem;

    }

    .contact-form__ct-pd td {

        padding: 0;

    }

    .contact-form__ct-pd td:last-child {

        padding-left: 0;

    }

    .contact-form textarea {

        height: 100px;

    }
    
    .home-top-banner {
        padding-top: 87px;
    }

}

@media screen and (max-width: 640px) {

    html {

        font-size: 14px;

    }

    .hd__logo__desc {

        top: 0;

        margin-left: 0;

        margin-top: 1rem;

        margin-bottom: 1rem;

        width: 100%;

        padding-left: 15px;

        text-align: left;

    }

    .hd {

        position: relative
    }

    .sub-top-banner {

        padding-top: 0;

    }



    .hd__menu ul {

        position: absolute;

        top: 0;

        left: 0;

        display: none;

        z-index: 111;

        width: 100%;

        background-color: #F85403;

    }

    .hd__menu ul li {

        border-bottom: 1px dotted #fff;

        margin-right: 0;

    }

    .hd__menu ul li:last-child {

        border-bottom: 0;

    }

    .hd__menu ul li a {

        color: #fff;

        padding: 1rem 20px;

        display: block;

        text-align: center;

    }

    .hd__logo {

        width: auto;

        padding: 0 0 0 15px;

        margin-bottom: 0;

        justify-content: flex-start;

    }

    .not-show-on-sp {

        display: none;

    }

    .show-on-640 {

        display: block;

    }

    .hd__menu {

        width: auto;

        align-self: center;

        padding-right: 15px;

    }

    .mb-toggle {

        background-color: #F85403;

        padding: 15px;

        display: inline-block;

    }

    .mb-toggle__bar {

        width: 30px;

        height: 4px;

        display: block;

        margin-bottom: 5px;

        background-color: #fff;

    }

    .mb-toggle__bar:last-child {

        margin-bottom: 0;

    }

    .gal-1__left {

        padding: 0;

        width: 100%;

        margin-bottom: 2.5rem;

    }

    .gal-1__left__img {

        text-align: center;

    }

    .gal-1__left__img img {

        width: 210px;

    }

    .gal-1__right {

        width: 100%;

    }

    .gal-1__p::before {

        margin-bottom: 1.5rem;

    }

    .gal-1__p {

        max-width: 100%;

    }

    .home-sec-1 {

        padding-top: 4rem;

        padding-bottom: 4rem;

    }

    .gal-3 {

        padding-right: 20px;

        padding-left: 20px;

        padding-bottom: 6rem;

    }

    .gal-3__wrap {

        padding: 4rem 20px;

    }

    .gal-5 {

        padding: 4rem 20px 2rem 20px;

    }

    .gal-5__left {

        width: 100%;

        padding-right: 0;

        text-align: center;

        margin-bottom: 3rem;

    }

    .gal-5__img img {

        width: 120px;

    }

    .gal-5__right {

        width: 100%;

    }

    .gal-6 {

        padding-right: 20px;

        padding-left: 20px;

    }

    .gal-6__item {

        background-position: top;

        background-size: cover;

        min-height: 20vw;

    }

    .gal-6__desc {

        padding: 0;

        margin-top: 3rem;

    }

    .home-sec-5 {

        padding-bottom: 4rem;

    }

    .ft-p1 {

        padding: 4rem 20px;

    }

    .ft-desc {

        font-size: 0.8rem;

    }

    .para-1 {

        font-size: 0.8rem;

    }

    .ft-p2__item {

        padding: 2rem 20px;

        width: 100%;

    }

    .ft-p2__item--ct-1 {

        padding: 2rem 20px;

    }

    .ft-map iframe {

        height: 250px;

    }

    .sub-top-banner__txt {

        padding: 1rem 0 1rem 3rem;

    }

    .ct-sec-1 {

        padding: 4rem 20px 6rem 20px;

    }

    .sub-top-banner__txt img {

        width: 75px;

    }

    .para-2--ct-1 {

        margin-top: 2rem;

        margin-bottom: 1.5rem;

    }

    .sub-top-banner {

        min-height: auto;

    }

    .gal-4__item {

        width: 100%;

        margin-right: 0;

        margin-bottom: 30px;

    }
	
    .gal-4__item5 {

        width: 100%;

        margin-right: 0;

        margin-bottom: 30px;

    }	

    .home-sec-6 .cont1280 {

        padding: 0;

    }
    
    .home-top-banner {
        padding-top: 0;
    }
}

/* End RWD */



/* RECRUIT */

.rc-manag-sec-1 {

    padding-top: 5.938rem;

    text-align: center;

}

.rc-manag-sec-1 .tlt-big img {

    width: 137px;

    height: 35px;

}

.part-txt-color {

    padding-top: 2.813rem;

}

.tlt-hira {

    font-size: 28px;

    font-weight: 500;

    line-height: 1.8;

    border-bottom: 3px solid #000;

    max-width: 156px;

    margin: auto;

}

.part-txt-color .part-1 {

    padding: 28px 20px 4.688rem;

    font-weight: 400;

    letter-spacing: 0.4px;

}

.part-txt-color .part-1 p {

    margin-top: 22px;

    line-height: 1.6;

}

.part-txt-color .part-2 {

    padding: 35px 20px;

    color: #fff;

    font-weight: bold;

    line-height: 1.6;

    letter-spacing: 0.4px;

    background: #fa9708;

    font-size: 18px;

}

.rc-manag-sec-2 {

    padding-top: 40px;

}

.rc-manag-sec-2 .part {

    padding-bottom: 12.5rem;

}

.rc-manag-sec-2 .part .part-1:first-child {

    padding-top: 60px;

}

.rc-manag-sec-2 .part-1 {

    max-width: 922px;

    width: 100%;

    margin: auto;

    padding-top: 5.188rem;

    justify-content: space-between;

}

.rc-manag-sec-2 .part-1 .col {

    width: 44.2%;

}

.part-photo {

    text-align: center;

}

.tlt-small-or {

    color: #fa9708;

    font-size: 18px;

    font-weight: 400;

    line-height: 1.2;

    letter-spacing: 0.4px;

    border-bottom: 1px solid #fa9708;

    padding-bottom: 7px;

}

.col .item p {

    font-weight: 400;

    line-height: 1.6;

    letter-spacing: 0.4px;

    padding-top: 15px;

}

.rc-manag-sec-2 .part-2 {

    background: #fa9708;

    font-size: 20px;

    font-weight: 400;

    line-height: 1.8;

    letter-spacing: 0.4px;

    text-align: center;

    padding: 3.313rem 20px;

}



.rc-manag-sec-2 .part-2_up {

    background: url('../img/recruit/bana_back.png') no-repeat center;

    font-size: 20px;

    line-height: 1.8;

    letter-spacing: 0.4px;

    text-align: center;

    color: #FFFFFF;

    padding: 1.313rem 20px;

}



.col-photo {

    width: 56.3%;

}

.col-txt {

    width: 43.7%;

}

.col-txt-right {

    padding-left: 5.625rem;

    padding-right: 3.563rem;

}

.col-txt-left {

    padding-left: 3.938rem;

    padding-right: 5.625rem;

}

.rc-manag-sec-2.pd {

    padding-top: 4.375rem;

}

.rc-manag-sec-2.pd .item {

    margin-bottom: 3.75rem;

}

.rc-manag-sec-2.pd .item:last-child {

    margin-bottom: 0;

}

.info-h {

    margin-bottom: 6.25rem;

}

.info-h:last-child {

    margin-bottom: 12.5rem;

}





@media screen and (max-width: 992px) {

    .col-txt-right {

        padding-left: 20px;

        padding-right: 20px;

    }

    .col-txt-left {

        padding-left: 20px;

        padding-right: 20px;

    }

}

@media screen and (max-width: 922px) {

    .rc-manag-sec-2 .part-1 {

        padding-left: 20px;

        padding-right: 20px;

    }

}

@media screen and (max-width: 768px) {

    .col-photo {

        width: 100%;

        text-align: center;

    }

    .col-txt {

        width: 100%;

        margin-top: 30px;

    }

    .info-h {

        margin-bottom: 2.25rem;

    }

    .col-txt-left {

        order: 2;

    }

    .info-h:last-child {

        margin-bottom: 12.5rem;

        margin-top: 4rem;

    }

}



@media screen and (max-width: 640px) {

    .rc-manag-sec-1 {

        padding-top: 4rem;

    }

    .part-txt-color .part-1 {

        padding-bottom: 4rem;

    }

    .rc-manag-sec-2 .part-1 .col {

        width: 100%;

    }



    .rc-manag-sec-2 .part-1 {

        padding-top: 3rem;

    }

    .col .item,
    .rc-manag-sec-2.pd .item {

        margin-bottom: 3rem;

    }

    .col:nth-child(2) .item {

        margin-bottom: 0;

    }

    .rc-manag-sec-2 .part .part-1:first-child {

        padding-top: 3rem;

    }

    .tlt-small-or {

        font-size: 16px;

    }

    .rc-manag-sec-2 .part {

        padding-bottom: 0;

    }

    .rc-manag-sec-2 .part-2 {

        font-size: 18px;

        padding: 2.313rem 20px;

    }

    .rc-manag-sec-2 .part-2_up {

        font-size: 18px;

        padding: 0.8rem 20px;

        margin-top: 50px;

    }





    .rc-manag-sec-2.pd {

        padding-top: 40px;

    }

    .info-h:last-child {

        margin-bottom: 0;

    }

    .col-txt-right,

    .col-txt-left {

        padding-left: 0;

        padding-right: 0;

    }



}

/* END RECRUIT */



/* COMPANY */

.com-gal-1 {

    padding: 7.5rem 0;

}

.com-gal-1__txt {

    width: 53.3%;

}



.com-gal-1__img {

    width: 46.7%;

    text-align: right;

}

.com-gal-1 {

    justify-content: space-between;

}

.com-sub-tt {

    font-size: 30px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.5;

    padding: 44px 0 30px;

}

.com-gal-1__txt .para-3 {

    font-weight: 400;

    letter-spacing: 0.4px;

}

.com-gal-1__txt .sign-para {

    text-align: right;

    margin-top: 33px;

}

.com-gal-1__txt .sign-para .sign-para__big {

    font-size: 23px;

    letter-spacing: 0.4px;

    line-height: 1.2;

}



.com-sec-2 {

    background: #fafafa;

    padding: 4.375rem 20px 6.3rem;

}

.com-sec-2 .txt-center {

    text-align: center;

    font-weight: 400;

    letter-spacing: 0.4px;

    margin-bottom: 30px;

}

.part-box {

    margin-top: 3.125rem;

}

.part-box .box-item {

    width: 30.7%;

    margin-right: 3.9%;

    margin-bottom: 27px;

}

.part-box .box-item:nth-child(3n) {

    margin-right: 0;

}

.part-box .box-item img {

    width: 358px;

}



.com-sec-3 {

    padding: 6.563rem 0 14.813rem;

}

.com-sec-3 .com-title-1 {

    width: 22%;

}

.com-sec-3 .com-tbl {

    width: 78%;

}

.tbl table {

    border-collapse: collapse;

    width: 100%;

}

.tbl table td {

    border-top: 0.25px solid #000000;

    border-bottom: 0.25px solid #000000;

    letter-spacing: 0.4px;

    padding: 12px;

    padding-left: 20px;

}

.tbl table td:first-child {

    width: 40%;

    padding-left: 136px;

}

@media screen and (max-width: 1160px) {

    .cont1160 {

        padding-left: 20px;

        padding-right: 20px;

    }

}

@media screen and (max-width: 922px) {

    .com-gal-1__txt {

        width: 100%;

        order: 2;

        margin-top: 30px;

    }

    .com-gal-1__img {

        width: 100%;

        text-align: center;

        order: 1;

    }

    .tbl table td:first-child {

        padding-left: 70px;

    }

    .com-sec-2 .txt-center {

        font-size: 15px;

    }

}

@media screen and (max-width: 640px) {

    .com-gal-1 {

        padding: 4rem 20px;

    }

    .com-sub-tt {

        font-size: 20px;

        padding: 30px 0 30px;

    }

    .com-gal-1__txt .sign-para .sign-para__big {

        font-size: 20px;

    }

    .com-sec-2 {

        padding: 4rem 0 2rem;

    }

    .part-box .box-item {

        width: 100%;

        margin-right: 0;

    }



    .com-sec-3 {

        padding: 4rem 0 4rem;

    }

    .com-sec-3 .com-title-1 {

        width: 100%;

        margin-bottom: 30px;

    }

    .com-sec-3 .com-tbl {

        width: 100%;

    }

    .tbl table td:first-child {

        width: 100%;

        float: left;

        padding-left: 20px;

    }

    .tbl table td {

        width: 100%;

        float: left;

        border-bottom: none;

    }

    .tbl table tr:last-child td:last-child {

        border-bottom: 1px solid #000;

    }

}

/* END COMPANY */



/* PRODUCT */

.cont1200 {

    max-width: 1200px;

    margin: auto;

    width: 100%;

}

.cont1485 {

    max-width: 1485px;

    margin: auto;

    width: 100%;

}

.pro-sec-1 {

    padding-top: 7.063rem;

}

.pro-sec-1 .tlt-big {

    padding-left: 20px;

}

.part-pro {

    margin-top: 40px;

}

.part-pro .item {

    width: 48.3%;

    margin-right: 3.4%;

    margin-bottom: 40px;

}

.part-pro .item:nth-child(2n) {

    margin-right: 0;

}

.part-pro .item p {

    font-size: 20px;

    line-height: 1;

    letter-spacing: 0.4px;

    font-weight: 400;

    padding-left: 22px;

    padding-top: 22px;

}

.part-qua .item-left {

    background: #FFF5E7;

    width: 36.6%;

    margin-top: 5.25rem;

    padding: 6.25rem 0 7.625rem;

    padding-left: 184px;

}

.part-qua .item-right {

    width: 63.4%;

    height: 440px;

    position: relative;

}

.part-qua .tll-s {

    font-size: 33px;

    letter-spacing: 0.4px;

    line-height: 1.3;

    font-weight: 700;

    margin-bottom: 24px;

}

.part-qua .item-left .small {

    max-width: 265px;

    width: 100%;

}

.part-qua .item-right .small-2 {

    max-width: 248px;

    width: 100%;

    padding-top: 7.625rem;

    padding-bottom: 6.875rem;

}

.part-qua p {

    letter-spacing: 0.4px;

}



.item-right .txt-small {

    margin-top: 215px;

    background: #FFF5E7;

    max-width: 670px;

    width: 100%;

    margin-left: auto;

    padding-left: 200px;

    height: 440px;

}

.part-qua .item-right::before {

    position: absolute;

    content: '';

    background: url('../img/product/qua-1.jpg');

    background-repeat: no-repeat;

    width: 397px;

    height: 606px;

    left: 0;

    top: -16px;

}

.pro-sec-2 {

    margin-top: 5.625rem;

}

.pro-sec-2 .tlt-big {

    padding-left: 20px;

}

.pro-sec-3 {

    padding-top: 16.25rem;

    padding-bottom: 10.938rem;

}

.pro-sec-3 .tlt-b-big {

    font-size: 33px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.3;

    margin-bottom: 60px;

}

.rating-right {

    width: 27.8%;

}

.rating-left {

    width: 65.5%;

    padding-left: 20px;

}

.rating-left p {

    letter-spacing: 0.4px;

}

.rating.flex {

    justify-content: space-between;

}

.rating-left .txt-1 {

    border-bottom: 1px solid #fa9708;

    padding-bottom: 41px;

    margin-bottom: 38px;

}

.pro-sec-4 {

    background: #fafafa;

    padding-bottom: 7.188rem;

}

.part-construc {

    justify-content: space-between;

}

.construc-left {

    padding-left: 63px;

    width: 42.2%;

}

.construc-right {

    width: 50%;

}

.construc-left .tlt-or {

    color: #fa9708;

    font-size: 28px;

    letter-spacing: 0.4px;

    line-height: 1.5;

    font-weight: 700;

    margin-top: 57px;

}

.construc-left p {

    font-weight: 400;

    letter-spacing: 0.4px;

    margin-top: 10px;

}

.pd1 {

    padding-top: 6.25rem;

}

.pdf-left {

    width: 45.5%;

    text-align: center;

}



.brs-right {

    width: 54.5%;

}

.brs-right .bg-or {

    width: 100%;

    background: url(../img/product/bg.png);

    background-repeat: no-repeat;

    height: 335px;

    padding: 75px 100px;

    color: #fff;

    letter-spacing: 0.4px;

    font-weight: 400;

}

.brs-right p {

    margin-top: 10px;

}

.part-construc-2 {

    margin-top: 66px;

    align-items: flex-end;

}

.btn-brs {

    text-align: center;

    margin-top: 100px;

}

.btn-brs p {

    font-size: 15px;

    letter-spacing: 0.4px;

    font-weight: 400;

    line-height: 1.4;

    margin-top: 12px;

}



.pro-sec-5 {

    padding-top: 8.375rem;

    padding-bottom: 7.5rem;

}

.tlt-process {

    font-size: 28px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1;

    position: relative;

    text-align: center;

}

.tlt-process::before {

    position: absolute;

    content: '';

    background: url('../img/product/process.svg');

    background-repeat: no-repeat;

    width: 53px;

    height: 84px;

    left: 60px;

    top: -30px;

}

.tlt-process::after {

    position: absolute;

    content: '';

    background: url('../img/product/line.png');

    background-repeat: no-repeat;

    width: 623px;

    height: 20px;

    left: 50%;

    transform: translate(-50%, -50%);

    bottom: -55px;

}

.part-process {

    margin-top: 5.188rem;

}

.part-process .item-process {

    width: 24.1%;

    border: 1px solid #eee;

    margin-right: 1.2%;

    margin-bottom: 50px;

}

.part-process .item-process:nth-child(4n) {

    margin-right: 0;

}

.item-process .txt {

    padding: 15px;

}

.item-process .txt p {

    font-weight: 400;

    letter-spacing: 0.4px;

    margin-top: 12px;

}

.photo-sp {

    display: none;

}



@media screen and (max-width: 1408px) {

    .item-right .txt-small {

        padding-left: 300px;

    }

}

@media screen and (max-width: 1280px) {

    .cont1280 {

        padding: 0 20px;

    }

    .cont1700 {

        padding: 0 20px;

    }	
	
	
    .rating-left {

        padding-left: 0;

    }

}

@media screen and (max-width: 1240px) {

    .part-qua .item-left {

        padding-left: 60px;

    }

    .item-right .txt-small {

        padding-left: 390px;

    }

}

@media screen and (max-width: 1200px) {

    .cont1200 {

        padding: 0 20px;

    }

    .construc-left {

        padding-left: 0;

    }

    .pd1 {

        padding-top: 3.25rem;

    }

}

@media screen and (max-width: 1080px) {

    .part-qua .item-left {

        width: 100%;

    }

    .part-qua .item-right {

        width: 100%;

    }

    .part-qua .item-right::before {

        top: 20px;

    }

    .item-right .txt-small {

        padding-left: 200px;

    }

    .item-right .txt-small {

        margin-top: 100px;

    }

    .part-qua {

        padding: 0 20px;

    }

    .part-qua .item-left .small {

        max-width: 100%;

    }

}

@media screen and (max-width: 992px) {

    .part-qua .item-left {

        padding: 20px;

        padding-left: 20px;

    }

    .part-qua .item-right::before {

        display: none;

    }

    .item-right .txt-small {

        margin-top: 30px;

        max-width: 100%;

        padding: 20px;

        height: auto;

    }

    .part-qua .item-right .small-2 {

        padding-top: 20px;

        padding-bottom: 20px;

        max-width: 100%;

    }

    .part-qua .item-right {

        height: auto;

    }

    .photo-sp {

        display: block;

        margin: auto;

        margin-top: 30px;

    }

}

@media screen and (max-width: 910px) {

    .tlt-process::before {

        top: -58px;

        left: 50%;

        transform: translate(-50%, -50%);

    }

    .pro-sec-5 {

        padding-top: 11.375rem;

    }

}

@media screen and (max-width: 768px) {

    .part-process .item-process {

        width: 48%;

        max-width: 310px;

        margin-left: auto;

        margin-right: auto;

    }

    .part-process .item-process:nth-child(2n) {

        margin-right: auto;

    }

}

@media screen and (max-width: 640px) {

    .part-pro .item {

        width: 100%;

        margin-right: 0;

        text-align: center;

    }

    .part-pro .item p {

        padding-left: 0;

    }

    .pro-sec-1 {

        padding-top: 4rem;

    }

    .pro-sec-2 {

        margin-top: 4rem;

    }

    .pro-sec-3 {

        padding-top: 4rem;

        padding-bottom: 4rem;

    }

    .pro-sec-3 .tlt-b-big {

        font-size: 20px;

        line-height: 1.6;

        margin-bottom: 30px;

    }

    .rating-left {

        width: 100%;

    }

    .rating-right {

        width: 100%;

        text-align: center;

        margin-top: 30px;

    }

    .construc-left {

        width: 100%;

    }

    .construc-right {

        width: 100%;

        margin-top: 30px;

    }

    .construc-left .tlt-or {

        margin-top: 30px;

        font-size: 20px;

    }

    .brs-right {

        width: 100%;

        order: 1;

    }

    .pdf-left {

        width: 100%;

        order: 2;

        margin-top: 30px;

    }

    .tlt-process {

        font-size: 20px;

        line-height: 1.6;

    }

    .tlt-process::after {

        width: 100%;

        background-position: center;

    }



    .part-process .item-process {

        width: 100%;

        margin-right: 0;

        text-align: center;

        max-width: 310px;

        margin-left: auto;

        margin-right: auto;

        margin-bottom: 30px;

    }

    .part-process .item-process:nth-child(4n) {

        margin-right: auto;

    }

    .pro-sec-5 {

        padding-bottom: 4rem;

    }

    .brs-right .bg-or {

        padding: 20px;

        height: auto;

    }

    .btn-brs {

        margin-top: 30px;

    }

    .pro-sec-4 {

        padding-bottom: 4rem;

    }

}

/* END PRODUCT */



/* RECRUIT */

.cont950 {

    max-width: 950px;

    margin: auto;

    width: 100%;

}

.re-sec-1 {

    background: url(../img/recruit/bg-sodansha.jpg);

    background-repeat: no-repeat;

    width: 100%;

    background-size: cover;

    margin-top: 15px;

    padding: 13.75rem 0;

}

.re-sec-1 .tlt-big {

    padding-left: 50px;

}

.re-sec-1 p {

    font-weight: 400;

    letter-spacing: 0.4px;

    margin-top: 55px;

}



.re-sec-2 {

    padding: 8.125rem 0 5rem;

}

.re-sec-2 .tlt-big {

    text-align: center;

}

.re-type {

    justify-content: space-between;

    margin-top: 4.688rem;

}

.re-type-item {

    width: 47%;

    border: 1px solid #e2e2e2;

}

.re-type-item .text-type {

    padding: 16px 20px 20px 20px;

}

.re-type-item .text-type .tlt-type {

    font-size: 23px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.9;

    border-bottom: 1px solid #e2e2e2;

    padding-bottom: 8px;

    margin-bottom: 18px;

}

.re-type-item .text-type .tlt-type span {

    color: #fff;

    font-weight: 400;

    letter-spacing: 0.4px;

    font-size: 16px;

    line-height: 1.7;

    background: #fa9708;

    padding: 6px 10px;

    margin-right: 18px;

}

.re-type-item .text-type .tlt-type span.green {

    background: #6FB073;

}



.re-sec-3 {

    background: #fafafa;

    padding-top: 5.938rem;

}

.re-sec-3 .tlt-big {

    text-align: center;

    margin-bottom: 48px;

}

.feature {

    position: relative;

}

.feature::before {

    position: absolute;

    content: '';

    background: url(../img/recruit/line.png);

    background-repeat: no-repeat;

    width: 100%;

    height: 4px;

    top: -3px;

}

.feature-3::after {

    position: absolute;

    content: '';

    background: url(../img/recruit/line.png);

    background-repeat: no-repeat;

    width: 100%;

    height: 4px;

    bottom: -3px;

}

.feature .fea-photo {

    width: 50%;

}

.feature .fea-txt {

    width: 50%;

    padding: 58px 5rem 58px 4.375rem;

}

.feature .fea-txt .tlt-x {

    width: 14.5%;

}

.feature .fea-txt .txt {

    width: 85.5%;

    padding-left: 45px;

    padding-top: 13px;

}

.feature .fea-txt .txt-01 {

    background: url(../img/recruit/01.png);

    height: 66px;

    background-repeat: no-repeat;

    background-position: 100%;

    padding-top: 48px;

    letter-spacing: 0.4px;

}

.feature .fea-txt .txt-02 {

    background: url(../img/recruit/02.png);

    height: 66px;

    background-repeat: no-repeat;

    background-position: 100%;

    padding-top: 48px;

    letter-spacing: 0.4px;

}

.feature .fea-txt .txt-03 {

    background: url(../img/recruit/03.png);

    height: 66px;

    background-repeat: no-repeat;

    background-position: 100%;

    padding-top: 48px;

    letter-spacing: 0.4px;

    margin-bottom: 64px;

}



.re-sec-4 {

    padding: 10rem 0 11.25rem;

}

.re-sec-4 .tlt-big {

    text-align: center;

    margin-bottom: 50px;

}

.wel-box:first-child {

    padding-top: 40px;

}

.wel-box {

    width: 30%;

    margin-right: 5%;

    margin-bottom: 34px;

    border: 1px solid #fa9708;

    height: 347px;

    padding-top: 50px;

    padding-left: 40px;

    padding-right: 40px;

    text-align: center;

}

.wel-box:nth-child(3n) {

    margin-right: 0;

}

.wel-box p {

    text-align: left;

    letter-spacing: 0.4px;

    line-height: 1.6;

    margin-top: 25px;

}



.re-sec-5 {

    padding: 5.625rem 0 60px;

    background: #fafafa;

}

.re-sec-5 .tlt-big {

    text-align: center;

    margin-bottom: 80px;

}

.voi-photo {

    width: 50%;

}

.voi-txt {

    width: 50%;

    padding: 40px 20px 50px 70px;

    background: #fff;

    margin-top: 32px;

}

.voi-txt-2 {

    padding-left: 175px;

    padding-right: 0;

}

.voi-txt .tlt-voi {

    font-size: 28px;

    letter-spacing: 0;

    line-height: 1.8;

    position: relative;

    font-weight: 500;

}

.voi-txt .tlt-voi-1::after {

    position: absolute;

    content: '';

    background: #000;

    width: 100%;

    max-width: 156px;

    height: 3px;

    left: -70px;

    bottom: 0;

}

.voi-txt .tlt-voi-2::after {

    position: absolute;

    content: '';

    background: #000;

    width: 100%;

    max-width: 423px;

    height: 3px;

    left: 0;

    bottom: 0;

}

.voi-txt .text {

    margin-top: 30px;

}

.voi-txt p {

    margin: 20px 0 30px;

    line-height: 1.6;

    font-weight: 400;

    letter-spacing: 0.4px;

    max-width: 300px;

}

.voice-2 {

    margin-top: 70px;

}

.voice-2 p {

    max-width: 100%;

}

.voice-3 {

    margin-top: 60px;

}

.voice-3 p {

    max-width: 400px;

}

.employ {

    padding: 7rem 16px 16px 16px;

    background: #fff;

}

.em-item {

    width: 32.4%;

    margin-right: 1.4%;



}

.em-item:last-child {

    margin-right: 0;

}

.em-item .txt-em {

    border: 1px solid #e2e2e2;

    padding: 28px;

}

.em-item .txt-em p {

    line-height: 1.6;

    letter-spacing: 0.4px;

    margin: 20px 0 32px;

}

.em-item .txt-em .btn-pp {

    text-align: center;

}

@media screen and (max-width: 1280px) {

    .feature .fea-txt .txt-01,

    .feature .fea-txt .txt-02,

    .feature .fea-txt .txt-03 {

        padding-top: 25px;

    }

    .feature .fea-txt {

        padding: 20px;

    }

    .re-sec-1 {

        background-position: center;

    }

}

@media screen and (max-width: 1161px) {

    .voice-3 .voi-photo {

        background: #fff;

    }

}

@media screen and (max-width: 1032px) {

    .fea-txt-spec img {

        width: 50px !important;

    }

}

@media screen and (max-width: 992px) {

    .feature .fea-photo {

        width: 100%;

        text-align: center;

    }

    .feature .fea-txt {

        width: 100%;

    }

    .order-2 {

        order: 2;

    }

    .order-1 {

        order: 1;

    }

    .voi-txt-2 {

        padding-left: 35px;

    }

    .voice-2 p {

        padding-right: 10px;

    }

    .wel-box {

        padding: 20px;

    }

    .wel-box:first-child {

        padding-top: 15px;

    }

}

@media screen and (max-width: 950px) {

    .cont950 {

        padding: 0 20px;

    }

}

@media screen and (max-width: 640px) {

    .re-sec-1 {

        padding: 4rem 0;

    }

    .re-sec-1 .tlt-big img {

        width: 90px !important;

    }

    .re-sec-2 {

        padding: 4rem 0;

    }

    .re-type-item {

        width: 100%;

        margin: auto;

        margin-bottom: 30px;

        max-width: 544px;

    }

    .re-type-item:last-child {

        margin-bottom: 0;

    }

    .re-sec-3 {

        padding-top: 4rem;

    }

    .feature .fea-txt .txt-01,

    .feature .fea-txt .txt-02,

    .feature .fea-txt .txt-03 {

        padding-top: 0;

    }

    .feature .fea-txt .txt {

        padding-left: 15px;

        padding-top: 0;

    }

    .fea {

        margin-bottom: 60px;

    }



    .re-sec-4 {

        padding: 4rem 0;

    }

    .wel-box {

        width: 100%;

        margin-right: 0;

        height: auto;

    }

    .wel-box:last-child {

        margin-bottom: 0;

    }

    .re-sec-5 {

        padding: 4rem 0;

    }

    .re-sec-5 .tlt-big {

        margin-bottom: 50px;

    }

    .voi-photo {

        width: 100%;

    }

    .voi-txt {

        width: 100%;

        padding: 20px;

    }

    .voi-txt .tlt-voi-1::after {

        left: 0;

    }

    .voice-2 {

        margin-top: 30px;

    }

    .voice-2 .voi-txt-2 {

        order: 1;

    }

    .employ {

        padding-top: 0;

    }

    .em-item {

        width: 100%;

        margin: auto;

        margin-bottom: 30px;

        max-width: 377px;

    }

    .em-item:last-child {

        margin-bottom: 0;

        margin-right: auto;

    }

    .voi-txt p {

        max-width: 100%;

    }

    .voice-2 p {

        padding-right: 0;

    }

}





/* END RECRUIT */



/* FACTORY */

.fac-sec-1 {

    padding-top: 6.25rem;

}

.left-step {

    width: 29.5%;

    padding-left: 20px;

    padding-top: 4.188rem;

}

.left-step p {

    font-size: 24px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.8;

    margin-top: 3.875rem;

}

.right-step {

    width: 70.5%;

}

.txt-bg {

    background: #FFF7EC;

    width: 100%;

    max-width: 993px;

    margin-top: -74px;

    z-index: -1;

    position: relative;

}

.txt-bg .tlt-bg {

    font-size: 24px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.1;

    border-bottom: 1px solid #000;

    padding-bottom: 8px;

    display: inline-block;

    margin-bottom: 20px;

}

.txt-bg p {

    font-weight: 400;

    letter-spacing: 0.4px;

}

.cont1428 {

    max-width: 1428px;

    margin: auto;

    width: 100%;

}

.txt-bg {

    padding: 95px 20px 85px 137px;

}



.fac-sec-2 {

    padding-top: 10.313rem;

}

.txt-bg-2 {

    background: url(../img/factory/bg-gr.png);

    background-repeat: no-repeat;

    width: 100%;

    height: 828px;

    max-width: 100%;

    padding-left: 0;

    margin-bottom: 17.25rem;

}

.w-516 {

    max-width: 516px;

    width: 100%;

}



.mrt {

    margin-top: 5.625rem;

}

.col-flex {

    justify-content: space-between;

}

.col-left {

    width: 47.4%;

    padding-left: 20px;

}

.col-left-photo {

    padding-left: 0;

}

.col-right {

    width: 47.4%;

}

.p-point {

    font-weight: 700 !important;

    font-size: 20px;

    line-height: 1.4;

    border-bottom: 1px solid #000;

    display: inline-block;

    margin-left: 25px;

    padding-top: 20px;

    padding-bottom: 8px;

}

.mrg-top {

    margin-top: 56px;

}

.fac-sec-3 {

    background: #F0F9F4;

    padding-bottom: 8rem;

}

.tlt-cir {

    color: #fff;

    font-size: 20px;

    font-weight: 700;

    line-height: 2.2;

    letter-spacing: 0.4px;

    text-align: center;

    padding-top: 60px;

    position: relative;

    z-index: 1;

}

.tlt-cir::after {

    position: absolute;

    content: '';

    background: #3DB270;

    width: 205px;

    height: 205px;

    border-radius: 50%;

    top: 84px;

    left: 50%;

    transform: translate(-50%, -50%);

    z-index: -1;

}

.tlt-cir::before {

    position: absolute;

    content: '';

    background: #fff;

    width: 205px;

    height: 20px;

    top: -11px;

    left: 50%;

    transform: translate(-50%, -50%);

}

.vi {

    justify-content: space-between;

    position: relative;

    z-index: 2;

    margin-top: 55px;

}

.col-vi {

    width: 47.4%;

}

.col-vi video {

    width: 100%;

}

.txt-vi {

    font-weight: 400;

    letter-spacing: 0.4px;

    margin-top: 15px;

}



.fac-sec-4 {

    padding-top: 10.938rem;

}

.txt-bg-3 {

    background: url(../img/factory/bg-or.png);

    background-repeat: no-repeat;

    background-position: right;

    width: 100%;

    height: 512px;

    max-width: 100%;

    padding-left: 0;

    margin-bottom: 50px;

}

.photo-tbc {

    width: 42%;

    padding-top: 5.313rem;

}

.txt-tbc {

    width: 58%;

    padding-left: 7rem;

    padding-top: 30px;

}

.tlt-cir.color-or::after {

    background: #FA9708;

}

.tlt-cir.color-or::before {

    display: none;

}



.part-tbc {

    margin-top: 5.625rem;

    margin-bottom: 7.813rem;

}

.part-tbc .col-vi {

    width: 100%;

    max-width: 569px;

    margin: auto;

    position: relative;

    z-index: 1;

    margin-top: 55px;

}



.part-layout {

    margin-bottom: 5.188rem;

}

.left-la {

    background: #FFF7EC;

    width: 51.5%;

    height: 310px;

    padding-left: 8.75rem;

    padding-top: 4rem;

    margin-top: 4.5rem;

}

.right-la {

    width: 48.5%;

}

.left-la .tlt-bg {

    font-size: 24px;

    font-weight: 700;

    letter-spacing: 0.4px;

    line-height: 1.1;

    border-bottom: 1px solid #000;

    padding-bottom: 8px;

    display: inline-block;

    margin-bottom: 20px;

}

.left-la p {

    font-weight: 400;

    letter-spacing: 0.4px;

    max-width: 334px;

}

.part-layout-2 {

    margin-top: 9rem;

}

.part-layout-2 .left-la {

    padding-left: 4.563rem;

}

.part-layout-2 .left-la p {

    max-width: 417px;

}

.dot {

    position: relative;

    padding-left: 17px;

    display: block;

}

.dot::before {

    position: absolute;

    content: '◎';

    font-size: 16px;

    left: 0;

}



.fac-sec-5 {

    background: #FFF7EC;

    padding-bottom: 8.625rem;

}

.tlt-cir.color-or-2::after {

    background: #FA9708;

}



.fac-sec-6 {

    padding-top: 9.375rem;

}

.fac-sec-6 .txt-bg {

    background: #F0F9F4;

}

.fac-sec-6 .txt-bg {

    padding-top: 102px;

    margin-top: -57px;

}

.step {

    position: relative;

    z-index: 1;

}

.tlt-cir.color-gr::after {

    background: #3db270;

}

.tlt-cir.color-gr::before {

    display: none;

}

@media screen and (max-width: 1200px) {

    .fac-sec-2 .cont1428 .cont1200 {

        padding: 0;

    }

    .fac-sec-4 .cont1428 .cont1200 {

        padding: 0;

    }

}

@media screen and (max-width: 800px) {

    .left-step p {

        font-size: 20px;

    }

    .txt-bg {

        margin-top: 30px;

    }

    .mrt {

        margin-top: 0;

    }

    .photo-tbc {

        padding-top: 0;

    }

    .txt-tbc {

        padding-left: 3rem;

        padding-top: 0;

    }

    .left-la {

        padding-left: 20px;

        padding-top: 40px;

    }

    .part-layout-2 .left-la {

        padding-left: 20px;

    }

}

@media screen and (max-width: 640px) {

    .fac-sec-1 {

        padding-top: 4rem;

    }

    .left-step {

        width: 100%;

        padding-top: 0;

    }

    .right-step {

        width: 100%;

        text-align: center;

        margin-top: 30px;

    }

    .txt-bg {

        padding: 40px 20px;

    }

    .fac-sec-2 {

        padding-top: 4rem;

    }

    .col-left {

        width: 100%;

        padding-left: 0;

    }

    .w-516 {

        max-width: 100%;

    }

    .col-right {

        width: 100%;

        margin-top: 30px;

    }

    .txt-bg p {

        margin-left: 0;

    }

    .txt-bg-2 {

        height: auto;

        margin-bottom: 2rem;

    }

    .fac-sec-3 {

        padding-bottom: 2rem;

    }

    .fac-sec-3 .col-vi {

        margin-bottom: 60px;

    }

    .col-vi {

        width: 100%;

    }



    .fac-sec-4 {

        padding-top: 4rem;

    }

    .photo-tbc {

        width: 100%;

        text-align: center;

    }

    .txt-bg-3 {

        height: auto;

        background: none;

        background-color: #FFF7EC;

        margin-bottom: 4rem;

    }

    .txt-tbc {

        width: 100%;

        padding-left: 0;

        margin-top: 30px;

    }

    .part-tbc {

        padding: 0 20px;

        margin-bottom: 2rem;

    }

    .left-la {

        width: 100%;

        margin-top: 0;

        height: auto;

        padding-bottom: 40px;

        padding-right: 20px;

    }

    .left-la p {

        max-width: 100%;

    }

    .right-la {

        width: 100%;

        margin-top: 30px;

        order: 2;

    }

    .part-layout {

        margin-bottom: 4rem;

    }

    .part-layout-2 {

        margin-top: 0;

    }

    .fac-sec-6 {

        padding-top: 4rem;

    }

    #pagetop img {

        width: 43px;

        height: 55px;

    }

    #pagetop {

        right: 10px;

    }

    .fac-sec-5 {

        padding-bottom: 4rem;

    }

    .fac-sec-5 .col-vi {

        margin-bottom: 60px;

    }

    .fac-sec-5 .col-vi:last-child {

        margin-bottom: 0;

    }

    .part-tbc {

        margin-top: 4rem;

    }

}



/* END FACTORY */

.thanks {

    text-align: center;

    padding: 50px;

}

.act {

    text-decoration: underline;

}





@media screen and (max-width: 640px) {}





/* 追加　*/



@media screen and (min-width: 680px) {

    .pc_br {
        display: block;
    }

    .sp_br {
        display: none;
    }

}

@media screen and (max-width: 680px) {

    .pc_br {
        display: none;
    }

    .sp_br {
        display: block;
    }



    .text-marl_in {

        margin-left: 0;

    }

    .rc-manag-sec-2 .part-3 {

        font-size: 18px;

        padding: 2.313rem 20px;

    }



    .btn-voi {

        width: 50%;

        margin: auto;

    }



}



.text-marl_in {

    margin-left: 16px;

}





.rc-manag-sec-2 .part-3 {

    background: #fafafa;

    font-size: 20px;

    font-weight: 400;

    line-height: 1.8;

    letter-spacing: 0.4px;

    text-align: center;

    padding: 3.313rem 20px;

}



.rc-manag-sec-2 .part-3 p {

    font-weight: bold;

}





.koe_list {

    max-width: 922px;

    margin: auto;

    margin-top: 30px;

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

}

.koe_list li {

    width: 48%;

    text-align: center;

    margin-bottom: 30px;

}



.rc-manag-sec-2 .koe_list p {

    border-bottom: solid #000000 1px;

    font-size: 16px;

}



@media screen and (min-width: 640px) {

    .koe_list li {

        width: 25%;

    }

}





.w-250 {

    max-width: 250px;

}





.ft-logo-hanwa {

    margin-top: 1.688rem;

}

.ft-logo-hanwa img {

    width: 200px;

}



.pro-pdf {

    text-align: center;

    font-size: 12px;

}



.pro-pdf img {

    margin: 30px auto 10px;

}
