.move-up-down {
    width: 30px;
    height: 30px;
    background-image: url('../img/scroll_sp.png');
    background-size: cover;
    position: relative;
    animation: upDown 2s infinite;
}

@keyframes upDown {
    0% {
        top: 0;
        opacity: 1;
    }

    50% {
        top: 30px;
        /* 動かす距離 */
        opacity: 1;
    }

    51% {
        top: 30px;
        /* 動かす距離 */
        opacity: 0;
    }

    75% {
        top: 0px;
        opacity: 0;
    }

    100% {
        top: 0;
        opacity: 0;
    }
}

@media screen and (max-width: 684px) {
    html {
        /*overflow: scroll;
  		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;*/
    }

    .mv {
        position: relative;
        width: 100%;
        /*height: 135VW;*/
        /*height: calc(100vh - 45VW);*/
        height: calc(100dvh - 15VW);
        /*margin-bottom: -3VW;*/
        margin-top: -60px;
    }

    .mv+.btn {
        margin-bottom: 0VW;
        /*margin-top: 20VW;*/
    }

    .mv .mv_title {
        position: absolute;
        width: 80%;
        top: 25VW;
        left: 10%;
        display: block;
        z-index: 9998;
        background-color: rgba(11, 26, 55, 0.9);
    }

    .mv_title img {
        width: 100%;
        height: auto;
    }

    .mv .mv_scroal {
        position: absolute;
        width: 33px;
        bottom: 18VW;
        left: 0;
        right: 0;
        margin: auto;
        z-index: 9998;
    }

    .alert {
        text-align: left;
        width: 96%;
        font-size: 10px;
        padding: 6VW 2% 0;
    }

    .ban_present {
        text-align: center;
        margin: 15VW auto 10VW;
        width: 92%;
    }

    .ban_present img {
        width: 100%;
        height: auto;
    }


    /*threeblocks*/
    ul.threeblocks {
        width: 100%;
        margin: 4VW auto 0;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    ul.threeblocks li {
        width: 92%;
        margin: 0 4%;
        margin-bottom: 5VH;
    }

    ul.threeblocks li h3 {
        padding: 20px 0;
        line-height: 1em;
        font-size: 20px;
        border-bottom: 1px solid #FFF;
    }

    ul.threeblocks li p {
        text-align: left;
        padding-top: 0.75em;
        line-height: 1.57em;
        font-size: 14px;
    }

    ul.threeblocks li img {
        width: 100%;
        height: auto;
    }

    /*threeblocks*/

    /*showroom*/
    #showroom {
        padding: 1px 0 60px;
    }

    #showroom h2 {
        background-image: url("../img/title02e.png");
        /*先に書いたほうが上になる*/
        background-repeat: no-repeat;
        background-position: center top;
        padding-top: 88px;
        font-size: 24px;
    }

    #cboxPrevious,
    #cboxNext {
        /*display:block!important;*/
        top: 92%;
    }



    .gaiyo {
        margin-bottom: 0VW;
        padding-bottom: 3VW;
    }

    .gaiyo p {
        margin-bottom: 0;
    }


    #cboxOverlay {
        opacity: 1;
    }

    #cboxContent,
    #cboxTopLeft,
    #cboxTopRight,
    #cboxBottomLeft,
    #cboxBottomRight,
    #cboxMiddleLeft,
    #cboxMiddleRight,
    #cboxTopCenter,
    #cboxBottomCenter {
        background: none;
    }

    #cboxClose {
        left: 0px;
        right: 0px;
        bottom: 5VW;
        margin: auto;
    }

}

