
html, body, h1, h2, h3, h4, h5, h6, a, p, span, em, small, strong, sub, sup, mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre, ol, ul, li, dl, dt, dd, div, section, article, main, aside, nav, header, footer, img, figure, figcaption, address, time, audio, video, canvas, iframe, details, summary, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
}
.body {
    color: #000;
}
img{
    max-width: 100%;
    height: auto;
    vertical-align:top;
    width: 100%;
    }
.wrap {
    max-width: 60%;
    margin:0 auto;
}
h1 {
    text-align: center;
    font-family: "hot-gyoshokk", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 42px;
    line-height: normal;
}
h2 {
    font-family: "UD黎ミン B";
    font-weight: 300;
    font-style: normal;
    text-align: center;
    font-size: 18px;
    line-height: normal;
}
li {
    font-family: "UD黎ミン R";
    margin-left: 1rem;
}
p {
    font-family: "UD黎ミン R";
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
}
.firstview {
    background-color:#000 ;
}
.mainvisual {
    position: relative;
}
.center-img {
    background-color: #FFF;
}
.logo {
    margin:0 auto;
    width: 512px;
}
.story {
    background-color: #000;
    padding: 160px 0;
}
section {
    padding: 140px 0;
}
.story-title {
    color: #FFF;
}
.decoration {
    margin-top: 0.5em !important;
    width: 100px;
    margin:0 auto;
}
.story-content {
    justify-content: center;
    margin-top: 80px;
}
.story-text {
    color: #FFF;
    line-height: 50px;
    text-align: center;
}
.company {
    background-color: #FFF;
}
.company-title {
    color: #000;
}
.company-text {
    margin-top: 48px;
    text-align: left;
    letter-spacing: 0.1em;
}
.company-subtext-work {
    margin-top: -14px;
}
.company-subtext {
    text-align: left;
    margin-top: 16px;
    line-height: 30px;
}
.company-subtext-circle-top {
    text-align: left;
    margin-top: 16px;
    line-height:22px;
    padding-left: 1em;
    text-indent: -1em;
}
.company-subtext-circle {
    text-align: left;
    margin-top: 10px;
    line-height:30px;
    padding-left: 1em;
    text-indent: -1em;
}
footer {
    background-color: #000;
}
.footer-content {
padding: 56px 0 82px 10%;
}
.footer-company-name {
    color: #FFF;
}
.copyright {
    color: #FFF;
    font-size: 12px;
    text-align: right;
    padding: 56px 10% 40px 0;
}

/* タブレット対応 */
@media (max-width: 1023px) {
    h1 {
        font-size: 36px;
    }
    .wrap {
        max-width: 80%;
        margin:0 auto;
    }
    .logo {
        width: 60%;
    }
    .story {
        padding: 60px 0;
    }
    .story-content {
        flex-wrap: wrap;
        text-align: center;
        margin: 34px 0;
    }
    .story-text {
        margin: 14px 0 0 0;
        text-align: center;
    }
    .company {
        padding: 60px 0;
    }
}

/* モバイル対応 */
@media (max-width: 767px) {
    .main {
        max-width: 60%;
        margin:0 auto;
    }
    .wrap {
        max-width: 70%;
    }
    .logo {
        margin:0 auto;
        width: 80%;
    }
    .br-sp {display: none;
    }
    h1 {
        font-size: 30px;
    }
    h2 {
        font-size: 17px;
    }
    p {
        font-size: 15px;
        line-height: 24px;
    }
    li {
        font-size: 15px;
    }
    .mainvisual {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
    }
    .story {
        padding: 40px 0;
    }
    .decoration {
        margin-top: 0.2em !important;
    }
    .story-content {
        flex-wrap: wrap;
        text-align: center;
        margin: 34px 0;
    }
    .story-text {
        margin: 14px 0 0 0;
        text-align: center;
        line-height: 40px;
    }
    .story-img {
        width: 100%;
    }
    .company {
        padding: 60px 0;
    }
    .company-text {
        font-size: 16px;
        margin-top: 26px;
    }
    .company-subtext {
        margin-top: 10px;
    }
    img {
        max-width: 100%;
        text-align: center;
        height: auto;
    }
}
.no_pc {
    display: none;
}
@media screen and (min-width: 768px) {
    .no_pc {
        display: block;
    }
    }

.no_sp {
    display: block;
    }
@media screen and (min-width: 768px) {
    .no_sp {
    display: none;
    }
        }