/* Scss Document */ $color:#a08f1a; //サイトで良く使う色 $text:#000; //基本的なテキストの色 //hoverアニメーションを使いたい場合に使用 //呼び出し方法(cssに指定) → @include ani; @mixin ani { transition: 0.3s ease-in-out; } //display:flex;を使用した場合等に使用(widthが30%から70%まで)画面幅が740pxで100%に変わる //呼び出し方法(htmlに指定) → .flex_30 ~ .flex_70 @for $i from 30 through 70 { .flex_#{$i} { width: 1% * $i; } } //padding-topとpadding-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .padding100 ~ .padding300 $p: 100; @while $p < 310 { .padding#{$p} { padding-top: $p + px; padding-bottom: $p + px; } $p: $p+10; } //margin-topとmargin-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .margin100 ~ .margin300 $m: 100; @while $m < 310 { .margin#{$m} { margin-top: $m + px; margin-bottom: $m + px; } $m: $m+10; } //padding-top(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .pt-120 ~ .pt-300 $pt: 110; @while $pt < 310 { .pt-#{$pt} { padding-top: $pt + px; } $pt: $pt+10; } //padding-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .pb-120 ~ .pb-300 $pb: 110; @while $pb < 310 { .pb-#{$pb} { padding-bottom: $pb + px; } $pb: $pb+10; } //margin-top(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .mt-120 ~ .mt-300 $mt: 110; @while $mt < 310 { .mt-#{$mt} { margin-top: $mt + px; } $mt: $mt+10; } //margin-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .mb-120 ~ .mb-300 $mb: 110; @while $mb < 310 { .mb-#{$mb} { margin-bottom: $mb + px; } $mb: $mb+10; } * { text-decoration: none !important; } // アニメーション .targetActive.textShow { filter: blur(0); opacity: 1; } .textShow { filter: blur(30px); opacity: 0; transition: 0.6s linear 0.3s; } .targetActive.textShow2 { filter: blur(0); opacity: 1; } .textShow2 { filter: blur(30px); opacity: 0; transition: 2s linear 1s; } .targetActive.fadeInLeft { animation: fadeInLeft 2.3s ease 0.1s forwards; } .fadeInLeft { opacity: 0; transform: translateX(-200%); } @keyframes fadeInLeft { 0% { opacity: 0; transform: translateX(-200%); } 100% { opacity: 1; transform: translateX(0); } } .targetActive.fadeInRight { animation: fadeInRight 2.3s ease 0.1s forwards; } .fadeInRight { opacity: 0; transform: translateX(200%); } @keyframes fadeInRight { 0% { opacity: 0; transform: translateX(200%); } 100% { opacity: 1; transform: translateX(0); } } .targetActive.fadeInUp { animation: fadeInUp 0.7s ease 0.3s forwards; } .fadeInUp { opacity: 0; transform: translateY(50px); } @keyframes fadeInUp { 0% { opacity: 0; transform: translateY(50px); } 100% { opacity: 1; transform: translateY(0); } } .targetActive.fadeInLeftsmall { animation: fadeInLeftsmall 0.7s ease 0.3s forwards; } .fadeInLeftsmall { opacity: 0; transform: translateX(-80px); } @keyframes fadeInLeftsmall { 0% { opacity: 0; transform: translateX(-80px); } 100% { opacity: 1; transform: translateX(0); } } // 線svg .wave__img__border { overflow: hidden; svg { height: 5px; } } .wave_g { stroke-dasharray: 1800px; stroke-dashoffset: 1800px; } .line_move { animation: line_move 5s forwards; } @keyframes line_move { 0% { stroke-dashoffset: 1800px; } 100% { stroke-dashoffset: 0; } } // フェードアップ @keyframes movement { from { top: 50px; } to { opacity: 1; top: 0; } } .movement { position: relative; opacity: 0; animation-name: movement; animation-duration: .6s; animation-fill-mode: forwards; animation-timing-function: ease; } /************************/ // カラー $blue: #1400B9; $green:#328851; $transition: 0.5s ease; .blue { color: #1400B9; } .green { color: #328851; } .bg__white { background-color: #fff; } .bg__grey { background-color: #F5F5F5; } .bg__green { background: #328851; } // テキストサイズ .midashi20 { font-size: clamp(19px, 1.05vw, 20px); } .midashi28 { font-size: clamp(20px, 1.45vw, 28px); letter-spacing: 0; } .midashi54 { font-size: clamp(30px, 2.8125vw, 54px); } .sec__midashi { font-size: clamp(26px, 1.45vw, 28px); letter-spacing: 0; line-height: 1.5; position: relative; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; } .message_midashi20 { font-size: clamp(16px, 1.05vw, 20px); } .sKill__text { font-size: 14px; } // line-height .lineh025 { line-height: 2.5; } // base .bold { font-weight: bold; } .margin_auto { margin: 0 auto; } .br1300 { display: block; } // ボタン .link__btn { width: 200px; position: relative; a { width: 100%; display: inline-block; position: relative; background-color: $blue; font-size: clamp(15px, 1vw, 18px); border-radius: 5px; transition: $transition; height: 66px; color: #fff; padding: 0 80px 0 20px; .btn__label { transition: transform .5s cubic-bezier(0.2, 0.7, 0.44, 1), opacity .1s linear; } .btn__hover { position: absolute; top: 0%; left: 50%; transform: translate(-50%, 100%); transition: transform .5s cubic-bezier(0.2, 0.7, 0.44, 1), opacity .1s linear; opacity: 0; } .btn__label, .btn__hover { display: flex; justify-content: center; align-items: center; width: 100%; } &:hover { background-color: $green; .btn__label { transform: translateY(-100%); opacity: 0; } .btn__hover { transform: translate(-50%, 0%); opacity: 1; } .btn__icon { img { animation: lineAnime .3s ease-in-out; } } } } @keyframes lineAnime { 0% { transform: translateX(0%); } 48% { transform: translateX(100%); visibility: hidden; } 50% { transform: translateX(-100%); visibility: hidden; } 55% { visibility: visible; } 100% { transform: translateX(0%); } } &::after { content: ""; width: 1px; background-color: #fff; position: absolute; top: 50%; transform: translateY(-50%); height: 1.7187500000000002vw; right: 3.1944444444vw; transition: $transition; } } .btn__text { font-family: "NeueHaasUnicaW1G-Light", sans-serif; display: block; position: relative; top: 50%; transform: translateY(-56%); overflow: hidden; line-height: 1; } .btn__icon { position: absolute; top: 45%; transform: translateY(-50%); overflow: hidden; right: 1.25vw; width: 14px; height: auto; img { width: 100%; height: auto; transition: fill .6s cubic-bezier(0.215, 0.61, 0.355, 1) } } html { scroll-behavior: smooth; } // loding .loading { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 1000000000; background-color: #328851; display: flex; align-items: center; justify-content: center; animation: fadeOut 0.8s 1.5s forwards; pointer-events: none; } @keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; visibility: hidden; } } // .loading__logo { // opacity: 0; // animation: logo_fade 2s 0.5s forwards; // width: 240px; // } // @keyframes logo_fade { // 0% { // opacity: 0; // transform: translateY(15px); // } // 60% { // opacity: 1; // transform: translateY(0); // } // 100% { // opacity: 0; // } // } // ローディングループテキスト .loading__wrapper { // font-size: clamp(60px, 5.2vw, 100px); display: flex; overflow: hidden; text-align: center; width: 100%; &__text { display: inline-block; white-space: nowrap; animation: scrollTxt 25s linear infinite; margin-right: 20px; height: 9vw; min-height: 100px; // font-family: "NeueHaasUnicaW1G-Bold"; // letter-spacing: 0; // &:nth-of-type(odd) { // color: #fff; // } // &:nth-of-type(even) { // color: rgba(255, 255, 255, 0); // -webkit-text-stroke: 1.3px #fff; // } img { height: 100%; } } } // 画面推移アニメ .left__slide .animation__bg { background: $green; display: block; content: ""; position: fixed; z-index: 9999999; width: 100%; height: 100vh; top: 0; left: 0; animation-duration: 1s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; animation-name: PageAnime-ltr; } @keyframes PageAnime-ltr { 0% { transform-origin: left; transform: scaleX(0); } 50% { transform-origin: left; transform: scaleX(1); } 50.001% { transform-origin: right; } 100% { transform-origin: right; transform: scaleX(0); } } /* ------------------------------ header ------------------------------ */ .header { display: flex; justify-content: space-between; // padding: 30px 50px; position: relative; z-index: 10000; } .logo { width: 87px; height: auto; position: absolute; top: 35px; left: 50px; img { width: 100%; height: auto; } } .header__right { display: flex; align-items: center; max-width: 540px; border-radius: 33px; padding: 10px 40px; background: transparent; position: fixed; top: 30px; right: 125px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background: rgba(255, 255, 255, 0.6); box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.02); } .nav__link { display: flex; justify-content: space-between; align-items: center; gap: 40px; } .nav { display: flex; justify-content: space-between; align-items: center; a { font-family: "NeueHaasUnicaW1G-Medium", sans-serif; position: relative; display: block; line-height: 1.5; &::after { content: ""; display: block; width: 0.75rem; height: 0.75rem; border-radius: 100vmax; position: absolute; left: 50%; transform: translateX(-50%); top: -1rem; background-color: $blue; opacity: 0; -webkit-transition: ease 300ms; transition: ease 300ms; } &:hover { &::after { opacity: 1; } } } } // ヘッダーコンタクトボタン .contact__btn { width: 140px; margin: 0 0 0 40px; a { display: flex; align-items: center; justify-content: center; overflow: hidden; width: 100%; color: $blue; border: 1px solid $blue; padding: 5px 0; border-radius: 25px; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; transition: $transition; &:hover { background-color: $blue; color: #fff; } } } .contact__btn__icon { width: 2.5rem; height: 2.5rem; margin-right: 10px; position: relative; top: -3px; img { width: 100%; height: auto; } } .loop__wrap { ul { display: flex; align-items: center; justify-content: center; width: 100%; overflow: hidden; li { display: flex; align-items: center; margin: 0 5px; white-space: nowrap; animation: loop-text 24s linear infinite reverse; } } } @keyframes loop-text { 0% { transform: translate(-100%); } 100% { transform: translate(100%); } } // ハンバーガー内コンタクトボタン .hamburger__btn { width: 250px; margin: 20px 25px 0 40px; a { display: flex; align-items: center; justify-content: center; overflow: hidden; width: 100%; border: 1px solid #fff; padding: 5px 0; border-radius: 50px; font-size: 30px; color: #fff; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; transition: 0.5s ease; &:hover { background-color: #fff; color: $green; } } } .hamburger__btn__icon { width: 3.5rem; height: 3.5rem; margin-right: 10px; position: relative; top: -13px; img { width: 100%; height: auto; } } /* ------------------------------ mv ------------------------------ */ .mv { width: 100%; height: 100vh; position: relative; overflow: hidden; &__img { width: 70vw; max-width: 590px; height: auto; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); svg { width: 100%; height: auto; } } &__left { position: absolute; left: -1vw; top: 6vw; } &__right { position: absolute; right: -1vw; bottom: 6vw; } &__txt01, &__txt02 { font-size: clamp(160px, 15.8vw, 305px); color: $green; position: relative; z-index: 100; line-height: 1; font-family: "CabinetGrotesk-Black"; } } .scroll__down { position: absolute; bottom: 5vw; left: 5vw; a { border: 1px solid $green; border-radius: 2vw; display: flex; align-items: center; justify-content: center; width: 10vw; min-width: 90px; height: 10vw; min-height: 90px; img { width: 3vw; min-width: 30px; animation-name: UpDown; animation-duration: 1s; animation-iteration-count: infinite; animation-timing-function: ease-in-out; animation-direction: alternate; } } } @keyframes UpDown { 0% { transform: translateY(0); } 100% { transform: translateY(15px); } } // MV画像 /*************************************************** * Generated by SVG Artista on 10/24/2024, 9:04:29 PM * MIT license (https://opensource.org/licenses/MIT) * W. https://svgartista.net **************************************************/ .svg-elem-1 { -webkit-animation: animate-svg-fill-1 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2s both; animation: animate-svg-fill-1 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2s both; } @-webkit-keyframes animate-svg-fill-2 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-2 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-2 { -webkit-animation: animate-svg-fill-2 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.1s both; animation: animate-svg-fill-2 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.1s both; } @-webkit-keyframes animate-svg-fill-3 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-3 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-3 { -webkit-animation: animate-svg-fill-3 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.2s both; animation: animate-svg-fill-3 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.2s both; } @-webkit-keyframes animate-svg-fill-4 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-4 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-4 { -webkit-animation: animate-svg-fill-4 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.3s both; animation: animate-svg-fill-4 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.3s both; } @-webkit-keyframes animate-svg-fill-5 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-5 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-5 { -webkit-animation: animate-svg-fill-5 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.4s both; animation: animate-svg-fill-5 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.4s both; } @-webkit-keyframes animate-svg-fill-6 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-6 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-6 { -webkit-animation: animate-svg-fill-6 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.5s both; animation: animate-svg-fill-6 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.5s both; } @-webkit-keyframes animate-svg-fill-7 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-7 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-7 { -webkit-animation: animate-svg-fill-7 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.6s both; animation: animate-svg-fill-7 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.6s both; } @-webkit-keyframes animate-svg-fill-8 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-8 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-8 { -webkit-animation: animate-svg-fill-8 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.7s both; animation: animate-svg-fill-8 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.7s both; } @-webkit-keyframes animate-svg-fill-9 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-9 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-9 { -webkit-animation: animate-svg-fill-9 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.8s both; animation: animate-svg-fill-9 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.8s both; } @-webkit-keyframes animate-svg-fill-10 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-10 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-10 { -webkit-animation: animate-svg-fill-10 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.9s both; animation: animate-svg-fill-10 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 2.9s both; } @-webkit-keyframes animate-svg-fill-11 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-11 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-11 { -webkit-animation: animate-svg-fill-11 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3s both; animation: animate-svg-fill-11 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3s both; } @-webkit-keyframes animate-svg-fill-12 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-12 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-12 { -webkit-animation: animate-svg-fill-12 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.1s both; animation: animate-svg-fill-12 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.1s both; } @-webkit-keyframes animate-svg-fill-13 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-13 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-13 { -webkit-animation: animate-svg-fill-13 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.2s both; animation: animate-svg-fill-13 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.2s both; } @-webkit-keyframes animate-svg-fill-14 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-14 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-14 { -webkit-animation: animate-svg-fill-14 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.3s both; animation: animate-svg-fill-14 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.3s both; } @-webkit-keyframes animate-svg-fill-15 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-15 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-15 { -webkit-animation: animate-svg-fill-15 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.4000000000000004s both; animation: animate-svg-fill-15 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.4000000000000004s both; } @-webkit-keyframes animate-svg-fill-16 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-16 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-16 { -webkit-animation: animate-svg-fill-16 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.5s both; animation: animate-svg-fill-16 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.5s both; } @-webkit-keyframes animate-svg-fill-17 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-17 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-17 { -webkit-animation: animate-svg-fill-17 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.6s both; animation: animate-svg-fill-17 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.6s both; } @-webkit-keyframes animate-svg-fill-18 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-18 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-18 { -webkit-animation: animate-svg-fill-18 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.7s both; animation: animate-svg-fill-18 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.7s both; } @-webkit-keyframes animate-svg-fill-19 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-19 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-19 { -webkit-animation: animate-svg-fill-19 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.8s both; animation: animate-svg-fill-19 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.8s both; } @-webkit-keyframes animate-svg-fill-20 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-20 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-20 { -webkit-animation: animate-svg-fill-20 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.9000000000000004s both; animation: animate-svg-fill-20 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 3.9000000000000004s both; } @-webkit-keyframes animate-svg-fill-21 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-21 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-21 { -webkit-animation: animate-svg-fill-21 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4s both; animation: animate-svg-fill-21 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4s both; } @-webkit-keyframes animate-svg-fill-22 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-22 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-22 { -webkit-animation: animate-svg-fill-22 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.1s both; animation: animate-svg-fill-22 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.1s both; } @-webkit-keyframes animate-svg-fill-23 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } @keyframes animate-svg-fill-23 { 0% { fill: transparent; } 100% { fill: rgb(48, 50, 52); } } .svg-elem-23 { -webkit-animation: animate-svg-fill-23 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.2s both; animation: animate-svg-fill-23 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.2s both; } @-webkit-keyframes animate-svg-fill-24 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-24 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-24 { -webkit-animation: animate-svg-fill-24 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.300000000000001s both; animation: animate-svg-fill-24 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.300000000000001s both; } @-webkit-keyframes animate-svg-fill-25 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-25 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-25 { -webkit-animation: animate-svg-fill-25 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.4s both; animation: animate-svg-fill-25 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.4s both; } @-webkit-keyframes animate-svg-fill-26 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-26 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-26 { -webkit-animation: animate-svg-fill-26 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.5s both; animation: animate-svg-fill-26 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.5s both; } @-webkit-keyframes animate-svg-fill-27 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-27 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-27 { -webkit-animation: animate-svg-fill-27 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.6s both; animation: animate-svg-fill-27 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.6s both; } @-webkit-keyframes animate-svg-fill-28 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-28 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-28 { -webkit-animation: animate-svg-fill-28 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.7s both; animation: animate-svg-fill-28 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.7s both; } @-webkit-keyframes animate-svg-fill-29 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-29 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-29 { -webkit-animation: animate-svg-fill-29 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.800000000000001s both; animation: animate-svg-fill-29 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.800000000000001s both; } @-webkit-keyframes animate-svg-fill-30 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-30 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-30 { -webkit-animation: animate-svg-fill-30 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.9s both; animation: animate-svg-fill-30 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 4.9s both; } @-webkit-keyframes animate-svg-fill-31 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-31 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-31 { -webkit-animation: animate-svg-fill-31 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5s both; animation: animate-svg-fill-31 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5s both; } @-webkit-keyframes animate-svg-fill-32 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-32 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-32 { -webkit-animation: animate-svg-fill-32 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.1s both; animation: animate-svg-fill-32 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.1s both; } @-webkit-keyframes animate-svg-fill-33 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-33 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-33 { -webkit-animation: animate-svg-fill-33 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.2s both; animation: animate-svg-fill-33 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.2s both; } @-webkit-keyframes animate-svg-fill-34 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-34 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-34 { -webkit-animation: animate-svg-fill-34 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.300000000000001s both; animation: animate-svg-fill-34 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.300000000000001s both; } @-webkit-keyframes animate-svg-fill-35 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-35 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-35 { -webkit-animation: animate-svg-fill-35 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.4s both; animation: animate-svg-fill-35 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.4s both; } @-webkit-keyframes animate-svg-fill-36 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-36 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-36 { -webkit-animation: animate-svg-fill-36 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.5s both; animation: animate-svg-fill-36 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.5s both; } @-webkit-keyframes animate-svg-fill-37 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-37 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-37 { -webkit-animation: animate-svg-fill-37 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.6s both; animation: animate-svg-fill-37 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.6s both; } @-webkit-keyframes animate-svg-fill-38 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-38 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-38 { -webkit-animation: animate-svg-fill-38 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.7s both; animation: animate-svg-fill-38 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.7s both; } @-webkit-keyframes animate-svg-fill-39 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-39 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-39 { -webkit-animation: animate-svg-fill-39 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.800000000000001s both; animation: animate-svg-fill-39 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.800000000000001s both; } @-webkit-keyframes animate-svg-fill-40 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-40 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-40 { -webkit-animation: animate-svg-fill-40 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.9s both; animation: animate-svg-fill-40 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 5.9s both; } @-webkit-keyframes animate-svg-fill-41 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-41 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-41 { -webkit-animation: animate-svg-fill-41 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6s both; animation: animate-svg-fill-41 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6s both; } @-webkit-keyframes animate-svg-fill-42 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-42 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-42 { -webkit-animation: animate-svg-fill-42 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.1000000000000005s both; animation: animate-svg-fill-42 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.1000000000000005s both; } @-webkit-keyframes animate-svg-fill-43 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-43 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-43 { -webkit-animation: animate-svg-fill-43 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.2s both; animation: animate-svg-fill-43 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.2s both; } @-webkit-keyframes animate-svg-fill-44 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-44 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-44 { -webkit-animation: animate-svg-fill-44 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.3s both; animation: animate-svg-fill-44 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.3s both; } @-webkit-keyframes animate-svg-fill-45 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-45 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-45 { -webkit-animation: animate-svg-fill-45 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.4s both; animation: animate-svg-fill-45 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.4s both; } @-webkit-keyframes animate-svg-fill-46 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-46 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-46 { -webkit-animation: animate-svg-fill-46 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.5s both; animation: animate-svg-fill-46 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.5s both; } @-webkit-keyframes animate-svg-fill-47 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-47 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-47 { -webkit-animation: animate-svg-fill-47 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.6000000000000005s both; animation: animate-svg-fill-47 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.6000000000000005s both; } @-webkit-keyframes animate-svg-fill-48 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-48 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-48 { -webkit-animation: animate-svg-fill-48 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.7s both; animation: animate-svg-fill-48 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.7s both; } @-webkit-keyframes animate-svg-fill-49 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-49 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-49 { -webkit-animation: animate-svg-fill-49 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.800000000000001s both; animation: animate-svg-fill-49 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.800000000000001s both; } @-webkit-keyframes animate-svg-fill-50 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-50 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-50 { -webkit-animation: animate-svg-fill-50 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.9s both; animation: animate-svg-fill-50 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 6.9s both; } @-webkit-keyframes animate-svg-fill-51 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-51 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-51 { -webkit-animation: animate-svg-fill-51 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7s both; animation: animate-svg-fill-51 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7s both; } @-webkit-keyframes animate-svg-fill-52 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-52 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-52 { -webkit-animation: animate-svg-fill-52 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.1000000000000005s both; animation: animate-svg-fill-52 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.1000000000000005s both; } @-webkit-keyframes animate-svg-fill-53 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-53 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-53 { -webkit-animation: animate-svg-fill-53 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.2s both; animation: animate-svg-fill-53 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.2s both; } @-webkit-keyframes animate-svg-fill-54 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-54 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-54 { -webkit-animation: animate-svg-fill-54 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.300000000000001s both; animation: animate-svg-fill-54 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.300000000000001s both; } @-webkit-keyframes animate-svg-fill-55 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-55 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-55 { -webkit-animation: animate-svg-fill-55 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.4s both; animation: animate-svg-fill-55 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.4s both; } @-webkit-keyframes animate-svg-fill-56 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-56 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-56 { -webkit-animation: animate-svg-fill-56 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.5s both; animation: animate-svg-fill-56 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.5s both; } @-webkit-keyframes animate-svg-fill-57 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-57 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-57 { -webkit-animation: animate-svg-fill-57 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.6000000000000005s both; animation: animate-svg-fill-57 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.6000000000000005s both; } @-webkit-keyframes animate-svg-fill-58 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-58 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-58 { -webkit-animation: animate-svg-fill-58 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.7s both; animation: animate-svg-fill-58 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.7s both; } @-webkit-keyframes animate-svg-fill-59 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-59 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-59 { -webkit-animation: animate-svg-fill-59 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.800000000000001s both; animation: animate-svg-fill-59 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.800000000000001s both; } @-webkit-keyframes animate-svg-fill-60 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-60 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-60 { -webkit-animation: animate-svg-fill-60 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.9s both; animation: animate-svg-fill-60 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 7.9s both; } @-webkit-keyframes animate-svg-fill-61 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-61 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-61 { -webkit-animation: animate-svg-fill-61 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8s both; animation: animate-svg-fill-61 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8s both; } @-webkit-keyframes animate-svg-fill-62 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-62 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-62 { -webkit-animation: animate-svg-fill-62 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8.100000000000001s both; animation: animate-svg-fill-62 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8.100000000000001s both; } @-webkit-keyframes animate-svg-fill-63 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } @keyframes animate-svg-fill-63 { 0% { fill: transparent; } 100% { fill: rgb(20, 0, 185); } } .svg-elem-63 { -webkit-animation: animate-svg-fill-63 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8.2s both; animation: animate-svg-fill-63 0.4s cubic-bezier(0.755, 0.05, 0.855, 0.06) 8.2s both; } /* ------------------------------ top_message ------------------------------ */ .wave__img__green { background: url(../images/wave_green.svg) repeat-x right top; height: 5px; margin-bottom: 20px; } .wave__img__white { background: url(../images/wave_white.svg) repeat-x right top; height: 5px; margin-bottom: 20px; } // TRYメッセージ .try__img { width: 80vw; max-width: 1105px; margin: 60px auto 60px; img { width: 100%; height: auto; } } .message_grid { display: grid; grid-template-columns: 37% 50%; justify-content: space-between; } /* ------------------------------ top_works ------------------------------ */ .works__navbox { display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 600px; margin-left: auto; } .works__navlink { display: flex; justify-content: space-between; max-width: 340px; width: 100%; a { position: relative; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; display: block; font-size: 17px; &::after { content: ""; display: block; width: 0.75rem; height: 0.75rem; border-radius: 100vmax; position: absolute; left: 50%; transform: translateX(-50%); top: -1rem; background-color: $green; opacity: 0; -webkit-transition: ease 300ms; transition: ease 300ms; } &:hover { &::after { opacity: 1; } } } } .slider__box { a { padding: 3rem 4rem; display: block; background-color: #fff; border-radius: 10px; transition: $transition; &:hover { img { transform: scale(1.1); } } } } .slider__category { color: $green; font-family: "NeueHaasUnicaW1G-Light", sans-serif; margin-bottom: 25px; position: relative; display: flex; align-items: center; white-space: nowrap; &::after { content: ""; height: 1px; width: 100%; background-color: $green; margin-left: 10px; } } .slider__flexbox { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; } .slider__rep { font-size: 14px; border-radius: 20px; line-height: 1.7; padding: 0 15px 2px; display: inline-block; } .slider__coding { color: #fff; background-color: $green; } .slider__design { color: #fff; background-color: $blue; } .slider__date { font-family: "NeueHaasUnicaW1G-Medium", sans-serif; color: #A7A7B0; } .slider__sitename { font-size: clamp(17px, 1.25vw, 24px); margin-top: 5px; font-weight: 500; } .slider__imgbox { overflow: hidden; width: 100%; height: auto; img { object-fit: cover; transition: 0.4s; width: 100%; height: auto; } } .slider__img { object-fit: cover; transition: 0.4s; width: 100%; height: auto; } /* ------------------------------ top_skill ------------------------------ */ .sKill__grid { display: grid; grid-template-columns: repeat(5, 1fr); column-gap: 2vw; row-gap: 6vw; li { background-color: #fff; padding: 25px; border-radius: 10px; height: 320px; position: relative; &:nth-of-type(odd) { transform: rotate(-3deg); } &:nth-of-type(even) { transform: rotate(3deg); } h3 { font-family: "NeueHaasUnicaW1G-Medium", sans-serif; } } } .skill__img { width: auto; height: 82px; min-width: 50px; text-align: right; position: absolute; right: 25px; bottom: 25px; img { width: auto; height: 100%; } } /* ------------------------------ top_about ------------------------------ */ .about { &__box { background-color: #fff; border-radius: 15px; padding: 6vw 6vw 6vw; } &__grid { display: grid; grid-template-columns: 43.5% 40%; justify-content: space-between; align-items: center; } } .name__box { display: flex; align-items: center; gap: 5vw; } .name__jp { font-size: clamp(20px, 1.5625vw, 30px); } .name__en { color: #328851; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; line-height: 3; } /* ------------------------------ top_contact ------------------------------ */ .contact { &__midashi { font-size: clamp(40px, 10.9375vw, 210px); letter-spacing: 0; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; color: $green; text-align: center; } &__circle { position: relative; width: 80vw; max-width: 420px; margin: 0 auto; a { display: block; width: 100%; transition: $transition; &:hover { transform: scale(1.1); } } } &__circle__img { text-align: center; width: 100%; animation: scroll 35s linear infinite; img { width: 100%; height: auto; } } &__hand__img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 76px; height: auto; img { width: 100%; height: auto; } } @keyframes scroll { 0% { transform: rotate(0); } 100% { transform: rotate(360deg); } } } /* ------------------------------ works__under ------------------------------ */ .works__under__grid { display: grid; grid-template-columns: repeat(2, 1fr); row-gap: 5.208333333333334vw; column-gap: 5.208333333333334vw; margin-top: 7.291666666666667vw; } .works__under__btnbox { display: inline-flex; gap: 15px; background-color: #fff; border-radius: 10px; padding: 1.3vw 2.08vw; margin-top: 3.125vw; } .works__under__btn { a { display: block; width: 110px; font-size: clamp(15px, 1vw, 18px); border: 1px solid $green; border-radius: 20px; padding: 0 15px 3px; text-align: center; transition: $transition; &:hover { background-color: $green; color: #fff; } } } .active_color { a { background-color: $green; border-radius: 20px; color: #fff; } } .header__midashi { font-size: clamp(50px, 6.770833333333333vw, 130px); letter-spacing: 0; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; line-height: 1.4; } .header__mark { width: 3.6458333333333335vw; height: auto; img { width: 100%; height: auto; } } .main__head { height: 32.208333333333332vw; display: flex; align-items: center; min-height: 400px; } .header__box { padding: 80px 0 20px; } /* ------------------------------ works__detail ------------------------------ */ .works__detail__size { height: 28.125vw; display: flex; align-items: center; } .works__detail__midashi { font-size: clamp(24px, 2.8125vw, 54px); font-weight: 700; } .works__detail__img { width: 100%; height: 41.66666666666667vw; img { width: 100%; height: auto; } } .works__detail__flex { display: flex; justify-content: space-between; } .works__detail__dl { max-width: 440px; width: 46%; } .works__detail__text { width: 50%; } .works__detail__group { display: flex; justify-content: space-between; &:not(:last-of-type) { margin-bottom: 20px; } dt { flex: 0.25; } dd { flex: 0.7; } } .works__detail__box { background-color: #fff; border-radius: 15px; padding: 7.291666666666667vw; // overflow: auto; // height: 800px; } .works__detail__box_img { box-shadow: 0px 5px 40px rgba(0, 0, 0, 0.16); // position: sticky; // top: 0; // left: 0; img { width: 100%; height: auto; } } // ページネーション .pagenation2 { text-align: center; } .pagenation2 li { display: inline-block; position: relative; margin: 0 2px; cursor: not-allowed; display: inline-flex; align-items: center; justify-content: center; width: 35px; height: 35px; border-radius: 50%; border: 1px solid #dbdbda; a { color: #8fc31f; } } .pagenation2 .active { position: relative; // margin: 0 2px; cursor: not-allowed; display: inline-flex; align-items: center; justify-content: center; width: 35px; height: 35px; border-radius: 50%; background-color: #8fc31f; color: #fff; a { color: #fff; } } .pagenation2 .active:hover { color: #000; } .pagenation2 .prev img { transform: scale(-1, 1); } .pagenation2 .next, .pagenation2 .prev { img { position: relative; top: -2px; } } // ページネーション詳細ページ #pagenation__list { display: flex; justify-content: space-between; max-width: 600px; margin: 0 auto; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; li { text-align: center; width: 33%; } } .pagenation__list__prev { position: relative; a { display: flex; gap: 10px; align-items: center; transition: $transition; &:hover { color: $green; } } } .pagenation__list__next { a { display: flex; flex-direction: row-reverse; gap: 10px; align-items: center; &:hover { color: $green; } } } .pagenation__list__btn { a { &:hover { .pagenation__list__btn__label { transform: translateY(-100%); opacity: 0; } } &:hover { .pagenation__list__btn__hover { transform: translate(-50%, 0%); opacity: 1; } } } } .pagenation__list__btn__text { font-family: "NeueHaasUnicaW1G-Medium", sans-serif; display: block; position: relative; top: 50%; transform: translateY(-56%); overflow: hidden; line-height: 1; border-bottom: 1px solid #328851; display: inline-block; } .pagenation__list__btn__label { display: flex; justify-content: center; align-items: center; width: 100%; transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.44, 1), opacity 0.1s linear; } .pagenation__list__btn__hover { display: flex; justify-content: center; align-items: center; width: 100%; position: absolute; top: 0%; left: 50%; transform: translate(-50%, 100%); transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.44, 1), opacity 0.1s linear; opacity: 0; } /* ------------------------------ banner ------------------------------ */ .show { &__container { display: grid; grid-template-columns: repeat(3, 1fr); row-gap: 4.166666666666666vw; -moz-column-gap: 4.166666666666666vw; column-gap: 4.166666666666666vw; margin-top: 7.2916666667vw; } &__box { background-color: #fff; padding: 2.083333333333333vw; aspect-ratio: 1; display: flex; align-items: center; border-radius: 10px; } &__pic { width: 100%; height: auto; overflow: hidden; box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.16); img { width: 100%; height: auto; box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.16); object-fit: cover; transition: 0.4s; } } &__link { &:hover { .show__img { transform: scale(1.1); } } } &__time { margin-top: 15px; } &__txt { font-size: clamp(16px, 1.25vw, 24px); line-height: 1.7; margin-top: 5px; font-weight: 500; } } .bg { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: #F5F5F5; z-index: 10000; } .bg__btn { width: 48px; height: 48px; display: flex; justify-content: center; align-items: center; position: absolute; right: 50px; top: 35px; cursor: pointer; background: $green; border-radius: 50%; z-index: 100; transition: 0.3s; cursor: pointer; } .bg__span1, .bg__span2 { position: absolute; display: block; transform: rotate(45deg); width: 18px; height: 1px; z-index: 100000; background-color: #fff; } .bg__span1 { transform: rotate(45deg); } .bg__span2 { transform: rotate(-45deg); } .bg__photo { position: absolute; top: 50%; left: 50%; width: 80%; height: auto; transform: translate(-50%, -50%); max-width: 700px; } .bg__img { display: block; width: 100%; height: 100%; object-fit: cover; } /* ------------------------------ contactform ------------------------------ */ .contactform { &__text { text-align: center; margin: 5.208333333333334vw 0; font-size: clamp(18px, 1.25vw, 24px); } &__table { background-color: #fff; border-radius: 15px; padding: 8.333333333333332vw; >div { margin-bottom: 40px; } } &__cell1 { margin-bottom: 10px; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; } &__cell2 { width: 100%; } &__size { input { width: 100%; border: 1px solid $green; padding: 10px 20px; border-radius: 5px; height: 60px; } } &__area { textarea { width: 100%; border: 1px solid $green; padding: 10px 20px; border-radius: 5px; height: 240px; } } } .hissu { color: $green; font-size: 10px; padding-left: 5px; } .submit { text-align: center; input { background: $blue; border: 1px solid $blue; color: #fff; font-size: 18px; letter-spacing: 0.14em; width: 100%; max-width: 300px; padding: 20px 10px; transition: $transition; border-radius: 50px; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; transition: $transition; &:hover { background-color: $green; border: 1px solid $green; } } } /* ------------------------------ footer ------------------------------ */ .footer { background: $green; padding-bottom: 100px; &__flexbox { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; color: #fff; margin-top: 100px; } &__nav { display: flex; justify-content: space-between; width: 100%; max-width: 310px; order: 2; a { display: block; color: #fff; position: relative; font-family: "NeueHaasUnicaW1G-Medium", sans-serif; padding: 2px; &::after { content: ""; display: block; width: 0.75rem; height: 0.75rem; border-radius: 100vmax; position: absolute; left: 50%; transform: translateX(-50%); top: -1rem; background-color: #ffffff; opacity: 0; transition: ease 300ms } &:hover { &::after { opacity: 1; } } } } } .copy { font-family: "NeueHaasUnicaW1G-Medium", sans-serif; } // ループテキスト .loop__wrapper { font-size: clamp(80px, 11.458333333333332vw, 220px); display: flex; overflow: hidden; text-align: center; width: 100%; &__text { display: inline-block; white-space: nowrap; animation: scrollTxt 30s linear infinite; margin-right: 40px; font-family: "NeueHaasUnicaW1G-Bold"; letter-spacing: 0; &:nth-of-type(odd) { color: #fff; } &:nth-of-type(even) { color: rgba(255, 255, 255, 0); -webkit-text-stroke: 1.3px #fff; } } } @keyframes scrollTxt { 0% { transform: translateX(0); } 100% { transform: translateX(-100%); } } /* PC用 ------------------------------------------------------------*/ @media only screen and (max-width: 1699px) {} @media only screen and (max-width: 1400px) { /* ------------------------------ mv ------------------------------ */ .mv { &__left { position: absolute; left: -1.5vw; top: 12vw; } &__right { position: absolute; right: -1.5vw; bottom: 12vw; } } } @media only screen and (max-width: 1300px) { .br1300 { display: none; } /* ------------------------------ top_skill ------------------------------ */ .sKill__grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 4vw; row-gap: 6vw; li { height: 280px; } } } @media only screen and (max-width: 1024px) { $p: 100; $pixel: 120; @while $p < 310 { .padding#{$p} { padding-top: $pixel + px; padding-bottom: $pixel + px; } $p: $p+10; } $m: 100; @while $m < 310 { .margin#{$m} { margin-top: $pixel + px; margin-bottom: $pixel + px; } $m: $m+10; } $pt: 120; @while $pt < 310 { .pt-#{$pt} { padding-top: $pixel + px; } $pt: $pt+10; } $pb: 120; @while $pb < 310 { .pb-#{$pb} { padding-bottom: $pixel + px; } $pb: $pb+10; } $mt: 120; @while $mt < 310 { .mt-#{$mt} { margin-top: $pixel + px; } $mt: $mt+10; } $mb: 120; @while $mb < 310 { .mb-#{$mb} { margin-bottom: $pixel + px; } $mb: $mb+10; } /******************/ // ボタン .link__btn { width: 200px; a { height: 60px; padding: 0 80px 0 20px; } &::after { height: 18px; right: 40px; } } .btn__icon { top: 45%; right: 15px; width: 14px; } /* ------------------------------ mv ------------------------------ */ .mv { &__left { top: 20vw; } &__right { bottom: 20vw; } &__img { width: 90vw; } } /* ------------------------------ header ------------------------------ */ .logo { width: 67px; left: 30px; } .header__right { display: none; } /* ------------------------------ top_message ------------------------------ */ .message_grid { grid-template-columns: repeat(1, 1fr); row-gap: 30px; } .try__img { width: 75vw; margin: 40px auto 40px; } /* ------------------------------ top_works ------------------------------ */ .works__navbox { max-width: 480px; display: block; } .works__navlink { max-width: 300px; margin: 40px 0 30px; } /* ------------------------------ top_skill ------------------------------ */ .skill__img { height: 66px; min-width: 40px; } /* ------------------------------ top_about ------------------------------ */ .name__box { display: block; } /* ------------------------------ top_contact ------------------------------ */ .contact { &__circle { width: 60vw; max-width: 320px; } &__hand__img { width: 60px; } } /* ------------------------------ banner ------------------------------ */ .bg__btn { right: 30px; top: 25px; } .show { &__container { grid-template-columns: repeat(2, 1fr); } &__box { padding: 2rem; } &__txt { margin-top: 0; } } /* ------------------------------ works__under ------------------------------ */ /* ------------------------------ works__detail ------------------------------ */ .works__detail__size { height: 360px; } .works__detail__flex { display: block; margin-bottom: 60px; } .works__detail__dl { width: 100%; } .works__detail__text { width: 100%; } } @media only screen and (max-width: 740px) { @for $i from 30 through 70 { .flex_#{$i} { width: 100%; } } $p: 80; $pixel:80; @while $p < 310 { .padding#{$p} { padding-top: $pixel + px; padding-bottom: $pixel + px; } $p: $p+10; } $m: 80; @while $m < 310 { .margin#{$m} { margin-top: $pixel + px; margin-bottom: $pixel + px; } $m: $m+10; } $pt: 110; @while $pt < 310 { .pt-#{$pt} { padding-top: $pixel + px; } $pt: $pt+10; } $pb: 110; @while $pb < 300 { .pb-#{$pb} { padding-bottom: $pixel + px; } $pb: $pb+10; } $mt: 110; @while $mt < 310 { .mt-#{$mt} { margin-top: $pixel + px; } $mt: $mt+10; } $mb: 110; @while $mb < 310 { .mb-#{$mb} { margin-bottom: $pixel + px; } $mb: $mb+10; } /*****************/ // line-height .lineh025 { line-height: 2; } /* ------------------------------ mv ------------------------------ */ .mv { height: 90vh; &__left { top: 30vw; } &__right { bottom: 30vw; } &__txt01, &__txt02 { font-size: clamp(120px, 15.8vw, 305px); } } @keyframes UpDown { 0% { transform: translateY(0); } 100% { transform: translateY(10px); } } /* ------------------------------ top_works ------------------------------ */ .slider__box { a { padding: 2rem 3rem; } } /* ------------------------------ top_skill ------------------------------ */ .sKill__grid { display: grid; grid-template-columns: repeat(1, 1fr); row-gap: 30px; li { height: 220px; &:nth-of-type(odd) { transform: rotate(-2deg); } &:nth-of-type(even) { transform: rotate(2deg); } } } .sKill__text { font-size: 15px; } .skill__img { height: 66px; min-width: 40px; } /* ------------------------------ top_about ------------------------------ */ .about { &__box { background-color: #fff; border-radius: 15px; padding: 6vw; } &__grid { grid-template-columns: repeat(1, 1fr); } } /* ------------------------------ footer ------------------------------ */ .footer { background: $green; padding-bottom: 80px; &__flexbox { display: block; margin-top: 40px; } &__nav { order: 2; margin-bottom: 30px; a { font-size: 17px; } } } /* ------------------------------ works__under ------------------------------ */ .main__head { min-height: 340px; } .works__under__btn { a { width: 90px; } } .works__under__btnbox { padding: 2vw 2vw; margin-top: 30px; } .works__under__grid { grid-template-columns: repeat(1, 1fr); } /* ------------------------------ works__detail ------------------------------ */ .works__detail__size { height: 300px; } .works__detail__box { border-radius: 10px; padding: 25px; } /* ------------------------------ banner ------------------------------ */ .show { &__container { row-gap: 40px; } } /* ------------------------------ contactform ------------------------------ */ .contactform { &__text { text-align: center; margin: 40px 0; font-size: clamp(16px, 1.25vw, 24px); } &__table { background-color: #fff; border-radius: 15px; padding: 8.3vw 8.3vw 10vw; >div { margin-bottom: 25px; } } &__cell2 { width: 100%; } &__size { input { width: 100%; border: 1px solid $green; padding: 10px 20px; border-radius: 5px; height: 55px; } } &__area { textarea { width: 100%; border: 1px solid $green; padding: 10px 20px; border-radius: 5px; height: 240px; } } } .submit { input { font-size: 16px; max-width: 260px; padding: 15px 10px; } } }