@charset "utf-8";
:root {
	--color--black: #000000;
    --color--white: #fff;
    --color--text--bk: #1F252B;
    --color--blue: #205091;
    --color--gray: #F1EFED;
    --color-ygray: #D8D3CE;
    --color-dark-gray: #9B9B9B;
}
.pc{
    display: block;
}
.sp{
    display: none;
}
.hidden {
    display: none;
}
.scroll-stop{
    overflow: hidden;
}
.global_nav{
    display: none;
}
.scrolled{
    transform: translateY(-100%);
}
img,video{
    display: block;
    vertical-align: bottom;
}
body {
	min-height: 100vh;
	margin: 0px;
	padding: 0px;
	background-color: #ffffff;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
	line-height: 1.5;
	letter-spacing: 0.04em;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-style: normal;
    color: var(--color--text--bk);
}
/*	font-feature-settings: "palt";*/
}
body.scroll-stop {
	overflow: hidden;
}
.satoshi{
    font-family: 'Satoshi', sans-serif;
    font-weight: 700;
    color: var(--color--text--bk);
}
.zenkaku{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-style: normal;
    color: var(--color--text--bk);
}
a{
    color: var(--color--text--bk);
}

/* 正方形のCSS */
.video_cover {
    width: 70%;
    height: auto;
    overflow: hidden;
    position: relative;
    background-color: #57C3F1;
}
    .video_cover::after {
        content: '';
        display: block;
        width: 100%;
        height: 0;
        padding-top: 100%;
    }

    .video_cover iframe {
        width: auto;
        height: 100%;
        aspect-ratio: 16 / 9;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%,0); */
	}

    header{
        width: 100%;
        height: auto;
        padding: 28px 0 0 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 200;
        transition: 0.3s;
    }
        .header__inner{
            width: 94%;
            height: auto;
            margin: 0 auto;
        }
            .header__contents{
                width: 100%;
                border-radius: 9999px;
                padding: 26px 26px 22.7px 40px;
                box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px;
                display: flex;
                justify-content: space-between;
                align-items: center;
                background-color: var(--color--white);
            }
                .header__logo{
                    width: 171px;
                    height: auto;
                }
                    .header__logo img{
                        width: 100%;
                        height: auto;
                    }
            .header__menu__list{
                display: flex;
                justify-content: flex-end;
                align-items: center;
                column-gap: 2.3vw;
            }
                .header__menu__item a{
                    font-size: 16px;
                    transition: 0.3s;
                }
                .header__menu__item a:hover{
                    opacity: 0.7;
                }
                .header__menu__item a:hover .header__menu__item__inner{
                    opacity: 0.7;
                }
                .header__menu__item__inner{
                    padding: 11px 30px;
                    background-color: var(--color--blue);
                    border-radius: 9999px;
                    transition: 0.3s;
                }
                    .header__menu__item__inner{
                        color: var(--color--white);
                    }
