@charset "UTF-8";

/*
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&family=Noto+Serif+JP:wght@400;500;600&display=swap");

.f_sans {
    font-family: "Noto Sans JP", sans-serif
}
*/

.f_serif {
    font-family: "Noto Serif JP", serif
}

.is_maker-delay1:after {
    -webkit-transition-delay: .1s !important;
    transition-delay: .1s !important
}

.is_maker-delay2:after {
    -webkit-transition-delay: .2s !important;
    transition-delay: .2s !important
}

.is_maker-delay3:after {
    -webkit-transition-delay: .3s !important;
    transition-delay: .3s !important
}

.is_maker-delay4:after {
    -webkit-transition-delay: .4s !important;
    transition-delay: .4s !important
}

.is_maker-delay5:after {
    -webkit-transition-delay: .5s !important;
    transition-delay: .5s !important
}

.is_maker-delay6:after {
    -webkit-transition-delay: .6s !important;
    transition-delay: .6s !important
}

.is_maker-delay7:after {
    -webkit-transition-delay: .7s !important;
    transition-delay: .7s !important
}

.is_maker-delay8:after {
    -webkit-transition-delay: .8s !important;
    transition-delay: .8s !important
}

.is_maker-delay9:after {
    -webkit-transition-delay: .9s !important;
    transition-delay: .9s !important
}

.is_maker-delay10:after {
    -webkit-transition-delay: .10s !important;
    transition-delay: .10s !important
}

.is_maker {
    position: relative;
    padding-bottom: 0em;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffd800), to(#ffd800)) 0 100%/0 30% no-repeat;
    background: linear-gradient(#ffd800, #ffd800) 0 100%/0 30% no-repeat;
    -webkit-transition: background 0.4s;
    transition: background 0.4s;
    text-decoration: none;
    font-size: inherit;
    will-change: background-size
}

.is_maker.is-action {
    background-size: 100% 30% !important
}

.is_down.is-action {
    -webkit-animation-name: arr-v;
    animation-name: arr-v;
    -webkit-animation-duration: 1.8s;
    animation-duration: 1.8s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease
}

.is_popup {
    -webkit-transition: all 0.7s ease-out;
    transition: all 0.7s ease-out;
    opacity: 0;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    will-change: transform;
　　/*アニメーションタイミング調整用*/
    -webkit-transition-delay: .2s !important;
    transition-delay: .2s !important;
    /*アニメーションタイミング調整用*/
}

.is_popup.is-action {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1
}

.is_maker-line-item-delay1 {
    -webkit-transition-delay: .1s !important;
    transition-delay: .1s !important
}

.is_maker-line-item-delay2 {
    -webkit-transition-delay: .2s !important;
    transition-delay: .2s !important
}

.is_maker-line-item-delay3 {
    -webkit-transition-delay: .3s !important;
    transition-delay: .3s !important
}

.is_maker-line-item-delay4 {
    -webkit-transition-delay: .4s !important;
    transition-delay: .4s !important
}

.is_maker-line-item-delay5 {
    -webkit-transition-delay: .5s !important;
    transition-delay: .5s !important
}

.is_maker-line-item-delay6 {
    -webkit-transition-delay: .6s !important;
    transition-delay: .6s !important
}

.is_maker-line-item-delay7 {
    -webkit-transition-delay: .7s !important;
    transition-delay: .7s !important
}

.is_maker-line-item-delay8 {
    -webkit-transition-delay: .8s !important;
    transition-delay: .8s !important
}

.is_maker-line-item-delay9 {
    -webkit-transition-delay: .9s !important;
    transition-delay: .9s !important
}

.is_maker-line-item-delay10 {
    -webkit-transition-delay: .10s !important;
    transition-delay: .10s !important
}

@media screen and (max-width: 749px) {
    .is_maker-line {
        position: relative;
        display: inline-block
    }

    .is_maker-line img {
        position: relative;
        z-index: 10
    }

    .is_maker-line-01-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 24vw;
        height: 2.66666vw;
        left: 17.86666vw;
        top: 6.66666vw
    }

    .is_maker-line-01-02 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 61.06666vw;
        height: 2.66666vw;
        left: 0;
        top: 14.93333vw
    }

    .is_maker-line-02-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 59.73333vw;
        height: 12.53333vw;
        left: 7.46666vw;
        top: 9.6vw
    }

    .is_maker-line-02-02 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 59.73333vw;
        height: 12.53333vw;
        left: 7.46666vw;
        top: 25.2vw
    }

    .is_maker-line-03-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 60.93333vw;
        height: 13.06666vw;
        left: 10.66666vw;
        top: 8.53333vw
    }

    .is_maker-line-03-02 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 73.86666vw;
        height: 13.06666vw;
        left: 4.66666vw;
        top: 22.93333vw
    }

    .is_maker-line-03-03 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 84.66666vw;
        height: 13.06666vw;
        left: 0;
        top: 37.33333vw
    }

    .is_maker-line-04-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 40vw;
        height: 2.13333vw;
        left: 15.73333vw;
        top: 2.93333vw
    }

    .is_maker-line-04-02 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 72.66666vw;
        height: 2.13333vw;
        left: -1.33334vw;
        top: 10.26666vw
    }

    .is_maker-line-05-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 67.73333vw;
        height: 12vw;
        left: 4vw;
        top: -38.66667vw
    }
}

