#logo {
	margin-top: 100px;
	width: 320px;
}

.footer {
	display: -ms-grid;
	display: grid;
	width: 100%;
}

.footer__customer-service {
    -ms-grid-column: 2;
    grid-column: 2;
}

.footer> * {
    white-space: nowrap;
}


.nav-bar {
    display: flex;
    align-items: center;
    width: 100%;
    height: 150px;
}


.footer a {
    display: block;
    text-decoration: none;
    cursor: pointer;
}

.text--body2 {
    font-weight: 400;
}

.text--body2, .text--subtitle2 {
    letter-spacing: -.4px;
    font-size: 14px;
}
.text--gray60 {
    color: #777;
}

.text--body4 {
    font-weight: 400;
    font-size: 12px;
}


.customer-service__title {
    margin-bottom: 20px;
}

.legal-notice:not(.legal-notice--compact) .legal-notice__logo {
    margin-bottom: 24px;
}

.legal-notice__sns {
    display: flex;
    align-items: center;
}

.legal-notice__sns a+a {
    margin-left: 8px;
}


.text--gray50 {
    color: #9e9e9e;
}

.text--gray70 {
    color: #1f1f1f;
}

.headline__description {
    margin-top: 10px;
    line-height: 29px;
}

.footer a {
    display: block;
    text-decoration: none;
    cursor: pointer;
}

.legal-notice__items {
    margin-top: 25px;
    padding-left: 2px;
}

.contact {
    display: flex;
    flex-direction: column;
}

.contact__title {
    margin-bottom: 20px;
}

.contact__items {
    padding-left: 2px;
}

.contact__item, .customer-service__item, .legal-notice__item  {
	margin-bottom: 10px;
}


.text--gray80 {
    color: #414c5a;
}

.backdrop {
    width: 100%;
    height: 100%;
    background-image: url(/app/assets/Timy2.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    -webkit-filter: brightness(.7);
    filter: brightness(.7);
}


.store-button-list {
	display: flex;
}

.store-button-list__button {
	display: flex;
}

.store-button-list__button {
    align-items: center;
    padding: 14px 24px;
    border-radius: 4px;
    border: 1px solid #fff;
    background: 0 0;
    cursor: pointer;
    margin-right: 20px;
}

.store-button-list__button--flat {
    background-color: #ff5160;
    border: 0;
}

.headline__slogan {
    font-size: 56px;
    margin-bottom: 40px;
}

.text--body1, .text--subtitle1 {
    font-weight: 600;
    letter-spacing: -.4px;
	font-size: 16px;
}


.text--white {
    color: #fff;
}

.legal-notice__sns svg {
    width: 100%;
    height: 100%;
    outline: 0;
}


.text--button {
	letter-spacing: -.6px;
	font-size: 18px;
}

.text--button, .text--h3 {
	font-weight: 600;
	letter-spacing: -.8px;
	font-size: 20px;
}

.text--gray80 {
    color: #414c5a;
}

.contact__item+.contact__item {
	margin-top: 16px;
}

.customer-service__item+.customer-service__item {
    margin-top: 16px;
}

.legal-notice__item+.legal-notice__item {
    margin-top: 12px;
}

.legal-notice__copyright {
    margin-top: 18px;
}


@media (min-width: 1024px) {
	#logo {
		width:320px;
	}
	.headline__slogan {
		font-size: 50px;
		margin-bottom: 40px;
	}
	.store-button-list__button {
		display: flex;
	}
	.store-button-list__button--flat {
		    display: none;
	}
	.footer {
		-ms-grid-columns: 1fr 1.5fr 2fr;
		grid-template-columns: 1fr 1.5fr 2fr;
		-ms-grid-rows: 1;
		grid-template-rows: 1;
	}

}

@media (min-width: 768px) and (max-width: 1023px) {
	#logo {
		width: 320;
	}
	.headline__slogan {
		font-size: 50px;
		margin-bottom: 40px;
	}
	.main-page__footer {
		padding: 50px 0px;
	}
	.main-page__content, .main-page__footer {
		width: calc(100% - 120px);
	}
	.store-button-list__button {
		display: none;
	}
	.store-button-list__button--flat {
		display: flex;
		padding: 15px 56px;
	}

	.footer {
		-ms-grid-columns: 1fr 1.5fr 2fr;
		grid-template-columns: 1fr 1.5fr 2fr;
		-ms-grid-rows: 1;
		grid-template-rows: 1;
	}
}


@media (max-width: 767px) {
	#logo {
		margin: 0 auto;
		margin-top: 30vw;
		width: 70vw;
	}
	.contact__item+.contact__item {
		margin-top: 4.26667vw;
	}
	.customer-service__item+.customer-service__item {
		margin-top: 4.26667vw;
	}
	.legal-notice__item+.legal-notice__item {
		margin-top: 3.2vw;
	}
	.legal-notice__copyright {
		margin-top: 4.8vw;
	}
	.main-page__headline {
		margin-top: 30.46667vw;
	}
	.nav-bar {
		height: 28vw;
	}
	.store-button-list__button {
		    display: none;
	}
	.store-button-list__button--flat {
		margin: 0 6.4vw;
		padding: 4vw 0;
	}
	.store-button-list__button--flat {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: center;
		margin: 0 24px;
		padding: 15px 0;
	}
	.main-page__footer {
		padding: 2.66667vw 0;
	}
	.main-page__content, .main-page__footer {
		width: 100%;
	}
	.footer {
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2,1fr);
		-ms-grid-rows: 2;
		grid-template-rows: 2;
	}
	.footer__contact {
		padding: 10.66667vw 0 10.66667vw 8vw;
	}
	.footer__customer-service {
		padding: 10.66667vw 8vw 10.66667vw 0;
	}
	.footer__legal-notice {
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-column: 1/3;
		-ms-grid-row: 2;
		grid-row: 2;
		border-top: 1px solid #eee;
		padding: 40px 30px;
	}
	.footer__legal-notice {
		padding: 10.66667vw 8vw;
	}
	.legal-notice__items {
		margin-top: 6.66667vw;
		padding-left: .53333vw;
	}
	.legal-notice:not(.legal-notice--compact) .legal-notice__logo {
		margin-bottom: 6.4vw;
	}
	.legal-notice__sns a {
		width: 9.6vw;
		height: 9.6vw;
	}
	.contact__title {
		margin-bottom: 5.33333vw;
	}
	.text--button {
		font-size: 4.8vw;
	}
	.contact__items {
		padding-left: .53333vw;
	}
	.text--body2, .text--subtitle2 {
		font-size: 3.73333vw;
	}
	.text--body4, .text--subtitle4 {
		font-size: 3.2vw;
	}
	.text--h3 {
		font-size: 5.33333vw;
	}
	.text--body1, .text--subtitle1 {
		font-size: 4.26667vw;
	}
	.headline__slogan {
		font-size: 10.73333vw;
		margin-bottom: 8vw;
	}
	.headline__description {
	    margin-top: 2.0vw;
		line-height: 7.73333vw;
	}
}