@media screen and (min-width: 685px) {

    /*フローティングバナー*/
    .fix__btn {
        position: fixed;
        width: 55px;
        height: 193px;
        top: 180px;
        right: 0px;
        display: block;
        z-index: 100000;
    }

    .fix__btn li {
        margin-bottom: 10px;
    }

    #sidebar #sidebar01 {
        opacity: 0.0;
    }

    #sidebar.open #sidebar01 {
        opacity: 1.0;
    }

    #banner-sp.fixed {
        opacity: 1;
        animation-name: fadeUpAnime;
        animation-duration: 0.8s;
        animation-fill-mode: forwards;
    }

    /*フローティングバナー*/

    .mv {
        position: relative;
        width: 100%;
        height: calc(100VH - 0px);
        /*background:url("../img/bg2304.jpg?v=0") center top no-repeat;*/
        overflow: hidden;
        margin-top: -100px;
    }

    .mv .inner {
        position: relative;
        width: 1200px;
        height: 700px;
        margin: 0 auto;
    }

    .mv .mv_title {
        position: absolute;
        width: 30%;
        min-width: 310px;
        height: 90px;
        top: 45%;
        left: 0;
        display: block;
        z-index: 9998;
        background-color: rgba(11, 26, 55, 0.9);
        text-align: right;
    }

    .mv .mv_scroal {
        position: absolute;
        width: 33px;
        bottom: 50px;
        left: 0;
        right: 0;
        margin: auto;
        z-index: 9998;
    }

    section h2 {
        margin: 40px auto 80px auto;
        padding-bottom: 18px;
        font-size: 30px;
    }

    .alert {
        text-align: right;
        width: 1180px;
        margin: 5px auto 0;
        font-size: 12px;
    }

    .ban_present {
        margin: 100px auto;
        text-align: center;
    }


    /*recommend*/
    #recommend {
        padding: 1px 0 60px;
    }

    #recommend h2 {
        background-image: url("../img/title04e.png");
        /*先に書いたほうが上になる*/
        background-repeat: no-repeat;
        background-position: center top;
        padding-top: 88px;
        font-size: 38px;
    }

    ul.threeblocks {
        width: 1180px;
        margin: 0 auto;
    }

    ul.threeblocks li {
        width: 31.8%;
        float: left;
        margin-right: 2.2%;
    }

    ul.threeblocks li:nth-child(3) {
        margin-right: 0px;
    }

    ul.threeblocks li h3 {
        padding: 20px 0;
        line-height: 1em;
        font-size: 20px;
        border-bottom: 1px solid #FFF;
    }

    ul.threeblocks li p {
        text-align: left;
        padding-top: 0.75em;
        line-height: 1.57em;
        font-size: 14px;
    }

    /*threeblocks*/



    /*showroom*/
    #showroom {
        padding: 1px 0 60px;
    }

    #showroom h2 {
        background-image: url("../img/title02e.png");
        /*先に書いたほうが上になる*/
        background-repeat: no-repeat;
        background-position: center top;
        padding-top: 88px;
        font-size: 38px;
    }

    .exhibition .exhibition__inner {
        margin: 3rem auto 0;
    }

    .exhibition {
        padding-top: 3rem;
    }

    .exhibition ul.exhibition_list>li a.reserveBtn {
        margin-bottom: 60px;
    }

    .exhibition__inner h3 {
        padding: 2em 0 1.5em;
        font-size: 180%;
    }

    /*showroom*/


    #nagoya {
        padding-top: 0;
    }


    #sidebar {
        width: 280px;
        height: 352px;
        position: fixed;
        bottom: 50px;
        right: -350px;
        z-index: 1;
    }

    #sidebar ul {
        position: absolute;
        top: 0px;
        right: 0;
    }

    #sidebar ul li {
        height: 50px;
        margin: 0 0 0px;
        list-style-type: none;
    }

    #sidebar ul li:first-child {
        height: 200px;
        /*opacity: 0.0;*/
    }

    #sidebar.open ul li:first-child {
        /*opacity: 1;*/
    }

    #sidebar ul li:last-child {
        height: 61px;
    }

    #sidebar button {
        position: absolute;
        bottom: 0px;
        right: 0px;
        width: 280px;
        height: 36px;
        border: none;
        display: block;
        text-align: left;
        text-indent: 0.8em;
        background-image: url("../img/side06.gif");
        color: #fff;
    }

}

