html {

    scroll-behavior: smooth;
}

body {
    position: relative;
    margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #F2F2F2;
}

body::before {
    content: "";
    position: absolute;
    top: 0;   /* ← ここ */
    left: 50%;
    transform: translateX(-50%); /* ← Y消す */
    z-index: -1;
    width: 2020px;
    height: 1117px;  /* padding-bottomやめる */
    background-image: url(../img/fv-bg-img01.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

@media screen and (max-width : 2040px) {
    body::before {
        width: 100%;
    }
}

p {
    margin: 0;
}

img {
    width: 100%;
}

.zenKakuGothicAntique {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
}

/*KV*/
h1 {
    margin: 0;
}

#indexTop {
    margin: auto;
    width: 1000px;
    background-color: #fff;
}

#indexTop .kv {
    width: 100%;
}

#indexTop .kv .site-title img {
    vertical-align: bottom;
}

nav.topMenu {
    text-align: center;
    background-color: #0050FF;
    
    padding: 25px 0;
    box-shadow: 0px 10px 3px -5px rgba(0, 0, 0, 0.15);
}

.topMenu.is-fixed {
    position: fixed;
    top: 0;
    left: 50%;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    z-index: 100;
    transform: translateX(-50%);
}

.topMenuWrap {
    position: relative;
}

nav.topMenu ul {
    margin: 0;
    padding: 0;
}

nav.topMenu li {
    list-style: none;
    width: 22.1%;
    display: inline-grid;
}

nav.topMenu li {
    position: relative;
}

nav.topMenu li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 50%;
    /* ← 半分 */
    background-color: #fff;
}

nav.topMenu a {
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    font-size: 175%;
}

.side-menu {
    text-align: center;
    width: 244px;
    position: fixed;
    padding: 5px 0px 0px;
    top: 130px;
    right: calc(50% - 780px);
    height: 482px;
    background: #0050FF;
    border-right: 1px solid #eee;
    border-radius: 30px;
    border: solid 8px #fff;
}

.side-menu-first {
    height: 420px;
}

.side-menu::before {
    content: "";
    display: block;
    position: absolute;
    top: -15%;
    right: 23%;
    z-index: 0;
    width: 44.267%;
    padding-bottom: 44%;
    background-image: url(../img/deco-img01.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

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

.side-menu a {
    display: block;
    margin: 17% 0;
    text-decoration: none;
    color: #fff;
    font-size: 125%;
    font-weight: 700;
}

@media all and (max-width: 767px) {
    #indexTop .kv .kv-anker {
        margin: 2% auto 0;
        width: 92.934%;
    }
}

/*sec01*/
#indexTop .sec01 {
    padding-bottom: 10%;
    color: #000;
}

#indexTop .sec01 .sec01-ttl01 {
    margin: 6% 0;
    font-size: 262.5%;
    font-weight: 700;
    line-height: 1.809;
    text-align: center;
    letter-spacing: .08em;
}

#indexTop .sec01 .sec01-img01 {
    margin: auto;
    width: 84%;
}

#indexTop .sec01 .sec01-txt01 {
    margin-top: 6%;
    font-size: 187.5%;
    line-height: 2.333;
    text-align: center;
    letter-spacing: .1em;
}

#indexTop .sec01 .sec01-txt01 span {
    font-weight: 700;
    background: linear-gradient(transparent 70%, #FFE802 30%);
}

#indexTop .sec01 .sec01-info {
    margin: 7% auto 0;
    padding: 0.2% 0 4.1% 4.1%;
    width: 84%;
    border-radius: 30px;
    background-color: #FFE800;
    letter-spacing: .1em;
}

#indexTop .sec01 .sec01-infoWrap {
    margin-right: 50px;
    display: flex;
    align-items: center;
}

#indexTop .sec01 .sec01-infoWrap:last-child {
    margin-right: 0;
}

#indexTop .sec01 .sec01-info-txt01 {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #0050FF;
    color: #fff;
}

#indexTop .sec01 .sec01-info-txt01 span {
    position: absolute;
    display: inline-block;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    text-align: center;
    font-size: 150%;
    line-height: 1.2;
}