@media screen and (max-width: 749px) and (max-width: 425px) {
    .is_maker-line-05-01 {
        top: -41.33334vw
    }
}

@media screen and (max-width: 749px) {
    .is_maker-line-05-02 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 90.66666vw;
        height: 12vw;
        left: -6.66667vw;
        top: -25.2vw
    }
}

@media screen and (max-width: 749px) and (max-width: 425px) {
    .is_maker-line-05-02 {
        top: -28.00001vw
    }
}

@media screen and (max-width: 749px) {
    .is_maker-line-05-03 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 86.66666vw;
        height: 12vw;
        left: -5.33334vw;
        top: -12vw
    }
}

@media screen and (max-width: 749px) and (max-width: 425px) {
    .is_maker-line-05-03 {
        top: -14.66667vw
    }
}

@media screen and (max-width: 749px) {
    .is_maker-line-06-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 79.2vw;
        height: 1.6vw;
        left: 1.33333vw;
        top: 29.33333vw;
        -webkit-transform: skewX(-10deg);
        transform: skewX(-10deg)
    }

    .is_maker-line-item {
        -webkit-transition: all 0.4s ease 0.2s;
        transition: all 0.4s ease 0.2s;
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0% 0;
        transform-origin: 0% 0;
        will-change: transform
    }

    .is_maker-line.is-action .is_maker-line-item {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    .is_maker-line.is-action .is_maker-line-item.is_maker-line-06-01 {
        -webkit-transform: scaleX(1) skewX(-10deg);
        transform: scaleX(1) skewX(-10deg)
    }
}

