@charset "UTF-8"; /* CSS Document */ //ブレイクポイントを指定------ここから $xl: 1399px; $lg: 1199px; $md: 991px; $sm: 767px; $xs: 575px; @mixin xl { @media screen and (max-width: ($xl)) { @content; } } @mixin lg { @media screen and (max-width: ($lg)) { @content; } } @mixin md { @media screen and (max-width: ($md)) { @content; } } @mixin sm { @media screen and (max-width: ($sm)) { @content; } } @mixin xs { @media screen and (max-width: ($xs)) { @content; } } //ブレイクポイントを指定------ここまで $base-color: #28BE69; $font-color: #006449; //共通パーツ----------------------------------------ここから .inner { width: 83%; margin: 0 auto; @include md { width: 100%; } } //ul-header #ul-header { margin-bottom: 4rem; @include xs { margin-bottom: 2rem; } .header-img { position: relative; height: 330px; overflow: hidden; @include sm { height: 280px; } img { width: 100%; height: 100%; object-fit: cover; } &::after{ content: ""; position: absolute; top: 0; left: 0; background-image: url(../img/nav-bg.svg); background-size: 30px; background-repeat: repeat; mix-blend-mode: multiply; width: 100%; height: 100%; z-index: 0; } } h1 { position: relative; display: inline-block; font-size: 60px; font-size: 6rem; font-weight: 400; letter-spacing: 0.1em; color: $font-color; background-color: #fff; line-height: 1; padding: 3rem; margin-top: -5.5rem; margin-bottom: 0; @include md { font-size: 40px; font-size: 4rem; } @include xs { font-size: 35px; font-size: 3.5rem; letter-spacing: 0; padding: 2rem; } span { display: block; font-family: 'Caveat', cursive; font-size: 30px; font-size: 3rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1; color: #333; margin-top: 2rem; @include xs { font-size: 20px; font-size: 2rem; margin-top: 1rem; } } } } //in-page #in-page { margin-bottom: 8rem; @include xs { margin-bottom: 6rem; } ul { display: flex; justify-content: flex-end; margin-bottom: 0; @include xs { flex-wrap: wrap; } li { margin-left: 1em; letter-spacing: 0.1em; @include xs { width: 100%; margin-left: 2em; margin-bottom: 0.5rem; } span { color: $font-color; } a { color: #333; &:hover { color: $font-color; } } } } } //header----------------------------------------ここから header { position: absolute; top: 0; left: 0; right: 0; text-shadow: 0px 0px 5px rgba(0,100,73,1); z-index: 10; .container { &>.row { justify-content: space-between; } } .header-top { display: flex; justify-content: space-between; padding-top: 1rem; padding-right: 7rem; @include lg { flex-wrap: wrap; } @include md { padding-right: 3rem; } p { color: #fff; &:first-child { font-size: 12px; font-size: 1.2rem; @include lg { margin-bottom: 0; } @include sm { margin-bottom: 0.5rem; } @include xs { display: none; } } &:last-child { font-size: 15px; font-size: 1.5rem; @include lg { line-height: 1.7; font-size: 14px; font-size: 1.4rem; margin-bottom: 0.5rem; } @include md { margin-top: 4rem; margin-bottom: 0.5rem; } @include sm { display: none; } i { margin-left: 1em; &:first-of-type { @include md { margin-left: 0; } } } } } } .header-main { @include md { margin-top: -5.5rem; } @include sm { margin-top: 0; } @include xs { margin-top: 0.5rem; } .row { justify-content: space-between; &>a { display: flex; align-items: center; width: auto; @include md { margin-bottom: 1rem; } img { width: 50px; margin-right: 1rem; filter: drop-shadow(0 0 5px rgba(0,100,73,1)); @include md { width: 45px; } } h1 { font-size: 36px; font-size: 3.6rem; font-weight: 500; color: #fff; margin-bottom: 0; @include lg { font-size: 26px; font-size: 2.6rem; } @include xs { font-size: 18px; font-size: 1.8rem; } span { font-size: 45px; font-size: 4.5rem; margin-left: 1rem; @include lg { font-size: 35px; font-size: 3.5rem; } @include xs { display: block; font-size: 23px; font-size: 2.3rem; margin-left: 0; } } } } ul { display: flex; flex-wrap: wrap; width: 45%; margin-bottom: 0; line-height: 1.7; @include lg { width: 47%; } @include md { width: 100%; justify-content: center; } @include md { display: none; } li { margin-right: 1rem; &:last-child { margin-right: 0; } &::after { content: ""; border-right: solid 1px #fff; margin-left: 1rem; } &:nth-child(4) { &::after { border-right: none; } } &:last-child { &::after { border-right: none; } } a { color: #fff; @include lg { font-size: 14px; font-size: 1.4rem; } } } } } } } //gloval_nav----------------------------------------ここから #gloval_nav { display: none; position: fixed; width: 100%; height: 100vh; top: 0; left: 0; right: 0; bottom: 0; z-index: 200; background-color: #fff; background-image: url("../img/nav-bg.svg"); background-size: 18px; background-repeat: repeat; .row { width: 60%; @include lg { width: 72%; } @include md { width: 100%; } &>ul { padding-top: 8rem; padding-left: 2rem; @include sm { padding-top: 9rem; padding-left: 0; padding-right: 0; } @include xs { padding-top: 6rem; padding-left: 1.5rem; } &>li { margin-bottom: 1rem; @include xs { margin-bottom: 0; } &>a { font-size: 18px; font-size: 1.8rem; font-weight: 600; color: $font-color; @include xs { font-size: 14px; font-size: 1.4rem; } &:hover { color: #a81c24; } &::before { font-family: "Font Awesome 5 Free"; content: "\f0da"; font-weight: 900; margin-right: 0.5rem; } } ul { li { @include xs { line-height: 1.6; } a { font-size: 15px; font-size: 1.5rem; font-weight: 500; color: $font-color; @include xs { font-size: 14px; font-size: 1.4rem; } &:hover { color: #a81c24; } &::before { content: "・"; } } } } } } } .nav-footer { position: absolute; left: 0; bottom: 0; width: 100%; background-color: $base-color; .container { position: relative; &>img { position: absolute; right: 0; bottom: 150px; @include sm { display: none; } } } .row { width: 100%; height: 150px; align-items: center; justify-content: space-between; @include sm { height: 120px; } @include xs { height: 90px; } } .nf-left { display: flex; align-items: center; @include xs { justify-content: center; } img { width: 60px; margin-right: 1rem; } h1 { font-size: 20px; font-size: 2rem; font-weight: 500; color: #fff; letter-spacing: 0.05em; margin-bottom: 0; @include sm { font-size: 18px; font-size: 1.8rem; } @include sm { font-size: 18px; font-size: 1.8rem; } span { display: block; font-size: 25px; font-size: 2.5rem; @include sm { font-size: 23px; font-size: 2.3rem; } } } } .nf-right { font-size: 15px; font-size: 1.5rem; color: #fff; line-height: 1.7; text-align: right; @include sm { font-size: 14px; font-size: 1.4rem; } @include xs { display: none; } span { font-feature-settings: "palt"; } i { margin-left: 1em; @include sm { margin-left: 0.8em; } } } } } #nav_button { position: fixed; top: 0; right: 0; z-index: 300; transition: 0.5s; p { font-family: 'Cormorant Garamond', serif; font-size: 15px; font-size: 1.5rem; font-weight: 400; color: #4d4d4d; text-align: center; line-height: 1.5; @include sm { font-size: 14px; font-size: 1.4rem; } } } #nav_toggle { position: relative; top: 0; right: 0; width: 70px; height: 70px; background-color: $base-color; @include md { width: 60px; height: 60px; } &>div { position: relative; width: 32px; height: 23px; margin: auto; top: 24px; @include md { top: 20px; } span { width: 100%; height: 2px; left: 0; display: block; background: #fff; position: absolute; -webkit-transition: top .5s ease, -webkit-transform .3s ease-in-out; transition: top .5s ease, -webkit-transform .3s ease-in-out; transition: transform .3s ease-in-out, top .5s ease; transition: transform .3s ease-in-out, top .5s ease, -webkit-transform .3s ease-in-out; /* #nav-toggle close */ &:nth-child(1) { top: 0; } &:nth-child(2) { top: 10px; } &:nth-child(3) { top: 20px; } } } } .open #nav_toggle { &> div { top: 20px; @include md { top: 15px; } } span { &:nth-child(1) { top: 15px; -webkit-transform: rotate(45deg); transform: rotate(45deg); } &:nth-child(2) { top: 15px; width: 0; left: 50%; } &:nth-child(3) { top: 15px; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } } } //footer------------------------------------------ここから footer{ background: $base-color; padding-top: 5rem; position: relative; &::before{ position: absolute; top: -85px; left: 20px; content: ''; display: block; width: 130px; height: 130px; z-index: -1; background-image: url("../img/footer-illust01.svg"); background-size: contain; background-repeat: no-repeat; vertical-align: middle; } &::after{ position: absolute; top: -85px; right: 20px; content: ''; display: block; width: 91px; height: 130px; z-index: -1; background-image: url("../img/footer-illust02.svg"); background-size: contain; background-repeat: no-repeat; vertical-align: middle; } .inner { &>.row { justify-content: space-between; } } .footer-left { width: 40%; @include sm { width: 100%; text-align: center; } } .footer-right { width: 55%; @include md { width: 57%; } @include sm { width: 90%; margin: 0 auto; } @include xs { display: none; } .row { justify-content: space-between; &>ul { width: -moz-fit-content; width: fit-content; } } } .d-flex{ @include sm { justify-content: center; } img{ width: 48px; @include md { width: 44px; } @include sm { width: 48px; } } p{ font-size: 27px; font-size: 2.7rem; padding-left: 1.5rem; letter-spacing: 0.2rem; color: #ffffff; margin-bottom: 0; text-align: left; @include md { font-size: 25px; font-size: 2.5rem; } @include xs { font-size: 27px; font-size: 2.7rem; } span{ font-size: 80%; } } } .d-flex + p{ font-size: 15px; font-size: 1.5rem; color: #ffffff; padding-top: 1.5rem; @include sm { padding-top: 1rem; display: inline-block; text-align: left; margin-bottom: 3rem; } i + i{ padding-left: 1em; } } nav{ ul{ li{ a{ font-weight: bold; color: $font-color; &:hover{ color: #ffffff; } &::before{ font-family: "Font Awesome 5 Free"; content: "\f0da"; font-weight: 900; padding-right: 5px; } &:hover::before{ color: #ffffff; } } } ul{ li{ text-indent: -1.2em; padding-left: 1.2em; a{ font-weight: normal; font-size: 14px; font-size: 1.4rem; &::before{ content: '・'; } } } } } } .copyright{ border-top: 1px solid #ffffff; padding: 2rem 0; margin:4rem 0 0 0; text-align: center; color: #ffffff; font-size: 12px; font-size: 1.2rem; @include xs { margin-top: 0; } } }