#indexTop .sec01 .sec01-info-txt02 {
    font-size: 162.5%;
    line-height: 1.388;
    font-weight: 700;
}

#indexTop .sec01 .sec01-info-txt02 span {
    display: inline-block;
    margin: 6% 0 2% 2%;
    font-size: 138.4616%;
    line-height: 1.388;
    color: #0050FF;
    font-weight: 700;
}

#indexTop .sec01 .sec01-infoWrap02 {
    display: flex;
    justify-content: space-between;
    margin-top: 3.4%;
    width: 94.5%;
}

#indexTop .sec01 .sec01-info-txt02-2 {
    margin-left: 14px;
}

#indexTop .sec01 .sec01-info-txt02-2 span {
    display: inline-block;
    margin: 0;
    margin-left: -5%;
    font-size: 76.923%;
    line-height: 1.388;
    color: #000;
    font-weight: 400;
}


/*sec02*/
#indexTop .sec02 {
    padding: 5% 0 0;
    color: #000;
    background-image: url(../img/sec01-bg-img01.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

#indexTop .sec02 h2.sec02-title {
    margin: auto;
    width: 91.1%;
}

#indexTop .sec02 .sec02-ttl01 {
    margin-top: 3.38%;
    font-size: 187.5%;
    line-height: 2;
    text-align: center;
    font-weight: 700;
    letter-spacing: .05em;
}

#indexTop .sec02 .youtubeArea {
    display: flex;
    justify-content: space-between;
    margin: 5.9% auto 0;
    width: 84%;
}

#indexTop .sec02 .youtube {
    width: 46.43%;
}

#indexTop .sec02 .youtube iframe {
    border-radius: 25px;
}

#indexTop .sec02 .youtube video {
    border-radius: 25px;
    width: 100%;
    display: block;
}

#indexTop .sec02 .youtube2 {
    margin-top: 8%;
}

#indexTop .sec02 .youtube .youtube-txt {
    margin-top: 2.382%;
    font-size: 150%;
    line-height: 1.458;
    text-align: center;
}

#indexTop .sec02 .sec02-img01 {
    margin: 1.5% auto 0;
    width: 84%;
}

#indexTop .sec02 .sec02-img01 img {
    vertical-align: bottom;
}

/*sec03*/
#indexTop .sec03 {
    position: relative;
    padding: 4.6% 0 30.8%;
    color: #000;
    background-color: #FFE800;
}

#indexTop .sec03::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 4%;
    left: 16%;
    z-index: 0;
    width: 24%;
    padding-bottom: 19%;
    background-image: url(../img/sec03-img01-deco2.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec03 h2.sec03-title {
    position: relative;
    margin: auto;
    width: 90.8%;
}

#indexTop .sec03 h2.sec03-title::before {
    content: "";
    display: block;
    position: absolute;
    top: 24%;
    right: 4%;
    z-index: 0;
    width: 41.637%;
    padding-bottom: 41%;
    background-image: url(../img/sec03-img01-deco.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec03 .sec03-img01 {
    position: relative;
    margin: 6.7% auto 0;
    width: 84%;
}

#indexTop .sec03 .sec03-txt01 {
    position: absolute;
    top: 33.5%;
    left: 0%;
    font-size: 162.5%;
    line-height: 1.923;
    width: 46.79%;
    letter-spacing: 0.07em;
}

#indexTop .sec03 .sec03-txt02 {
    position: absolute;
    top: 47.2%;
    right: -0.5%;
    font-size: 162.5%;
    line-height: 1.923;
    letter-spacing: 0.07em;
    width: 43.858%;
}

#indexTop .sec03 .sec03-txt03 {
    position: absolute;
    top: 87.2%;
    left: 0%;
    font-size: 162.5%;
    line-height: 1.923;
    width: 45.1%;
    letter-spacing: 0.06em;
}

#indexTop .sec03 .sec03-txt04 {
    position: absolute;
    top: 100.7%;
    right: 0%;
    font-size: 162.5%;
    line-height: 1.923;
    width: 42.858%;
    letter-spacing: 0.06em;
}

