<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

.pc {
    display: block;
}
.sp {
    display: none;
}

li, ol, ul {
    list-style: none
}

a, a:active, a:focus, a:hover {
    text-decoration: none;
    outline: none
}
@keyframes a {
    to {
        /*opacity: 1*/
    }
}

@keyframes d {
    to {
        /*transform: scaleX(0)*/
    }
}

* {
    box-sizing: border-box
}

html {
    font-size: 62.5%;
    /*scroll-behavior: smooth;*/
    /*scroll-padding-top: 0;*/
    /*animation: .8s a forwards*/
}

body {
    font-family: Yantramanav, Noto Sans JP, sans-serif;
    /*font-family: "Yu Gothic Std", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
    font-size: 1.6rem;
    /*width: 100%;*/
    /*color: #000;*/
    /*letter-spacing: .05em*/
}

.wrapper, body {
    position: relative
}

.wrapper {
    overflow: hidden
}

a {
    text-decoration: none;
    color: #000;
    transition: .3s ease
}

@media (hover: hover) {
    a:hover {
        color: #009437
    }
}

.heading-primary {
    font-size: min(6.5vw, 8.5rem);
    line-height: 1.11;
    letter-spacing: .01em
}

@media only screen and (max-width: 48em) {
    .heading-primary {
        font-size: max(3.9rem, 7.5vw);
        line-height: 1.15
    }
}

@media only screen and (max-width: 370px) {
    .heading-primary {
        font-size: 10vw
    }
}

.round {
    position: absolute;
    bottom: -4.7rem;
    right: 12.5rem;
    display: block;
    z-index: 2000
}

.round img {
    width: 11.25rem;
    height: 11.25rem;
    display: block
}

@media only screen and (max-width: 48em) {
    .round {
        bottom: -2rem;
        right: .6rem
    }

    .round img {
        width: 6rem;
        height: 6rem
    }
}

.heading-secondary {
    font-size: 2.2rem;
    line-height: 1.6;
    letter-spacing: .03em;
    margin-left: -6rem;
    position: relative;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: 15rem;
    margin-bottom: 10rem;
    padding-bottom: 5px
}

@media only screen and (max-width: 48em) {
    .heading-secondary {
        margin-left: 0;
        font-size: 2.3rem;
        line-height: 1.47;
        letter-spacing: .05em;
        height: 10rem;
        margin-bottom: 5rem
    }
}

.heading-secondary:before {
    content: "";
    position: absolute;
    top: -1rem;
    left: -18.2rem;
    width: 100%;
    height: 15rem;
    z-index: -1;
    /*-ms-transform: scaleX(0);*/
    /*transform: scaleX(0);*/
    /*-ms-transform-origin: left;*/
    /*transform-origin: left;*/
    /*transition: .6s ease .2s*/
}

@media only screen and (max-width: 48em) {
    .heading-secondary:before {
        left: -3.6rem;
        width: 6.7rem;
        height: 10rem;
        width: 100%
    }
}

.heading-secondary.gray-bg {
    position: relative;
    z-index: 100
}

.heading-secondary.gray-bg:before {
    background-color: #ebecec
}

.heading-secondary.white-bg {
    position: relative;
    z-index: 100
}

.heading-secondary.white-bg:before {
    background-color: #fff
}

.heading-secondary:after {
    content: "";
    position: absolute;
    top: -1rem;
    left: -18.2rem;
    height: 15rem;
    width: 100%;
    z-index: 100;
    pointer-events: none;
    /*animation-timing-function: cubic-bezier(0, 0, .2, 1);*/
    /*-ms-transform-origin: 0 50%;*/
    /*transform-origin: 0 50%;*/
    /*-ms-transform: scaleX(0);*/
    /*transform: scaleX(0);*/
    /*transition: .3s cubic-bezier(.17, .67, .53, 1.43) !important*/
}

@media only screen and (max-width: 48em) {
    .heading-secondary:after {
        left: -3.6rem;
        height: 10rem;
        width: 100%
    }
}

.heading-secondary.abouths {
    width: 83rem
}

@media only screen and (max-width: 48em) {
    .heading-secondary.abouths {
        width: 47rem
    }
}

@media screen and (max-width: 505px) {
    .heading-secondary.abouths {
        width: 36rem
    }
}

@media screen and (max-width: 397px) {
    .heading-secondary.abouths {
        width: 28rem
    }
}

.heading-secondary.overviewhs {
    width: 61rem
}

@media only screen and (max-width: 48em) {
    .heading-secondary.overviewhs {
        width: 31rem
    }
}

@media screen and (max-width: 397px) {
    .heading-secondary.overviewhs {
        width: 28rem
    }
}

.heading-secondary.judgeshs {
    width: 42.5rem
}

@media only screen and (max-width: 48em) {
    .heading-secondary.judgeshs {
        width: 18rem
    }
}