@media screen and (max-width: 736px) {

    .section-inner {
        padding-left: 16px;
        padding-right: 16px;
    }

    .gaiyo .inner {
        box-sizing: border-box;
        width: 100%;
        margin: 0 auto;
        padding: 2rem 16px;
    }

    #catch h3 {
        line-height: 1.7;
    }

    #catch h3 span {
        display: block;
        font-size: 18px;
    }

    #event h3 {
        text-indent: 0.1em;
        letter-spacing: 0.1em;
    }

    #event .prize-list {
        flex-wrap: wrap;
    }



    .col-2-s1 {
        display: grid;
        grid-template-columns: 1fr;
        gap: 5rem;
        margin-bottom: 5rem;
    }

    .present {
        grid-template-columns: 1fr;
    }

    .present .present-detail h4 span {
        display: block;
    }

}

@media screen and (min-width: 737px) {
    #PC------------------------ {}

    .gaiyo .inner {
        padding: 2rem 0;
    }

    section {
        padding: 80px 0;
    }

    .col-2-s1 {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: clamp(3rem, 2vw, 5rem);
        margin-bottom: 5rem;
    }

    .present {
        grid-template-columns: 25% 1fr;
    }
}

section {
    --main-font: "Yu Mincho", "YuMincho", "小塚明朝 Pro R", "小塚明朝 Std R", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "MS PMincho", メイリオ, Meiryo, serif;
    ;
    --gothic-font: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", sans-serif;
}

.section-inner {
    max-width: 1180px;
    margin: auto;
}

/* #catch */

#catch h2 {
    margin-bottom: 3rem;
}

#catch h2 img {
    width: 100%;
}

.btn_w_01 {
    max-width: 90%;
    margin: 2rem auto 3rem;
}

.btn_w_01 img {
    width: 100%;
}

.btn_b_02 {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(22px, 3vw, 30px);
    font-family: var(--gothic-font);
    color: #000;
    font-weight: bold;
    padding: 16px;
    background-image: url(../img/btn-02-s.png);
    background-size: cover;
    border-radius: 8px;
    box-shadow: 2px 3px 3px #999;
    width: 100%;
    background-repeat: no-repeat;
    font-family: "Yu Mincho", "YuMincho", "小塚明朝 Pro R", "小塚明朝 Std R", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "MS PMincho", メイリオ, Meiryo, serif;
}

.btn_b_02::after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 16px solid black;
    margin-left: 1rem;
}

#catch h3 {
    font-weight: normal;
    text-align: center;
    font-size: clamp(26px, 2vw, 30px);
    margin-bottom: 1.5rem;
}

#catch p.catch-text {
    font-size: clamp(14px, 2vw, 18px);
    text-align: center;
    line-height: 1.5;
}

/* #event */

#event {
    background-color: #4f4840;
    color: #fff;
}

#event .event-sc01,
#event .event-sc02 {
    margin-bottom: clamp(3rem, 5vw, 6rem);
}

#event h2 img {
    width: 100%;
}

#event h3 {
    font-size: clamp(28px, 4vw, 60px);
    text-indent: 0.15em;
    letter-spacing: 0.15em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: normal;
    margin-bottom: 3rem;
    color: #eae4d7;
}

#event h3::before,
#event h3::after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #eae4d7;
}

#event h3::before {
    margin-right: 2rem;
}

#event h3::after {
    margin-left: 2rem;
}

#event h3 span {
    font-size: clamp(18px, 3vw, 30px);
}

#event h3+p {
    text-align: center;
    font-size: clamp(18px, 3vw, 22px);
    color: #eae4d7;
    margin-bottom: 4rem;
    margin-top: -1.5rem;
    line-height: 1.7;
}

@media screen and (max-width: 737px) {
    #event h3 {
        text-indent: 0.1em;
        letter-spacing: 0.1em;
    }

    #event h3::before {
        margin-right: 0.5rem;
    }

    #event h3::after {
        margin-left: 0.5rem;
    }
}

/* //#event */