/*sec04*/
#indexTop .sec04 {
    padding: 4.6% 0 8.99%;
    color: #000;
    background-color: #0050FF;
}

#indexTop .sec04 h2.sec04-title {
    position: relative;
    margin: auto;
    width: 90.8%;
}

#indexTop .sec04 h2.sec04-title img {
    vertical-align: bottom;
}

#indexTop .sec04 .sec04-ttl01 {
    margin-top: 4.9%;
    font-size: 187.5%;
    line-height: 2;
    text-align: center;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0;
}

#indexTop .sec04 .sec04-workInfo .sec04-ttl01 {
    margin-top: 4.72%;
}

#indexTop .sec04 .sec04-ttl02 {
    margin-top: 3%;
}

#indexTop .sec04 .sec04-workInfo {
    margin: 5.6% auto 0;
    width: 84%;
}

#indexTop .sec04 .sec04-workInfo .sec04-workInfo-top {
    margin-top: 6%;
}

#indexTop .sec04 .sec04-workInfo .sec04-workInfo-top img {
    vertical-align: bottom;
}

#indexTop .sec04 .sec04-workInfo .sec04-workInfo-top p {
    margin-top: 2.382%;
    width: 100%;
    font-size: 162.5%;
    line-height: 1.923;
    color: #fff;
    letter-spacing: .05em;
}

#indexTop .sec04 .sec04-workInfo .sec04-workInfo-flex .sec04-workInfo-top p {
    margin-top: 5.13%;
}

#indexTop .sec04 .sec04-workInfo-flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#indexTop .sec04 .sec04-workInfo-flex .sec04-workInfo-top {
    width: 46.43%;
}

#indexTop .sec04 .sec04-workInfo-btm {
    margin: 10% auto 0;
    width: 100%;
}

#indexTop .sec04 .sec04-txt03 {
    position: absolute;
    top: 38%;
    left: 3%;
    text-align: center;
    font-weight: 700;
    font-size: 187.5%;
    line-height: 1.5333;
    color: #0050FF;
    width: 100%;
    letter-spacing: .05em;
}

#indexTop .sec04 .sec04-workInfo-youtube {
    position: relative;
    margin-top: 11.905%;
}

#indexTop .sec04 .youtubeArea {
    display: flex;
    justify-content: space-between;
    margin: -2% auto 0;
    width: 100%;
}

#indexTop .sec04 .youtube {
    width: 48%;
}

#indexTop .sec04 .youtube iframe {
    border-radius: 25px;
}

#indexTop .sec04 .youtube video {
    border-radius: 25px;
    width: 100%;
    display: block;
    object-fit: cover;
}

#indexTop .sec04 .youtube2 {
    margin-top: 7%;
}

#indexTop .sec04 .youtube .youtube-txt {
    margin-top: 2%;
    font-size: 150%;
    line-height: 1.458;
    text-align: center;
    color: #fff;
}

#indexTop .sec04 .sec04-workInfo-youtubeBtm {
    margin: 7.143% auto 0;
    width: 74.287%;
}


/*sec05*/
#indexTop .sec05 {
    padding: 8% 0 10.6%;
    color: #000;
}

#indexTop .sec05 h2.sec05-title {
    position: relative;
    margin: auto;
    width: 83.4%;
}

#indexTop .sec05 .youtubeArea {
    margin: 7.9% auto 6%;
    width: 84%;
}

#indexTop .sec05 .sec05-img01 {
    margin: auto;
    width: 47.3%;
}

#indexTop .sec05 .sec05-txt01 {
    margin-top: 5.5%;
    margin-bottom: 8%;
    font-size: 162.5%;
    line-height: 2.307;
    letter-spacing: .05em;
    text-align: center;
}

#indexTop .sec05 .sec05-sns {
    margin: auto;
    padding: 4.5% 4% 3%;
    width: 84%;
    background-color: #FFE800;
    border-radius: 30px;
}

#indexTop .sec05 .sec05-sns .sec05-sns-ttl {
    font-size: 287.5%;
    text-underline-offset: 20px;
    text-decoration: underline;
    line-height: 1.15;
    text-align: center;
    font-weight: 700;
    letter-spacing: .1em;
}

