@charset "UTF-8";

.fw-normal {
	font-weight: normal;
}

.pt-0 {
	padding-top: 0;
}

.mv {
	margin-bottom: 0;
}

.mv .primary-heading {
	font-size: max(3.14vw, 2.4rem);
	top: auto;
	bottom: 15%;
}

.privacyPolicy-wrapper {
    width: min(90%, 1634px);
    padding: 50px 0 124px;
	margin: 98.43px auto 0;
}

.privacyPolicy-wrapper_title {
	display: block;
	font-size: 3.6rem;
	margin-bottom: 24px;
}

/* ハンバーガーメニュー：ブレークポイント変更 */
@media screen and (max-width: 1000px){
    .nav{
        position: absolute;
        top: 0;
        right: -100%;
        margin: 0;
        background: #fff;
        width: 100%;
        padding: 100px 16px 50px;
        transition: .5s ease .2s;
        flex-direction: column;
        align-items: flex-start;
        gap: 50px;
    }
    .is-active .nav{
        right: 0;
    }
    .nav-list{
        flex-direction: column;
    }
    .hamburger-menu{
        position: relative;
        width: 28px;
        height: 24px;
        display: block;
        margin-left: auto;
    }
    .hamburger-menu::before,
    .hamburger-menu::after,
    .hamburger-menu span{
        content: "";
        position: absolute;
        width: 100%;
        height: 2px;
        background: #000;
        border-radius: 2px;
        transition: .2s ease .2s;
    }
    .hamburger-menu::before{
        top: 0;
        left: 0;
    }
    .hamburger-menu::after{
        top: calc(100% - 2px);
        left: 0;
    }
    .hamburger-menu span{
        display: block;
        top: 50%;
        left: 0;
        transform: translate(0,-50%);
    }
    .is-active .hamburger-menu span{
        opacity: 0;
    }
    .is-active .hamburger-menu::before{
        top: 50%;
        transform: translate(0,-50%) rotate(45deg);
        transition: .2s ease .2s;
    }
    .is-active .hamburger-menu::after{
        top: 50%;
        transform: translate(0,-50%) rotate(-45deg);
        transition: .2s ease .2s;
    }
    .logo{
        width: 118px;
    }

	.topMV {
		margin-top: 75px;
	}
}

@media screen and (max-width: 1000px) {

	.privacyPolicy-wrapper {
		margin-top: 75px;
	}
	
}

@media screen and (max-width: 767px) {

	.pt-0_sp {
		padding-top: 0;
	}

	.pt-50_sp {
		padding-top: 50px !important;
	}

}

@media screen and (max-width: 600px) {

	#logo a img {
		width: min(72vw, 310px) !important;
		height: 35px;
		object-fit: contain;
	}

	.topMV {
		margin-top: 65px;
	}

	.mv .primary-heading {
		bottom: 2%;
	}
	
}

@media screen and (max-width: 431px) {

	.mv .primary-heading {
		font-size: 5.5vw;
	}

	.privacyPolicy-wrapper_title {
		font-size: 2.2rem;
	}

}