@charset "UTF-8"; .slick-vertical .slick-slide { border: none; }
#c2 .system-pic { width: 100%; aspect-ratio: 1.5 / 1; overflow: hidden; text-align: center; margin-bottom: 8px; }
#c2 .system-pic img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; display: block; }
#c3 .system-pic { width: 100%; aspect-ratio: 3 / 2; overflow: hidden; text-align: center; }
#c3 .system-pic img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; display: block; }
@media screen and (min-width: 768px), print {
 .move-btn a:hover { background-color: #FFFF66 !important; text-decoration: none; }
.move-btn a { display: block; width: 340px; height: 70px; background: transparent; border: 1px solid #292929; text-align: center; padding-top: 16px; padding-left: 21px; }
.move-btn .ss { padding: 0 17px; background-image: url(../images/index/btn-deco.svg); background-repeat: no-repeat; font-size: 14px; letter-spacing: 0.1em; text-align: left; }
.mv-rel { 
    max-width: 1580px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        margin-top: 128px;
        margin-bottom: 286px;
}
.mv-flex { display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.mv-box-l { width: 790px; height: 640px; }
.mv-slider { height: 640px; overflow: hidden; }
.mv-slider .slick-slide { height: auto; }
.mv-slider img { display: block; width: 100%; height: auto; }
.mv-box-r { width: 790px; height: 640px; }
.mv-slider2 { height: 640px; overflow: hidden; }
.mv-slider2 .slick-slide { height: auto; }
.mv-slider2 img { display: block; width: 100%; height: auto; }
.mv-slider2 .slick-track { display: -webkit-box !important; display: -ms-flexbox !important; display: flex !important; -webkit-box-orient: vertical !important; -webkit-box-direction: reverse !important; -ms-flex-direction: column-reverse !important; flex-direction: column-reverse !important; }
/* メニューアイテムのホバースタイル */
    .menu-item:hover .drop-menu-list { visibility: visible; /* 下層メニューを表示 */ }
/* ドロップダウンメニュー */
    .drop-menu { position: relative; }
.drop-menu-list { width: 153px; left: 0; position: absolute; top: 100%; visibility: hidden; /* 下層メニューを非表示 */
        width: -webkit-max-content; width: -moz-max-content; width: max-content; z-index: 1; }
.drop-menu-list > li { background-image: url(../images/index/top-navi-icon-02.svg);
     background-repeat: no-repeat;         background-position: 7px 24px; margin-bottom: 1px; background-color: #FFFFFF; /* ドロップダウンメニューの背景色 */ }
.drop-menu-list > li:hover { background-color: #FFFF66; }

.drop-menu-list > li a{
    display: block;
    width: 100%;
    padding: 6.5px 15px 6.5px 21px;
}

.blink-fade-3s { -webkit-animation: blink-fade-3s 1.5s linear infinite; animation: blink-fade-3s 1.5s linear infinite; }
@-webkit-keyframes blink-fade-3s { 0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
 }
@keyframes blink-fade-3s {
 0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
 }
.mv-rel .mv-ttl .ss1 { position: absolute; top: -140px; left: 79px; z-index: 100; }
.mv-rel .mv-ttl .ss2 { position: absolute; bottom: -137px; right: 25px; z-index: 100; }
.mv-rel .pc .mv-en-01 { position: absolute; top: 148px; left: -64px; z-index: 100; }
.mv-rel .pc .mv-en-02 { position: absolute; right: -62px; top: 149px; z-index: 100; }
.mv-rel .mv-u-txt { font-weight: 500; font-size: 18px; letter-spacing: 0.2em; line-height: 37px; color: #292929; background-image: url(../images/index/deco-01.svg); background-repeat: no-repeat; background-position: 0 20px; padding-left: 196px; position: absolute; left: -77px; bottom: -125px; }
.mv-rel .scr-box { width: 34px; margin: 0 auto; text-align: center; margin-top: 5px; position: relative; left: -1px; }
.mv-rel .scr-box .scr-box-en { width: 34px; margin: 0 auto; }
.top-link-icon { width: 920px; margin: 0 auto; margin-bottom: 143px; position: relative; left: 31px; }
.top-link-icon .list { display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.top-link-icon .list > li { width: 76px; position: relative; }
.top-link-icon .list > li .ll-pic { position: relative; margin-bottom: 1px; }
.top-link-icon .list > li .ll-txt { position: relative; font-weight: normal; font-size: 14px; letter-spacing: 0.05em; text-align: center; color: #292929; background-image: url(../images/index/top-navi-icon.svg); background-repeat: no-repeat; background-position: 0 11px; padding-left: 10px; }
.top-link-icon .list > li:nth-child(1) { width: 105px; margin-right: 22px; }
.top-link-icon .list > li:nth-child(1) .ll-pic { position: relative; margin-bottom: 1px; }
.top-link-icon .list > li:nth-child(1) .ll-txt { position: relative; left: -14px; }
.top-link-icon .list > li:nth-child(2) { margin-right: 58px; }
.top-link-icon .list > li:nth-child(2) .ll-pic { position: relative; top: 3px; margin-bottom: 11px; }
.top-link-icon .list > li:nth-child(2) .ll-txt { position: relative; left: 6px; }
.top-link-icon .list > li:nth-child(3) { margin-right: 54px; }
.top-link-icon .list > li:nth-child(3) .ll-pic { position: relative; top: 3px; margin-bottom: 11px; }
.top-link-icon .list > li:nth-child(3) .ll-txt { position: relative; left: 3px; }
.top-link-icon .list > li:nth-child(4) { margin-right: 54px; }
.top-link-icon .list > li:nth-child(4) .ll-pic { position: relative; top: 1px; margin-bottom: 8px; }
.top-link-icon .list > li:nth-child(4) .ll-txt { position: relative; left: 3px; }
.top-link-icon .list > li:nth-child(5) { margin-right: 33px; width: 97px; }
.top-link-icon .list > li:nth-child(5) .ll-pic { position: relative; top: -6px; margin-bottom: 2px; }
.top-link-icon .list > li:nth-child(5) .ll-txt { position: relative; left: -4px; padding-left: 3px; }
.top-link-icon .list > li:nth-child(6) { margin-right: 56px; }
.top-link-icon .list > li:nth-child(6) .ll-pic { position: relative; top: 3px; margin-bottom: 11px; }
.top-link-icon .list > li:nth-child(6) .ll-txt { position: relative; left: 3px; }
.top-link-icon .list > li:nth-child(7) { width: 102px; margin-right: 0; }
.top-link-icon .list > li:nth-child(7) .ll-pic { position: relative; top: 3px; margin-bottom: 11px; }
.top-link-icon .list > li:nth-child(7) .ll-txt { position: relative; left: -6px; padding-left: 13px; }
/*============================
#c1
============================*/
    #c1 .inner { width: 1280px; margin: 0 auto; }
#c1 .inner .rel-box { margin-bottom: 156px; position: relative; padding-top: 70px; 

}
#c1 .inner .rel-box .ttl { position: relative; z-index: 100; left: -46px; }
#c1 .inner .rel-box .nagare1 { position: absolute; top: 0; right: -717px; width: 1528px; height: 480px; will-change: transform; }
#c1 .inner .rel-box .nagare1 .nagare-item { width: auto; /* 画像の自然幅に合わせる */
        margin-right: 0px; /* スライド間の余白（お好みで） */ }
#c1 .inner .rel-box .nagare1 picture, #c1 .inner .rel-box .nagare1 img { display: block; height: auto; /* 画像を一定高さに揃えたい時 height: 120px; width: auto; object-fit: contain; */ }
#c1 .inner .rel-box .sp-only-txt-01 { position: relative; }
#c1 .inner .flex { width: 1200px; margin: 0 auto; padding-bottom: 150px; border-bottom: 1px solid #292929; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c1 .inner .flex .box-l { width: 550px; margin-right: 126px; margin-top: 20px; margin-left: 3px; }
#c1 .inner .flex .box-r { width: 521px; }
#c1 .inner .flex .box-r .s-ttl { font-weight: bold; font-size: 18px; letter-spacing: 0.1em; line-height: 33px; text-align: left; color: #292929; margin-bottom: 22px; }
#c1 .inner .flex .box-r .txt-box { font-weight: normal; font-size: 16px; letter-spacing: 0.05em; line-height: 33px; text-align: left; color: #292929; margin-bottom: 85px; }
#c1 .inner .flex .box-r .txt-box .p-mb { margin-bottom: 21px; }
#c1 .inner .flex .box-r .move-btn a { width: 340px; height: 70px; }
#c1 .inner .flex .box-r .move-btn .ss { background-position: 0px 6px; }
.sy-info { max-width: 1580px; width: 100%; margin: 0px auto; position: relative; margin-top: 117px; margin-bottom: 220px; }
.sy-info .flex { display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.sy-info .flex .ttl { width: 140px; margin: 0 auto; margin-bottom: 16px; }
.sy-info .flex .txt-01 { font-weight: normal; font-size: 16px; letter-spacing: 0.05em; line-height: 26px; text-align: center; color: #292929; margin-bottom: 40px; }
.sy-info .flex .system-default-item { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; /* カード内での横伸び防止 */ }
.sy-info .flex .scr-box { height: 830px; overflow-y: scroll; margin-bottom: 34px; }
.sy-info .flex .box-l { width: 677px; }
.sy-info .flex .box-l #c2 .inner .scr-box .in .system-default-list.card-3 .system-default-item { width: 632px; margin-bottom: 99px; }
.sy-info .flex .box-l #c2 .inner .scr-box .in .system-default-list.card-3 .system-default-item .sy-wap { padding: 14px 20px 0; }
.sy-info .flex .box-l #c2 .inner .system-default-list .system-tx { font-size: 14px; letter-spacing: 0.05em; line-height: 28px; text-align: left; color: #292929; margin-bottom: 3px; }
.sy-info .flex .box-l #c2 .inner .system-default-list .system-ttl { font-weight: 500; font-size: 16px; letter-spacing: 0.1em; line-height: 26px; text-align: left; color: #292929; }
.sy-info .flex .box-l #c2 .inner .move-btn a { width: 677px; height: 50px; background: transparent; padding-top: 6px; padding-left: 17px; }
.sy-info .flex .box-l #c2 .inner .move-btn .ss { background-position: 2px 6px; }
.sy-info .flex .box-r { width: 677px; /*============================
#c3
============================*/ }
.sy-info .flex .box-r #c3 .ttl { position: relative; top: -7px; margin-bottom: 22px; }
.sy-info .flex .box-r #c3 .txt-01 { margin-bottom: 51px; }
.sy-info .flex .box-r #c3 .inner .scr-box .in .system-default-list.card-3 .system-default-item { width: 632px; margin-bottom: 100px; }
.sy-info .flex .box-r #c3 .inner .system-default-list .system-ttl { font-weight: 500; font-size: 16px; letter-spacing: 0.1em; line-height: 26px; text-align: left; color: #292929; margin-bottom: 12px; padding-right: 90px; /* margin-top: 12px; */ }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-list li { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 15px; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-list li .sy-li-ttl { width: 75px; height: 35px; border-radius: 17.5px; background: transparent; border: 1px solid #292929; text-align: center; font-weight: normal; font-size: 14px; letter-spacing: 0.05em; line-height: 24px; text-align: center; color: #292929; margin-right: 20px; padding-top: 4px; }
.sy-info .flex .box-r #c3 .inner .system-default-list li .sy-li-txt { width: calc(100% - 95px); position: relative; top: 0px; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-wap { position: relative; padding: 28px 20px 10px 20px; }
.sy-info .flex .box-r #c3 .inner .system-default-list a .sys-icon img:hover { opacity: 1.0; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-wap .sys-icon { width: 56px; top: -9px; right: 30px; position: absolute; }
.sy-info .flex .box-r #c3 .inner .move-btn a { width: 677px; height: 50px; background: transparent; padding-top: 8px; padding-left: 16px; }
.sy-info .flex .box-r #c3 .inner .move-btn .ss { background-position: 2px 6px; }
/* .kiritori-box { width: 1280px; margin: 0 auto; }
.kiritori-box .in { margin-left: -320px; margin-right: -320px; } */
/*============================
#c4
============================*/
    #c4 { margin-bottom: 185px; }
#c4 .inner .flex { max-width: 1920px;
    width: 100%;
    margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; }
#c4 .inner .flex .box-l { width: 50%; }
#c4 .inner .flex .box-r { width: 50%; 
    background-image: url(../images/index/c4-bg.png);
    background-repeat: repeat;
    background-position: center 0;
    padding-top: 154px; padding-bottom: 20px; }
#c4 .inner .flex .box-r .en { width: 347px; margin: 0 auto; margin-bottom: 6px; position: relative; left: 22px; }
#c4 .inner .flex .box-r .ttl { font-weight: bold; font-size: 22px; letter-spacing: 0.1em; text-align: center; color: #292929; margin-bottom: 24px; }
#c4 .inner .flex .box-r .txt { font-weight: normal; font-size: 16px; letter-spacing: 0.05em; line-height: 33px; text-align: center; color: #292929; margin-bottom: 51px; }
#c4 .inner .flex .box-r .move-btn a { width: 340px; margin: 0 auto; padding-top: 14px; padding-left: 22px; }
#c4 .inner .flex .box-r .move-btn .ss { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; background-position: 0 1px; padding-left: 15px; }
/*============================
#c5
============================*/
    #c5 { margin-bottom: 248px; }
#c5 .inner .ttl { font-weight: bold; font-size: 18px; letter-spacing: 0.2em; line-height: 37px; text-align: center; color: #292929; margin-bottom: 20px; }
#c5 .inner .en { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: bold; font-size: 48px; letter-spacing: 0.05em; text-align: center; color: #292929; margin-bottom: 32px; }
#c5 .inner .txt-01 { font-weight: bold; font-size: 16px; letter-spacing: 0.15em; line-height: 29px; text-align: center; color: #292929; margin-bottom: 63px; }
#c5 .inner .list { max-width: 1920px; margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; }
#c5 .inner .list > li { background-repeat: no-repeat; background-position: center 0; background-size: 100%; }
#c5 .inner .list > li a:hover img { opacity: 0; }
#c5 .inner .list > li:nth-child(1) { background-image: url(../images/index/c5-bnr-01-on.png); }
#c5 .inner .list > li:nth-child(2) { background-image: url(../images/index/c5-bnr-02-on.png); }
#c5 .inner .list > li:nth-child(3) { background-image: url(../images/index/c5-bnr-03-on.png); }
#c5 .inner .list > li img { width: 100%; }
#c5 .inner .list .li-ttl { margin-bottom: 20px; }
#c5 .inner .list .li-txt { font-weight: 500; font-size: 16px; letter-spacing: 0.1em; line-height: 28px; text-align: center; color: #292929; }
/*============================
#c6
============================*/
    #c6 .inner { background-image: url(../images/index/c6-bg.png); background-repeat: no-repeat; background-position: center 0; background-size: 100%; width: 1700px; height: 878px; margin: 0 auto; position: relative; padding: 84px 5px 5px; margin-bottom: 206px; }
#c6 .inner .en { width: 228px; margin: 0 auto; position: absolute; left: 0; right: 0; top: -100px; }
#c6 .inner .ttl { font-weight: 500; font-size: 26px; letter-spacing: 0.2em; text-align: center; color: #292929; background-image: url(../images/index/c6-line.svg); background-repeat: no-repeat; background-position: center bottom; margin-bottom: 69px; padding-bottom: 40px; font-feature-settings: "palt"; }
#c6 .inner .ttl .ss1 { font-size: 22px; letter-spacing: 0.2em; text-align: left; color: #292929; position: relative; margin-right: 3px; }
#c6 .inner .ttl .ss2 { font-size: 22px; letter-spacing: 0.2em; text-align: left; color: #292929; position: relative; }
#c6 .inner .flex { width: 1200px; margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c6 .inner .flex .box-l { width: 463px; margin-right: 137px; }
#c6 .inner .flex .box-r { width: 597px; margin-top: -4px; }
#c6 .inner .flex .box-r .txt-box { font-weight: 500; font-size: 16px; letter-spacing: 0.05em; line-height: 33px; text-align: left; color: #292929; }
#c6 .inner .flex .box-r .txt-box .p-mb { margin-bottom: 21px; }
#c6 .inner .move-btn a { -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); background-color: #fff; margin: 0 auto; margin-top: 64px; padding-left: 20px; }
#c6 .inner .move-btn .ss { background-position: 0 6px; }
/*============================
#c7
============================*/
    #c7 { margin-top: 140px; margin-bottom: 90px; }
#c7 .inner .flex { width: 1100px; margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c7 .inner .flex .box-l { width: 390px; border-right: 1px solid #292929; }
#c7 .inner .flex .box-l .ttl { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 600; font-size: 37px; letter-spacing: 0.05em; color: #292929; padding-top: 289px; padding-left: 61px; }
#c7 .inner .flex .box-r { width: calc(100% - 390px); padding-left: 147px; }
#c7 .inner .flex .box-r .list li { margin-bottom: 70px; }
#c7 .inner .flex .box-r .list li:last-child { margin-bottom: 0; }
#c7 .inner .flex .box-r .list .li-bnr { margin-bottom: 15px; }
#c7 .inner .flex .box-r .list .li-txt { width: 230px; margin: 0 auto; border-bottom: 1px solid #292929; font-weight: 500; font-size: 16px; letter-spacing: 0.3em; line-height: 28px; text-align: left; color: #292929; background-image: url(../images/index/btn-deco.svg); background-repeat: no-repeat; background-position: 15px 11px; padding-bottom: 8px; padding-left: 33px; position: relative; left: 7px; }
#c7 .inner .flex .box-r .list .li-txt.ano { width: 194px; left: 7px; margin-top: 2px; background-position: 18px 12px; padding-left: 36px; }
/*============================
#c8
============================*/
    #c8 { margin-bottom: 117px; }
#c8 .inner { width: 1000px; margin: 0 auto; border-top: 1px solid #292929; padding-top: 73px; }
#c8 .inner .ttl { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 600; font-size: 20px; letter-spacing: 0.05em; text-align: center; color: #292929; padding-bottom: 4px; margin-bottom: 21px; background-image: url(../images/index/c8-deco.svg); background-repeat: no-repeat; background-position: center bottom; }
#c8 .inner .txt-01 { font-weight: 500; font-size: 14px; letter-spacing: 0.05em; line-height: 26px; text-align: center; color: #292929; margin-bottom: 11px; }
#c8 .inner .txt-02 { font-weight: normal; font-size: 14px; letter-spacing: 0.05em; line-height: 26px; text-align: left; color: #292929; }
 }
/*# sourceMappingURL=page-top.css.map */

@media screen and (min-width: 766px) and (max-width: 1900px) {
    .mv-rel {
        max-width: 82.335vw;
        width: 100%;
        margin: 0 8.546vw;
        position: relative;
        margin-top: 6.67vw;
        margin-bottom: 14.904vw;
    }
        .mv-box-l {
        width: 41.167vw;
        height: 33.351vw;
    }
        .mv-box-r {
        width: 41.167vw;
        height: 33.351vw;
    }
        .mv-rel .mv-ttl .ss1 {
        position: absolute;
        top: -7.295vw;
        left: 4.117vw;
        z-index: 100;
        display: block;
        width: 34.445vw;
    }
       .mv-rel .mv-ttl .ss1 img{
        width: 100%;
       }
    .mv-rel .mv-ttl .ss2 {
        position: absolute;
        bottom: -7.139vw;
        right: 1.303vw;
        z-index: 100;
        display: block;
        width: 30.589vw;
    }
       .mv-rel .mv-ttl .ss2 img{
        width: 100%;
       }

.mv-rel .pc .mv-en-01 {
        position: absolute;
        top: 7.712vw;
        left: -3.335vw;
        z-index: 100;
        width: 0.521vw;
    }
    .mv-rel .pc .mv-en-01 img{
                width: 100%;
    }

    .mv-rel .pc .mv-en-02 {
        position: absolute;
        right: -62px;
        top: 149px;
        z-index: 100;
                width: 0.521vw;
    }
    .mv-rel .pc .mv-en-02 img{
                width: 100%;
    }

#c1 .inner .rel-box .ttl{
    left: 90px;
}


    .sy-info {
        max-width: 1100px;
        width: 100%;
        margin: 0px auto;
        position: relative;
        margin-top: 117px;
        margin-bottom: 220px;
    }

        .sy-info .flex .box-l {
        width: 490px;
    }

.sy-info .flex .box-l #c2 .inner .scr-box .in .system-default-list.card-3 .system-default-item{
    width: 445px;
}
    .sy-info .flex .box-r #c3 .inner .scr-box .in .system-default-list.card-3 .system-default-item {
    width: 445px;
    }

    .sy-info .flex .box-r {
        width: 490px;
    }
    .sy-info .flex .box-l #c2 .inner .move-btn a{
        width: 490px;
    }
    .sy-info .flex .box-r #c3 .inner .move-btn a {
        width: 490px;
    }

#c6 .inner{
    width: 1200px;
    background-size: cover;
}
#c6 .inner .flex{
    width: 1100px;
    margin: 0 auto;
}
    #c6 .inner .flex .box-l {
        width: 463px;
        margin-right: 40px;
    }

    }

