芝麻web文件管理V1.00
编辑当前文件:/home/r5772835/public_html/anjii.ycreate.jp/sass/style.scss
@use "./base/base"; @use "./base/reset"; @use "./global" as *; //共通パーツ .u-md-none{ @include mq("md"){ display: none; } } .u-md-show { display: none; @include mq("md") { display: block ; } } .inner{ width: 100%; //widthとmax-width併用パターン max-width: 1080px;//画面幅が1080以下でも100% padding-left: 60px; padding-right: 60px; margin-right: auto; margin-left: auto; @include mq("lg2"){ padding-right: 15px; padding-left: 15px; } } .title{ font-family: $Third-font; margin-left: auto; margin-right: auto; margin-top: auto; margin-bottom: auto; font-style: 34px; text-align: center; } .heading{ position: relative; font-size: 36px; font-family: $Third-font; padding-top: 50px; padding-bottom: 16px; letter-spacing: 0.05em; font-weight: $regular; justify-content: center; //background-image: linear-gradient(to left top, transparent 50%, #333 50%, #333 51%, transparent 51%) display: flex; justify-content: center; align-items: center; font-size: 26px; text-align: center; } .heading::before, .heading::after{ content: ''; width: 1px; height: 40px; background-color: $black; } .heading::before{ margin-right: -18px; transform: rotate(-136deg); margin-top: 75px; } .heading::after{ margin-left: -19px; margin-top: -70px; transform: rotate(44deg); } .diagonal-line{ position: absolute; content: ""; background-color: $black; transform: rotate(-30deg ); } .text{ font-size: 14px; font-weight: 50; line-height: 1.785; font-family: $base-font; } .text.text--large{//二つ指定しているため、優先度が高くなる font-size: 24px; line-height: 2; @include mq("md"){ font-size: 20px; } } .text.text--reverse{ color: $black; } //ヘッダー .header{ position: fixed;//ヘッダー固定 top: 0; left: 0; width: 100%; height: 80; background-color: $white; z-index: 1000; } .header__inner{ display: flex;//横並びに justify-content: space-between; align-items: center; height: inherit; padding: 0 60px; } .header__logo{ font-size: 40px; color: $black; //text-transform:uppercase;//大文字にする font-family: $Third-font; font-weight: $medium; height: inherit;//親要素の高さを継承 } .header__nav{ height: inherit; } .header__items{ display: flex; height: inherit; align-items: center; } .header__item{ margin-left: 40px; } .header__link{ height: inherit; display: flex; align-items: center; font-family: $Third-font; color: $black; font-weight: $normal; font-size: 16px; } //ハンバーガー .hamburger { position: fixed; top: 27px; right: 15px; width: 25px; height: 16px; z-index: 9999; cursor: pointer; } .hamburger span { display: inline-block; position: absolute; left: 0; width: 100%; height: 2px; background-color: $black; transition: 0.3s all; //線太さ分からず! } .hamburger span:nth-child(1){ top: 0; } .hamburger span:nth-child(2){ top: 8px; } .hamburger span:nth-child(3){ top: 16px; } .hamburger span.is-active:nth-child(1){ top: 15px; transform: rotate(-45deg); } .hamburger span.is-active:nth-child(2){ opacity: 0; } .hamburger span.is-active:nth-child(3){ top: 15px; transform: rotate(45deg); } //ドロワー .drawer-menu{ display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100vh; background-color: $white; z-index: 5000; } .drawer-menu__inner{ display: flex; justify-content: center; align-items: center; width: 375px; height: 664px; margin: 0 auto; } .drawer-menu__items{ display: flex; flex-direction: column; } .drawer-menu__item{ display: inline-block; color: $black; } .drawer-menu__item:not(*first-child){ margin-top: 50px; } .drawer-menu__link{ color: $black; font-size: 16px; line-height: 1.875; font-family: $Third-font; font-weight: $medium; letter-spacing: 0.05em; } #g-nav{ /*position:fixed;にし、z-indexの数値を大きくして前面へ*/ position:fixed; z-index: 999; /*ナビのスタート位置と形状*/ top:0; right: -120%; width:100%; height: 100vh;/*ナビの高さ*/ background:#ffffff; /*動き*/ transition: all 0.6s; } /*アクティブクラスがついたら位置を0に*/ #g-nav.panelactive{ right: 0; } /*ナビゲーションの縦スクロール*/ #g-nav.panelactive #g-nav-list{ /*ナビの数が増えた場合縦スクロール*/ position: fixed; z-index: 999; width: 100%; height: 100vh;/*表示する高さ*/ overflow: auto; -webkit-overflow-scrolling: touch; } /*ナビゲーション*/ #g-nav ul { /*ナビゲーション天地中央揃え*/ position: absolute; z-index: 999; top:50%; left:50%; transform: translate(-50%,-50%); } /*リストのレイアウト設定*/ #g-nav li{ list-style: none; text-align: center; } #g-nav li a{ color: #000000; text-decoration: none; padding:10px; display: block; text-transform: uppercase; letter-spacing: 0.1em; font-weight: bold; } /*========= ボタンのためのCSS ===============*/ .openbtn{ position:fixed; z-index: 9999;/*ボタンを最前面に*/ top:10px; right: 10px; cursor: pointer; width: 50px; height:50px; } /*×に変化*/ .openbtn span{ display: inline-block; transition: all .4s; position: absolute; left: 14px; height: 3px; border-radius: 2px; background-color: #000000; width: 45%; } .openbtn span:nth-of-type(1) { top:15px; } .openbtn span:nth-of-type(2) { top:23px; } .openbtn span:nth-of-type(3) { top:31px; } .openbtn.active span:nth-of-type(1) { top: 18px; left: 18px; transform: translateY(6px) rotate(-45deg); width: 30%; } .openbtn.active span:nth-of-type(2) { opacity: 0; } .openbtn.active span:nth-of-type(3){ top: 30px; left: 18px; transform: translateY(-6px) rotate(45deg); width: 30%; } //メインビュー .mv { background: url(/images/main-bg\ .jpg); background-repeat: no-repeat; background-size: contain; background-position: center; height: 100vh; margin: 0 60px; @include mq("lg"){ background-size: cover; background-position: center; margin: 0 15px; } } /* メインビューの内側 */ //コンセプト .concept{ justify-content: center; margin: 0 60px ; @include mq("lg"){ margin: 0 25px; } } .concept__inner{ padding-left: 25px; padding-right: 25px; margin-right: auto; margin-left: auto; } h2.concept__heading{ text-align: center; } .concept__container{ } .concept__text { @include mq("md"){ text-align: left; display: inline-block;//親要素のプロパティを維持 } } //Menu .menu{ margin-top: 100px; @include mq("lg"){ padding: 0 15px; } } h2.menu__heading { text-align: center; @include mq("lg"){ margin: 0 15px; } } .menu__heading::before{ margin-right: 5px; transform: rotate(-136deg); margin-top: 75px; } .menu__heading::after{ margin-left: -5px; margin-top: -70px; transform: rotate(44deg); } .menu__inner{ margin: 0px 0 0; background-color: $gray ; } .menu__container{ width: 100% ; } .menu__cards { justify-content: center; display: grid; grid-template-columns: repeat(auto-fit, minmax(350px,1fr)); column-gap: 75px; row-gap: 50px; margin-left: 60px; @include mq("tb"){ grid-template-columns: repeat(1,315px); grid-template-rows: repeat(6,360px); } } .menu__cards:last-child { margin-right: 60px; } .menu__name{ display: flex; align-items: center; justify-content: center; width: 160px; height: 64px; background-color: $white; position: relative; top: -32px; left: 160px; font-family: $Third-font; font-size: 20px; } .menu__text{ @include mq("md"){ text-align: left; } } //Menu2 .menu2{ width: 90%; background-image: url(../images/menu-bg.jpg); margin: 60px 60px; background-size: cover; height: 100%; align-items: center; background-position: left; @include mq("md"){ background-position: 25% 0%; margin: 15px 15px; } } .menu2__text{ font-family: $base-font; color: $white; font-size: 14px; height: 380px; position: relative; top: 140px; left: 500px; @include mq("lg"){ width: 270px; text-align: left; position: relative; top: 140px; left: 35%; margin: 0 15px; } @include mq("md"){ text-align: left; position: relative; margin: 0 15px; top: 100px; left: 40%; } @include mq("tb"){ left: 10%; } } .menu2__text p{ justify-content: center; text-align: left; line-height: 2; font-weight:$regular; padding: 0 20px; color: rgba( 255, 255, 255, 0.5); } //段違い ul.practice{ padding:0; } ul.practice li1{ list-style:none; width:33.333333%; height:15%; border:1px solid #000; display:inline-block; box-sizing:border-box; font-size:32px; margin:0; } //Menuアニメーション .mask_wrap{ display: table; overflow: hidden; } .mask-wrap .mask{ display: table; position: relative; margin-bottom: .25em; left: -100%; overflow: hidden; } .mask-wrap .mask-bg{ display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #000; } /* animation */ @-webkit-keyframes passing-bar{ 0% { left: 0; right: auto; width: 0; } 50% { left: 0; right: auto; width: 100%; } 51% { left: auto; right: 0; width: 100%; } 100% { left: auto; right: 0; width: 0; } } @keyframes passing-bar{ 0% { left: 0; width: 0; } 50% { left: 0; width: 100%; } 51% { left: 0; width: 100%; } 100% { left: 100%; width: 0; } } @-webkit-keyframes passing-txt{ 0% { opacity: 0; } 50% { opacity: 0; } 100% { opacity: 1; } } @keyframes passing-txt{ 0% { opacity:0; } 50% { opacity:0; } 100% { opacity:1; } } /* css */ .passing .passing-box { display: block; text-align: center; } .passing .passing-bar { position: relative; display: inline-block; /*後ほど解説*/ -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } .passing .passing-bar:before { content: ''; display: inline-block; width: 0; height: 100%; position: absolute; z-index: 1; /* 任意の値 */ background: #000; } .passing .passing-txt { opacity: 0; /* 後ほど解説 */ -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); /* 任意の値 */ line-height: 1.5; } .passing.move .passing-bar:before { -webkit-animation: passing-bar 1s ease 0s 1 normal forwards; animation: passing-bar 1s ease 0s 1 normal forwards; } .passing.move .passing-txt { -webkit-animation: passing-txt 0s ease .5s 1 normal forwards; animation:passing-txt 0s ease .5s 1 normal forwards; } .passing:nth-child(3n-1){ margin-top: 130px; @include mq("lg"){ margin-top: 0; } } .passing:nth-child(3n){ margin-top: 60px; @include mq("lg"){ margin-top: 0; } } //Gallery .gallery{ align-items: center; } .gallery__inner gallery{ align-items: center; justify-content: center; } h2.gallery__heading{ text-align: center; } .gallery__heading::before{ margin-right: px; transform: rotate(-136deg); margin-top: 75px; } .gallery__heading::after{ margin-left: -9px; margin-top: -70px; transform: rotate(44deg); } .gallery__inner{ margin: 50px 60px 0; } .gallery__heading{ width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; position: relative; font-family: $Third-font; background-color: $gray ; } .gallery__container{ width: 100% ; } .gallery__cards{ justify-content: center; margin-top: 50px; display: grid; grid-template-columns: repeat(4, 270px); grid-template-rows: repeat(2, 340px); column-gap: 40px; row-gap: 40px; margin-left: 60px; @include mq("xl"){ grid-template-columns: repeat(3, 270px); grid-template-rows: repeat(3, 340px); } @include mq("lg"){ grid-template-columns: repeat(2, 270px); grid-template-rows: repeat(4, 340px); column-gap: 30px; row-gap: 30px; } @include mq("tb"){ grid-template-columns: repeat(2, 150px); grid-template-rows: repeat(4, 188px); column-gap: 30px; row-gap: 30px; } } .gallery__cards:last-child { margin-right: 60px; } .gallery__name{ display: flex; } //Galleryアニメーション /*================================================== スタート時は要素自体を透過0にするためのopacity:0;を指定する ===================================*/ .box{ opacity: 0; } /*================================================== 動かしたい動き(今回は” ふわっ” を採用) ===================================*/ .fadeUp { animation-name:fadeUpAnime; animation-duration:0.5s; animation-fill-mode:forwards; opacity: 0; } @keyframes fadeUpAnime{ from { opacity: 0; transform: translateY(100px); } to { opacity: 1; transform: translateY(0); } } //Location .location{ margin: 40px 60px ; background-color: $gray ; @include mq("tb"){ margin: 40px 15px; } } .location__heading{ margin-top: 50px; } .location__cards{ margin-top: 10px; padding-bottom: 50px; justify-content: center; display: grid; grid-template-columns :repeat(2, 600px); grid-template-rows :repeat(1, 400px); @include mq("xl"){ grid-template-columns :repeat(2, 400px); grid-template-rows :repeat(1, 400px); } @include mq("lg"){ grid-template-columns :repeat(1, 600px); grid-template-rows :repeat(2, 400px); } @include mq("md"){ grid-template-columns :repeat(1, 315px); grid-template-rows :repeat(2, 315px); } } .location__card{ background: #000; color: white; margin: 0 0 0; @include mq("md"){ font-size: 10px; } } .location__card__container{ background: #000; padding-top: 84px; @include mq("md"){ padding-top: 60px; } } .location__text { display: flex; justify-content: space-between; text-align: left; margin: 0px 140px 0px; @include mq("xl"){ margin: 0px 50px 0px; } @include mq("md"){ max-width: 0 0px 0; } } .location__text-menu { flex: 1; display: inline-block; vertical-align: top; font-family: $Third-font; } .location__text-menu li:not(:last-child){ padding-top: 15px; padding-bottom: 15px; border-bottom: 1px solid #c0b9b9; color: rgba( 255, 255, 255, 0.8); } .location__text-menu li{ padding-top: 15px; color: rgba( 255, 255, 255, 0.8); } .location__text-menu li::after{ width: 260px; } .location__text-content { flex: 2; display: inline-block; margin: 0; padding: 0; vertical-align: top; flex-basis: 100%; /* 左側幅を50%にする */ color: rgba( 255, 255, 255, 0.5); } .location__text-content li:not(:last-child){ border-bottom: 1px solid #c0b9b9; padding-top: 15px; padding-bottom: 15px; color: rgba( 255, 255, 255, 0.5); } .location__text-content li{ padding-top: 15px; color: rgba( 255, 255, 255, 0.5); } .location__text-content li:last-child{ padding-top: 15px; color: rgba( 255, 255, 255, 0.5); } .google-map iframe { height: 400px; -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); @include mq("md"){ height: 315px; } } //Reserve #reserve{ width: 95%; margin: 50px 60px; background-image: url(../images/reserve.jpg); height: 100%; height: 300px; background-size: cover; background-position: left; @include mq("md"){ margin: 50px 10px; } } .reserve{ padding: 30px; } .reserve-container{ text-align: center; align-items: center; } .reserve__text{ color: $white; font-family: $base-font; font-size: 14px; padding-top: 80px; } //ボタン .button{ padding-top: 10px; font-size: 24px; background: $white; font-family: $Third-font; color: $black; width: 225px; height: 56px; } //フッター footer { background-color: $black; padding: 27px 0; text-align: center; @include mq("md"){ padding: 17.5px 0; } } .footer__copyright{ font-family: $second-font; font-size: 14px; letter-spacing: 0.05em; color: $white; } /*== ボタン共通設定 */ .btn{ /*アニメーションの起点とするためrelativeを指定*/ position: relative; overflow: hidden; /*ボタンの形状*/ text-decoration: none; display: inline-block; border: 1px solid #555;/* ボーダーの色と太さ */ padding: 10px 30px; text-align: center; outline: none; /*アニメーションの指定*/ transition: ease .2s; } /*ボタン内spanの形状*/ .btn span { position: relative; z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/ color:#333; } .btn:hover span{ color:#fff; } /*== 背景が流れる(左から右) */ .bgleft:before { content: ''; /*絶対配置で位置を指定*/ position: absolute; top: 0; left: 0; z-index: 2; /*色や形状*/ background:#333;/*背景色*/ width: 100%; height: 100%; /*アニメーション*/ transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s; transform: scale(0, 1); transform-origin: right top; } /*hoverした際の形状*/ .bgleft:hover:before{ transform-origin:left top; transform:scale(1, 1); } .btn.bgleft{ background: $white; width: 222px; }