main { @media (max-width: 768px) { width: 100%; } } //カバー// .top-cover { } .fv { width: 100%; height: 100%; object-fit: cover; } .fv-text { position: absolute; bottom: 10%; left: 5%; } .fv-date { position: absolute; top: 10%; left: 0; } .pc-cover { position: relative; height: 100%; @media (max-width: 768px) { display: none; } } .sp-cover { img { width: 100%; } @media (min-width: 769px) { display: none; } } //1FESTIVALとは// .top-introduction { position: relative; overflow: hidden; } .leaves-container { overflow: hidden; width: 100%; position: relative; padding: 9rem 0; @media (max-width: 768px) { padding: 6rem 0 8rem 0; } } /* ===== 落ち葉のスタイル ===== */ /* 落ち葉の共通スタイル */ .leaf { background-size: contain; background-repeat: no-repeat; background-position: center center; position: absolute; animation: animate-leaf 8s linear; } /* 落ち葉1 */ .leaf-1 { background-image: url("../../images/top-introduction/leaf-1.svg"); /* 任意のパスを記入 */ } /* 落ち葉2 */ .leaf-2 { background-image: url("../../images/top-introduction/leaf-2.svg"); /* 任意のパスを記入 */ } /* 落ち葉3 */ .leaf-3 { background-image: url("../../images/top-introduction/leaf-3.svg"); /* 任意のパスを記入 */ } .circle { z-index: 0; } .leaves { z-index: 2; } .circle.right { position: absolute; top: 0; right: 0; } .leaves.right { position: absolute; top: 5rem; right: 0; } .circle.left { position: absolute; bottom: 6rem; left: 0; } .leaves.left { position: absolute; bottom: 33rem; left: 0; } .intro-info { display: flex; justify-content: center; margin-bottom: 10rem; @media (max-width: 768px) { flex-direction: column; margin-bottom: 4rem; } } .intro-left { @media (max-width: 768px) { width: 90%; margin: 0 auto; } } .intro-slide { width: 48.8rem; box-shadow: 4rem 4rem 0 $yellow; border-radius: 2.5rem; @media (max-width: 768px) { width: calc(100% - 1.6rem); box-shadow: 1.6rem 1.6rem 0 $yellow; } img { width: 48rem; height: 36rem; border-radius: 2.5rem; border: 4px solid $blue; @media (max-width: 768px) { width: calc(100% - 0.6rem); height: 20.8rem; border: 3px solid $blue; } } } .intro-right { margin: 1rem 0 0 8rem; span { &.strong { color: $orange; font-size: 2.2rem; } } @media (max-width: 768px) { margin: 0 auto; width: 90%; span { &.strong { color: $orange; font-size: 1.8rem; } } } p { font-weight: 700; font-size: 2rem; line-height: 4.2rem; position: relative; z-index: 10; @media (max-width: 768px) { font-size: 1.4rem; line-height: 2.8rem; } } } .intro-slick { display: flex; z-index: 10; img { width: 30rem; height: 22.5rem; margin-right: 1.5rem; border-radius: 1.5rem; @media (max-width: 768px) { width: 100%; height: 13rem; } } } .intro-slide-item { margin-right: 1rem; @media (max-width: 768px) { margin-right: 2rem; } } .slick-dots { bottom: 1.5rem; text-align: right; right: 2.5rem; li { width: 0.5rem; } li button:before { color: white; opacity: 0.75; font-size: 0.6rem; } li.slick-active button:before { color: $yellow !important; font-size: 1rem; top: 0.1rem; opacity: 1; } } .slick-slide { height: auto !important; } .intro-title { position: relative; h1 { color: $orange; font-size: 4.4rem; padding-bottom: 5rem; margin-bottom: 0; position: relative; z-index: 10; font-weight: 900; @media (max-width: 768px) { font-size: 3rem; } } img { position: absolute; bottom: 3rem; left: -3rem; z-index: 0; } } .whats-1fes { span { font-size: 3.6rem; } } //ニュース// .top-news { color: $yellow; background-color: $blue; padding: 8rem 0; &__list { padding: 0; &_item { list-style: none; } } @media (max-width: 768px) { padding: 4rem 0 6rem 0; } } .top-title { font-size: 5.6rem; text-align: center; margin: 0 0 2rem 0; font-weight: 900; @media (max-width: 768px) { font-size: 3rem; } } .news-items { width: 60%; margin: 0 auto; @media (max-width: 768px) { width: 80%; } a { color: $yellow; } } .news-item { display: flex; border-top: 1px solid $yellow; @media (max-width: 768px) { flex-direction: column; padding: 1rem 0; } p { font-weight: 700; font-size: 1.6rem; @media (max-width: 768px) { font-size: 1.3rem; margin: 0; } } } .news-item:nth-of-type(3) { border-bottom: 1px solid $yellow; } .news-date { margin-right: 5rem; } .news-button { margin: 3rem auto; margin-bottom: 0; background-color: $yellow; width: 25rem; height: 7.4rem; border-radius: 3.7rem; @media (max-width: 768px) { height: 4.6rem; width: 17.2rem; } a { display: flex; line-height: 7.4rem; justify-content: center; align-items: center; color: $blue; @media (max-width: 768px) { line-height: 4.6rem; } } h3 { margin: 0; font-size: 1.8rem; margin-right: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } i { font-size: 1.8rem; vertical-align: middle; @media (max-width: 768px) { font-size: 1.5rem; } } } //アーティスト// .top-artist { padding: 10rem 0; background-color: $yellow2; background-image: url("../../images/top-artist/bg-left-top.png"), url("../../images/top-artist/bg-right-top.png"), url("../../images/top-artist/bg-left-bottom.png"), url("../../images/top-artist/bg-right-bottom.png"); background-repeat: no-repeat; background-size: 40%, 40%, 30%, 30%; background-position: left top, right top, left bottom, right bottom; position: relative; @media (max-width: 768px) { padding: 8rem 0 5rem 0; background-size: 50%, 50%, 30%, 30%; } h1 { color: $orange; font-size: 7.2rem; @media (max-width: 768px) { font-size: 3rem; } } h2 { color: $orange; font-size: 5.6rem; text-align: center; font-weight: 900; @media (max-width: 768px) { font-size: 3rem; margin-bottom: 3rem; } } &__beforePublication { text-align: center; &_text { font-size: 3.2rem; font-weight: 700; color: $orange; } @media (max-width: 768px) { &_text { font-size: 2rem; } } } &__icon { position: absolute; &.momiji { top: 7rem; left: 12rem; width: 245px; } &.icho-right { top: 45rem; right: 2rem; width: 204px; } &.konoha { width: 162px; left: 1.5rem; bottom: 40rem; } &.konoha2 { width: 188px; right: 1rem; bottom: 15rem; } @media (max-width: 768px) { &.momiji { top: 4rem; left: 3rem; width: 87px; } &.icho-right { top: 18rem; right: 2rem; width: 80px; } &.konoha { width: 69px; left: 1rem; bottom: 25rem; } &.konoha2 { width: 81px; right: 1rem; bottom: 2rem; } } } } .fourth { margin-bottom: 10rem; @media (max-width: 768px) { margin-bottom: 4rem; } } .artist-day { font-size: 3.2rem; margin-left: 1rem; @media (max-width: 768px) { font-size: 1.6rem; } } .artists { display: flex; flex-wrap: wrap; width: 102rem; justify-content: space-between; margin: 0 auto; @media (max-width: 768px) { width: 85%; } } .artists::after { content: ""; display: block; width: 32rem; } .artist-item { position: relative; width: 32rem; // height: 29.6rem; margin-bottom: 2rem; // border: 4px solid $blue; // border-radius: 2.2rem; @media (max-width: 768px) { width: 14.9rem; // height: 19rem; // border: 3px solid $blue; } img { width: 32rem; // height: 29.6rem; height: 22rem; border-radius: 1.9rem; @media (max-width: 768px) { width: 15rem; height: 11rem; border-radius: 1.9rem 1.9rem 0 0; } } } .artist-item:nth-of-type(3), .artist-item:nth-of-type(4), .artist-item:nth-of-type(5), .artist-item:nth-of-type(6), .artist-item:nth-of-type(7), .artist-item:nth-of-type(8) { @media (max-width: 768px) { height: 15rem; } } .artist-name { position: absolute; bottom: 0; background-color: $yellow; margin: 0; line-height: 2rem; font-weight: 700; width: 100%; border-radius: 0 0 2rem 2rem; padding: 0 2rem; height: 7.6rem; display: flex; align-items: center; box-sizing: border-box; font-size: 1.8rem; @media (max-width: 768px) { font-size: 1.3rem; height: auto; padding: 1rem; } } .artist-name.height { @media (max-width: 768px) { height: 8rem; } } .table-button { background-color: $blue; width: 28.5rem; height: 7.4rem; border-radius: 3.7rem; box-shadow: 8px 8px 0 $yellow; margin: 3rem auto; @media (max-width: 768px) { height: 4.6rem; width: 23.1rem; box-shadow: 6px 6px 0 $yellow; } a { color: white; display: flex; line-height: 7.4rem; justify-content: center; align-items: center; @media (max-width: 768px) { line-height: 4.6rem; } } i { font-size: 1.8rem; vertical-align: middle; @media (max-width: 768px) { font-size: 1.4rem; } } h3 { margin: 0; font-size: 1.8rem; margin-right: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } } //アクティビティ// .top-activity { padding: 10rem 0; background-color: $orange; @media (max-width: 768px) { padding: 8rem 0; } } .activity-container { width: 108rem; display: flex; justify-content: space-between; margin: 0 auto; align-items: center; @media (max-width: 768px) { flex-direction: column-reverse; width: 100%; } } .activity-slide { width: 48.8rem; box-shadow: 4rem 4rem 0 white; border-radius: 2.5rem; @media (max-width: 768px) { width: calc(100% - 1.6rem); border-radius: 1.5rem; box-shadow: 1.6rem 1.6rem 0 white; } img { width: 48rem; height: 36rem; border-radius: 2.5rem; border: 4px solid $blue; @media (max-width: 768px) { width: calc(100% - 6px); height: 20.8rem; border: 3px solid $blue; border-radius: 1.5rem; } } } .activity-left { width: 50rem; @media (max-width: 768px) { width: 85%; } p { font-size: 2rem; font-weight: 700; line-height: 4rem; @media (max-width: 768px) { font-size: 1.4rem; line-height: 2.8rem; } } h1 { text-align: left; margin-bottom: 4rem; } } .activity-right { @media (max-width: 768px) { width: 85%; } } .view-more { margin: 3rem 0; margin-bottom: 0; background-color: $blue; width: 25rem; height: 7.4rem; border-radius: 3.7rem; box-shadow: 8px 8px 0 white; transition: all 0.3s; &.yellow { box-shadow: 8px 8px 0 #ffdb59; color: #fff; } &:hover { transform: translate(3px, 3px); box-shadow: unset; } @media (max-width: 768px) { width: 16.2rem; height: 4.6rem; box-shadow: 6px 6px 0 white; margin-top: 4rem; } a, input { display: flex; line-height: 7.4rem; justify-content: center; align-items: center; color: white; @media (max-width: 768px) { line-height: 4.6rem; } } h3 { margin: 0; font-size: 1.8rem; margin-right: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } i { font-size: 1.8rem; vertical-align: middle; @media (max-width: 768px) { font-size: 1.4rem; } } } .top-title.sp { @media (min-width: 769px) { display: none; } text-align: left; margin-bottom: 4rem; } .top-title.pc { @media (max-width: 768px) { display: none; } } //フード// .top-food { padding: 10rem 0; background-color: $yellow; background-image: url("../../images/top-food/bg-img1.png"), url("../../images/top-food/bg-img2.png"); background-repeat: no-repeat, no-repeat; background-size: 385px, 262px; background-position: left 3rem top 20%, right 5rem bottom 10%; @media (max-width: 768px) { background-size: 260px, 182px; background-position: right -10rem top 2rem, left -5rem bottom 10%; padding: 8rem 0; } } .food-container { width: 108rem; display: flex; flex-direction: row-reverse; justify-content: space-between; margin: 0 auto; align-items: center; @media (max-width: 768px) { flex-direction: column-reverse; width: 100%; } } .food-slide { width: 48.8rem; box-shadow: 4rem 4rem 0 white; border-radius: 2.5rem; @media (max-width: 768px) { width: calc(100% - 1.6rem); border-radius: 1.5rem; box-shadow: 1.6rem 1.6rem 0 white; } img { width: 48rem; height: 36rem; border-radius: 2.5rem; border: 4px solid $blue; @media (max-width: 768px) { width: calc(100% - 6px); height: 20.8rem; border: 3px solid $blue; border-radius: 1.5rem; } } } .food-left { width: 50rem; @media (max-width: 768px) { width: 85%; } p { font-size: 2rem; font-weight: 700; line-height: 4rem; @media (max-width: 768px) { font-size: 1.4rem; line-height: 2.8rem; } } h1 { text-align: left; margin-bottom: 4rem; } } .food-right { @media (max-width: 768px) { width: 85%; } } //エリアマップ// .top-map { background-color: $blue; padding: 8rem 0; @media (max-width: 768px) { padding: 5rem 0; } h1 { color: $yellow; margin-bottom: 3rem; @media (max-width: 768px) { margin-bottom: 2rem; } } p { color: $yellow; text-align: center; margin-bottom: 3rem; @media (max-width: 768px) { font-size: 1.4rem; width: 85%; margin: 0 auto; margin-bottom: 2rem; } } } .map-image { margin: 0 auto; text-align: center; position: relative; img { width: 98rem; height: 57.3rem; @media (max-width: 768px) { width: 85%; height: 30rem; } } } .map-preparation { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; font-size: 2rem; z-index: 10; } .map-buttons { display: flex; width: 53rem; margin: 2rem auto; @media (max-width: 768px) { flex-direction: column; width: 100%; margin: 1rem 0; } } .map-button { margin: 3rem auto; margin-bottom: 0; background-color: $yellow; width: 25rem; height: 7.4rem; border-radius: 3.7rem; @media (max-width: 768px) { height: 4.6rem; width: 20.2rem; margin: 2rem auto; margin-bottom: 0; } a { display: flex; line-height: 7.4rem; justify-content: center; align-items: center; color: $blue; @media (max-width: 768px) { line-height: 4.6rem; } } h3 { margin: 0; font-size: 1.8rem; margin-right: 1rem; font-weight: 900; @media (max-width: 768px) { font-size: 1.5rem; } } i { font-size: 1.8rem; vertical-align: middle; font-weight: 900; @media (max-width: 768px) { font-size: 1.5rem; } } } //チケット// .top-ticket { background-color: $orange; padding: 8rem 0; @media (max-width: 768px) { padding: 4rem 0 6rem 0; } h1 { margin-bottom: 4rem; @media (max-width: 768px) { margin-bottom: 2rem; } } } .ticket-note { font-size: 1.6rem; color: #ff0000; @media (max-width: 768px) { font-size: 1.4rem; } } .ticket-container { background-color: white; width: 104rem; margin: 0 auto; padding: 3rem 3rem 4rem 3rem; box-sizing: border-box; border-radius: 2rem; @media (max-width: 768px) { padding: 1rem 1.5rem 2rem 1.5rem; } @media (max-width: 768px) { width: 90%; } } .ticket-upside { border-bottom: 1px solid $blue; } .ticket-item { margin-bottom: 4rem; @media (max-width: 768px) { margin-bottom: 3rem; } // &__title { // position: relative; // z-index: 1; // display: inline; // &::before { // content: ""; // position: absolute; // bottom: -10px; // left: 0; // z-index: -1; // display: inline-block; // width: 100%; // height: 20px; // background-image: url("../../images/underline-yellow.png"); // background-repeat: no-repeat; // background-size: contain; // } // } h2 { font-size: 1.8rem; font-weight: 900; margin-bottom: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } p { font-size: 1.6rem; font-weight: 700; margin: 1rem 0; @media (max-width: 768px) { font-size: 1.3rem; line-height: 2.6rem; } } &__notice { display: inline; border-bottom: 1px solid $blue; padding-bottom: 4px; } &__benefits { color: $orange; } } .ticket-item.last { margin-bottom: 2.5rem; @media (max-width: 768px) { margin-top: 3rem; } } .lawson-button { margin: 0 0 2rem 0; background-color: $blue; width: 34rem; height: 7.4rem; border-radius: 3.7rem; box-shadow: 8px 8px 0 $yellow; @media (max-width: 768px) { width: 90%; height: 4.6rem; margin: 0 auto; box-shadow: 6px 6px 0 $yellow; } a { display: flex; line-height: 7.4rem; justify-content: center; align-items: center; color: white; @media (max-width: 768px) { line-height: 4.6rem; } } h3 { margin: 0; font-size: 1.8rem; margin-right: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } i { font-size: 1.8rem; vertical-align: middle; @media (max-width: 768px) { font-size: 1.5rem; } } } .ticket-attention { background-color: $yellow2; padding: 1rem 2.5rem; margin-top: 3.5rem; @media (max-width: 768px) { padding: 1rem; } h2 { font-size: 2rem; font-weight: 900; @media (max-width: 768px) { font-size: 1.6rem; } } ul { padding: 0; } li { font-size: 1.6rem; line-height: 3.2rem; font-weight: 700; list-style: none; padding: 0; @media (max-width: 768px) { font-size: 1.3rem; line-height: 2.6rem; } } } //開催概要// .top-info { background-color: $yellow2; padding: 10rem 0; background-image: url("../../images/top-info/bg-right-top.png"), url("../../images/top-info/bg-left-bottom.png"); background-repeat: no-repeat, no-repeat; background-size: auto, auto; background-position: right top, left bottom; @media (max-width: 768px) { background-size: 50%, 50%; } h1 { color: $orange; margin-bottom: 3rem; } } .info-items { width: 90rem; margin: 0 auto; @media (max-width: 768px) { width: 90%; } } .info-item { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid $blue; padding: 2.5rem 0; @media (max-width: 768px) { flex-direction: column; align-items: start; padding: 2rem 0; } h3 { margin: 0; @media (max-width: 768px) { margin-bottom: 0.7rem; } } p { width: 70rem; font-size: 1.6rem; font-weight: 700; margin: 0; @media (max-width: 768px) { width: 100%; font-size: 1.3rem; } } .strong { font-size: 1.8rem; @media (max-width: 768px) { font-size: 1.5rem; } } } .info-item:nth-of-type(7) { border-bottom: 1px solid $blue; } .info-title { width: 16rem; font-size: 1.6rem; font-weight: 900; text-align: center; @media (max-width: 768px) { width: 100%; text-align: left; font-size: 1.3rem; } } //スポンサー// .top-sponsor { padding: 10rem 0; background-color: $yellow; @media (max-width: 768px) { padding: 8rem 0 7rem 0; } } .sponsor-images { width: 90rem; text-align: center; margin: 4rem auto; @media (max-width: 768px) { width: 100%; margin: 2.5rem auto; } img { width: 18rem; height: 10rem; margin: 0 1rem 2rem 1rem; @media (max-width: 768px) { width: 9.8rem; height: 5.4rem; margin: 0 0.5rem 1rem 0.5rem; } } } /* ===== 落ち葉が降るアニメーション ===== */ @keyframes animate-leaf { 0% { opacity: 0; top: 0; transform: rotate(0); } 10% { opacity: 1; } 90% { opacity: 1; } 100% { opacity: 0; top: 100vh; transform: rotate(1080deg); } }