.heading-secondary.requirementshs {
    width: 45.5rem
}

@media only screen and (max-width: 48em) {
    .heading-secondary.requirementshs {
        width: 18rem
    }
}

@media only screen and (max-width: 48em) {
    .heading-secondary.winnershs {
        width: 26rem
    }
}

.heading-secondary.inview:after, .heading-secondary.inview:before {
    /*-ms-transform: scaleX(1);*/
    /*transform: scaleX(1);*/
    /*-ms-transform-origin: left;*/
    /*transform-origin: left*/
}

.heading-secondary.inview.primary-bg:after {
    /*background-color: #009437;*/
    /*animation: d 1s forwards .5s*/
}

.heading-secondary.inview.white-bg:after {
    /*background-color: #fff;*/
    /*animation: d 1s forwards .5s*/
}

.heading-secondary.inview.gray-bg:after {
    /*background-color: #ebecec;*/
    /*animation: d 1s forwards .5s*/
}

.heading-quaternary {
    font-size: 2.5rem;
    line-height: 1.92;
    letter-spacing: .05em
}

@media only screen and (max-width: 48em) {
    .heading-quaternary {
        font-size: 1.5rem
    }
}

.u-primary-sq {
    width: 2rem;
    height: 2rem;
    background-color: #009437;
    margin-right: 1rem;
    display: inline-block
}

@media only screen and (max-width: 48em) {
    .u-primary-sq {
        vertical-align: middle;
        margin-bottom: .3rem;
        width: 1.4rem;
        height: 1.4rem
    }
}

.pc-none {
    display: none !important
}

@media only screen and (max-width: 62.5em) {
    .pc-none {
        display: inline-block !important
    }
}

.sp-none {
    display: inline-block !important
}

@media only screen and (max-width: 48em) {
    .sp-none {
        display: none !important
    }
}

@media only screen and (min-width: 62.5625em) {
    .u-pc-none {
        display: none !important
    }
}

@media only screen and (max-width: 62.5em) {
    .u-sp-none {
        display: none !important
    }
}

.u-space-30 {
    margin-left: 3rem;
    display: inline-block
}

.u-mt-28 {
    margin-top: 2.8rem
}

@media only screen and (max-width: 48em) {
    .u-mt-28 {
        margin-top: 1rem
    }
}

.u-mb-20 {
    margin-bottom: 2rem !important
}

.u-line-height-15 {
    line-height: 1.52 !important
}

@media only screen and (max-width: 48em) {
    .u-line-height-15 {
        line-height: 1.66 !important
    }
}

.u-inline-block {
    display: inline-block
}

.u-br505 {
    display: none
}

@media screen and (max-width: 505px) {
    .u-br505 {
        display: block
    }
}

@media screen and (max-width: 397px) {
    .u-br505 {
        display: none
    }
}

.u-br397 {
    display: none
}

@media screen and (max-width: 397px) {
    .u-br397 {
        display: block
    }
}

.u-mincho {
    font-family: ヒラギノ明朝 ProN W3, HiraMinProN-W3, HG明朝E, ＭＳ\ Ｐ明朝, MS PMincho, MS\ 明朝, serif
}

.btn_end {
    background-color: #ebecec!important;
    border: 1px solid #ebecec!important;
    color: #000000!important;
    cursor: default!important;
    margin: 0 auto!important;
}

.button {
    cursor: pointer;
    outline: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    transition: .3s ease;
    position: relative;
    z-index: 7000
}

.button.large, .button.small {
    width: 100%;
    background-color: #009437;
    border: 1px solid #009437;
    color: #fff;
}

.button.large {
    max-width: 47rem;
    height: 6.6rem;
    font-size: 2.5rem;
    line-height: 1.92;
    padding-top: 2px
}

@media only screen and (max-width: 81.25em) {
    .button.large {
        margin-right: 1rem
    }
}

@media only screen and (max-width: 62.5em) {
    .button.large {
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 1rem
    }
}

@media only screen and (max-width: 48em) {
    .button.large {
        max-width: 30.2rem;
        width: 100%;
        height: 5rem;
        font-size: 1.8rem;
        line-height: 1.61
    }
}

@media (hover: hover) {
    .button:hover {
        background-color: #fff;
        border: 1px solid #009437;
        color: #009437
    }
}

.link.primary {
    border-bottom: 2px solid #009437;
}

@media (hover: hover) {
    .link.white:hover {
        border-bottom: 2px solid #009437;
    }
}


@media only screen and (max-width: 48em) {
    .top__text-container {
        /*padding-top: 3rem*/
    }

    .top__text-container img {
        min-width: 95%
    }
}

@media only screen and (max-width: 48em) {
    .top__button-container {
        left: 17.5%
    }
}