#indexTop .sec05 .sec05-sns .sec05-sns-wrap {
    margin: 7.739% auto 0;
    width: 69.287%;
    display: flex;
    justify-content: space-between;
}

#indexTop .sec05 .sec05-sns .sec05-sns-wrap a {
    display: block;
    width: 20.447%;
}

#indexTop .sec05 .sec05-line {
    margin-top: 5.954%;
    position: relative;
    padding: 4.763% 0 4.763%;
    background-color: #fff;
    border-radius: 30px;
}

#indexTop .sec05 .sec05-line .sec05-line-txt {
    font-size: 162.5%;
    line-height: 1.923;
    letter-spacing: 0.21em;
    padding-left: 6.073%;
}

#indexTop .sec05 .sec05-line .sec05-line-btn {
    margin: 3.93% auto 0;
    width: 71.43%;
}

#indexTop .sec05 .sec05-line .sec05-line-btn a {
    display: block;
    font-size: 187.5%;
    line-height: 1;
    font-weight: 900;
    text-decoration: none;
    color: #fff;
    background-color: #02B902;
    padding: 5.667% 0;
    border-radius: 154px;
    border: solid 6px #FFFFFF;
    text-align: center;
    position: relative;
    box-shadow: 0px 10px 3px -5px rgba(0, 0, 0, 0.18);
}

#indexTop .sec05 .sec05-line .sec05-line-btn a::before {
    content: "";
    display: block;
    position: absolute;
    top: 37%;
    right: 2%;
    z-index: 0;
    width: 5.613%;
    padding-bottom: 5.613%;
    background-image: url(../img/sec05-img04.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec05 .sec05-line::before {
    content: "";
    display: block;
    position: absolute;
    top: 10.6%;
    right: 2%;
    z-index: 0;
    width: 40.716%;
    padding-bottom: 45.613%;
    background-image: url(../img/sec05-img03.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec05 .sec05-line::after {
    content: "";
    display: block;
    position: absolute;
    top: 12.6%;
    right: 2%;
    z-index: 0;
    width: 40.716%;
    padding-bottom: 45.613%;
    background-image: url(../img/sec05-img03-2.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}


#indexTop .sec05 .sec05-line-btn {
    margin: 5.954% auto 0;
    width: 60%;
}

#indexTop .sec05 .sec05-line-btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 187.5%;
    line-height: 1;
    font-weight: 900;
    text-decoration: none;
    color: #fff;
    background-color: #0050FF;
    padding: 3.635% 0;
    border-radius: 154px;
    border: solid 6px #FFFFFF;
    text-align: center;
    position: relative;
    box-shadow: 0px 10px 3px -5px rgba(0, 0, 0, 0.18);
}

#indexTop .sec05 .sec05-line-btn a::before {
    content: "";
    display: block;
    position: absolute;
    top: 37%;
    right: 2%;
    z-index: 0;
    width: 5.613%;
    padding-bottom: 5.613%;
    background-image: url(../img/sec05-img06.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec05 .sec05-line-btn a img {
    width: 41.323%;
}

/*sec06*/
#indexTop .sec06 {
    padding: 8% 0;
    color: #000;
    background-image: url(../img/sec06-bg-img01.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

#indexTop .sec06 .sec06Wrap {
    margin: auto;
    width: 84%;
}

#indexTop .sec06 .sec06Wrap {
    margin: auto;
    width: 84%;
    border: solid 10px #fff;
    border-radius: 40px;
}

#indexTop .sec06 .sec06Wrap-btm {
    padding: 4.763% 0 5.6%;
    background-color: #FAEBD8;
    border-radius: 0 0 25px 25px;
    text-align: center;
}

#indexTop .sec06 .sec06Wrap-img img {
    vertical-align: bottom;
}

#indexTop .sec06 .sec06Wrap-btm-ttl {
    font-size: 312.5%;
    letter-spacing: .05em;
    line-height: 1.4;
    color: #C9014B;
    font-weight: 700;
}

#indexTop .sec06 .sec06Wrap-btm-txt {
    margin: 7.144% auto 6.667%;
    font-size: 162.5%;
    letter-spacing: .05em;
    line-height: 2.307;
}