@media screen and (min-width: 766px) and (max-width: 1300px) {
    #c1{
overflow-x: hidden;
    }
}

@media screen and (max-width: 767px) {
 .oda1 { width: 100%; -webkit-box-ordinal-group: -5; -webkit-flex-order: -5; -moz-flex-order: -5; -moz-order: -5; -ms-flex-order: -5; order: -5; }
.oda2 { width: 100%; -webkit-box-ordinal-group: -4; -webkit-flex-order: -4; -moz-flex-order: -4; -moz-order: -4; -ms-flex-order: -4; order: -4; }
.oda3 { width: 100%; -webkit-box-ordinal-group: -3; -webkit-flex-order: -3; -moz-flex-order: -3; -moz-order: -3; -ms-flex-order: -3; order: -3; }
.oda4 { width: 100%; -webkit-box-ordinal-group: -2; -webkit-flex-order: -2; -moz-flex-order: -2; -moz-order: -2; -ms-flex-order: -2; order: -2; }
.oda5 { width: 100%; -webkit-box-ordinal-group: -1; -webkit-flex-order: -1; -moz-flex-order: -1; -moz-order: -1; -ms-flex-order: -1; order: -1; }
.dc { display: contents; }
.move-btn { border: 1px solid #292929; }
.move-bd-wap { border: 3px solid transparent; display: block; }
.move-btn a { display: block; width: 100%; background: transparent; border: 3px solid transparent; background-color: #FFFF66 !important; text-align: center; padding-top: 3.865vw; padding-left: 5.072vw; padding-bottom: 3.865vw; }
.move-btn .ss { padding: 0 4.106vw; background-image: url(../images/index/btn-deco.svg); background-repeat: no-repeat; font-size: 3.382vw; letter-spacing: 0.1em; text-align: left; }
.mv-rel { max-width: 100%; width: 100%; margin: 0 0; position: relative; margin-top: 17.633vw; margin-bottom: 69.082vw; }
.mv-flex { width: 91.787vw; margin: 0 auto; }
.mv-box-l { width: 100%; height: 55.556vw; }
.mv-slider { overflow: hidden; }
.mv-slider .slick-slide { height: auto; }
.mv-slider img { display: block; width: 100%; height: auto; }
.mv-box-r { width: 100%; height: 55.556vw; }
.mv-slider2 { overflow: hidden; }
.mv-slider2 .slick-slide { height: auto; }
.mv-slider2 img { display: block; width: 100%; height: auto; }
/* メニューアイテムのホバースタイル */
    .menu-item:hover .drop-menu-list { visibility: visible; /* 下層メニューを表示 */ }
/* ドロップダウンメニュー */
    .drop-menu { position: relative; }
.drop-menu-list { width: 100%; left: 0; position: absolute; top: 100%; visibility: hidden; /* 下層メニューを非表示 */
        width: -webkit-max-content; width: -moz-max-content; width: max-content; z-index: 1; }
.drop-menu-list > li { background-image: url(../images/index/top-navi-icon-02.svg); background-repeat: no-repeat; background-position: 0 0; margin-bottom: 0.242vw; padding: 1.57vw 3.623vw 1.57vw 5.072vw; background-color: #FFFFFF; /* ドロップダウンメニューの背景色 */ }
.drop-menu-list > li:hover { background-color: #FFFF66; }
.blink-fade-3s { -webkit-animation: blink-fade-3s 1.5s linear infinite; animation: blink-fade-3s 1.5s linear infinite; }
@-webkit-keyframes blink-fade-3s { 0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
 }
@keyframes blink-fade-3s {
 0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
 }
.mv-rel .mv-ttl .ss1 { position: absolute; top: -18.599vw; left: 8.213vw; z-index: 100; width: 74.638vw; }
.mv-rel .mv-ttl .ss2 { position: absolute; bottom: -23.913vw; right: 6.522vw; z-index: 100; width: 66.184vw; }
.mv-rel .pc .mv-en-01 { position: absolute; top: 35.749vw; left: -15.459vw; z-index: 100; }
.mv-rel .pc .mv-en-02 { position: absolute; right: -14.976vw; top: 35.99vw; z-index: 100; }
.mv-rel .mv-u-txt { font-weight: 500; font-size: 4.348vw; letter-spacing: 0.2em; line-height: 8.937vw; color: #292929; background-image: url(../images/index/sp-deco-01.svg); background-repeat: no-repeat; background-position: 4.106vw 3.623vw; padding-left: 14.734vw; position: absolute; left: 0; bottom: -37.44vw; font-size: 3.865vw; letter-spacing: 0.2em; line-height: 6.763vw; }
.mv-rel .scr-box { width: 100%; margin: 0 auto; text-align: center; margin-top: 1.208vw; position: absolute; /* left: -0.242vw; */
        bottom: -63.285vw; }
.mv-rel .scr-box .scr-box-en { width: 100%; margin: 0 auto; }
.top-link-icon { display: none; }
/*============================
#c1
============================*/
#c1 .inner { width: 100%; margin: 0 auto; }
#c1 .inner .rel-box { position: relative; padding-top: 14.734vw; min-height: 153.382vw; margin-bottom: 14.493vw; }
#c1 .inner .rel-box .ttl { position: relative; z-index: 100; left: 7.246vw; width: 85.507vw; }
#c1 .inner .rel-box .nagare1 { position: absolute; top: 48.068vw; /* right: -173.188vw; */width: 367.15vw; height: 96.618vw; will-change: transform; }
#c1 .inner .rel-box .nagare1 .nagare-item { width: auto; /* 画像の自然幅に合わせる */margin-right: 0; /* スライド間の余白（お好みで） */ }
#c1 .inner .rel-box .nagare1 picture, #c1 .inner .rel-box .nagare1 img { display: block; height: 96.618vw; /* 画像を一定高さに揃えたい時 height: 28.986vw; width: auto; object-fit: contain; */ }
#c1 .inner .rel-box .sp-only-txt-01 { position: absolute; width: 47.464vw; right: 3.382vw; bottom: 0; }

/* 見せ窓 */
.marquee {
  width: 100vw;
  height: 82vw;             /* 任意。スマホなら clamp などで可変にしてもOK */
  overflow: hidden;
}

/* 横並びにしたコンテンツ列（＝トラック） */
.marquee__track {
  display: inline-flex;       /* 子を横並び */
  width: max-content;         /* コンテンツ幅ぶんだけ広がる */
  will-change: transform;
  animation: marquee-scroll var(--dur, 40s) linear infinite;
}

/* 中の画像は高さ基準で伸縮。幅は自動で比率維持 */
.marquee__track > img {
  height: 82vw;
  width: auto;
  margin-right: 2vw;
  flex: 0 0 auto;             /* 伸縮させない（サブピクセルずれ対策） */
  display: block;
}

/* 2周分を用意しているので、半分(-50%)だけ動かせば継ぎ目無しでループ */
@keyframes marquee-scroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* お好み（モーション軽減環境では停止） */
@media (prefers-reduced-motion: reduce) {
  .marquee__track { animation: none; }
}


#c1 .inner .flex { width: 83.575vw; margin: 0 auto; padding-bottom: 12.077vw; border-bottom: 1px solid #292929; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c1 .inner .flex .box-l { width: 74.396vw; margin-top: 18.599vw; margin-left: 3.382vw; }
#c1 .inner .flex .box-r { width: 100%; }
#c1 .inner .flex .box-r .s-ttl { font-weight: bold; font-size: 4.348vw; letter-spacing: 0.1em; line-height: 7.971vw; text-align: left; color: #292929; margin-bottom: 5.314vw; }
#c1 .inner .flex .box-r .txt-box { font-weight: normal; font-size: 3.865vw; letter-spacing: 0.05em; line-height: 7.971vw; text-align: left; color: #292929; margin-bottom: 13.043vw; }
#c1 .inner .flex .box-r .txt-box .p-mb { margin-bottom: 5.072vw; }
#c1 .inner .flex .box-r .move-btn a { width: 100%; }
#c1 .inner .flex .box-r .move-btn .ss { background-position: 0 1.449vw; }
.sy-info { max-width: 100%; width: 100%; margin: 0 auto; position: relative; margin-top: 14.493vw; margin-bottom: 33.816vw; }
.sy-info .flex { display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.sy-info .flex .ttl { width: 27.053vw; margin: 0 auto; margin-bottom: 3.14vw; }
.sy-info .flex .txt-01 { font-weight: normal; text-align: center; color: #292929; margin-bottom: 9.42vw; font-size: 3.865vw; letter-spacing: 0.05em; line-height: 6.28vw; }
.sy-info .flex .system-default-item { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; /* カード内での横伸び防止 */ }
.sy-info .flex .scr-box { width: 91.787vw; margin: 0 auto; }
.sy-info .flex .box-l { width: 100%; margin-bottom: 21.014vw; }
.sy-info .flex .box-l #c2 .inner .scr-box .in .system-default-list.card-3 .system-default-item { width: 100%; margin-bottom: 9.179vw; }
.sy-info .flex .box-l #c2 .inner .scr-box .in .system-default-list.card-3 .system-default-item .sy-wap { padding: 2.899vw 4.106vw 0; }
.sy-info .flex .box-l #c2 .inner .system-default-list .system-tx { font-size: 3.382vw; letter-spacing: 0.05em; line-height: 6.763vw; text-align: left; color: #292929; margin-bottom: 0.725vw; }
.sy-info .flex .box-l #c2 .inner .system-default-list .system-ttl { font-weight: 500; font-size: 3.865vw; letter-spacing: 0.1em; line-height: 6.28vw; text-align: left; color: #292929; }
.sy-info .flex .box-l #c2 .inner .move-btn a { width: 100%; background: transparent; padding-top: 3.865vw; padding-left: 4.106vw; padding-bottom: 3.865vw; }
.sy-info .flex .box-l #c2 .inner .move-btn .ss { background-position: 0.483vw 1.449vw; }
.sy-info .flex .box-l #c2 .slick-next { background-image: url(../images/index/sp-sy-r.svg); background-repeat: no-repeat; background-position: center 0; background-size: contain; width: 8.213vw; height: 21.739vw; top: 30.676vw; right: -4.106vw; z-index: 100; }
.sy-info .flex .box-l #c2 .slick-prev { background-image: url(../images/index/sp-sy-l.svg); background-repeat: no-repeat; background-position: center 0; background-size: contain; width: 8.213vw; height: 21.739vw; top: 30.676vw; left: -4.106vw; z-index: 100; }
.sy-info .flex .box-l #c2 .move-btn { width: 83.575vw; margin: 0 auto; }
.slick-next:before, [dir=rtl] .slick-prev:before { content: ''; }
.slick-prev:before { content: ''; }
.sy-info .flex .box-r { width: 100%; /*============================
#c3
============================*/ }
.sy-info .flex .box-r #c3 .ttl { position: relative; top: -1.691vw; margin-bottom: 1.449vw; }
.sy-info .flex .box-r #c3 .txt-01 { margin-bottom: 9.42vw; }
.sy-info .flex .box-r #c3 .inner .scr-box .in .system-default-list.card-3 .system-default-item { width: 100%; margin-bottom: 3.623vw; position: relative; }
.sy-info .flex .box-r #c3 .inner .system-default-list .system-ttl { font-weight: 500; font-size: 3.865vw; letter-spacing: 0.1em; line-height: 6.28vw; text-align: left; color: #292929; margin-bottom: 2.899vw; padding-right: 21.739vw; /* margin-top: 2.899vw; */ }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-list li { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 3.623vw; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-list li .sy-li-ttl { width: 18.599vw; height: 8.454vw; border-radius: 4.227vw; background: transparent; border: 1px solid #292929; text-align: center; font-weight: normal; font-size: 3.382vw; letter-spacing: 0.05em; line-height: 5.797vw; text-align: center; color: #292929; margin-right: 4.831vw; padding-top: 0.966vw; }
.sy-info .flex .box-r #c3 .inner .system-default-list li .sy-li-txt { width: calc(100% - 23.43vw); position: relative; top: 0.242vw; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-wap { /* position: relative; */
        padding: 9.662vw 3.865vw 2.415vw 3.865vw; }
.sy-info .flex .box-r #c3 .inner .system-default-list a .sys-icon img:hover { opacity: 1.0; }
.sy-info .flex .box-r #c3 .inner .system-default-list .sy-wap .sys-icon { width: 13.285vw; top: 0; right: 2.415vw; position: absolute; }
.sy-info .flex .box-r #c3 .inner .move-btn a { width: 100%; /* height: 12.077vw; */
        background: transparent; padding-top: 3.865vw; padding-bottom: 3.865vw; padding-left: 3.865vw; }
.sy-info .flex .box-r #c3 .inner .move-btn .ss { background-position: 0.483vw 1.449vw; }
.sy-info .flex .box-r #c3 .slick-next { background-image: url(../images/index/sp-sy-r.svg); background-repeat: no-repeat; background-position: center 0; background-size: contain; width: 8.213vw; height: 21.739vw; top: 30.676vw; right: -4.106vw; z-index: 100; }
.sy-info .flex .box-r #c3 .slick-prev { background-image: url(../images/index/sp-sy-l.svg); background-repeat: no-repeat; background-position: center 0; background-size: contain; width: 8.213vw; height: 21.739vw; top: 30.676vw; left: -4.106vw; z-index: 100; }
.sy-info .flex .box-r #c3 .move-btn { width: 83.575vw; margin: 0 auto; }
.kiritori-box { width: 100%; margin: 0 auto; }
.kiritori-box .in { /* margin-left: -77.295vw; */
        /* margin-right: -77.295vw; */ }
/*============================
#c4
============================*/
    #c4 { margin-bottom: 17.874vw; }
#c4 .inner .flex { max-width: 100%; margin: 0 auto; }
#c4 .inner .flex .box-l { width: 100%; }
#c4 .inner .flex .box-r { width: 100%; 
        background-image: url(../images/index/c4-bg.png);
    background-repeat: repeat;
    background-position: center 0;
    background-size: 19.324vw;
    
    padding-top: 19.565vw; padding-bottom: 26.57vw; }
#c4 .inner .flex .box-r .en { width: 76.932vw; margin: 0 auto; margin-bottom: 5.314vw; position: relative; left: 4.589vw; }
#c4 .inner .flex .box-r .ttl { font-weight: bold; font-size: 5.314vw; letter-spacing: 0.1em; text-align: center; color: #292929; margin-bottom: 5.797vw; }
#c4 .inner .flex .box-r .txt { font-weight: normal; font-size: 3.865vw; letter-spacing: 0.05em; line-height: 7.971vw; text-align: center; color: #292929; margin-bottom: 10.87vw; }
#c4 .inner .flex .box-r .move-btn a { width: 100%; margin: 0 auto; padding-top: 3.382vw; padding-left: 5.314vw; }
#c4 .inner .flex .box-r .move-btn .ss { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; background-position: 0 0.242vw; padding-left: 3.623vw; }
#c4 .move-btn { width: 83.575vw; margin: 0 auto; }
/*============================
#c5
============================*/
    #c5 { margin-bottom: 27.295vw; }
#c5 .inner .ttl { font-weight: bold; text-align: center; color: #292929; margin-bottom: 2.174vw; font-size: 3.865vw; letter-spacing: 0.2em; line-height: 8.454vw; }
#c5 .inner .en { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: bold; color: #292929; margin-bottom: 2.174vw; font-size: 10.87vw; letter-spacing: 0.05em; text-align: center; line-height: 13.043vw; }
#c5 .inner .txt-01 { font-weight: bold; font-size: 3.865vw; letter-spacing: 0.15em; line-height: 7.005vw; text-align: center; color: #292929; margin-bottom: 9.42vw; position: relative; left: 1.932vw; }
#c5 .inner .list { max-width: 91.787vw; margin: 0 auto; }
#c5 .inner .list > li { background-repeat: no-repeat; background-position: center 0; background-size: 100%; margin-bottom: 11.836vw; }
#c5 .inner .list > li:nth-child(2) { margin-bottom: 9.662vw; }
#c5 .inner .list > li a:hover img { opacity: 0; }
/* #c5 .inner .list > li:nth-child(1) { background-image: url(../images/index/c5-bnr-01-on.png); }
#c5 .inner .list > li:nth-child(2) { background-image: url(../images/index/c5-bnr-02-on.png); }
#c5 .inner .list > li:nth-child(3) { background-image: url(../images/index/c5-bnr-03-on.png); }
*/
    #c5 .inner .list > li img { width: 100%; }
#c5 .inner .list .li-ttl { margin-bottom: 3.382vw; }
#c5 .inner .list .li-txt { font-weight: 500; font-size: 3.865vw; letter-spacing: 0.1em; line-height: 6.763vw; text-align: center; color: #292929; }
/*============================
#c6
============================*/
    #c6 .inner { background-image: url(../images/index/sp-c6-bg.png); background-repeat: no-repeat; background-position: center 0; background-size: 100%; width: 95.894vw; height: 281.643vw; margin: 0 auto; position: relative; padding: 19.082vw 1.208vw 1.208vw; margin-bottom: 27.295vw; }
#c6 .inner .en { width: 43.116vw; margin: 0 auto; position: absolute; left: 0; right: 0; top: -13.285vw; }
#c6 .inner .ttl { font-weight: 500; text-align: center; color: #292929; background-image: url(../images/index/sp-c6-line.svg); background-repeat: no-repeat; background-position: center bottom; margin-bottom: 12.56vw; padding-bottom: 5.072vw; font-feature-settings: "palt"; font-size: 4.106vw; letter-spacing: 0.2em; line-height: 6.522vw; position: relative; left: 0.725vw; }
#c6 .inner .ttl .ss1 { text-align: left; color: #292929; position: relative; margin-right: 0.725vw; font-size: 3.382vw; letter-spacing: 0.2em; }
#c6 .inner .ttl .ss2 { text-align: left; color: #292929; position: relative; font-size: 3.382vw; letter-spacing: 0.2em; }
#c6 .inner .flex { width: 100%; margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c6 .inner .flex .box-l { width: 70.652vw; margin: 0 auto; position: relative; left: 0.725vw; margin-bottom: 14.734vw; }
#c6 .inner .flex .box-r { width: 77.295vw; margin: 0 auto; margin-top: -0.966vw; }
#c6 .inner .flex .box-r .txt-box { font-weight: 500; font-size: 3.865vw; letter-spacing: 0.05em; line-height: 7.971vw; text-align: left; color: #292929; }
#c6 .inner .flex .box-r .txt-box .p-mb { margin-bottom: 5.072vw; }
#c6 .inner .move-btn a { -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); background-color: #fff; margin: 0 auto; margin-top: 0; padding-left: 4.831vw; }
#c6 .inner .move-btn .ss { background-position: 0 1.449vw; }
#c6 .move-btn { width: 83.575vw; margin: 0 auto; margin-top: 10.386vw; }
/*============================
#c7
============================*/
    #c7 { margin-top: 13.768vw; margin-bottom: 17.874vw; }
#c7 .inner .flex { width: 100%; margin: 0 auto; display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#c7 .inner .flex .box-l { width: 100%; border-right: 1px solid #292929; }
#c7 .inner .flex .box-l .ttl { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 600; color: #292929; background-image: url(../images/index/sp-c7-line.svg); background-repeat: no-repeat; background-position: center bottom; font-size: 6.28vw; letter-spacing: 0.05em; text-align: center; padding-bottom: 2.415vw; margin-bottom: 9.662vw; }
#c7 .inner .flex .box-r { width: 82.126vw; margin: 0 auto; }
#c7 .inner .flex .box-r .list li { margin-bottom: 14.493vw; }
#c7 .inner .flex .box-r .list li:last-child { margin-bottom: 0; }
#c7 .inner .flex .box-r .list .li-bnr { margin-bottom: 4.348vw; }
#c7 .inner .flex .box-r .list .li-txt { width: 55.556vw; margin: 0 auto; border-bottom: 1px solid #292929; font-weight: 500; font-size: 3.865vw; letter-spacing: 0.3em; line-height: 6.763vw; text-align: left; color: #292929; background-image: url(../images/index/btn-deco.svg); background-repeat: no-repeat; background-position: 3.623vw 2.657vw; padding-bottom: 1.932vw; padding-left: 7.971vw; position: relative; /* left: 1.691vw; */ }
#c7 .inner .flex .box-r .list .li-txt.ano { /* width: 100%; */
        /* left: 1.691vw; */
        margin-top: 0.483vw; background-position: 8.696vw 2.657vw; padding-left: 13.043vw; }
/*============================
#c8
============================*/
    #c8 { width: 83.575vw; margin: 0 auto; margin-bottom: 28.261vw; }
#c8 .inner { width: 100%; margin: 0 auto; /* border-top: 1px solid #292929; */
        /* padding-top: 17.633vw; */ }
#c8 .inner .ttl { font-family: "Josefin Sans", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 600; font-size: 4.831vw; letter-spacing: 0.05em; text-align: left; color: #292929; padding-bottom: 0.966vw; margin-bottom: 5.072vw; background-image: url(../images/index/c8-deco.svg); background-repeat: no-repeat; background-position: 0 bottom; }
#c8 .inner .txt-01 { font-weight: 500; font-size: 3.382vw; letter-spacing: 0.05em; line-height: 6.28vw; /* text-align: center; */
        color: #292929; margin-bottom: 2.657vw; }
#c8 .inner .txt-02 { font-weight: normal; font-size: 3.382vw; letter-spacing: 0.05em; line-height: 6.28vw; text-align: left; color: #292929; }
 }