/* フッター */
footer{
    width: 100%;
    height: auto;
    background-color: var(--color--text--bk);
}
    .footer__inner{
        width: 90%;
        height: auto;
        margin: 0 auto;
        max-width: 1000px;
    }
        .footer__logo{
            width: 226px;
            height: auto;
            margin: 0 auto;
            padding: 57.9px 0 52.6px 0;
        }
            .footer__logo img{
                width: 100%;
                height: auto;
            }
        .footer__contetns{
            width: 100%;
            height: auto;
        }
            .footer__link__list{
                width: 100%;
                height: auto;
            }
                .footer__link__item{
                    width: 48%;
                    height: auto;
                    margin: 0 auto;
                }
                    .footer__link{
                        display: block;
                        width: 100%;
                        height: 100%;
                        padding: 43px 0 35px 0;
                        background-color: var(--color--white);
                        border-radius: 10px;
                    }
                    .footer__link:hover .footer__link__arrow{
                        transform: scale(1.2);
                    }
                        .footer__link__inner{
                            width: 80%;
                            height: auto;
                            margin: 0 auto;
                            display: flex;
                            align-items: center;
                            justify-content: space-between;
                        }
                            .footer__link__text{
                                width: fit-content;
                                height: auto;
                            }
                                .footer__link__ttl{
                                    font-size: 45px;
                                    letter-spacing: 0.05em;
                                    line-height: 1.4;
                                    color: var(--color--blue);
                                }
                                .footer__link__sub__ttl{
                                    font-size: 16px;
                                    letter-spacing: 0.05em;
                                    line-height: 1.4;
                                    color: var(--color--blue);
                                    opacity: 0.5;
                                }
                            .footer__link__arrow{
                                width: 58px;
                                height: 58px;
                                background-color: var(--color--blue);
                                border-radius: 50%;
                                display: flex;
                                align-items: center;
                                justify-content: center;
                                transition: 0.3s;
                            }
                                .footer__link__arrow__inner{
                                    width: 15.56px;
                                    height: 15.56px;
                                }
                                    .footer__link__arrow__inner img{
                                        width: 100%;
                                        height: auto;
                                    }
        .copy{
            font-size: 14px;
            font-weight: 700;
            letter-spacing: 0.06em;
            padding: 56px 0 32px 0;
            text-align: center;
            color: var(--color--white);
        }

/* ボタン */
.link__btn__contents{
    width: 321px;
    height: auto;
    position: relative;
}
    .link__btn{
        width: 100%;
        height: auto;
        padding: 22px 0;
        background-color: var(--color--blue);
        border-radius: 9999px;
        display: flex;
        align-items: center;
        justify-content: center;
        column-gap: 20px;
        font-size: 18px;
        color: var(--color--white);
        position: relative;
        z-index: 2;
        transition: 0.3s;
    }
    .link__btn__contents::before{
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background-color: var(--color--black);
        opacity: 0.16;
        border-radius: 9999px;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        transform: translateY(5px);
    }
    .link__btn__contents:hover .link__btn{
        transform: translateY(5px);
    }
        .arrow__item{
            width: 28px;
            height: 28px;
            background-color: var(--color--white);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
        }
            .arrow{
                width: 8.39px;
                height: 8.39px;
            }
                .arrow img{
                    width: 100%;
                    height: auto;
                }
@keyframes infinity-scroll-left {
    from {
    transform: translateX(0);
    }
    to {
    transform: translateX(-100%);
    }
    }
    .scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
    }
    .scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0
    }
    .scroll-infinity__list--left {
    animation: infinity-scroll-left 200s infinite linear 0.5s both;
    }
    .scroll-infinity__item {
    width: 1350px;
    margin-left: 28px;
    }
    .scroll-infinity__item>img {
    width: 100%;
    }
