@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&display=swap');


html {
	font-size: 62.5%;
}
body {
	font-size: 1.6em;
	line-height: 1.9;
	position: relative;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	letter-spacing: 0.08em;
	color: #ffffff;
	width: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    font-feature-settings: "palt" 1;
    font-optical-sizing: auto;
    transition: .3s;
}
a {
	color: #262626;
	text-decoration: underline;
}

/* font
-------------------------------------------------- */
._en {
	font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

/* Responsive
-------------------------------------------------- */
.sp {
	display: none;
}

/* img
-------------------------------------------------- */
img {
	width: 100%;
	height: auto;
}
.thumb {
    width: 100%;
    height: 100%;
	display: block;
	overflow: hidden;
	position: relative;
	transition: .3s all;
}
.thumb::after {
	display: block;
	content: "";
}
.thumb.overlay::after {
	position: relative;
	background: rgba(0,0,0,0.20);
}
.thumb img,
.thumb video{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    transform-origin: center center;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .3s all;
}

/***************************************
    wrapper
***************************************/
#wrapper {
	width: 100%;
	height: 100vh;
	position: relative;
	margin:0 auto;
}

.content {
	width: 100%;
    max-width: 720px;
	text-align: center;
	position: absolute;
	top: 50%;
    left: 50%;
	transform: translate(-50%, -45%);
	box-sizing: border-box;
	padding: 0 32px;
}
.content .logo {
	width: 100%;
	margin: 0 auto 25px;
    padding-left: 3px;
}
.content .ttl {
    font-size: 2.4rem;
}
.btm-content {
    width: 100%;
	text-align: center;
	position: absolute;
	bottom: 40px;
}
.btm-content h1 {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
    .pc {
        display: none;
    }
    .sp {
        display: inline;
    }
    body {
        font-size: 1.4em;
    }
    .content {
        transform: translate(-50%, -53%);
    }
    .content .logo {
        margin: 0 auto 10px;
    }
    .content .ttl {
        font-size: 1.8rem;
    }
    .btm-content {
        bottom: 30px;
    }
    .btm-content h1 {
        font-size: 1.2rem;
        margin-bottom: 15px;
    }
}
	