@media only screen and (max-width: 48em) {
    .top__button {
        width: max(38.66667vw, 14.5rem);
        height: max(11.33333vw, 4.25rem);
        font-size: max(4vw, 15px)
    }
}

@media (hover: hover) {
    .top__button:hover {
        background-color: #fff;
        border: 1px solid #009437;
        color: #009437
    }
}

@media only screen and (max-width: 48em) {
    .top__right-container {
        right: 0
    }

    .top__right-container img {
        width: 65%
    }
}

@media only screen and (max-width: 81.25em) {
    .top-news__box {
        padding-left: 6vw
    }
}

.about {
    width: 100%;
    background-color: #ebecec;
    padding-top: 14.5rem;
    padding-bottom: 16.5rem;
    overflow: hidden
}

@media only screen and (max-width: 48em) {
    .about {
        padding: 5rem 0
    }
}

.about__container {
    max-width: 119.5rem;
    padding: 0 6rem;
    margin: 0 auto;
    position: relative;
    z-index: 1000
}

@media only screen and (max-width: 48em) {
    .about__container {
        padding: 0 3.6rem
    }
}

.about__container h2 {
    z-index: 1000;
    position: relative
}

.about__container.inview:after, .about__container.inview:before {
    /*-ms-transform: scale(1);*/
    /*transform: scale(1)*/
}

.about__text {
    margin-top: 6.7rem;
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: .01em;
    z-index: 1000;
    position: relative
}

