@import '-reset'; body, body * { box-sizing: border-box; color: #333; font-weight: 500; font-family: 'Yu Gothic', 'Hiragino Kaku Gothic Pro'; } //Doesn't Allow User Select .noUserSelect { /* Chrome all / Safari all */ -webkit-user-select: none; /* Firefox all */ -moz-user-select: none; /* IE 10+ */ -ms-user-select: none; /* Likely future */ user-select: none; } .noUserDrag { position: relative; &:before { position: absolute; display: block; width: 100%; height: 100%; content: ''; } } .showOnlyInSP { display: none; } .toggleColor { &:hover { opacity: 0.8; } &:active { opacity: 0.6; } } // Predefined ///////////////////////////////////////////////////////////////// $pathPrefix: '../'; $mainColor: #1370bc; .storeBadgeFixedContainer { position: fixed; right: 16px; bottom: 20px; z-index: 1; text-align: center; p { margin-bottom: 20px; letter-spacing: 2px; font-weight: bold; font-size: 20px; } a { margin: 0 6px; text-decoration: none; img { width: 240px; } } } .clip { position: fixed; top: 0; left: 0; z-index: 1; display: block; width: 370px; img { @extend .noUserSelect; display: block; width: 100%; } } .movieContainer { padding: 45px; background: $mainColor; } .movie { margin: -0 auto; width: 700px; height: 700px; & > * { display: block; width: 100%; height: 100%; } } .storeBadgeContainer { padding: 20px 10px 20px; background: #f0f0f0; text-align: center; p { margin-bottom: 20px; font-weight: bold; } a { text-decoration: none; img { margin: 3px; width: calc(50% - 10px); } } } .explain { margin: 70px 0; padding: 0 60px; .background { padding: 0 120px; border-radius: 440px; background: #e9f6fc; .tag { margin: 0 auto; padding-top: 60px; width: 200px; height: 100px; background: $mainColor; color: #fff; text-align: center; letter-spacing: 10px; font-weight: bold; font-style: italic; } h2 { margin-top: 40px; text-align: center; font-size: 50px; line-height: 110px; span { display: inline-block; font-weight: bold; } } .description { margin-top: 54px; height: 200px; text-align: center; letter-spacing: 1.5px; line-height: 34px; span { color: #4d4d4d; font-size: 15px; } } .circleCardContainer { padding-bottom: 60px; text-align: center; .circleCard { position: relative; display: inline-block; margin: 0 40px 40px; width: 300px; height: 300px; border-radius: 100%; background: white; img { width: 100%; } .centerText { position: absolute; bottom: 40px; display: table; width: 100%; height: 60px; p { display: table-cell; vertical-align: middle; text-align: center; letter-spacing: 2px; font-weight: bold; line-height: 30px; span { font-weight: bold; } } } } } } } .underlined { border-bottom: 4px solid $mainColor; } .registerBanner { height: 448px; background: url($pathPrefix+'img/userRegistBanner.png') no-repeat; background-position: center; background-size: cover; .middleContainer { margin: 0 auto; max-width: 100%; width: 1080px; text-align: center; h2 { position: relative; padding-top: 100px; letter-spacing: 10px; font-size: 22px; line-height: 20px; span { display: inline-block; vertical-align: middle; font-weight: bold; } } h1 { padding-top: 20px; letter-spacing: 9px; font-weight: bold; font-size: 24px; } p { margin: 0 auto; padding-top: 26px; max-width: 100%; width: 575px; font-size: 14px; line-height: 34px; } a { position: relative; display: block; margin: 0 auto; margin-top: 42px; width: 350px; border-radius: 6px; background: #0071bc; color: white; text-decoration: none; letter-spacing: 2px; font-weight: bold; font-size: 18px; line-height: 70px; & > span { position: absolute; top: -32px; left: -32px; display: block; width: 64px; height: 64px; border: 2px solid white; border-radius: 32px; background: #0071bc; -webkit-transform: rotate(330deg); -moz-transform: rotate(330deg); -ms-transform: rotate(330deg); -o-transform: rotate(330deg); transform: rotate(330deg); & > span { display: block; margin: 4px; width: 52px; border: 1px solid white; border-style: dashed; border-radius: 30px; color: white; font-weight: bold; line-height: 50px; } } } } } .social { padding-top: 50px; text-align: center; a { @extend .toggleColor; position: relative; display: inline-block; overflow: hidden; margin: 0 10px; width: 50px; height: 50px; border-radius: 25px; &:before { display: block; margin: 9px; width: 32px; height: 32px; content: ''; } &.twitter { background: #2b97ea; &:before { background: url($pathPrefix+'img/twitter.png') no-repeat; background-position: center; background-size: contain; } } &.facebook { background: #3b5998; &:before { margin: 0; width: 100%; height: 100%; background: url($pathPrefix+'img/fbWhite.png') no-repeat; background-position: center; background-size: contain; } } } } .footer { margin-top: 50px; text-align: center; & > a { @extend .toggleColor; position: relative; padding: 0 20px; text-decoration: none; letter-spacing: 2px; font-weight: bold; &:before { position: absolute; top: 0; right: 0; display: block; width: 1px; height: 100%; background: #777; content: ''; -webkit-transform: rotate(20deg); -moz-transform: rotate(20deg); -ms-transform: rotate(20deg); -o-transform: rotate(20deg); transform: rotate(20deg); } &:hover { text-decoration: underline; } &:last-child:before { display: none; } } } .companyBanner { margin: 50px 0 150px; text-align: center; img { display: block; margin: 0 auto; width: 80px; } p { margin-top: 10px; font-size: 12px; } } @media screen and (max-width: 1280px) { .clip { width: 230px; } .movieContainer { margin-bottom: 20px; } .movie { width: 500px; height: 500px; } .explain { margin: 20px 0; padding: 0 20px; .background { padding: 0 20px; border-radius: 60px; .circleCardContainer { .circleCard { margin: 0 15px 40px; } } } } } @media screen and (max-width: 767px) { .showOnlyInSP { display: block; } .hideInSP { display: none; } .clip { width: 120px; } .movieContainer { margin-bottom: 0; padding: 0; } .movie { width: 100%; height: auto; } .explain { padding: 0; .background { padding: 0 0 20px; border-radius: 0; .tag { padding-top: 25px; height: 60px; } h2 { margin-top: 10px; font-size: 20px; line-height: 50px; } .description { margin: 24px 0; height: auto; font-size: 14px; line-height: 24px; span { font-size: 12px; } } .circleCardContainer { padding: 0; .circleCard { display: block; margin: 0 auto 20px; &:last-child { margin: 0 auto; } } } } } .registerBanner { padding-bottom: 20px; height: auto; .middleContainer { h2 { padding-top: 20px; letter-spacing: 8px; font-size: 17px; } h1 { padding-top: 10px; letter-spacing: 2px; font-size: 16px; } p { font-size: 13px; line-height: 24px; } a { width: 230px; font-size: 15px; line-height: 54px; &:hover { opacity: 1; } } } } .social { padding-top: 20px; } .footer { margin-top: 20px; a { padding: 0 4px; font-size: 13px; } } .companyBanner { margin: 20px 0; p { font-size: 10px; } } }