@media screen and (min-width: 750px) {
    .is_maker-line {
        position: relative;
        display: inline-block
    }

    .is_maker-line img {
        position: relative;
        z-index: 10
    }

    .is_maker-line-01-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 200px;
        height: 20px;
        left: 164px;
        top: 56px
    }

    .is_maker-line-01-02 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 538px;
        height: 20px;
        left: 0;
        top: 132px
    }

    .is_maker-line-02-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 890px;
        height: 94px;
        left: -20px;
        top: 72px
    }

    .is_maker-line-02-02 {
        display: none
    }

    .is_maker-line-03-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 1026px;
        height: 98px;
        left: -40px;
        top: 64px
    }

    .is_maker-line-03-02 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 684px;
        height: 98px;
        left: 140px;
        top: 190px
    }

    .is_maker-line-03-03 {
        display: none
    }

    .is_maker-line-04-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 345px;
        height: 16px;
        left: 135px;
        top: 22px
    }

    .is_maker-line-04-02 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 637px;
        height: 16px;
        left: -10px;
        top: 87px
    }

    .is_maker-line-05-01 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 548px;
        height: 90px;
        left: -300px;
        top: -340px
    }

    .is_maker-line-05-02 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 810px;
        height: 90px;
        left: -407px;
        top: -213px
    }

    .is_maker-line-05-03 {
        position: absolute;
        display: inline-block;
        background: #f5b901;
        width: 810px;
        height: 90px;
        left: -407px;
        top: -88px
    }

    .is_maker-line-06-01 {
        position: absolute;
        display: inline-block;
        background: #f7d927;
        width: 594px;
        height: 12px;
        left: 10px;
        top: 220px;
        -webkit-transform: skewX(-10deg);
        transform: skewX(-10deg)
    }

    .is_maker-line-item {
        -webkit-transition: all 0.4s ease 0.2s;
        transition: all 0.4s ease 0.2s;
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0% 0;
        transform-origin: 0% 0;
        will-change: transform
    }

    .is_maker-line.is-action .is_maker-line-item {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    .is_maker-line.is-action .is_maker-line-item.is_maker-line-06-01 {
        -webkit-transform: scaleX(1) skewX(-10deg);
        transform: scaleX(1) skewX(-10deg)
    }
}

.is-pc-slidein-left {
    -webkit-transition: all 0.3s ease 0.2s;
    transition: all 0.3s ease 0.2s;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
    will-change: transform, opacity;
    opacity: 0
}

@media only screen and (max-width: 749px) {
    .is-pc-slidein-left {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }
}

.is-pc-slidein-left.is-action {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1
}

.is-pc-slidein-right {
    -webkit-transition: all 0.3s ease 0.2s;
    transition: all 0.3s ease 0.2s;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
    will-change: transform, opacity;
    opacity: 0
}

@media only screen and (max-width: 749px) {
    .is-pc-slidein-right {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }
}

.is-pc-slidein-right.is-action {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1
}

.fix_off {
    -webkit-animation-name: fuyu;
    animation-name: fuyu;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease
}

.product_btn-case {
    overflow: hidden;
    position: relative;
    display: inline-block
}

.product_btn-case:after {
    display: block;
    width: 140%;
    height: 200%;
    content: "";
    position: absolute;
    background: rgba(255, 255, 255, 0.8);
    z-index: 10;
    top: -50%;
    left: 0;
    -webkit-transform: skewX(-40deg) translateX(-100%);
    transform: skewX(-40deg) translateX(-100%);
    -webkit-animation-name: reflection;
    animation-name: reflection;
    -webkit-animation-duration: 3.3s;
    animation-duration: 3.3s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    will-change: transform
}

