@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@font-face {
    font-family: "YuMincho";
    font-weight: normal;
    src: url("../font/A-OTF-A1MinchoStd-Bold.otf")
}
/*!
 * Bootstrap Reboot v4.5.3 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*, :after, :before {
    box-sizing: border-box
}
:after:focus, :before:focus, :focus {
    outline: none
}
html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-text-size-adjust: 100%
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block
}
body {
    background-color: #fff;
    color: #212529;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
    text-align: left
}
[tabindex="-1"]:focus:not(:focus-visible) {
    outline: 0 !important
}
hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0;
    margin-top: 0
}
p {
    margin-bottom: 1rem;
    margin-top: 0
}
abbr[data-original-title], abbr[title] {
    border-bottom: 0;
    cursor: help;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline;
    text-decoration: underline dotted;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none
}
address {
    font-style: normal;
    line-height: inherit;
    margin-bottom: 1rem
}
dl, ol, ul {
    margin-bottom: 1rem;
    margin-top: 0
}
ol ol, ol ul, ul ol, ul ul {
    margin-bottom: 0
}
dt {
    font-weight: 700
}
dd {
    margin-bottom: 0.5rem;
    margin-left: 0
}
blockquote {
    margin: 0 0 1rem
}
b, strong {
    font-weight: bolder
}
small {
    font-size: 80%
}
sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}
sub {
    bottom: -0.25em
}
sup {
    top: -0.5em
}
a {
    background-color: transparent;
    color: #007bff;
    text-decoration: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
a:hover {
    color: #0056b3;
    text-decoration: underline
}
a:not([href]):not([class]) {
    color: inherit;
    text-decoration: none
}
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}
code, kbd, pre, samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 1em
}
pre {
    margin-bottom: 1rem;
    margin-top: 0;
    overflow: auto;
    -ms-overflow-style: scrollbar
}
figure {
    margin: 0
}
figure img {
    width: 100%;
    height: auto
}
img {
    border-style: none;
    vertical-align: middle
}
svg {
    overflow: hidden;
    vertical-align: middle
}
table {
    border-collapse: collapse
}
caption {
    caption-side: bottom;
    color: #6c757d;
    padding-bottom: 0.75rem;
    padding-top: 0.75rem;
    text-align: left
}
th {
    text-align: inherit;
    text-align: -webkit-match-parent
}
label {
    display: inline-block;
    margin-bottom: 0.5rem
}
button {
    border-radius: 0
}
button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}
button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    margin: 0
}
button, input {
    overflow: visible
}
button, select {
    text-transform: none
}
[role=button] {
    cursor: pointer
}
select {
    word-wrap: normal
}
[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: button
}
[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer
}
[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}
input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0
}
textarea {
    overflow: auto;
    resize: vertical
}
fieldset {
    border: 0;
    margin: 0;
    min-width: 0;
    padding: 0
}
legend {
    color: inherit;
    display: block;
    font-size: 1.5rem;
    line-height: inherit;
    margin-bottom: 0.5rem;
    max-width: 100%;
    padding: 0;
    white-space: normal;
    width: 100%
}
progress {
    vertical-align: baseline
}
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}
[type=search] {
    -webkit-appearance: none;
    outline-offset: -2px
}
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}
output {
    display: inline-block
}
summary {
    cursor: pointer;
    display: list-item
}
template {
    display: none
}
[hidden] {
    display: none !important
}
@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}
@keyframes pulse {
    0% {
        transform: scale(1)
    }
    50% {
        transform: scale(1.1)
    }
    to {
        transform: scale(1)
    }
}
@keyframes zoomOut {
    0% {
        transform: scale3d(1.2, 1.2, 1.2)
    }
    to {
        transform: scale3d(1, 1, 1)
    }
}
@keyframes confetti {
    0% {
        opacity: 0;
        transform: rotateZ(15deg) rotateY(0deg) translate(0, 0)
    }
    25% {
        opacity: 1;
        transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh)
    }
    50% {
        transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh)
    }
    75% {
        transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh)
    }
    86% {
        opacity: 1
    }
    to {
        opacity: 0;
        transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh)
    }
}
.u-wysiwygArea {
    color: #fff;
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1.8
}
@media screen and (max-width:980px) {
    .u-wysiwygArea {
        font-size: 12px
    }
}
.u-wysiwygArea *+* {
    margin-top: 1.75em
}
.u-wysiwygArea br+* {
    margin-top: 0
}
.u-wysiwygArea a {
    color: blue;
    text-decoration: underline
}
@media screen and (min-width:981px) {
    .u-wysiwygArea a {
        transition: all 0.6s ease-in-out 0s
    }
}
@media screen and (min-width:981px) {
    .u-wysiwygArea a:hover {
        opacity: 0.6
    }
}
.u-wysiwygArea h1 {
    font-size: 4.5rem;
    line-height: 1.4
}
.u-wysiwygArea h2 {
    font-size: 3rem;
    line-height: 1.6;
    margin-top: 2em
}
.u-wysiwygArea h3 {
    color: blue;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.6
}
.u-wysiwygArea h4 {
    font-size: 1.8rem;
    line-height: 1.6;
    padding-left: 25px;
    position: relative
}
.u-wysiwygArea h4:before {
    background: blue;
    content: "";
    height: 17px;
    left: 0;
    position: absolute;
    top: 3px;
    width: 17px
}
.u-wysiwygArea h5, .u-wysiwygArea h6 {
    font-size: 1.6rem;
    line-height: 1.6
}
.u-wysiwygArea h1+h2, .u-wysiwygArea h2+h3, .u-wysiwygArea h3+h4, .u-wysiwygArea h4+h5, .u-wysiwygArea h5+h6 {
    margin-top: 0.5em
}
.u-wysiwygArea p {
    color: #fff;
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1.8
}
@media screen and (max-width:980px) {
    .u-wysiwygArea p {
        font-size: 12px
    }
}
.u-wysiwygArea strong, .u-wysiwygArea strong * {
    font-weight: bold
}
.u-wysiwygArea em, .u-wysiwygArea em * {
    font-style: italic
}
.u-wysiwygArea ul {
    list-style-type: disc
}
.u-wysiwygArea ol {
    list-style-type: decimal
}
.u-wysiwygArea ol, .u-wysiwygArea ul {
    margin-top: 1em;
    padding-left: 1.4em
}
.u-wysiwygArea ol li, .u-wysiwygArea ul li {
    line-height: 1.5;
    margin-top: 0.6em
}
.u-wysiwygArea sub, .u-wysiwygArea sup {
    font-size: 1rem;
    line-height: 1 !important
}
.u-wysiwygArea hr {
    background: #222;
    display: block;
    height: 1px;
    width: 100%
}
.u-wysiwygArea blockquote {
    background: blue;
    padding: 30px
}
.u-wysiwygArea table {
    background: blue;
    border-collapse: collapse;
    height: auto !important;
    margin-top: 3em;
    width: 100% !important
}
.u-wysiwygArea table thead td, .u-wysiwygArea table thead th {
    font-weight: bold;
    text-align: center
}
.u-wysiwygArea table tr td, .u-wysiwygArea table tr th {
    border: #222 1px solid;
    line-height: 1.5;
    padding: 15px 20px;
    text-align: left;
    vertical-align: middle
}
.u-wysiwygArea table tr th {
    font-weight: bold;
    text-align: center;
    width: 25%
}
.u-wysiwygArea img {
    height: auto;
    margin-top: 1em;
    max-width: 100%;
    width: auto
}
.u-wysiwygArea img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
.u-wysiwygArea img.alignright {
    display: block;
    margin-left: auto;
    margin-right: 0
}
.u-wysiwygArea .gallery {
    align-items: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between
}
.u-wysiwygArea .gallery-item {
    float: none;
    margin-top: 0;
    text-align: center
}
.u-wysiwygArea .gallery-columns-2 .gallery-item {
    width: calc((100% - 40px) / 2)
}
.u-wysiwygArea .gallery-columns-3 .gallery-item {
    width: calc((100% - 80px) / 3)
}
.siteHeader {
    background: tomato;
    box-shadow: 1px 1px 6px 4px rgba(34, 34, 34, 0.04);
    height: 100px;
    left: 0;
    padding: 20px 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100
}
.is_login_user .siteHeader {
    top: 32px
}
@media print {
    .siteHeader {
        position: absolute
    }
}
.siteHeader__innerArea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    width: 1140px;
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between
}
@media screen and (max-width:980px) {
    .siteHeader__innerArea {
        padding-left: 15px;
        padding-right: 15px;
        width: 100%
    }
}
@media print {
    .siteHeader__innerArea {
        width: 1024px
    }
}
.siteFooter {
    background-color: #212121;
    padding: 40px 0
}
html {
    font-size: 62.5%
}
@media screen and (max-width:980px) {
    html {
        font-size: 1.0204081633vw
    }
}
body {
    font-feature-settings: "palt" 1;
    -webkit-print-color-adjust: exact
}
.u-pcDb {
    display: block
}
.u-pcDib {
    display: inline-block
}
.u-pcDin {
    display: inline
}
.u-pcDf {
    display: flex
}
.u-pcDt {
    display: table
}
.u-pcDtc {
    display: table-cell
}
.u-spDb, .u-spDf, .u-spDib, .u-spDin, .u-spDt, .u-spDtc {
    display: none
}
@media screen and (max-width:980px) {
    .u-pcDb, .u-pcDf, .u-pcDib, .u-pcDin, .u-pcDt, .u-pcDtc {
        display: none
    }
    .u-spDb {
        display: block
    }
    .u-spDib {
        display: inline-block
    }
    .u-spDin {
        display: inline
    }
    .u-spDf {
        display: flex
    }
    .u-spDt {
        display: table
    }
    .u-spDtc {
        display: table-cell
    }
}
@media screen and (max-width:980px) {
    .siteContent {
        min-height: calc(100vh - 50px);
        padding-top: 0
    }
}
.topPage {
    overflow-x: hidden
}
.topPage .header__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 1.8rem
}
.topPage .header__figLogo {
    height: 6.25rem
}
.topPage .header__figLogo img {
    height: 100%;
    width: auto
}
.topPage .kv {
    background-color: #afdcdc;
/*
    background: url("../../_assets/images/topPage/kv_bg.png");
    background-size: 100% 116rem;
    background-repeat: no-repeat;
    height: 116rem;
*/
    position: relative;
    overflow: hidden
}
.topPage .kv:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 30rem;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.8211659664) 0%, rgba(255, 255, 255, 0) 100%);
    bottom: 0
}
.topPage .kv__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 0rem 0 0rem 0;
    position: relative
}
.topPage .kv__titleFig {
    max-width: 98rem;
    margin: 0 auto;
    position: relative;
    z-index: 2
}
/*
.topPage .kv__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 3.3rem 0 2.2rem 0;
    position: relative
}
.topPage .kv__titleFig {
    max-width: 94rem;
    margin: 0 auto;
    position: relative;
    z-index: 2
}
*/
.topPage .kv__eventFig {
    max-width: 61rem;
    margin: -0.9rem auto 3.6rem;
    position: relative;
    z-index: 2
}
.topPage .kv__descFig {
    max-width: 82.7rem;
    margin: 0 auto;
    position: relative;
    z-index: 1
}
.topPage .kv__carGrp {
    position: relative;
    z-index: 2;
    height: 25.6rem;
    margin-top: 2.1rem
}
.topPage .kv__carFig {
    position: absolute;
    opacity: 0
}
.topPage .kv__carFig.car01 {
    z-index: 1;
    max-width: 31.6rem;
    left: 31.7rem;
    top: 10.3rem
}
.topPage .kv__carFig.car02 {
    z-index: 2;
    max-width: 43.3rem;
    left: 52.9rem;
    top: 8.7rem
}
.topPage .kv__carFig.car03 {
    z-index: 3;
    max-width: 29.9rem;
    left: 1.3rem;
    top: 6rem
}
.topPage .kv__crystal {
    position: absolute;
    z-index: 0
}
.topPage .kv__crystal.crysType-01 {
    background: url("../../_assets/images/topPage/kv_crystal-01.png") top/contain no-repeat;
    height: 11.4rem;
    width: 10.7rem
}
.topPage .kv__crystal.crysType-02 {
    background: url("../../_assets/images/topPage/kv_crystal-02.png") top/contain no-repeat;
    height: 12.2rem;
    width: 11.7rem
}
.topPage .kv__crystal.crysType-03 {
    background: url("../../_assets/images/topPage/kv_crystal-03.png") top/contain no-repeat;
    height: 19.6rem;
    width: 18.3rem
}
.topPage .kv__crystal.crysType-04 {
    background: url("../../_assets/images/topPage/kv_crystal-04.png") top/contain no-repeat;
    height: 11.3rem;
    width: 11.3rem
}
.topPage .kv__crystal.crysType-05 {
    background: url("../../_assets/images/topPage/kv_crystal-05.png") top/contain no-repeat;
    height: 20rem;
    width: 19rem
}
.topPage .kv__crystal.crysType-06 {
    background: url("../../_assets/images/topPage/kv_crystal-06.png") top/contain no-repeat;
    height: 11rem;
    width: 11rem
}
.topPage .kv__crystal.crysType-07 {
    background: url("../../_assets/images/topPage/kv_crystal-07.png") top/contain no-repeat;
    height: 12.5rem;
    width: 12.5rem
}
.topPage .kv__crystal.crysType-08 {
    background: url("../../_assets/images/topPage/kv_crystal-08.png") top/contain no-repeat;
    height: 12.9rem;
    width: 12.9rem
}
.topPage .kv__crystal.crysType-09 {
    background: url("../../_assets/images/topPage/kv_crystal-09.png") top/contain no-repeat;
    height: 19rem;
    width: 19rem
}
.topPage .kv__crystal.crysType-10 {
    background: url("../../_assets/images/topPage/kv_crystal-10.png") top/contain no-repeat;
    height: 20.9rem;
    width: 20.9rem
}
.topPage .kv__crystal.crysType-11 {
    background: url("../../_assets/images/topPage/kv_crystal-11.png") top/contain no-repeat;
    height: 10.6rem;
    width: 14.9rem
}
.topPage .kv__crystal.crysType-12 {
    background: url("../../_assets/images/topPage/kv_crystal-12.png") top/contain no-repeat;
    height: 18rem;
    width: 18.7rem
}
.topPage .kv__crystal:first-of-type {
    top: -0.2rem;
    left: 11rem;
    animation: rotateRightLoop 15s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(2) {
    top: 4rem;
    right: 2.6rem;
    animation: rotateLeftLoop 8s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(3) {
    top: 24.7rem;
    left: -0.1rem;
    animation: rotateRightLoop 7s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(4) {
    top: 33.1rem;
    right: 12.7rem;
    animation: rotateLeftLoop 11s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(5) {
    top: 38.6rem;
    left: 18.7rem;
    animation: rotateRightLoop 10s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(6) {
    width: 15.8rem;
    height: 15rem;
    top: 23.7rem;
    right: 1rem;
    animation: rotateRightLoop 12s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(7) {
    top: 63.4rem;
    left: -0.5rem;
    animation: rotateLeftLoop 9s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(8) {
    top: 50.3rem;
    right: -1.5rem;
    animation: rotateRightLoop 8s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(9) {
    top: 71.65rem;
    right: 56.5rem;
    animation: rotateLeftLoop 10s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(10) {
    top: 74.6rem;
    right: 32.5rem;
    animation: rotateRightLoop 7s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(11) {
    top: 70.1rem;
    right: -2.2rem;
    animation: rotateLeftLoop 12s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(12) {
    top: 106rem;
    right: -2.2rem;
    animation: rotateLeftLoop 12s ease-in-out infinite
}
.topPage .kv__crystal:nth-of-type(13) {
    top: 117.3rem;
    left: 2.5rem;
    animation: rotateLeftLoop 12s ease-in-out infinite
}
@keyframes rotateRight {
    0% {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(180deg)
    }
    to {
        transform: rotate(360deg)
    }
}
@keyframes rotateLeft {
    0% {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(-180deg)
    }
    to {
        transform: rotate(-360deg)
    }
}
@keyframes rotateLeftLoop {
    0% {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(360deg)
    }
    to {
        transform: rotate(0deg)
    }
}
@keyframes rotateRightLoop {
    0% {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(-360deg)
    }
    to {
        transform: rotate(0deg)
    }
}
@keyframes shine {
    0% {
        transform: scale(0)
    }
    20% {
        transform: scale(1.5);
        filter: brightness(100%) drop-shadow(0 0 2rem white)
    }
    22% {
        transform: scale(0)
    }
    23% {
        transform: scale(0)
    }
    51% {
        transform: scale(1.5);
        filter: brightness(100%)
    }
    53% {
        transform: scale(0)
    }
    to {
        transform: scale(0)
    }
}
.topPage .sched {
    background-color: #074EAC
}
.topPage .sched__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 5.5rem 0 7rem
}
.topPage .sched__detailFig {
    margin: 0.6rem auto;
    max-width: 89.11rem
}
.topPage .sectionGrp {
    background: url("../../_assets/images/topPage/secGrp_bg.png") bottom/cover no-repeat;
    margin: 0 auto
}
@media screen and (max-width:1140px) {
    .topPage .sectionGrp {
        background-size: contain
    }
}
.topPage .nav__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 2rem 0
}
.topPage .nav__titleFig {
    max-width: 85rem;
    margin: 0 auto 2.2rem
}
.topPage .nav__btnGrp {
    align-items: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.2rem 1rem
}
.topPage .nav__btnFig {
    max-width: 45rem;
    border-radius: 2rem
}
.topPage .calendarGift__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 5rem 4rem;
    padding-top: 0
}
.topPage .calendarGift__detailFig {
    position: relative;
    min-width: 90rem;
    margin-top: 1rem
}
.topPage .calendarGift__detailFig img.decor-01 {
    height: 31rem;
    width: 25rem;
    position: absolute;
    top: 9rem;
    right: 2rem;
    filter: drop-shadow(0 0 0.5rem rgba(35, 24, 21, 0.7))
}
.topPage .calendarGift__detailFig img.decor-02 {
    width: 13.814rem;
    height: 14.278rem;
    position: absolute;
    top: 32.7rem;
    right: 5rem
}
.topPage .earlyCamp {
    background: #fff
}
.topPage .earlyCamp__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.7rem 0 0
}
.topPage .earlyCamp__titleFig {
    max-width: 85.485rem;
    margin: 0 auto;
    margin-bottom: 3.1rem
}
.topPage .earlyCamp__quoteFig {
    max-width: 87.111rem;
    margin: 0 auto
}
.topPage .earlyCamp__detailFig {
    max-width: 90rem;
    margin: 0 auto;
    margin-top: 1.3rem;
    margin-bottom: 1.4rem
}
.topPage .earlyCamp__noteFig {
    margin-left: 3.8rem;
    max-width: 80.67rem;
    margin-bottom: 3.7rem
}
.topPage .earlyCamp__infoFig {
    max-width: 90rem;
    margin: 0 auto
}
.topPage .earlyCamp__banner {
    margin-top: 4rem;
    position: relative
}
.topPage .earlyCamp__banner .decor {
    position: absolute;
    top: 10.5rem;
    left: 22rem;
    height: 33rem;
    width: auto
}
.topPage .earlyCamp__banner img {
    height: auto;
    min-height: 72.6rem
}
.topPage .earlyCamp__bannerDtl img {
    height: auto;
    min-height: 117.2rem
}
.topPage .ncars {
    background-color: #fff
}
.topPage .ncars__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding-bottom: 6rem
}
.topPage .ncars__titleFig {
    max-width: 95rem
}
.topPage .ncars__subTtl {
    min-width: 80rem;
    margin: 2rem 0 0.8rem
}
.topPage .ncars__fig {
    min-width: 78.5rem;
    margin-left: 1.3rem
}
.topPage .ncars__content {
    padding: 0 11rem 0 9rem
}
.topPage .ncars__lineup {
    padding: 0.7rem 2rem
}
.topPage .ncars__nLineup {
    min-width: 94rem
}
.topPage .ncars__disclaimerWrap {
    margin-top: -0.7rem
}
.topPage .ncars__disclaimerWrap img {
    max-width: 98rem
}
.topPage .nbox {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #356DB5;
}
.topPage .nbox__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.7rem 5rem 0rem
}
.topPage .nbox__newTitleFig {
    max-width: 98rem;
    margin: 0 auto;
    margin-bottom: 1rem;
/*    position: absolute;*/
    top: 0rem;
    left: 0rem
}
.topPage .stepwgn {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #59748F;
}
.topPage .zrv {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #9A2232;
}
.topPage .fit {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #629B99;
}
.topPage .wrv {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #14227F;
}
.topPage .bodycoating {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #99BBCB;
}
.topPage .tire {
    padding: 0 0 1rem 0;
    position: relative;
    background-color: #29ABE2;
}
.topPage .w91rem_mb-21rem {
    max-width: 91rem;
    margin-bottom: -2.1rem;
}
.topPage .w91rem_mb-025rem {
    max-width: 91rem;
    margin-bottom: -0.25rem;
}
.topPage .w91rem_mb0rem {
    max-width: 91rem;
    margin-bottom: 0rem;
}
.topPage .w91rem_mb1rem {
    max-width: 91rem;
    margin-bottom: 1rem;
}
.topPage .w91rem_mb2rem {
    max-width: 91rem;
    margin-bottom: 2rem;
}
.topPage .w91rem_mb4rem {
    max-width: 91rem;
    margin-bottom: 4rem;
}
.topPage .w81rem_mb2rem {
    max-width: 81rem;
    margin: 0 auto 2rem;
}
.topPage .w81rem_mt-26rem_mb7rem {
    max-width: 81rem;
    margin: -26rem auto 7rem;
}
.topPage .w81rem_mt-225rem_mb7rem {
    max-width: 81rem;
    margin: -22.5rem auto 7rem;
}
.topPage .nbox__newBtnLink {
    margin-top: -13.1rem;
    display: block;
    padding-bottom: 4rem
}
.topPage .nbox__newBtnFig {
    max-width: 80rem;
    margin: 0 auto;
    filter: drop-shadow(0.7rem 0.7rem 0.5rem rgba(4, 0, 0, 0.7));
    border-radius: 5rem
}
.topPage .nbox__carDetail {
    padding-bottom: 2rem
}
.topPage .nbox__carDetailFig {
    margin-top: -5rem;
    clip-path: inset(4.6rem 0 0 0.3rem)
}
.topPage .nbox__carDetailFig img {
    max-width: 91rem
}
.topPage .nbox__caption {
    padding: 5rem 0 2rem
}
.topPage .nbox__carSpecs {
    padding-bottom: 10rem
}
.topPage .nvane {
    background-color: #fff
}
.topPage .nvane__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.7rem 5rem 0
}
.topPage .nvane__headerDtl, .topPage .nvane__headerNote {
    margin-top: 4rem
}
.topPage .nvane__content {
    padding: 0;
    position: relative
}
.topPage .nvane__newKVFig {
    margin-top: 5rem
}
.topPage .nvane__newTitleFig {
    max-width: 70.7rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 3rem;
    left: 2rem
}
.topPage .nvane__newBtnLink {
    margin-top: -13.1rem;
    display: block
}
.topPage .nvane__newBtnFig {
    max-width: 80rem;
    margin: 0 auto;
    filter: drop-shadow(0.7rem 0.7rem 0.5rem rgba(4, 0, 0, 0.7));
    border-radius: 5rem
}
.topPage .nvane__note {
    margin: 2rem 0
}
.topPage .nvane__carDetail {
    padding-bottom: 7rem
}
.topPage .nvane__carDetailFig img {
    width: 100%
}
.topPage .nvane__caption {
    padding: 3rem 0 2rem;
    max-width: 66.4rem
}
.topPage .nboxCustom {
    background-color: #C8E1FF
}
.topPage .nboxCustom__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.7rem 5rem 0rem
}
.topPage .nboxCustom__headerTtl {
    min-width: 90rem
}
.topPage .nboxCustom__headerDtl, .topPage .nboxCustom__headerNote {
    margin-top: 3rem;
    min-width: 90rem
}
.topPage .nboxCustom__content {
    padding: 0;
    position: relative
}
.topPage .nboxCustom__newKVFig {
    margin-top: 1rem;
    min-width: 90rem
}
.topPage .nboxCustom__newTitleFig {
    max-width: 17.1rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 2rem;
    left: 2rem
}
.topPage .nboxCustom__note {
    margin: 2rem 0
}
.topPage .nboxCustom__carDetail {
    padding-bottom: 7rem;
    min-width: 90rem
}
.topPage .nboxCustom__carDetailFig img {
    width: 100%
}
.topPage .nboxCustom__caption {
    padding: 3rem 0 2rem
}
.topPage .nwgn {
    background-color: #fff
}
.topPage .nwgn__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 2.7rem 5rem 0rem
}
.topPage .nwgn__headerTtl {
    max-width: 76rem;
    margin: 0 auto
}
.topPage .nwgn__headerDtl, .topPage .nwgn__headerNote {
    margin-top: 4rem
}
.topPage .nwgn__content {
    padding: 0;
    position: relative
}
.topPage .nwgn__newKVFig {
    margin-top: 1rem;
    max-width: 90rem
}
.topPage .nwgn__newTitleFig {
    max-width: 17.1rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 2rem;
    left: 2rem
}
.topPage .nwgn__note {
    margin: 2rem 0
}
.topPage .nwgn__carDetail {
    padding-bottom: 7rem
}
.topPage .nwgn__carDetailFig {
    max-width: 90rem
}
.topPage .nwgn__carDetailFig img {
    width: 100%
}
.topPage .nwgn__caption {
    padding: 3rem 0 2rem
}
.topPage .nOne {
    background-color: #C8E1FF
}
.topPage .nOne__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 2.7rem 5rem 0rem
}
.topPage .nOne__headerTtl {
    max-width: 72rem;
    margin: 0 auto
}
.topPage .nOne__headerDtl, .topPage .nOne__headerNote {
    margin-top: 3rem
}
.topPage .nOne__content {
    padding: 0;
    position: relative
}
.topPage .nOne__newKVFig {
    margin-top: 3rem
}
.topPage .nOne__newTitleFig {
    max-width: 17.1rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 2rem;
    left: 2rem
}
.topPage .nOne__note {
    max-width: 36rem;
    margin: 1rem 0
}
.topPage .nOne__carDetail {
    padding-bottom: 7rem
}
.topPage .nOne__carDetailFig img {
    width: 100%
}
.topPage .nOne__caption {
    padding: 3rem 0 2rem
}
.topPage .nvan {
    background-color: #fff
}
.topPage .nvan__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.7rem 5rem 0rem
}
.topPage .nvan__headerDtl, .topPage .nvan__headerNote {
    margin-top: 4rem
}
.topPage .nvan__content {
    padding: 0;
    position: relative
}
.topPage .nvan__newKVFig {
    margin-top: 3rem
}
.topPage .nvan__newTitleFig {
    max-width: 17.1rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 2rem;
    left: 2rem
}
.topPage .nvan__note {
    margin: 1rem 0 2rem
}
.topPage .nvan__carDetail {
    padding-bottom: 7rem
}
.topPage .nvan__carDetailFig img {
    width: 100%
}
.topPage .nvan__caption {
    padding: 3rem 0 2rem
}
.topPage .suvSec {
    background-color: #00B4B5
}
.topPage .suvSec__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 3rem 5rem
}
.topPage .suvSec__headerTtl {
    min-width: 90rem
}
.topPage .freedAir {
    background-color: #C8E1FF
}
.topPage .freedAir__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 0.1rem 5rem 4rem
}
.topPage .freedAir__headerDtl, .topPage .freedAir__headerNote {
    margin-top: 4rem
}
.topPage .freedAir__content {
    padding: 0;
    position: relative
}
.topPage .freedAir__newKVFig {
    margin-top: 3rem
}
.topPage .freedAir__newTitleFig {
    max-width: 30rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 3rem;
    left: 30rem
}
.topPage .freedAir__note {
    margin: 1rem 0 2rem
}
.topPage .freedAir__carDetail {
    padding-bottom: 0
}
.topPage .freedAir__carDetailFig img {
    width: 100%
}
.topPage .freedAir__caption {
    padding: 3rem 0 2rem
}
.topPage .freedCrosstar {
    background-color: #C8E1FF
}
.topPage .freedCrosstar__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 1rem 5rem 0rem
}
.topPage .freedCrosstar__headerDtl, .topPage .freedCrosstar__headerNote {
    margin-top: 4rem
}
.topPage .freedCrosstar__content {
    padding: 0;
    position: relative
}
.topPage .freedCrosstar__newKVFig {
    margin-top: 3rem
}
.topPage .freedCrosstar__newTitleFig {
    max-width: 45rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 3rem;
    left: 23rem
}
.topPage .freedCrosstar__note {
    margin: 1rem 0 2rem
}
.topPage .freedCrosstar__carDetail {
    padding-bottom: 7rem
}
.topPage .freedCrosstar__carDetailFig img {
    width: 100%
}
.topPage .freedCrosstar__caption {
    padding: 3rem 0 2rem
}
/*
.topPage .wrv {
    background-color: #fff
}
*/
.topPage .wrv__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 1rem 5rem 0rem
}
.topPage .wrv__headerDtl, .topPage .wrv__headerNote {
    margin-top: 4rem
}
.topPage .wrv__content {
    padding: 0;
    position: relative
}
.topPage .wrv__newKVFig {
    margin-top: 3rem
}
.topPage .wrv__newTitleFig {
    max-width: 45rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 3rem;
    left: 23rem
}
.topPage .wrv__note {
    margin: 1rem 0 2rem
}
.topPage .wrv__carDetail {
    padding-bottom: 7rem
}
.topPage .wrv__carDetailFig img {
    width: 100%
}
.topPage .wrv__caption {
    padding: 3rem 0 2rem
}
.topPage .civic {
    background-color: #C8E1FF
}
.topPage .civic__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 1rem 5rem 0rem
}
.topPage .civic__headerDtl, .topPage .civic__headerNote {
    margin-top: 4rem
}
.topPage .civic__content {
    padding: 0;
    position: relative
}
.topPage .civic__newKVFig {
    margin-top: 3rem
}
.topPage .civic__newTitleFig {
    max-width: 82.8rem;
    margin: 0 auto;
    margin-bottom: 3rem;
    position: absolute;
    top: 3rem;
    left: 3rem
}
.topPage .civic__note {
    max-width: 41.2rem;
    margin: 1rem 0 2rem
}
.topPage .civic__carDetail {
    padding-bottom: 7rem
}
.topPage .civic__carDetailFig img {
    width: 100%
}
.topPage .civic__caption {
    padding: 3rem 0 2rem
}
.topPage .dataSec {
    background-color: #fff
}
.topPage .dataSec__inner {
    max-width: 98rem;
    margin: 0 auto
}
.topPage .dataSec__content {
    padding: 0;
    position: relative
}
.topPage .dataSec__kochira {
    max-width: 7.2rem;
    margin: -38.1rem 0rem 35rem 19.5rem
}
.topPage .carlease01__inner {
    max-width: 98rem;
    margin: 0 auto
}
.topPage .carlease01__kv {
    position: relative
}
.topPage .carlease01__title01 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 45rem
}
.topPage .maintenance__inner {
    max-width: 98rem;
    margin: 0 auto;
    background: url("../../_assets/images/topPage/maintenance_kv.png") top center/100% auto no-repeat #FFFFFF;
    padding: 2rem 5rem 0rem
}
.topPage .maintenance__kv {
/*    position: relative*/
}
.topPage .maintenance__title01 {
    max-width: 90rem;
    margin: 0rem auto 1rem;
}
/*
.topPage .evGift__inner {
    max-width: 98rem;
    margin: 0 auto
}
.topPage .evGift__kv {
    position: relative
}
.topPage .evGift__title01 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 45rem
}
.topPage .evGift__title02 {
    max-width: 48rem;
    position: absolute;
    right: 0.8rem;
    top: 21.5rem
}
.topPage .evGift__title03 {
    max-width: 79rem;
    position: absolute;
    right: 8.5rem;
    bottom: 6rem
}
.topPage .evGift__decor {
    position: absolute;
    max-width: 14.4rem;
    height: 20.5rem;
    bottom: 6rem;
    left: 13rem
}
*/
.topPage .carlease02__inner {
    max-width: 98rem;
    margin: 0 auto
}
.topPage .carlease02__kv {
    position: relative
}
.topPage .carlease02__title01 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 5rem
}
.topPage .carlease02__01 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 21rem
}
.topPage .carlease02__02 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 163rem
}
.topPage .carlease02__03 {
    position: absolute;
    max-width: 90rem;
    left: 4rem;
    top: 293rem
}
.topPage .carlease02__04 {
    position: absolute;
    max-width: 90rem;
    left: 5rem;
    top: 435rem
}
.topPage .giftDunlop {
    background-color: #CCCCCC
}
.topPage .giftDunlop__innerTitle {
    margin: 0 auto;
    background-color: #4D4D4D;
    padding: 2rem 0 2.7rem
}
.topPage .giftDunlop__title {
    max-width: 83rem;
    margin: 0 auto
}
.topPage .giftDunlop__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 3.2rem 5rem
}
.topPage .giftDunlop__info {
    margin-bottom: 2.7rem;
    position: relative
}
.topPage .giftDunlop__info .decor01, .topPage .giftDunlop__info .decor02 {
    position: absolute;
    top: 62.3rem;
    height: 10.2rem;
    width: auto
}
.topPage .giftDunlop__info .decor01, .topPage .giftDunlop__info .decor04 {
    left: 3.5rem
}
.topPage .giftDunlop__info .decor02, .topPage .giftDunlop__info .decor05 {
    left: 46.5rem
}
.topPage .giftDunlop__info .decor03 {
    position: absolute;
    top: 21rem;
    left: 34rem;
    max-width: 14rem
}
.topPage .giftDunlop__info .decor04, .topPage .giftDunlop__info .decor05 {
    position: absolute;
    top: 19.8rem;
    height: 10.2rem;
    width: auto
}
/*
.topPage .maintenance {
    background: url("../../_assets/images/topPage/maintenance_bg.png") top center/100% auto no-repeat #0b308e
}
.topPage .maintenance__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding-bottom: 5rem;
    position: relative
}
.topPage .maintenance__cryst {
    position: absolute
}
.topPage .maintenance__cryst:first-of-type {
    width: 8rem;
    height: 8rem;
    top: 3.3rem;
    background: url(../../_assets/images/topPage/maintenance_cryst-01.png) center/contain no-repeat;
    left: 4rem;
    animation: rotateRightLoop 5s ease-in-out infinite
}
.topPage .maintenance__cryst:nth-of-type(2) {
    width: 5.5rem;
    height: 5.5rem;
    top: 7.6rem;
    background: url(../../_assets/images/topPage/maintenance_cryst-02.png) center/contain no-repeat;
    left: 48rem;
    animation: rotateRightLoop 4s ease-in-out infinite
}
.topPage .maintenance__cryst:nth-of-type(3) {
    width: 6.5rem;
    height: 6.5rem;
    top: 30.8rem;
    background: url(../../_assets/images/topPage/maintenance_cryst-03.png) center/contain no-repeat;
    left: 6.3rem;
    animation: rotateRightLoop 6s ease-in-out infinite
}
.topPage .maintenance__cryst:nth-of-type(4) {
    width: 5.5rem;
    height: 5.5rem;
    top: 29rem;
    background: url(../../_assets/images/topPage/maintenance_cryst-04.png) center/contain no-repeat;
    left: 66.9rem;
    animation: rotateRightLoop 4.5s ease-in-out infinite
}
.topPage .maintenance__info {
    position: relative
}
.topPage .maintenance__info .decor {
    position: absolute;
    height: 10.2rem;
    width: 10.2rem
}
.topPage .maintenance__info .decor.decor-04 {
    top: 26.8rem;
    left: 37.9rem
}
.topPage .maintenance__title {
    padding: 10rem 4rem 0;
    position: relative;
    margin-bottom: 3.2rem
}
.topPage .maintenance__title .titleTxt {
    max-width: 72rem
}
.topPage .maintenance__title .titleDecor {
    position: absolute;
    max-width: 20.75rem;
    top: 2.9rem;
    right: 4rem
}
.topPage .maintenance__infoGrp {
    padding: 0 4rem
}
.topPage .maintenance__star {
    position: absolute;
    background: url("../../_assets/images/topPage/maintenance_star.png") top center/cover no-repeat;
    width: 7.4rem;
    height: 7.4rem
}
.topPage .maintenance__star:first-of-type {
    bottom: 81.3rem;
    right: 22rem;
    animation: shine 1s linear infinite;
    animation-delay: 400ms
}
.topPage .maintenance__star:nth-of-type(2) {
    bottom: 79.3rem;
    right: 6.7rem;
    animation: shine 2s linear reverse infinite
}
.topPage .maintenance__star:nth-of-type(3) {
    bottom: 65.6rem;
    right: 16.9rem;
    animation: shine 1s linear infinite;
    animation-delay: 200ms
}
.topPage .maintenance__star:nth-of-type(4) {
    bottom: 58rem;
    right: 33rem;
    animation: shine 0.7s linear infinite;
    animation-delay: 100ms
}
*/
.topPage .information {
    background: #C8E1FF
}
.topPage .information__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 5rem 0 0.1rem;
    position: relative
}
.topPage .information__title {
    max-width: 79rem;
    margin: 0 auto
}
.topPage .information__note {
    margin: 2rem auto;
    max-width: 77.6rem
}
.topPage .information__infoFig {
    margin: 0 auto 5rem;
    max-width: 90rem;
    position: relative
}
.topPage .information__arrow {
    max-width: 25rem;
    position: absolute;
    bottom: 33rem;
    left: 37rem;
    z-index: 1
}
.topPage .information__arrow.arrow02 {
    bottom: 41rem
}
.topPage .information__infoButton {
    max-width: 90rem;
    margin: 5rem auto
}
.topPage .information02 {
    background-color: #0068B6
}
.topPage .usedCar {
    background: #FFA000
}
.topPage .usedCar__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding-bottom: 5rem;
    padding-top: 3.9rem
}
.topPage .usedCar__title {
    margin: 0 auto
}
.topPage .usedCar__title.ttl-01 {
    max-width: 64.073rem
}
.topPage .usedCar__title.ttl-02 {
    max-width: 93.1777rem
}
.topPage .usedCar__title.ttl-03 {
    max-width: 92.657rem;
    margin-top: 1.5rem
}
.topPage .usedCar__title.ttl-04 {
    max-width: 81.677rem;
    margin-bottom: 2.7rem
}
.topPage .usedCar__info {
    max-width: 90rem;
    margin: 0 auto
}
.topPage .ncar {
    background-color: #E95513
}
.topPage .ncar__inner {
    max-width: 98rem;
    margin: 0 auto;
    padding: 4.8rem 5rem
}
.topPage .ncar__title {
    margin-bottom: 2rem
}
.topPage .ncar__info {
    margin-bottom: 5rem
}
.topPage .ncar__row {
    align-items: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between
}
.topPage .ncar__row.alItem-end {
    align-items: flex-end
}
.topPage .ncar__carDetail {
    max-width: 42rem
}
.topPage .ncar__carDetail.detail-05 {
    max-width: 53rem
}
.topPage .ncar__carDetail.detail-06 {
    max-width: 33rem
}
.topPage .ncar__price {
    margin-top: 2.6rem
}
.topPage .ncar__carDetail {
    margin-top: 2rem
}
.topPage .ncar__note {
    margin-top: 1rem
}
.topPage .ncar__note .note-03 {
    max-width: 58.03rem
}
.topPage .ncar__note.footnote {
    margin-top: 4rem
}
.topPage .ncar__car {
    margin-top: 5rem
}
.topPage .footer__inner {
    padding-top: 13rem;
    padding-bottom: 4.5rem;
    max-width: 98rem;
    margin: 0 auto;
    position: relative
}
.topPage .footer__gotoTopLinkWrap {
    margin: 0 auto;
    left: 50%;
    top: 3.5rem;
    transform: translateX(-50%);
    display: block;
    transition: all 300ms ease;
    position: absolute
}
.topPage .footer__gotoUp {
    width: 90rem;
    margin: 0 auto;
    filter: drop-shadow(0.7rem 0.7rem 0.5rem rgba(4, 0, 0, 0.7));
    border-radius: 5rem
}
.topPage .footer__note {
    margin: 0 auto;
    margin-top: 3.5rem
}
.topPage .footer__note.note-01 {
    max-width: 65.33rem
}
.topPage .footer__note.note-02 {
    max-width: 87rem
}
.topPage .footer__logo {
    margin: 0 auto;
    margin-top: 5.5rem;
    max-width: 48.494rem
}
.topPage .footer__extLink {
    max-width: 90rem;
    display: block;
    margin: 0 auto;
    margin-top: 4rem
}
.topPage .footer__extLinkBtn {
    filter: drop-shadow(0.7rem 0.7rem 0.5rem rgba(4, 0, 0, 0.7));
    border-radius: 5rem
}
.topPage .footer__innerLast {
    padding: 4rem 0;
    margin: 0 auto;
    background-color: #1A1A1A;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif
}
.topPage .footer__txt {
    font-size: 1.7rem;
    font-weight: 500;
    text-align: center
}
.topPage .footer__txt.txt-02 {
    margin-bottom: 2.5rem
}
.topPage .footer__titleTxt {
    font-size: 1.7rem;
    font-weight: 500;
    text-align: center;
    text-align: center;
    margin-bottom: 1rem
}
.topPage .footer__list {
    list-style: none;
    align-items: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    padding: 0
}
.topPage .footer__item {
    position: relative
}
.topPage .footer__item:before {
    content: "";
    position: absolute;
    left: 0;
    width: 1px;
    height: 100%;
    background: #fff
}
.topPage .footer__item:last-child:after {
    content: "";
    position: absolute;
    right: 0;
    width: 1px;
    height: 100%;
    background: #fff
}
.topPage .footer__link {
    color: #fff;
    font-size: 1.7rem;
    font-weight: 500;
    padding: 0 1rem;
    line-height: 1;
    transition: 0.5s;
    text-decoration: none
}
.topPage .footer__link:hover {
    opacity: 0.7
}
.u-shine {
    position: relative;
    overflow: hidden
}
.u-shine:before {
    content: "";
    width: 150%;
    height: 15rem;
    position: absolute;
    left: 0;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6671043417) 50%, rgba(255, 255, 255, 0) 100%);
    animation: linkShine 3s linear infinite;
    top: 50%
}
@keyframes linkShine {
    0% {
        transform: translate(-100%, -50%) rotate(-45deg);
        opacity: 1
    }
    40% {
        transform: translate(100%, -50%) rotate(-45deg);
        opacity: 0
    }
    to {
        transform: translate(100%, -50%) rotate(-45deg);
        opacity: 0
    }
}
a {
    transition: filter 500ms ease, opacity 500ms ease;
    transform: scale(1)
}
[data-aos-easing=cubic] {
    transition-timing-function: cubic-bezier(0.47, 1.64, 0.41, 0.8) !important
}
[data-aos=fade-up] {
    transform: translate3d(0, 50px, 0)
}
[data-aos=zoom-out] {
    transform: scale(1.5)
}
@page {
    size: A4 portrait;
    margin: 0mm
}
@media print {
    body {
        -webkit-print-color-adjust: exact;
        word-break: break-all !important
    }
    .u-printPages__next {
        size: A4 landscape;
        page-break-before: always
    }
    .u-printPages__box {
        break-inside: avoid
    }
}