/* prize */
.prize-list {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.prize-item {
    flex: 1 1 calc(33.333% - 40px);
    box-sizing: border-box;
}

.prize-item h4 {
    margin-bottom: .5rem;
    font-weight: normal;
}

.prize-item h4 em {
    font-size: clamp(30px, 6vw, 42px);
    font-style: normal;
    padding-right: .75rem;
    margin-right: .75rem;
    border-right: #fff solid 1px;
}

.prize-item h4 em>small {
    font-size: clamp(16px, 6vw, 20px);
}

.prize-item h4>span {
    font-size: 30px;
}

.prize-item h4>span>small {
    font-size: 18px;
}

.prize-item figure {
    margin-bottom: .5rem;
}

.prize-item img {
    width: 100%;
}

.prize-item .prize-p-name {
    font-size: clamp(20px, 6vw, 24px);
    line-height: 1.25;
}

.prize-list+.note {
    font-family: var(--gothic-font);
    font-size: 12px;
    line-height: 1.3;
}

.prize-list+.note>ul li:not(:last-child) {
    margin-bottom: 5px;
}

@media screen and (max-width: 737px) {
    .prize-list {
        gap: 20px;
    }

    .prize-item:nth-child(1) {
        flex: 1 1 100%;
    }

    .prize-item:nth-child(2),
    .prize-item:nth-child(3) {
        flex: 1 1 calc(50% - 10px);
    }

    .prize-item:nth-child(2) .prize-p-name,
    .prize-item:nth-child(3) .prize-p-name.text-s {
        font-size: 16px;
    }

}


/* //prize */

/* exp */

.col-2-s1 {
    display: grid;
    margin-bottom: 5rem;
}

.col-2-s1>.col-item {
    display: flex;
}

.col-2-s1>.col-item.item_01 {
    flex-direction: column;
}

.col-2-s1>.col-item {
    flex-direction: column-reverse;
}

.col-2-s1>.col-item figure {
    width: 96%;
}

.col-2-s1>.col-item.item_01 figure {
    margin-left: auto;
}

.col-2-s1>.col-item.item_02 figure {
    margin-right: auto;
}

.col-2-s1>.col-item .detail-text {
    background: rgba(0, 0, 0, 0.30);
    width: 80%;
    padding: 26px;
    line-height: 1.7;
}

.col-2-s1>.col-item .detail-text h4 {
    font-size: 20px;
    font-weight: normal;
}

.col-2-s1>.col-item .detail-text p {
    font-size: 14px;
}

.col-2-s1>.col-item.item_01 .detail-text {
    margin-right: auto;
    margin-top: -1rem;

}

.col-2-s1>.col-item.item_02 .detail-text {
    margin-left: auto;
    margin-bottom: -1rem;
}

.col-item img {
    width: 100%;
}

/* //exp */

/* present */

.present {
    padding: 20px;
    display: grid;
    gap: 20px;
    background-color: #dfdfdf;
    align-items: center;
    line-height: 1.5;
}

.present figure img {
    width: 100%;
}

.present .present-detail h4 {
    text-align: center;
    font-size: clamp(20px, 2vw, 32px);
    color: #003816;
    margin-bottom: 1.5rem;

}

.present .present-detail {}

.present .present-detail h4 span {
    font-size: clamp(18px, 2vw, 24px);
}

.present .present-detail h4+p,
.present .present-detail .note {
    color: #3e3a3a;

}

.present .present-detail h4+p {
    text-align: center;
    font-size: clamp(16px, 2vw, 20px);
    margin-bottom: clamp(2rem, 2vw, 3rem);
}

.present .present-detail .note>ul {
    text-align: center;
}

.present .present-detail .note>ul li {
    display: inline;
    line-height: 1.5;
    font-size: 12px;
}

/* //present */

/* #banner */
#banner {
    background-color: #fff;
}

#banner img {
    width: 100%;
}

/* //#banner */

/* #special */
#special {
    background-color: #eae4d7;
}

#special .special-grid {
    max-width: 996px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: clamp(1rem, 5vw, 6rem);
    margin-bottom: 3rem;
}

#special .special-grid figure img {
    width: 100%;
}

#special .special-item figure {
    margin-bottom: 1rem;
}