@media all and (max-width:980px){
    .header__logo{
        width: 150px;
    }
    .header__menu__list{
        column-gap: 1vw;
    }
        .header__menu__item a{
            font-size: 14px;
        }
}   
/* PC ================================================== */
@media all and (max-width:820px){
    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
    header{
        height: 48px;
        padding: 0;
    }
        .header__inner{
            width: 100%;
            height: 100%;
        }
            .header__contents{
                height: 100%;
                border-radius: unset;
                padding: 0 0 0 20px;
                position: relative;
            }
                .header__logo{
                    width: 132px;
                    padding: 12px 0 10px 0;
                }
                .header__menu__item__inner{
                    padding: 0;
                    width: 120px;
                    height: 100%;
                }
            .hamburger{
                width: 48px;
                height: 48px;
                background-color: var(--color--text--bk);
                position: absolute;
                top: 0;
                right: 0;
            }
                .hbg_btn{
                    width: 100%;
                    height: 100%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    padding: 0;
                }
                    .hbg_btn__inner{
                        width: 47.8%;
                        height: 9px;
                        position: relative;
                    }
                        .hbg_btn_icon{
                            width: 100%;
                            height: 2px;
                            background-color: var(--color--white);
                            position: absolute;
                            transition: 0.3s;
                        }
                        .hbg_btn_icon_top{
                            top: 0;
                            left: 0;
                        }
                        .hbg_btn_icon_btm{
                            bottom: 0;
                            left: 0;
                        }
                        .open .hbg_btn_icon_top{
                            transform: rotate(30deg) translate(2px,1.5px);
                        }
                        .open .hbg_btn_icon_btm{
                            transform: rotate(-30deg) translate(3px,-3.5px);
                        }
                    .header__ask{
                        width: 120px;
                        height: 100%;
                        position: absolute;
                        top: 0;
                        right: 47.5px;
                        background-color: var(--color--blue);
                    }
                        .header__ask__link{
                            width: 100%;
                            height: 100%;
                            display: block;
                            color: var(--color--white);
                            font-size: 14px;
                            letter-spacing: 0.04em;
                            font-weight: 700;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                        }
                .global_nav{
                    display: none;
                    width: 100%;
                    height: calc(100vh - 47px);
                    background-color: var(--color--gray);
                    position: fixed;
                    top: 47px;
                    left: 0;
                    z-index: 100;
                }
                .global_nav_inner{
                    width: 100%;
                    height: 100%;
                    overflow-y: scroll;
                    padding-bottom: 130px;
                }
                    .global_nav__contents{
                        width: 90%;
                        height: auto;
                        margin: 0 auto;
                        max-width: 250px;
                    }
                        .nav__logo{
                            width: 200px;
                            height: auto;
                            margin: 0 auto;
                            padding: 61px 0 27px 0;
                        }
                            .nav__logo img{
                                width: 100%;
                                height: auto;
                            }
                        .global_nav_list{
                            width: 100%;
                            height: auto;
                            padding-bottom: 42px;
                        }
                            .global_nav_item{
                                width: 100%;
                                height: auto;
                                border-bottom: 1px solid rgba(31, 37, 43, 0.12);
                            }
                                .global_nav_item a{
                                    width: 100%;
                                    height: 100%;
                                    padding: 20px 0;
                                    display: flex;
                                    align-items: center;
                                    justify-content: space-between;
                                    font-size: 18px;
                                    letter-spacing: 0.04em;
                                    font-weight: 700;
                                }
                                    .global_nav_arrow_wrap{
                                        width: 24px;
                                        height: 24px;
                                        background-color: var(--color--blue);
                                        border-radius: 50%;
                                        display: flex;
                                        align-items: center;
                                        justify-content: center;
                                    }
                                        .global_nav_arrow{
                                            width: 8px;
                                            height: 8px;
                                        }
                                            .global_nav_arrow img{
                                                width: 100%;
                                                height: auto;
                                            }
                                .global_nav .link__btn__contents{
                                    width: 289px;
                                    margin: 0 auto;
                                }
            .footer__logo{
                padding: 44px 0 38px 0;
            }
            .footer__link__list{
                flex-direction: column;
                row-gap: 12px;
            }
                .footer__link__item{
                    width: 100%;
                }
                    .footer__link{
                        padding: 19px 0 18px 0;
                    }
                        .footer__link__ttl{
                            font-size: 30px;
                        }
                        .footer__link__sub__ttl{
                            font-size: 12px;
                        }
                        .footer__link__arrow{
                            width: 40px;
                            height: 40px;
                        }
                            .footer__link__arrow__inner{
                                width: 10.74px;
                                height: 10.74px;
                            }
                    .copy{
                        font-size: 10px;
                        padding: 28px 0 23px 0;
                    }
}

/* Tablet ================================================== */
@media all and (max-width:768px){
.pc,.sp {display: none;}
.tablet {display: inline-block;}
.view_pc {display: none;}
.view_sp {display: none;}
.view_tablet {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
}

/* SP ================================================== */
@media all and (max-width:599px){
.pc,.tablet {display: none;}
.sp {display: inline-block;}
.view_pc {display: none;}
.view_tablet {display: none;}
.view_sp {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
}