@charset "utf-8"; 

:root{
    --red:#d7000f;
}

p{
    color:inherit;
    font-family:inherit;
    font-size:inherit;
    margin:inherit;
}
/*start 共通*/
html{
    font-size:calc(1000px / 62);
    min-height:0;
}
@media (min-width:1921px){
    html{
        font-size:calc(100vw / 120);
    }   
}
@media (max-width:1000px){
    html{
        font-size:calc(100vw / 62);
    }   
}

@media (max-width:820px){
    html{
        font-size:calc(100vw / 48);
    }
}

@media (max-width:540px){
    html{
        font-size:calc(100vw / 34);
    }
}


@media (min-width:541px){ .show-S { display:none !important; } }
@media (min-width:821px){ .show-MS{ display:none !important; } }
@media (min-width:821px){ .show-M { display:none !important; } }
@media (max-width:540px){ .show-M { display:none !important; } }
@media (max-width:540px){ .show-LM{ display:none !important; } }
@media (max-width:820px){ .show-L { display:none !important; } }


* {
    box-sizing: border-box;
    -webkit-touch-callout:none;
    -webkit-tap-highlight-color:transparent;
    font-family:inherit;
}


body {
    margin: 0;
    font-size:1rem;
}

body {
    color: #fff;
    font-family: sans-serif;
    background-color: #000000;
}


a {
    color: inherit;
    text-decoration: none;
}

p{
    color:inherit;
}

/* @media (max-width:540px){
    body,p {
        font-size: 1rem;
    }
} */
h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
    margin:0;
    line-height: 1;
    font-size:inherit;
    color:#fff;
}

img {
    vertical-align: bottom;
}
.fullimage,
.fullimage img{
    width:100%;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}



/*[href]{
    opacity:1;
    transition:opacity 0.3s ease;
}
[href]:hover{
    opacity:0.5;
}*/

[data-smooth]{
    cursor:pointer;
}


.inner-width{
    padding: 0 1rem;
    max-width:62rem;
    margin:0 auto;
}

.inner-width03{
    padding: 0 1rem;
    max-width: 45rem;
    margin:0 auto;
}
@media (max-width:540px){
     .inner-width03{
        max-width: 30rem;
    }   
}


#schedule{
    margin-top:5rem;
}
#schedule .sec-inner{
    text-align:center;
}
.schedule-row{
    display:flex;
    text-align:left;
}
.arrow{
    width:2rem;
    aspect-ratio:283 / 168;
    background-image:url(../img/arrow.png);
    background-size:100%;
    background-repeat:no-repeat;
    background-position:center;
    margin-right: 1rem;
}
.schedule_date{
    font-weight:bold;
    color:#969696;
    width:11rem;
}
.schedule_date > span{
    color:#fff;
}
.schedule-wrap{
    background-color:#171717;
    padding: 1.5rem;
    display: inline-block;
}
.schedule-row{
    padding:0.25rem 0;
}
.schedule-row + .schedule-row{
    border-top:1px solid #969696;
}

#product{
    text-align:center;
    background-image: url(../img/story.jpg);
    background-size: auto 100%;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 5rem;
    margin-bottom: 5rem;
    padding-top: 2rem;
    padding-bottom: 1rem;
}
#product .section_title{
    font-size:4rem;
}
#product .section_title h2{
    color: var(--red);
    font-family:font01;
}
#product .section_title span{
    display:block;
    line-height:1.3;
    
}
#product .section_title span + span{
    font-size:0.8em;
}

#product .story-row{
    font-weight:bold;
    background-color:var(--red);
    padding:0.75rem 0;
    font-size:1.5rem;
    line-height:1;
    letter-spacing:0.2rem;
    margin-top: 5rem;
}

.split1-row{
    font-size:1.5rem;
    line-height: 2;
    margin-top: 4rem;
}
.split2-row{
    font-size:1.5rem;
    line-height: 2.2;
    font-weight:bold;
    margin-top: 4rem;
}
.split3-row{
    font-size:1.5rem;
    line-height: 2;
    margin-top: 4rem;
}
.split3-row .big{
    font-size: 1.5em;
    letter-spacing:0.15rem;
}
.split3-row .red{
    color:var(--red);
    font-weight:bold;
}

@media  (max-width:540px){
    #product .section_title{
        font-size:3rem;
    }
    .split1-row,
    .split2-row,
    .split3-row{
        font-size:1.2rem;
    }
}



#neuma{
    background-image:url(../img/product.jpg);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    padding-top: 3rem;
    /* padding-bottom: 3rem; */
}

.neuma_story-row{
    text-align: center;
    font-size:1.3rem;
    margin: 3rem 0;
}
.neuma-box{
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
}
.neuma-box > .item_1{
    width: 43%;
    background-size: 100% auto;
    background-position: center top;
    background-repeat: no-repeat;
    background-image: url(../img/tire.png);
}
.neuma-box > .item_2{
    width: 55%;
    padding-top:6rem;
    padding-bottom: 5rem;
}
.desc-row + .desc-row{
    margin-top:1.5rem;
}
.red_back{
    background-color:var(--red);
    padding:0 0.75rem;
    font-weight:bold;
    font-size: 1.5rem;
}
.desc_text{
    margin-top:0.5rem;
    padding:0 0.75rem;
    line-height:1.3;
}

@media  (max-width:540px){
    .neuma_story-row{
        font-size:1.1rem;
    }
    .neuma-box{
        display:block;
    }
    .neuma-box > .item{
        width:auto;
    }
    .neuma-box > .item_1{
        aspect-ratio:1 / 1;
        width:60%;
        margin:0 auto;
    }
    .neuma-box > .item_2{
        padding-top: 0rem;
    }
}


.spec-box{
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
    align-items:center;
    margin-top: 8rem;
    margin-bottom: 8rem;
}
.spec-box > .item_1{
    width:45%;
}
.spec-box > .item_1 .image{
    width:100%;
}
.spec-box > .item_2{
    width:50%;
}
#spec table{
    width:100%;
    margin-top:0.5rem;
}
#spec table tr:nth-child(odd){
    background-color:#a5a6a5;
}
#spec table tr th{
    color:#000;
    text-align:center;
    padding: 0 0.5rem;
}
#spec table tr td{
    text-align:center;
    padding: 0 0.5rem;
}

#spec table tr td[rowspan]{
    background-color:#000;
    text-align:center;
}
#spec table tr td:not(:last-child),
#spec table tr th:not(:last-child){
    border-right:1px solid #fff;
}
#spec table tr{
    border-top:2px solid #fff;
    border-bottom:2px solid #fff;
}

@media (max-width:820px){
    .spec-box{
        display:block;
        max-width:540px;
        margin-left:auto;
        margin-right:auto;
    }
    .spec-box > .item{
        width:auto;
    }
    .spec-box > .item_2{
        margin-top:2rem;
    }
}