@charset "UTF-8"; @media screen and (min-width: 768px),print {
    #contentsmain {
        margin: 0 auto;
        position: relative;
        background: url('../images/company/contentsmain-back01.png')repeat-x top 252px center;
        padding-top: 45px;
        animation: slideRightToLeft 45s linear infinite;
    }

    @keyframes slideRightToLeft {
        from {
            background-position: left 215% top 252px;
        }

        to {
            background-position: left 0% top 252px;
        }
    }

    #contentsmain .inner-Box {
        margin: 0 auto;
        position: relative;
        text-align: center;
        color: #fff;
        padding-bottom: 616px;
    }

    #contentsmain .inner-Box h2 {
        font-size: 35px;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 4.2px;
        margin-bottom: 35px;
    }

    #contentsmain .inner-Box h2 span {
    }

    #contentsmain .inner-Box p.text {
        font-size: 16px;
        line-height: 25px;
        font-weight: 500;
        letter-spacing: 0.48px;
        margin-bottom: 30px;
    }

    #contentsmain .inner-Box2 {
        margin: 0 auto;
        position: relative;
        width: 1100px;
        color: #fff;
        padding-bottom: 41px;
    }

    #contentsmain h3 {
        position: relative;
        font-size: 18px;
        line-height: 1.6;
        letter-spacing: 0.54px;
        font-weight: 700;
        margin-bottom: 42px;
    }

    #contentsmain h3 .en {
        font-size: 70.1px;
        line-height: 1.6;
        letter-spacing: 1.8px;
        font-weight: 500;
        display: block;
    }

    #contentsmain h3 .icn {
        position: absolute;
        top: 92px;
        left: 7px;
    }

    #contentsmain h3 .jpf {
        position: relative;
        left: 72px;
        top: -18px;
    }

    #contentsmain .inner-Box2 table {
        width: 100%;
        border-top: 1px solid #fff;
        font-size: 16px;
        line-height: 1.6;
        letter-spacing: 0px;
        font-weight: 500;
    }

    #contentsmain .inner-Box2 table th {
        text-align: left;
        padding: 22px 32px;
        border-bottom: 1px solid #fff;
        width: 200px;
    }

    #contentsmain .inner-Box2 table td {
        border-bottom: 1px solid #fff;
        padding: 20px 32px;
        line-height: 1.9;
    }

    #contentsmain .inner-Box2 ul {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #contentsmain .inner-Box2 ul li {
        position: relative;
        width: 25%;
    }

    #contentsmain .inner-Box2 ul li:nth-child(7) {
        margin-right: 150px;
    }

    #contentsmain .inner-Box2 ul li p {
        font-size: 16px;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.8px;
        margin-bottom: 9px;
    }

    #contents01 {
        margin: 0 auto;
        position: relative;
        background: url('../images/company/contents01-back01.png')no-repeat top center #F5ECE2;
        padding-top: 432px;
        padding-bottom: 10px;
    }

    #contents01 h2 {
        position: relative;
        font-size: 18px;
        line-height: 1.6;
        letter-spacing: 0.54px;
        font-weight: 700;
        margin-bottom: 52px;
    }

    #contents01 h2 .en {
        font-size: 70.1px;
        line-height: 1.6;
        letter-spacing: 1.8px;
        font-weight: 500;
        display: block;
    }

    #contents01 h2 .icn {
        position: absolute;
        top: 92px;
        left: 7px;
    }

    #contents01 h2 .jpf {
        position: relative;
        left: 72px;
        top: -18px;
    }

    #contents01 .inner-Box {
        margin: 0 auto 115px;
        position: relative;
        width: 1100px;
    }

    #contents01 .inner-Box ul.list {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #contents01 .inner-Box ul li {
        margin-right: 59px;
        margin-bottom: 45px;
    }

    #contents01 .inner-Box ul li:nth-child(3n) {
        margin-right: 0px;
    }

    #contents01 .inner-Box ul li figure {
        margin-bottom: 5px;
    }

    #contents01 .inner-Box p.listtext {
        font-size: 16px;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0px;
    }

    #contents01 .inner-Box2 {
        margin: 0 auto;
        position: relative;
    }

    #contents01 .inner-Box2 iframe {
        height: 512px;
        width: 100%;
        margin-bottom: 56px;
    }

    #contents01 .inner-Box2 p.text {
        font-size: 18px;
        line-height: 33px;
        font-weight: 700;
        letter-spacing: 0px;
        margin: 0 auto 30px;
        text-align: center;
        position: relative;
        border-bottom: 1px solid #333;
        width: 1100px;
    }

    #contents01 .inner-Box2 p.text a {
        display: block;
        padding: 0 0 47px 3px;
    }

    #contents01 .inner-Box2 p.text a span {
        display: block;
        position: absolute;
        top: -10px;
        right: 196px;
    }

    #contents01 .inbox {
        width: 1100px;
        margin: 0 auto;
    }

    #contents02 {
        margin: 0 auto;
        position: relative;
        background: url('../images/company/contents02-back01.png')no-repeat top center;
        padding-top: 418px;
    }

    #contents02 .ttl-Box {
        margin: 0 auto;
        position: relative;
        width: 1100px;
        text-align: center;
    }

    #contents02 .ttl-Box p.f-gop {
        font-size: 20px;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.8px;
        margin-bottom: 16px;
        color: #DEDC9A;
    }

    #contents02 .ttl-Box h2 {
        font-size: 32px;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.96px;
        margin-bottom: 50px;
        color: #fff;
    }

    #contents02 .ttl-Box h2 span {
    }

    #contents02 .inner-Box1 {
        margin: 0 auto 120px;
        position: relative;
        width: 1100px;
        background: #72A6C1;
        color: #fff;
        border-top: dotted 1px #fff;
    }

    #contents02 .ttl-Box span.ttlleft {
        display: block;
        line-height: 1;
        position: absolute;
        top: 5px;
        left: 50%;
        margin-left: -125px;
    }

    #contents02 .ttl-Box span.ttlright {
        display: block;
        line-height: 1;
        position: absolute;
        top: 4px;
        left: 50%;
        margin-left: 104px;
        transform: scale(-1, 1);
    }

    #contents02 .inBox {
        margin: 0 auto;
        position: relative;
        border-bottom: dotted 1px #fff;
        padding: 40px 30px 34px 30px;
    }

    #contents02 .inBox span.sns {
        display: block;
        line-height: 1;
        position: absolute;
        top: 40px;
        left: 31px;
        width: auto;
        padding: 0;
    }

    #contents02 .inBox h3 {
        font-size: 20px;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.6px;
        position: absolute;
        top: 35px;
        left: 74px;
    }

    #contents02 .inBox h3::before {
        content: "";
        background: #fff;
        width: 1px;
        height: 30px;
        position: absolute;
        left: 142px;
        bottom: 1px;
        margin-left: -0.5px;
    }

    #contents02 .inBox ul {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 226px;
    }

    #contents02 .inBox ul li:nth-child(3n) {
    }

    #contents02 .inBox ul li {
        position: relative;
        margin-right: 92px;
    }

    #contents02 .inBox ul li a {
        color: #fff;
    }

    #contents02 .inBox p.mintext {
        font-size: 16px;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.8px;
    }

    #contents02 .inBox span.arr {
        display: block;
        line-height: 1;
        position: absolute;
        top: 0;
        right: -40px;
    }

    #contents02 .inner-Box2 {
        margin: 0 auto;
        position: relative;
    }

    #contents02 .inner-Boxttl2 {
        width: 1100px;
        margin: 0 auto;
        position: relative;
    }

    #contents02 .inner-Boxttl2 h2 {
        font-size: 22px;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 2.64px;
        margin-bottom: 30px;
        text-align: center;
        color: #FFFFFF;
    }

    #contents02 .inner-Boxttl2 h2 span {
    }

    #contents02 .inner-Boxttl2 span.ttlleft {
        display: block;
        line-height: 1;
        position: absolute;
        top: 5px;
        left: 50%;
        margin-left: -153px;
    }

    #contents02 .inner-Boxttl2 span.ttlright {
        display: block;
        line-height: 1;
        position: absolute;
        top: 4px;
        left: 50%;
        margin-left: 132px;
        transform: scale(-1, 1);
    }

    #contents02 .inner-Box2 {
        margin: 0 auto 168px;
        position: relative;
        width: 800px;
        /* height: 320px; */
        /* padding-left: 710px; */
    }

    #contents02 .inner-Box2 p.btn {
        position: absolute;
        top: 0;
        left: 0;
    }

    #contents02 .inner-Box2 p.btn img {
    }

    #contents02 .inner-Box2 ul.snslist {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #contents02 .inner-Box2 ul li {
    }

    #contents02 .inner-Box2 ul li:nth-child(3n) {
        margin-right: 0px;
    }

    #contents02 .inner-Box2 ul li figure {
    }
}