#special .special-item .item-name {
    font-size: clamp(18px, 2vw, 24px);
    text-align: center;
    line-height: 1.5;
}

#special .special-item .item-name span {
    display: block;
    font-size: clamp(14px, 2vw, 18px);
}

#special .special-top {
    background: #D9CCA8;
    background: linear-gradient(0deg, rgba(217, 204, 168, 1) 0%, rgba(233, 228, 214, 1) 100%);
    position: relative;
    margin-top: -2rem;
}

#special .special-top>img {
    position: absolute;
    right: 0;
    bottom: 0;
}

#special .special-top .left {
    width: 44%;
    padding: 30px 0 50px;
    text-align: center;
    position: relative;
}

#special .special-top .left figure {
    margin-bottom: 2rem;
}

#special .special-top .left figure img {
    width: 100%;
}

@media screen and (max-width: 736px) {
    .prize-item .prize-p-name.text-s {
        font-size: 22px;
    }

    #special .special-top>img {
        display: none;
    }

    #special .special-top .left {
        width: 100%;
    }

    #special .special-top .left figure {
        width: 90%;
        margin: auto;
        margin-bottom: 1.5rem;
    }

    .mv-catch {
        top: 20VW !important;
    }
}

#special .special-bottom {
    padding-top: 3rem;
}

#special .spcial-catch {
    text-align: center;
    font-size: clamp(18px, 2vw, 30px);
    margin-bottom: 3rem;
    line-height: 1.5;
}

#special .special-bottom .spcial-catch>span {
    font-size: clamp(18px, 2vw, 24px);
    display: block;
}

#special .special-bottom .btn_b_02 {
    max-width: 890px;
    margin: auto;
    font-family: "Yu Mincho", "YuMincho", "小塚明朝 Pro R", "小塚明朝 Std R", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "MS PMincho", メイリオ, Meiryo, serif;
}

/* //#special */

/* #gaiyo */

.gaiyo ul {
    font-size: 12px;
}

.gaiyo ul li {
    margin-bottom: 5px;
    line-height: 1.3;
}

/* //gaiyo */

#sidebar01,
.delayed-image {
    opacity: 0;
    transition: opacity 0s ease-in 0s;
}

.delayed-image.show,
#sidebar01.show {
    transition: 1.0s;
    opacity: 1;
}

section {
    font-family: var(--main-font);
}

section h2 {
    font-family: var(--main-font);
    text-align: center;
    font-weight: normal;
    line-height: 1em;
    margin-bottom: 2rem;
}

section#showroom h2 {
    color: #fff;
}

#recommend {
    background-color: #fff;
}

#showroom {
    background-color: #0b1a37;
}

ul.threeblocks li h3 {
    font-weight: normal;
    text-align: center;
}

.mapbtn {
    display: inline;
    width: 100%;
    padding: 2px 5px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    background-color: #294473;
    text-align: center;
    color: #FFF;
    font-size: 11px;
    line-height: 1.5em;
    text-decoration: none;
}

#cboxCurrent {
    display: none !important;
}

.mv-catch {
    max-width: 980px;
    width: 100%;
    position: absolute;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100;
}

.mv-catch img {
    width: 100%;
}

#catch {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.90);
}

/*フロートバナー*/
@media only screen and (max-width: 767px) {

    .ban__fix__sp {
        position: fixed;
        width: 92%;
        left: 4%;
        bottom: 20VW;
        z-index: 9999;
    }

    .ban__fix__sp img {
        width: 100%;
        height: auto;
    }

    .ban__fix__inner {
        position: relative;
        width: 100%;
    }

    #closebanner-sp,
    #closebanner-sp1,
    #closebanner-sp2 {
        position: absolute;
        top: -10px;
        right: -10px;
        display: block;
        height: 25px;
        width: 25px;
        background: url('../img/float_close.png') no-repeat 0 0;
        background-size: 25px;
        cursor: pointer;
        text-indent: -9000px;
        z-index: 10;
    }

    .ban__fix {
        display: none;
    }

    #banner-sp {
        opacity: 0;
    }

    #banner-sp.fixed {
        opacity: 1;
        animation-name: fadeUpAnime;
        animation-duration: 0.8s;
        animation-fill-mode: forwards;
    }
}