#indexTop .sec06 .sec06-line-btn {
    margin: 6.667% auto 0;
    width: 71.43%;
}

#indexTop .sec06 .sec06-line-btn a {
    display: block;
    font-size: 187.5%;
    line-height: 1;
    font-weight: 900;
    text-decoration: none;
    color: #fff;
    background-color: #C9014B;
    padding: 5.667% 0;
    border-radius: 154px;
    border: solid 6px #FFFFFF;
    text-align: center;
    position: relative;
    box-shadow: 0px 10px 3px -5px rgba(0, 0, 0, 0.18);
}

#indexTop .sec06 .sec06-line-btn a::before {
    content: "";
    display: block;
    position: absolute;
    top: 37%;
    right: 2%;
    z-index: 0;
    width: 5.613%;
    padding-bottom: 5.613%;
    background-image: url(../img/sec05-img07.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#indexTop .sec06 .sec06Wrap-btm-img {
    margin: 4.882% 0 0 auto;
    padding-right: 5%;
    width: 45.2%;
}
#indexTop .sec06 .sec06Wrap-btm-img img {
    display: block;
}

#indexTop .copylight {
    margin-top: 3.2%;
    padding-bottom: 3.9%;
}

#indexTop .copylight p {
    font-size: 150%;
    line-height: 1.666;
    color: #666666;
    text-align: center;
    letter-spacing: .05em;
    font-weight: 300;
}




.fade-up {
    opacity: 0;
    transform: translateY(50px);
    /* 下に30px */
    transition: opacity 1.2s ease, transform 1.2s ease;
}

.fade-up.active {
    opacity: 1;
    transform: translateY(0);
    /* 元の位置に戻す */
}

@media screen and (min-width: 1600px) {
    nav.topMenu {
        display: none;
    }

    #indexTop .sec06 .sec06-line-btn a:hover,
    #indexTop .sec05 .sec05-line-btn a:hover,
    #indexTop .sec05 .sec05-line .sec05-line-btn a:hover {
        opacity: .5;
        transition: .5s;
    }

    
}

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

.is-safari #indexTop .sec04 .sec04-ttl01  {
    font-size: 160.5%;
}
}
@media all and (min-width: 1000px) and (max-width: 1600px) {
    .side-menu {
        display: none;
    }
}