@media screen and (max-width: 767px) {
    #contentsmain {
        position: relative;
        background: url('../images/company/contentsmain-back01.png')repeat-x top 42.9vw center;
        padding-top: 33.9vw;
        background-size: 240% auto;
        animation: slideRightToLeft 45s linear infinite;
    }

    @keyframes slideRightToLeft {
        from {
            background-position: left 215% top 75vw;
        }

        to {
            background-position: left 0% top 75vw;
        }
    }

    #contentsmain .inner-Box {
        position: relative;
        text-align: center;
        color: #fff;
        padding-bottom: 64.3vw;
    }

    #contentsmain .inner-Box h2 {
        font-size: 6.6vw;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.8vw;
        margin: 0 -9vw 5.6vw;
    }

    #contentsmain .inner-Box h2 span {
    }

    #contentsmain .inner-Box p.text {
        font-size: 3.7vw;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.1vw;
        margin-bottom: 3.9vw;
    }

    #contentsmain .inner-Box2 {
        margin: 0 5.2vw;
        position: relative;
        color: #fff;
        padding-bottom: 5.3vw;
    }

    #contentsmain h3 {
        position: relative;
        font-size: 4.1vw;
        line-height: 1.6;
        letter-spacing: 0.6vw;
        font-weight: 700;
        margin-bottom: 14.2vw;
    }

    #contentsmain h3 .en {
        font-size: 14.5vw;
        line-height: 1.6;
        letter-spacing: 0.6vw;
        font-weight: 500;
        display: block;
    }

    #contentsmain h3 .icn {
        position: absolute;
        top: 20.8vw;
        left: 0.9vw;
        width: 14.5vw;
    }

    .icn img {
        width: 100%;
        height: auto;
    }

    #contentsmain h3 .jpf {
        position: relative;
        left: 19.1vw;
        top: -1.5vw;
    }

    #contentsmain .inner-Box2 table {
        width: 100%;
        border-top: 1px solid #fff;
        font-size: 4.4vw;
        line-height: 1.6;
        letter-spacing: 0.3vw;
        font-weight: 300;
    }

    #contentsmain .inner-Box2 table th {
        text-align: left;
        padding: 2.9vw 4.2vw;
        border-bottom: 1px solid #93B9C8;
        width: 88.9%;
        display: block;
        text-align: center;
        margin: 0 5vw;
    }

    #contentsmain .inner-Box2 table td {
        border-bottom: 1px solid #fff;
        padding: 6.6vw 4.2vw;
        display: block;
        width: 100%;
        font-size: 3.6vw;
        line-height: 1.6;
        letter-spacing: 0.1vw;
        font-weight: 500;
        text-align: center;
    }

    #contentsmain .inner-Box2 table td a {
        color: #fff;
    }

    #contentsmain .inner-Box2 ul {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -3vw;
    }

    #contentsmain .inner-Box2 ul li {
        position: relative;
        width: 50%;
        text-align: left;
    }

    #contentsmain .inner-Box2 ul li p {
        font-size: 3.6vw;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.3vw;
        margin-bottom: 1.2vw;
    }

    #contents01 {
        position: relative;
        background: url('../images/company/sp-contents01-back01.png')no-repeat top center #F5ECE2;
        padding-top: 36.3vw;
        padding-bottom: 22.3vw;
        background-size: 100% auto;
    }

    #contents01 h2 {
        position: relative;
        font-size: 4.1vw;
        line-height: 1.6;
        letter-spacing: 0.6vw;
        font-weight: 700;
        margin-bottom: 11.7vw;
        margin-left: 5vw;
    }

    #contents01 h2 .en {
        font-size: 14.5vw;
        line-height: 1.6;
        letter-spacing: 0.6vw;
        font-weight: 500;
        display: block;
    }

    #contents01 h2 .icn {
        position: absolute;
        top: 20.8vw;
        left: 0.9vw;
        width: 14.5vw;
    }

    #contents01 h2 .jpf {
        position: relative;
        left: 19.1vw;
        top: -1.5vw;
    }

    #contents01 .inner-Box {
        margin: 0 auto 11.2vw;
        position: relative;
    }

    #contents01 .inner-Box ul.list {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 5.2vw;
    }

    #contents01 .inner-Box ul li {
        margin-bottom: 9.2vw;
    }

    #contents01 .inner-Box ul li:nth-child(3n) {
        margin-right: 0.0vw;
    }

    #contents01 .inner-Box ul li figure {
        margin-bottom: 2.4vw;
    }

    #contents01 .inner-Box p.listtext {
        font-size: 4vw;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.3vw;
    }

    #contents01 .inner-Box2 {
        margin: 0 4vw;
        position: relative;
    }

    #contents01 .inner-Box2 iframe {
        height: 75.8vw;
        width: 100vw;
        margin: 0 -4vw 6.1vw;
    }

    #contents01 .inner-Box2 p.text {
        font-size: 4vw;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: -0.3vw;
        margin: 0 1vw 3.9vw;
        text-align: center;
        position: relative;
        border-bottom: 1px solid #333;
        padding-right: 7vw;
    }

    #contents01 .inner-Box2 p.text a {
        display: block;
        padding: 0 0 5.4vw 0.4vw;
    }

    #contents01 .inner-Box2 p.text a span {
        display: block;
        position: absolute;
        top: -2.3vw;
        right: 9vw;
        width: 12vw;
    }

    #contents01 .inbox {
        margin-left: 1.6vw;
    }

    #contents01 .inner-Box2 h2 {
        margin-left: 0vw;
    }

    #contents02 {
        position: relative;
        background: url('../images/company/sp-contents02-back01.png') no-repeat top center;
        background-size: 100% auto;
        padding-top: 48.7vw;
    }

    #contents02 .ttl-Box {
        margin: 0 4vw;
        position: relative;
        text-align: center;
    }

    #contents02 .ttl-Box p.f-gop {
        font-size: 5.1vw;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.3vw;
        margin-bottom: 2.1vw;
        color: #DEDC9A;
    }

    #contents02 .ttl-Box h2 {
        font-size: 7.4vw;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.3vw;
        margin-bottom: 6.5vw;
        color: #fff;
    }

    #contents02 .ttl-Box h2 span {
    }

    #contents02 .inner-Box1 {
        margin: 0 5.4vw 15.6vw;
        position: relative;
        background: #72A6C1;
        color: #fff;
        {
        }

        ;padding: 11.1vw 0;
    }

    #contents02 .ttl-Box span.ttlleft {
        display: block;
        line-height: 1;
        position: absolute;
        top: 0.7vw;
        left: 50%;
        margin-left: -33.5vw;
        width: 5.8vw;
    }

    #contents02 .ttl-Box span.ttlright {
        display: block;
        line-height: 1;
        position: absolute;
        top: 0.5vw;
        left: 50%;
        margin-left: 28vw;
        transform: scale(-1, 1);
        width: 5.8vw;
    }

    span.ttlleft img {
        width: 100%;
        height: auto;
    }

    span.ttlright img {
        width: 100%;
        height: auto;
    }

    #contents02 .inBox {
        margin: 0 4vw -4vw;
        position: relative;
        padding: 5.2vw 3.9vw 4.4vw 3.9vw;
    }

    #contents02 .inBox span.sns {
        display: block;
        line-height: 1;
        position: absolute;
        top: 6.2vw;
        left: 21vw;
        width: 6vw;
    }

    #contents02 .inBox span.sns img {
        width: 100%;
        height: auto;
    }

    #contents02 .inBox h3 {
        font-size: 5.1vw;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.3vw;
        position: relative;
        border-bottom: #fff solid 1px;
        padding-bottom: 3vw;
        margin-bottom: 3vw;
        padding-left: 26vw;
        text-align: -webkit-auto;
    }

    #contents02 .inBox h3::before {
        content: "";
        background: #fff;
        height: 3.9vw;
        position: absolute;
        left: 18.5vw;
        bottom: 0.1vw;
        margin-left: -0.1vw;
    }

    #contents02 .inBox ul {
    }

    #contents02 .inBox ul li {
        position: relative;
        margin-right: 12.0vw;
    }

    #contents02 .inBox ul li a {
        color: #fff;
    }

    #contents02 .inBox p.mintext {
        font-size: 3.8vw;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.3vw;
        margin-bottom: 3vw;
    }

    #contents02 .inBox span.arr {
        display: block;
        line-height: 1;
        position: absolute;
        top: 1vw;
        right: -10.2vw;
        width: 5vw;
    }

    #contents02 .inBox span.arr img {
        width: 100%;
        height: auto;
    }

    #contents02 .inner-Box2 {
        margin: 0 4vw;
        position: relative;
    }

    #contents02 .inner-Boxttl2 {
        margin: 0 4vw;
        position: relative;
    }

    #contents02 .inner-Boxttl2 h2 {
        font-size: 4.6vw;
        line-height: 1.6;
        font-weight: 700;
        letter-spacing: 0.3vw;
        margin-bottom: 3.9vw;
        text-align: center;
        color: #FFFFFF;
    }

    #contents02 .inner-Boxttl2 h2 span {
    }

    #contents02 .inner-Boxttl2 span.ttlleft {
        display: block;
        line-height: 1;
        position: absolute;
        top: 0.7vw;
        left: 50%;
        margin-left: -33.5vw;
        width: 5.8vw;
    }

    #contents02 .inner-Boxttl2 span.ttlright {
        display: block;
        line-height: 1;
        position: absolute;
        top: 0.5vw;
        left: 50%;
        margin-left: 28vw;
        transform: scale(-1, 1);
        width: 5.8vw;
    }

    #contents02 .inBox span.sns.youtube {
        position: relative;
        top: 6vw;
        padding: 0;
        left: 18vw;
    }

    #contents02 .inner-Box2 {
        margin: 0 4.6vw 32.9vw 5.3vw;
        position: relative;
    }

    #contents02 .inner-Box2 p.btn {
        position: relative;
        top: 0;
        left: 0;
        margin-bottom: 4.6vw;
    }

    #contents02 .inner-Box2 p.btn img {
    }

    #contents02 .inner-Box2 ul.snslist {
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #contents02 .inner-Box2 ul li {
    }

    #contents02 .inner-Box2 ul li:nth-child(3n) {
        margin-right: 0.0vw;
    }

    #contents02 .inner-Box2 ul li figure {
        margin-bottom: 0vw;
    }
}