@media only screen and (min-width: 768px) {
    .ban__fix {
        position: fixed;
        width: 270px;
        height: 240px;
        bottom: 50px;
        left: 50px;
        display: block;
        z-index: 9999;
        opacity: 0;
    }

    #banner.fixed {
        opacity: 1;
        animation-name: fadeUpAnime;
        animation-duration: 0.8s;
        animation-fill-mode: forwards;
    }

    .ban__fix__inner {
        position: relative;
        width: 290px;
    }

    #closebanner {
        position: absolute;
        top: -7px;
        right: -7px;
        display: block;
        height: 20px;
        width: 20px;
        background: url('../img/float_close.png') no-repeat 0 0;
        background-size: 20px;
        cursor: pointer;
        text-indent: -9000px;
        z-index: 10;
    }

    .ban__fix__sp {
        display: none;
    }

    #banner {
        /*opacity: 0;*/
    }

    #banner.fixed {
        /*opacity: 1;
		animation-name: fadeUpAnime;
        animation-duration: 0.8s;
        animation-fill-mode: forwards;*/
    }
}

@media screen and (max-width: 546px) {
    #SMP------------------------ {}

    .ban__fix__inner div:first-child {
        margin-right: 4%;
    }

    .ban__fix__half {
        position: relative;
        width: 48%;
        float: left;
    }
}

@media screen and (min-width: 737px) {
    #PC------------------------ {}

    #fixbtn_cp .fixbtn_cp01 {
        display: block;
    }

    #fixbtn_cp .fixbtn_cp02 {
        display: none;
    }

    #fixbtn_cp.fixed .fixbtn_cp01 {
        display: none;
    }

    #fixbtn_cp.fixed .fixbtn_cp02 {
        display: block;
        right: 0px;
        width: 100%;
    }

    #fixbtn_cp.fixed {
        position: fixed;
        top: 81px;
        right: 0px;
        height: 119px;
        width: 119px;
    }
}

/*フロートバナー*/

/*スクロールイベントここから*/
.scroalevent img {
    transition: .9s;
}

.scroalevent div {
    transition: 1.5s;
}

/* 移動なしフェードイン */
.list-mv02 {
    opacity: 0;
}

.mv02 {
    opacity: 1.0;
}

.list-mv02v {
    opacity: 0;
    transform: translate(0, 40px);
    -webkit-transform: translate(0, 40px);
}

.mv02v {
    opacity: 1.0;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
}

/*スクロールイベントここまで*/

.delay01 {
    animation-delay: 0.1s;
}

.delay02 {
    animation-delay: 0.5s;
}

.delay03 {
    animation-delay: 0.7s;
}

.delay04 {
    /*transition-delay: .9s!important;
  -webkit-transition-delay: .9s!important;*/
    animation-delay: 0.9s;
}

.delay05 {
    animation-delay: 1.0s;
}


.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeUp0 {
    animation-name: fadeUpAnime0;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime0 {
    from {
        opacity: 0;
        transform: translateY(0px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 右方向フェードイン */
.fadeLR {
    animation-name: fadeLRAnime;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeLRAnime {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* 左方向フェードイン */
.fadeRL {
    animation-name: fadeRLAnime;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeRLAnime {
    from {
        opacity: 0;
        transform: translateX(50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.fadeUpTrigger,
.fadeLRTrigger,
.fadeRLTrigger {
    opacity: 0;
    /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
}

@keyframes hurueru {
    0% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }

    25% {
        transform: translate(0px, 3px) rotateZ(0deg)
    }

    50% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }

    75% {
        transform: translate(0px, 3px) rotateZ(0deg)
    }

    100% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
}

@keyframes hurueru_v {
    0% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }

    25% {
        transform: translate(3px, 0px) rotateZ(0deg)
    }

    50% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }

    75% {
        transform: translate(3px, 0px) rotateZ(0deg)
    }

    100% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
}