@media screen and (max-width : 1000px) {
    .side-menu {
        display: none;
    }

    #indexTop .sec02 .youtubeArea {
        display: block;
    }

    #indexTop .sec02 .youtube {
        width: 100%;
    }

    #indexTop .sec02 .youtube iframe {
        width: 100%;
        height: 47vw;
    }

    #indexTop .sec02 .youtube video {
        width: 100%;
        height: 47vw;
    }

    #indexTop .sec04 .youtubeArea {
        display: block;
    }

    #indexTop .sec04 .youtubeArea iframe {
        width: 100%;
        height: 47vw;
    }

    #indexTop .youtubeArea iframe {
        width: 100%;
        height: 47vw;
    }

    #indexTop .sec04 .youtubeArea video {
        width: 100%;
        height: 47vw;
    }

    #indexTop .youtubeArea video {
        width: 100%;
        height: 47vw;
    }

    #indexTop .sec04 .youtube {
        width: 100%;
    }

    #indexTop .sec02 .youtube2 {
        margin-top: 7.144%;
    }

    #indexTop .sec02 .sec02-img01 {
        margin: 6% auto 0;
    }

    #indexTop .sec04 .youtube {
        margin-top: 7.144%;
    }

    #indexTop .sec04 .youtube2 {
        margin-top: 5%;
    }

    #indexTop,
    html,
    body {
        width: 100%;
    }

    nav.topMenu a {
        font-size: 2.8vw;
    }

    #indexTop .sec01 .sec01-ttl01 {
        font-size: 4.2vw;
    }

    #indexTop .sec01 .sec01-txt01 {
        font-size: 3vw;
    }

    #indexTop .sec01 .sec01-info-txt01 span {
        font-size: 2.4vw;
    }

    #indexTop .sec01 .sec01-info-txt02 span {
        font-size: 3.6vw;
    }

    #indexTop .sec01 .sec01-info-txt02 {
        font-size: 2.6vw;
        margin-left: 1.5vw;
    }

    #indexTop .sec01 .sec01-info-txt02-2 span {
        font-size: 2vw;
    }

    #indexTop .sec02 .sec02-ttl01 {
        font-size: 3vw;
    }

    #indexTop .sec02 .youtube .youtube-txt {
        font-size: 2.4vw;
    }

    #indexTop .sec03 .sec03-txt01,
    #indexTop .sec03 .sec03-txt02,
    #indexTop .sec03 .sec03-txt03,
    #indexTop .sec03 .sec03-txt04 {
        font-size: 2.6vw;
    }

    #indexTop .sec04 .sec04-ttl01 {
        font-size: 2.8vw;
    }

    #indexTop .sec04 .sec04-workInfo .sec04-workInfo-top p {
        font-size: 2.6vw;
    }

    #indexTop .sec04 .sec04-txt03 {
        font-size: 3vw;
    }

    #indexTop .sec04 .youtube .youtube-txt {
        font-size: 2.4vw;
    }

    #indexTop .sec05 .sec05-txt01 {
        font-size: 2.6vw;
    }

    #indexTop .sec05 .sec05-sns .sec05-sns-ttl {
        font-size: 4.6vw;
        text-underline-offset: 2vw;
    }

    #indexTop .sec05 .sec05-line .sec05-line-txt {
        font-size: 2.6vw;
    }

    #indexTop .sec05 .sec05-line .sec05-line-btn a,
    #indexTop .sec05 .sec05-line-btn a,
    #indexTop .sec06 .sec06-line-btn a {
        font-size: 3vw;
        border: solid .6vw #FFFFFF;
    }

    #indexTop .sec06 .sec06Wrap-btm-ttl {
        font-size: 5vw;
    }

    #indexTop .sec06 .sec06Wrap-btm-txt {
        font-size: 2.6vw;
    }

    #indexTop .copylight p {
        font-size: 2.4vw;
    }

    #indexTop .sec01 .sec01-info-txt01 {
        width: 8vw;
        height: 8vw;
    }

    #indexTop .sec01 .sec01-infoWrap {
        margin-right: 5vw;
    }

    #indexTop .sec01 .sec01-info {
        border-radius: 3vw;
        letter-spacing: .03em;
    }

    #indexTop .sec02 .youtube iframe,
    #indexTop .sec04 .youtube iframe {
        border-radius: 2.5vw;
    }

    #indexTop .sec02 .youtube video,
    #indexTop .sec04 .youtube video {
        border-radius: 2.5vw;
    }

    #indexTop .sec06 .sec06Wrap {
        border-radius: 4vw;
        border: solid 1vw #fff;
    }

    #indexTop .sec06 .sec06Wrap-btm {
        border-radius: 0 0 2.5vw 2.5vw;
    }

    #indexTop .sec05 .sec05-sns {
        border-radius: 3vw;
    }

    #indexTop .sec05 .sec05-line {
        border-radius: 3vw;
    }

    .topMenu.is-fixed {
        top: 0;
        padding: 3.6vw 0 4.7vw;
    }

    nav.topMenu {
        padding: 3.6vw 0 4.7vw;
    }
}

#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 90px;
}

#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
  scroll-margin-top: 90px;
}


@media (max-width:1000px){
#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 11vw;
}
#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
    scroll-margin-top: 12vw;
  }
}
@media (max-width:500px){
#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 12vw;
}
#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
    scroll-margin-top: 13vw;
  }
}
@media (max-width:450px){
#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 11.5vw;
}
#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
    scroll-margin-top: 12.5vw;
  }
}
@media (max-width:400px){
#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 13.5vw;
}
#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
    scroll-margin-top: 14.5vw;
  }
}

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

#message,
#work,
#production,
#theTime,
#kidzania {
  scroll-margin-top: 0px;
}
#message.menu-fixed,
#work.menu-fixed,
#production.menu-fixed,
#theTime.menu-fixed,
#kidzania.menu-fixed {
    scroll-margin-top: 0px;
    }
}