@media only screen and (max-width: 48em) {
    .about__text {
        margin-top: 2.1rem;
        font-size: 1.6rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.overview {
    width: 100%;
    padding-top: 11.7rem;
    padding-bottom: 13.6rem;
    overflow: hidden
}

@media only screen and (max-width: 48em) {
    .overview {
        padding: 5rem 0
    }
}

.overview__container {
    max-width: 119.5rem;
    padding: 0 6rem;
    margin: 0 auto;
    z-index: 1000
}

@media only screen and (max-width: 48em) {
    .overview__container {
        padding: 0 3.6rem
    }
}

.overview__top-container {
    display: grid;
    /*grid-template-columns: repeat(2, 1fr);*/
    /*grid-template-rows: 23.7rem 1fr;*/
    margin-bottom: 9.5rem
}

@media only screen and (max-width: 62.5em) {
    .overview__top-container {
        display: block;
        margin-bottom: 4.5rem
    }
}

@media only screen and (max-width: 48em) {
    .overview__top-container {
        margin-bottom: 3rem
    }
}

.overview__image {
    grid-column: 2/span 1;
    grid-row: 1/3;
    margin-left: auto;
    width: 100%;
    height: auto;
    max-width: 38.5rem
}

.overview__image img {
    width: 100%;
    height: auto;
    display: block
}

@media only screen and (max-width: 62.5em) {
    .overview__image {
        margin-left: 0;
        margin-top: 4.4rem;
        margin-bottom: 3rem
    }
}

@media only screen and (max-width: 48em) {
    .overview__image {
        max-width: 22.5rem
    }
}

.overview__theme {
    grid-row: 2/span 1
}

.overview__theme h3 {
    margin-bottom: 4.5rem
}

@media only screen and (max-width: 62.5em) {
    .overview__theme h3 {
        margin-bottom: 0
    }
}

.overview__title {
    font-size: 4.5rem;
    line-height: 1.37;
    letter-spacing: .035em;
    margin-bottom: 4.5rem;
    margin-left: -2rem
}

@media only screen and (max-width: 48em) {
    .overview__title {
        font-size: 2.3rem;
        line-height: 1.47;
        letter-spacing: .05em;
        margin-bottom: 1rem;
        margin-left: 0
    }
}

.overview__text {
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: 0
}

@media only screen and (max-width: 48em) {
    .overview__text {
        font-size: 1.4rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.overview__middle-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 11.7rem
}

@media only screen and (max-width: 62.5em) {
    .overview__middle-container {
        -ms-flex-direction: column;
        flex-direction: column;
        margin-bottom: 9rem
    }
}

.overview__middle-left, .overview__middle-right {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%
}

@media only screen and (max-width: 62.5em) and (max-width: 62.5em) {
    .overview__middle-right {
        margin-top: 2.8rem
    }
}

.overview__text-box {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 47rem
}

@media only screen and (max-width: 48em) {
    .overview__text-box {
        max-width: 37.5rem
    }
}

.overview__text-box p {
    font-size: 2.8rem;
    line-height: 2.1
}

@media only screen and (max-width: 48em) {
    .overview__text-box p {
        font-size: 1.5rem;
        line-height: 2.4
    }
}

.overview__text-box span {
    font-size: 4rem;
    line-height: 1.25;
    letter-spacing: .05em
}

@media only screen and (max-width: 48em) {
    .overview__text-box span {
        font-size: 2.8rem;
        line-height: 1.78
    }
}

.overview__middle-text-1 {
    font-size: 4rem;
    line-height: 1.25
}

@media only screen and (max-width: 48em) {
    .overview__middle-text-1 {
        font-size: 2.3rem
    }
}

.overview__middle-text-2 {
    line-height: 2;
    letter-spacing: .01em
}

@media only screen and (max-width: 48em) {
    .overview__middle-text-2 {
        font-size: 1.4rem;
        line-height: 2.28
    }
}

.overview__bottom-container {
    display: -ms-flexbox;
    display: flex;
    /*max-width: 100.8rem;*/
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width: 62.5em) {
    .overview__bottom-container {
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.judges {
    width: 100%;
    padding-top: 8.7rem;
    padding-bottom: 16.6rem;
    background-color: #ebecec;
    overflow: hidden
}

@media only screen and (max-width: 48em) {
    .judges {
        padding: 5.8rem 0 5rem
    }
}

.judges__container {
    max-width: 119.5rem;
    padding: 0 6rem;
    margin: 0 auto
}

@media only screen and (max-width: 48em) {
    .judges__container {
        padding: 0 3.6rem
    }
}

.judges__container h2 {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-bottom: 4rem
}

.judges__container h2:after {
    width: 30rem
}

@media only screen and (max-width: 48em) {
    .judges__container h2:after {
        width: 13rem
    }
}

.judges__top {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width: 48em) {
    .judges__top {
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.judges__top p {
    margin-top: 6rem;
    font-size: 1.8rem;
    line-height: 2
}

@media only screen and (max-width: 48em) {
    .judges__top p {
        margin-top: 2rem;
        font-size: 1.4rem
    }
}

.judges__top-image img {
    display: block;
    width: 58.20313vw;
    max-width: 74.5rem;
    height: auto
}

@media screen and (max-width: 1195px) {
    .judges__top-image img {
        position: absolute;
        right: 0
    }
}

@media only screen and (max-width: 62.5em) {
    .judges__top-image img {
        width: 43.7vw;
        max-width: 43.7rem
    }
}

@media only screen and (max-width: 48em) {
    .judges__top-image img {
        position: static;
        width: 78.88087vw;
        max-width: 43.7rem
    }
}

.judges__members {
    margin-top: 7.3rem;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 1rem;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width: 62.5em) {
    .judges__members {
        display: block
    }
}

@media only screen and (max-width: 48em) {
    .judges__members {
        margin-top: 5.7rem
    }
}

.judges__member {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 6.1rem 1fr 5rem 4.1rem
}

@media only screen and (max-width: 62.5em) {
    .judges__member {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 2.5rem 1fr 3rem -webkit-min-content;
        grid-template-rows: 2.5rem 1fr 3rem min-content;
        margin-bottom: 1.4rem
    }

    .judges__member:first-of-type {
        margin-bottom: 3.6rem
    }

    .judges__member:nth-of-type(2), .judges__member:nth-of-type(3) {
        margin-bottom: 3rem
    }

    .judges__member:nth-of-type(5) {
        margin-top: 3.6rem;
        margin-bottom: 0
    }

    .judges__member:nth-of-type(4) .judges__title {
        margin-top: 0 !important
    }
}

.judges__member-heading {
    grid-row: 1/span 1
}

@media only screen and (max-width: 62.5em) {
    .judges__member-heading {
        grid-column: 1/span 1;
        grid-row: auto
    }
}

.judges__image {
    grid-row: 2/span 1;
    max-width: 19.9rem;
    max-height: 21.9rem;
    width: 100%
}

.judges__image img {
    display: block;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width: 62.5em) {
    .judges__image {
        grid-column: 2/span 1;
        grid-row: 1/-1;
        margin-right: 0;
        margin-left: 1rem
    }
}

.judges__caption {
    font-size: 1.2rem
}

@media only screen and (max-width: 62.5em) {
    .judges__caption {
        font-size: min(1.1rem, 2.34043vw)
    }
}

.judges__title {
    grid-row: 3/span 1;
    margin-top: 1.5rem;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: .01em
}

@media only screen and (max-width: 62.5em) {
    .judges__title {
        margin-top: 0;
        grid-column: 1/span 1;
        grid-row: 3/span 1;
        margin-right: 0;
        margin-left: auto;
        align-self: start
    }
}

@media only screen and (max-width: 48em) {
    .judges__title {
        font-size: 1.8rem;
        line-height: 1.77
    }
}

.judges__text {
    grid-row: 4/span 1;
    font-size: 1.4rem;
    line-height: 1.33;
    letter-spacing: .01em
}

@media only screen and (max-width: 62.5em) {
    .judges__text {
        grid-column: 1/span 1;
        grid-row: 4/span 1;
        margin-right: 0;
        margin-left: auto;
        text-align: right;
        align-self: end
    }
}

@media only screen and (max-width: 48em) {
    .judges__text {
        line-height: 1.42
    }
}

.requirements {
    width: 100%;
    padding-top: 10.7rem;
    padding-bottom: 13.6rem;
    overflow: hidden
}

@media only screen and (max-width: 48em) {
    .requirements {
        padding: 5rem 0 3rem
    }
}

.requirements__container {
    max-width: 119.5rem;
    padding: 0 6rem;
    margin: 0 auto;
    z-index: 1000
}

@media only screen and (max-width: 48em) {
    .requirements__container {
        padding: 0 3.6rem
    }
}

.requirements__container h2:after {
    width: 33rem
}

@media only screen and (max-width: 48em) {
    .requirements__container h2:after {
        width: 16rem
    }
}

.requirements__text-box {
    margin-bottom: 4.7rem
}

@media only screen and (max-width: 48em) {
    .requirements__text-box {
        margin-bottom: 2.5rem
    }
}

.requirements__text-box h3 {
    margin-bottom: .7rem
}

.requirements__text-box ol, .requirements__text-box ol li {
    list-style: decimal;
    font-size: 2.2rem;
    letter-spacing: .05em;
    margin-left: 1.3rem
}

.requirements__text-box ul, .requirements__text-box ul li {
    list-style: disc;
    margin-left: 1.2rem
}

@media only screen and (max-width: 48em) {
    .requirements__text-box ul, .requirements__text-box ul li {
        margin-left: 1.1rem
    }
}

.requirements__text-box ol li p, .requirements__text-box ul li p {
    display: inline-block
}

.requirements__ol .requirements__item:not(:last-of-type) {
    margin-bottom: 1rem
}

@media only screen and (max-width: 48em) {
    .requirements__ol .requirements__item:not(:last-of-type) {
        margin-bottom: 1.5rem
    }
}

.requirements__ul li {
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: .01em;
    margin-left: .6rem
}

@media only screen and (max-width: 48em) {
    .requirements__ul li {
        font-size: 1.4rem;
        letter-spacing: -.05em
    }
}

.requirements__ul li p {
    vertical-align: top
}

.requirements__main-container {
    margin-top: 8.5rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width: 62.5em) {
    .requirements__main-container {
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media only screen and (max-width: 48em) {
    .requirements__main-container {
        margin-top: 5.9rem
    }
}

.requirements__left {
    -ms-flex-preferred-size: 44%;
    flex-basis: 44%;
    margin-right: 6.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

@media only screen and (max-width: 48em) {
    .requirements__left {
        margin-right: 0
    }
}

.requirements__right {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%
}

.requirements__date {
    font-size: 1.8rem;
    line-height: 1.85;
    letter-spacing: .01em
}

@media only screen and (max-width: 48em) {
    .requirements__date {
        font-size: 1.5rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.requirements__text-1 {
    font-size: 1.6rem;
    line-height: 1.85;
    letter-spacing: .01em
}

@media only screen and (max-width: 48em) {
    .requirements__text-1 {
        font-size: 1.4rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.requirements__text-2 {
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: .01em;
    vertical-align: text-top
}

@media only screen and (max-width: 48em) {
    .requirements__text-2 {
        font-size: 1.4rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.requirements__text-3 {
    font-size: 1.6rem;
    line-height: 1.85;
    letter-spacing: .01em;
    vertical-align: text-top
}

@media only screen and (max-width: 48em) {
    .requirements__text-3 {
        font-size: 1.4rem;
        line-height: 1.78;
        letter-spacing: -.02em
    }
}

.requirements__text-4 {
    font-size: 1.4rem;
    line-height: 1.7;
    letter-spacing: -.07em
}

@media only screen and (max-width: 48em) {
    .requirements__text-4 {
        line-height: 1.78
    }
}

.requirements__item:first-of-type .requirements__item-text {
    display: block !important
}

.requirements__item-title {
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: .01em;
    vertical-align: text-top
}

@media only screen and (max-width: 48em) {
    .requirements__item-title {
        font-size: 1.8rem;
        line-height: 1.38;
        letter-spacing: -.05em;
        display: inline !important
    }
}

.requirements__item-text {
    font-size: 1.4rem;
    line-height: 1.65;
    letter-spacing: .01em
}

@media only screen and (max-width: 48em) {
    .requirements__item-text {
        font-size: 1.3rem;
        line-height: 1.53;
        letter-spacing: -.02em;
        display: block !important;
        margin-left: 0
    }
}

.requirements__document, .requirements__entry {
    margin-bottom: 3rem
}

@media only screen and (max-width: 48em) {
    .requirements__document {
        margin-bottom: 1.8rem
    }
}

.requirements__button-container {
    display: -ms-flexbox;
    display: flex;
    /*max-width: 100.8rem;*/
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 5rem
}

@media only screen and (max-width: 62.5em) {
    .requirements__button-container {
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media only screen and (max-width: 48em) {
    .requirements__button-container {
        margin-bottom: 2.8rem
    }
}

.requirements__links a {
    margin-bottom: 2rem
}
.footer {
    width: 1140px;
    padding-top: 3.4rem;
    padding-bottom: 5.6rem;
    overflow: hidden;
    border-top: 1px solid #E9C5BE;
    margin: 69px auto 0;
    display: flex;
    justify-content: space-between;
}
.footer__container {
    max-width: 1140px;
    /*padding: 0 6rem;*/
    /*margin: 0 auto;*/
    display: -ms-flexbox;
    display: flex;
    /*-ms-flex-pack: justify;*/
    /*justify-content: space-between;*/
    -ms-flex-align: end;
    align-items: flex-end
}
.footer__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    min-width: 43.2rem
}
.footer__item {
    font-size: 1.3rem;
}
.footer__item:first-child {
    margin-right: 30px;
}
.footer__item:nth-of-type(2) {
    margin-right: 30px;
    margin-bottom: 2px
}
.footer__item:nth-of-type(3) {
    margin-bottom: 2px
}
.footer__link {
    font-size: 1.4rem;
}
.footer__link svg {
    -ms-transform: translate(0);
    transform: translate(0)
}
.footer__copy {
    font-size: 1.3rem;
    letter-spacing: .05em;
    margin: 0 0 2px 20px;
}
.SpaceDesignAward_logo {
    width: 278px;
}


.sticky-footer {
    /*transition: transform .3s ease, opacity .8s ease*/
}

@media only screen and (min-width: 48.001em) {
    .sticky-footer {
        opacity: 0;
        visibility: hidden
    }
}

@media only screen and (max-width: 48em) {
    .sticky-footer {
        opacity: 0;
        /*-ms-transform: translateY(6rem);*/
        /*transform: translateY(6rem);*/
        background-color: #fff;
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 6rem;
        z-index: 10000
    }

    .sticky-footer .sticky-footer__container {
        height: 100%
    }

    .sticky-footer .sticky-footer__list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        height: 100%
    }

    .sticky-footer .sticky-footer__item {
        background-color: #009437;
        -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
        height: 100%
    }

    .sticky-footer .sticky-footer__item2 {
        background-color: #ebecec;
        -ms-flex-preferred-size: 66%;
        flex-basis: 66%;
        height: 100%
    }

    .sticky-footer .sticky-footer__link {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        color: #fff;
        height: 100%;
        width: 100%;
        border: 1px solid #009437;
        font-size: 1.5rem;
        line-height: 1.2;
        letter-spacing: .015em
    }

    .sticky-footer .sticky-footer__link2 {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        color: #000000;
        height: 100%;
        width: 100%;
        border: 1px solid #ebecec;
        font-size: 1.5rem;
        line-height: 1.2;
        letter-spacing: .015em
    }
}

@media only screen and (max-width: 48em) and (hover: hover) {
    .sticky-footer .sticky-footer__link:hover {
        background-color: #fff;
        color: #009437
    }
}

@media only screen and (max-width: 48em) and (max-width: 490px) {
    .sticky-footer .sticky-footer__link {
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media only screen and (max-width: 48em) and (max-width: 490px) {
    .sticky-footer__break {
        display: block
    }
}

@media only screen and (max-width: 48em) {
    .wrapper.sticky .sticky-footer {
        /*-ms-transform: translateY(0);*/
        /*transform: translateY(0);*/
        opacity: 1
    }
}

html {
    visibility: visible !important;
    opacity: 1 !important
}

/*# sourceMappingURL=main.css.map */

.top_link {
    position: relative;
    /*margin: 0 1.5vw;*/
    font-size: 1.8rem;
    /*font-size: 1.2vw;*/
    font-weight: bold;
    z-index: 9100;
}
.top_link a:hover {
    color: black;
}
.top_link a,
.top_link p {
    position: relative;
    z-index: 100;
}

.main_tittle {
    font-size: 7rem;
    text-align: center;
    height: 281px;
    line-height: 400px;
    /*padding: 230px 0 0;*/
    box-sizing: border-box;
}

img {
    width: 100%;
}
.mainBox {
    max-width: 119.5rem;
    padding: 0 6rem;
    box-sizing: border-box;
    margin: 0 auto;
}
.tittle {
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.92;
    letter-spacing: .05em;
    margin: 20px 0 10px;
}
.subtittle {
    /*font-size: 2rem;*/
    /*font-weight: 900;*/
    /*margin: 30px 0 10px;*/
}
.text_tittle {
    font-size: 1.8rem;
    font-weight: bold;
}
.base_text {
    font-size: 1.5rem;
    text-align:justify;
    word-break:break-all;
    text-justify:inter-ideograph;
    text-justify:inter-character;
    word-wrap:break-word;
    overflow-wrap:break-word;
    line-height: 1.65;
    letter-spacing: .01em;
}

hr{
    border-top: 2px dotted black;
}

img {
    width: 100%;
}

.award_L {
    width: 67%;
}
.award_R {
    width: 31%;
    display: flex;
    flex-flow: column;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
}
.text_tittle {
    margin: 20px 0;
}

/*タグ*/
.pcHeader {
    font-family: "Yu Gothic Std", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    position: fixed;
    z-index: 8000;
    top: 0;
    left: 0;
    width: 100%;
    background: white;
    height: 90px;
    padding: 19px 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pcHeaderBox {
    min-width: 560px;
    width: 1140px;
    display: flex;
    justify-content: space-between;
}
.top_link {
    position: relative;
    /*margin: 0 1.5vw;*/
    font-size: 1.8rem;
    /*font-size: 1.2vw;*/
    font-weight: bold;
    z-index: 9100;
}
.top_link p {
    z-index: 100;
    color: #009437;
}
.top_link a {
    z-index: 100;
}
.top_link a:hover {
    color: #009437;
}

/*過去の受賞作品*/
.awardList {
    position: relative;
}
.awardList:hover {
    cursor: pointer;
    color: #009437;
}
.awardList ul {
    display: none;
    position: absolute;
    background-color: white;
    text-align: center;
    width: 132px;
}
.awardList ul li {
    padding: 15px 0 0;
    margin: 0 auto;
    color: black;
}
.awardList ul li:last-child {
    padding: 15px 0;
}
.awardList:hover ul {
    display: block;
}
.awardList ul li a:hover {
    color: #009437;
}

/*タグ部分グリーンボール*/
.greenCircle {
    position: absolute;
    top: -3px;
    right: -12px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #009437;
    z-index: 50;
}
.greenCircle_h {
    display: none;
}
.top_link:hover .greenCircle_h {
    position: absolute;
    top: -3px;
    right: -12px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #009437;
    z-index: 50;
    display: block;
}

/*受賞作品以外共通--------------------------------------------------------------------*/
.pinkBox {
    font-family: "Yu Gothic Std", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    background-color: #F7C6C0;
    width: 100%;
    height: 371px;
    position: relative;
    /*margin-bottom: 97px;*/
}
.pinkBox div {
    width: 1140px;
    margin: 0 auto;
    padding-top: 275px;
}
.pinkBox_text {
    font-size: 3.7rem;
    letter-spacing: 15px;
    padding: 275px auto 0;
}
.greenball2 {
    position: absolute!important;
    right: -570px!important;
    top: -110px!important;
}
.greenball2 img {
    width: 99px;
}

/*TOPへ戻る*/
.pagetop {
    cursor: pointer;
    position: fixed;
    right: 50px;
    bottom: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    transition: .3s;
    /*   デフォルトは非表示 */
    opacity: 0;
}
/*受賞作品以外共通ここまで--------------------------------------------------------------------*/

@media (max-width: 768px) {
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }

    .space_30 {
        line-height: 30px;
    }

    .footer {
        width: 89.9%;
        padding: 4.8rem 1.9rem 8rem;
        overflow: hidden;
        border-top: 1px solid #E9C5BE;
        margin: 0 auto;
        display: block;
        justify-content: space-between;
        text-align: center;
    }
    .footer__container {
        max-width: 100%;
        display: initial;
        -ms-flex-align: initial;
        align-items: initial;
    }
    .footer__list {
        display: initial;
        -ms-flex-align: initial;
        align-items: initial;
        min-width: 43.2rem
    }
    .footer__item {
        font-size: 1.2rem;
    }
    .footer__item:first-child {
        margin-right: 0;
    }
    .footer__item:nth-of-type(2) {
        margin-right: 0;
        margin-bottom: 2px
    }
    .footer__item:nth-of-type(3) {
        margin-bottom: 2px
    }
    .footer__link {
        font-size: 1.2rem;
        line-height: 25px;
    }
    .footer__link svg {
        /*-ms-transform: translate(0);*/
        /*transform: translate(0)*/
    }
    .footer__copy {
        font-size: 1.1rem;
        letter-spacing: .05em;
        margin: 20px 0 2px 0;
    }
    .SpaceDesignAward_logo {
        width: 278px;
        margin: 0 auto;
    }
    .spaceLogo_down {
        margin-bottom: 30px;
    }
    .spaceLogo_up {
        margin-top: 15px;
    }

    /*ハンバーガーメニュー--------------------------------------------------------*/
    /* 全体調整CSS */
    /*.hamburger-demo-menubox *{*/
    /*    font-size: 16px;*/
    /*}*/
    /*.hamburger-demo-menubox li{*/
    /*    font-size: 14px;*/
    /*}*/
    /* hamburgerここから */
    /* inputを非表示 */
    .input-hidden{
        display: none;
    }
    /* label */
    .hamburger-demo-switch{
        background-color: black;
        cursor: pointer;
        position: fixed;
        right: 3%;
        top: 15px; /* ハンバーガーアイコンの位置（上から） */
        z-index: 9999;
        width: 43px; /* アイコン（クリック可能領域）の幅 */
        height: 43px; /* アイコン（クリック可能領域の）高さ */
        border-radius: 50%;
    }
    /* メニュー展開時にハンバーガーアイコンを固定 */
    #hamburger-demo1:checked ~ .hamburger-demo-switch{
        position: fixed;
    }
    /* ハンバーガーアイコン */
    .hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after{
        width: 25px;
        height: 3px;
        background: white; /* ハンバーガーアイコンの色 */
        position: absolute;
        top: 50%;
        left: 50%;
        transition: .3s;
        content: "";
    }
    .hamburger-switch-line1{
        transform: translate(-50%, -50%);
    }
    .hamburger-switch-line1:before{
        transform: translate(-50%, -300%);
    }
    .hamburger-switch-line1:after{
        transform: translate(-50%, 200%);
    }
    /* ハンバーガーアイコン･アニメーション */
    #hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1{
        width: 0;
    }
    #hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:before{
        transform: rotate(45deg) translate(-40%, 325%);
        margin-top: -2px;
        margin-left: 1.5px;
    }
    #hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:after{
        transform: rotate(-45deg) translate(-40%, -325%);
        margin-top: -2px;
        margin-left: 1.5px;
    }
    /* メニューエリア */
    .hamburger-demo-menuwrap{
        font-family: "Yu Gothic Std", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
        position: fixed;
        height: 100%;
        background: #fafafa; /* メニューエリアの背景色 */
        opacity: 0.9;
        padding: 5em 3% 2em;
        z-index: 9998;
        transition: .3s;
        overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
        top: 0;
        left: 100%;
        width: 70%;
    }
    /* メニューリスト */
    .hamburger-demo-menulist{
        margin-right: 3%;
        padding-left: 10% !important; /* !important不要な場合もあり */
        list-style: none;
    }
    .hamburger,
    .hamburger a {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 23px;
        height: 23px;
        text-decoration: none;
        color: #333; /* メニューリストの文字色 */
        letter-spacing: 0.2em;
        display: flex;
        align-items: center;
    }
    .hamburger {
        margin: 20px 0 40px;
    }
    .hamburger a {
        width: 100%;
    }
    .hamburger img,
    .hamburger a img {
        width: auto;
        height: 18px;
        margin: 0 10px 0 auto;
    }
    .hamburger_pastList {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 23px;
        height: 23px;
        text-decoration: none;
        color: #333; /* メニューリストの文字色 */
        margin: 20px 0;
        letter-spacing: 0.2em;
    }
    .hamburger_past {
        font-size: 1.5rem;
        font-weight: normal;
        line-height: 15px;
        height: 15px;
        margin: 10px 0 20px;
        letter-spacing: 0.2em;
        display: flex;
        align-items: center;

    }
    .hamburger_past img {
        width: auto;
        height: 15px;
        vertical-align: top;
    }
    /* メニューエリア･アニメーション */
    /* 右から */
    #hamburger-demo1:checked ~ .hamburger-demo-menuwrap{
        left: 30%;
    }
    /* コンテンツカバー */
    #hamburger-demo1:checked ~ .hamburger-demo-cover{
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 9997;
        /*background: rgba(3,3,3,.5);*/
        display: block;
    }
    /*ハンバーガーメニューここまで-----------------------------------------------------*/

    /*受賞作品以外共通--------------------------------------------------------------------*/
    .pinkBox {
        font-family: "Yu Gothic Std", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
        background-color: #F7C6C0;
        width: 100%;
        height: 143px;
        position: relative;
        /*margin-bottom: 97px;*/
    }
    .pinkBox div {
        width: 100%;
        margin: 0 auto;
        padding-top: 92px;
        padding-left: 19px;
    }
    .pinkBox_text {
        font-size: 1.8rem;
        letter-spacing: 0.4em;
    }
    .greenball2_sp {
        position: absolute!important;
        left: 70%!important;
        top: -21%!important;
    }
    .greenball2_sp img {
        width: 33.74px;
    }

    /*TOPへ戻る*/
    .pagetop {
        cursor: pointer;
        position: fixed;
        right: 19px;
        bottom: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 55.5px;
        transition: .3s;
        /*   デフォルトは非表示 */
        opacity: 0;
    }
    /*受賞作品以外共通ここまで--------------------------------------------------------------------*/
}</pre></body></html>