@-webkit-keyframes arr-v {
    0% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    30% {
        opacity: 0;
        -webkit-transform: translate(0, -30%);
        transform: translate(0, -30%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@keyframes arr-v {
    0% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    30% {
        opacity: 0;
        -webkit-transform: translate(0, -30%);
        transform: translate(0, -30%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@-webkit-keyframes reflection {
    0% {
        -webkit-transform: skewX(-40deg) translateX(-100%);
        transform: skewX(-40deg) translateX(-100%);
        opacity: 0
    }

    10% {
        opacity: 0.5
    }

    15% {
        -webkit-transform: skewX(-40deg) translateX(130%);
        transform: skewX(-40deg) translateX(130%);
        opacity: 0.1
    }

    16% {
        -webkit-transform: skewX(-40deg) translateX(200%);
        transform: skewX(-40deg) translateX(200%);
        opacity: 0
    }

    100% {
        -webkit-transform: skewX(-40deg) translateX(200%);
        transform: skewX(-40deg) translateX(200%);
        opacity: 0
    }
}

@keyframes reflection {
    0% {
        -webkit-transform: skewX(-40deg) translateX(-100%);
        transform: skewX(-40deg) translateX(-100%);
        opacity: 0
    }

    10% {
        opacity: 0.5
    }

    15% {
        -webkit-transform: skewX(-40deg) translateX(130%);
        transform: skewX(-40deg) translateX(130%);
        opacity: 0.1
    }

    16% {
        -webkit-transform: skewX(-40deg) translateX(200%);
        transform: skewX(-40deg) translateX(200%);
        opacity: 0
    }

    100% {
        -webkit-transform: skewX(-40deg) translateX(200%);
        transform: skewX(-40deg) translateX(200%);
        opacity: 0
    }
}

@-webkit-keyframes fuyu {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -webkit-transform: translate(0, -10px);
        transform: translate(0, -10px)
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@keyframes fuyu {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -webkit-transform: translate(0, -10px);
        transform: translate(0, -10px)
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

.is-fixed .cv_fixed-area .product_btn-case {
    height: auto;
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.cv_fixed-area {
    position: fixed;
    bottom: 0;
    left: 5%;
    z-index: 999;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    display: inline-block
}

.cv_fixed-area .product_btn-case {
    -webkit-transform: translateY(120%);
    transform: translateY(120%);
    height: 0;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease 0.4s, height 0s, -webkit-transform 0.4s ease 0.3s;
    transition: opacity 0.2s ease 0.4s, height 0s, -webkit-transform 0.4s ease 0.3s;
    transition: opacity 0.2s ease 0.4s, height 0s, transform 0.4s ease 0.3s;
    transition: opacity 0.2s ease 0.4s, height 0s, transform 0.4s ease 0.3s, -webkit-transform 0.4s ease 0.3s;
    visibility: hidden
}

@media only screen and (min-width: 768px) {
    .cv_fixed-area {
        text-align: right;
        width: 92%;
        display: inline-block
    }

    .cv_fixed-area .product_btn-case {
        height: 0
    }
}

.float-btn-pagetop {
    position: fixed;
    right: 1.33333vw;
    bottom: 21.33333vw;
    width: 12vw;
    height: 12vw;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-transform: translateY(200px);
    transform: translateY(200px);
    z-index: 100
}

.float-btn-pagetop .btn {
    display: block;
    border-radius: 50%;
    width: 12vw;
    height: 12vw;
    background: rgba(156, 156, 156, 0.7);
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    border: transparent solid 1px;
    position: relative;
    margin-top: 0
}

.float-btn-pagetop .btn:after {
    position: absolute;
    content: "";
    width: 2vw;
    height: 2vw;
    border-top: .26666vw solid #fff;
    border-left: .26666vw solid #fff;
    display: block;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    left: calc(50% - 1.06666vw);
    top: calc(50% - .66666vw)
}

.is-fixed .float-btn-pagetop {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
}

@media only screen and (min-width: 768px) {
    .float-btn-pagetop {
        right: 40px;
        bottom: 120px;
        width: 60px;
        height: 60px
    }

    .float-btn-pagetop .btn {
        width: 60px;
        height: 60px
    }

    .float-btn-pagetop .btn:after {
        width: 13px;
        height: 13px;
        border-top: 2px solid #fff;
        border-left: 2px solid #fff;
        display: block;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        left: calc(50% - 7px);
        top: calc(50% - 5px)
    }

    .is-fixed .float-btn-pagetop {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
}

@media only screen and (max-width: 767px) {
    .howtomovie .howtomovie_panel_content_item .pop_text img {
        width: 5%
    }
}

@media only screen and (min-width: 768px) {
    .newvoice .newvoice_panel_content_fix_item {
        width: 310px !important
    }

    .howtokv .howtokv_panel_content_fix_item.fix_text1 .num {
        font-size: 105px !important;
        line-height: 0.8 !important
    }
}

body,
main,
section,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset,
img {
    border: 0
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
    font-style: normal;
    font-weight: normal
}

em,
strong,
th {
    font-weight: bold
}

ol,
ul {
    list-style: none
}

caption,
th {
    text-align: left
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%
}

abbr,
acronym {
    border: 0
}

sub,
sup {
    font-size: 0.5em;
    line-height: 1
}

hr {
    display: none
}

a {
    text-decoration: none
}

a:hover {
    text-decoration: underline
}

.mainContents {
    width: 100%;
    margin: 0 auto;
}

.mainContents img {
    max-width: 100%;
    vertical-align: bottom
}

.mainContents .mv {
    background: url(../img/mv_bg01.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .mv_subttl {
    background: url(../img/mv_bg02.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .cv {
    position: relative;
    background: url(../img/cv_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .cv a {
    position: absolute;
    bottom: 23vw;
    left: calc(50% - 42vw);
    max-width: 84vw
}

.mainContents .cv1 a {
    bottom: 14.66666vw
}

.mainContents .cv2 a {
    bottom: 12vw
}

.mainContents .cv3 a {
    bottom: 10vw
}

.mainContents .sec01 {
    background: url(../img/sec01_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec02 {
    background: url(../img/sec02_bg.png);
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec03 {
    background: url(../img/sec03_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec04 {
    background: url(../img/sec04_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec05 {
    background: url(../img/sec05_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec06 {
    background: url(../img/sec06_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec06-2 {
    background: url(../img/sec06-2_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

.mainContents .sec07 {
    background: url(../img/sec07_bg.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat
}

@media only screen and (min-width: 750px),
print {
    .mainContents .footer_top_inner p {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

.mainContents .footer_top_inner p::after {
    content: "";
    display: block;
    margin: auto;
    border-bottom: 2px solid #aaa;
    width: 98%;
    margin-top: 5.33333vw;
    margin-bottom: 5.33333vw
}

.mainContents .footer_top_inner p:last-of-type::after {
    content: none
}

.mainContents .footer_top_inner img {
    padding-top: 8vw;
    padding-bottom: 4vw;
    width: 56vw
}

.mainContents .footer_bottom_inner {
    background-color: #000
}

.mainContents .footer_bottom_inner ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5.33333vw 4vw
}

.mainContents .footer_bottom_inner ul li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    font-size: 4vw;
    letter-spacing: 0em;
    font-weight: 400;
    padding: 2.66666vw 3.33333vw;
    text-align: left
}

@media only screen and (min-width: 750px),
print {
    .mainContents .footer_bottom_inner ul li {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

.mainContents .footer_bottom_inner ul li a {
    color: #fff
}

.mainContents .footer_bottom .copyright {
    font-size: 2.66666vw;
    letter-spacing: 0em;
    font-weight: 400;
    padding: 0 13.33333vw 10.66666vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    color: #fff
}

@media only screen and (min-width: 750px),
print {
    .mainContents .footer_bottom .copyright {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

@media only screen and (min-width: 750px) {

    body,
    main,
    section,
    div,
    dl,
    dt,
    dd,
    ul,
    ol,
    li,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    pre,
    form,
    fieldset,
    input,
    textarea,
    p,
    blockquote,
    th,
    td {
        margin: 0;
        padding: 0
    }

    table {
        border-collapse: collapse;
        border-spacing: 0
    }

    fieldset,
    img {
        border: 0
    }

    address,
    caption,
    cite,
    code,
    dfn,
    em,
    strong,
    th,
    var {
        font-style: normal;
        font-weight: normal
    }

    em,
    strong,
    th {
        font-weight: bold
    }

    ol,
    ul {
        list-style: none
    }

    caption,
    th {
        text-align: left
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: 100%
    }

    abbr,
    acronym {
        border: 0
    }

    sub,
    sup {
        font-size: 0.5em;
        line-height: 1
    }

    hr {
        display: none
    }

    a {
        text-decoration: none
    }

    a:hover {
        text-decoration: underline
    }

    .mainContents {
        width: 750px;
        margin: 0 auto;
    }

    .mainContents img {
        max-width: 100%;
        vertical-align: bottom
    }

    .mainContents .cv {
        position: relative
    }

    .mainContents .cv a {
        position: absolute;
        bottom: 180px;
        left: calc(50% - 315px);
        max-width: 630px
    }

    .mainContents .cv1 a {
        bottom: 110px
    }

    .mainContents .cv2 a {
        bottom: 90px
    }

    .mainContents .cv3 a {
        bottom: 75px
    }
}

@media only screen and (min-width: 750px) and (min-width: 750px) {
    .mainContents .footer_top_inner p {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

@media only screen and (min-width: 750px) {
    .mainContents .footer_top_inner p::after {
        content: "";
        display: block;
        margin: auto;
        border-bottom: 2px solid #aaa;
        width: 98%;
        margin-top: 40px;
        margin-bottom: 40px
    }

    .mainContents .footer_top_inner p:last-of-type::after {
        content: none
    }

    .mainContents .footer_top_inner img {
        padding-top: 60px;
        padding-bottom: 30px;
        width: 420px
    }

    .mainContents .footer_bottom_inner {
        background-color: #000
    }

    .mainContents .footer_bottom_inner ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        list-style: none;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 40px 30px
    }

    .mainContents .footer_bottom_inner ul li {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 50%;
        font-size: 4vw;
        letter-spacing: 0em;
        font-weight: 400;
        padding: 20px 25px;
        text-align: left
    }
}

@media only screen and (min-width: 750px) and (min-width: 750px) {
    .mainContents .footer_bottom_inner ul li {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

@media only screen and (min-width: 750px) {
    .mainContents .footer_bottom_inner ul li a {
        color: #fff
    }

    .mainContents .footer_bottom .copyright {
        font-size: 2.66666vw;
        letter-spacing: 0em;
        font-weight: 400;
        padding: 0 100px 80px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center;
        color: #fff
    }
}

@media only screen and (min-width: 750px) and (min-width: 750px) {
    .mainContents .footer_bottom .copyright {
        font-size: 16px;
        letter-spacing: 0em;
        font-weight: 400
    }
}

hr.line {
    border-style: inset;
    border-width: 1px;
    display: block;
    border-bottom: none;
}

@media only screen and (min-width: 750px) {
    section.comp {
        margin: 80px 30px 100px;
    }
    section.comp p{
        font-size: 16px;
        letter-spacing: 0em;
        line-height: 1.6;
        font-weight: 400;
    }
    p.txt {
        margin-bottom: 3.8em;
    }
    p.txt2 {
        margin-bottom: 4.3em;
    }
    p.txt3 {
        margin: 40px auto 85px auto;
    }
    div#product {
        margin-bottom: 80px;
    }
}

@media only screen and (max-width: 749px) {
    section.comp {
        margin: 9.3vw 2.6vw 0vw 2.6vw;
    }
    section.comp p{
        font-size: 8px;
        letter-spacing: 0em;
        line-height: 1.6;
        font-weight: 400;
    }
    p.txt {
        margin-bottom: 6.6vw;
    }
    p.txt2 {
        margin-bottom: 9.3vw;
    }
    p.txt3 {
        margin: 5.3vw auto 11.3vw auto;
    }
    div#product {
        margin-bottom: 40px;
    }
}

#product h2 {
    padding: 1em;
    background: #5d9fdc;
    color: #fff;
    font-size: 22px;
    margin: 40px 0px;
}

#footer {
    padding: 30px;
    color: #FFF;
    background: #11487e;
}

#footer p {
    text-align: center;
}

#footer a {
    margin: 0 0.5em;
    color: #FFF;
}



