@charset "utf-8";
/*
 Theme Name:   kamataya
 Theme URI:    -
 Description:  Original Theme
 Template:     twentynineteen
*/
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: portrait) {

}
@media screen and (orientation: landscape) {

}

h1:before,
h2:before,
h2:before,
h2:before{
	background: unset;
    content: unset;
    display: unset;
    height: unset;
    margin: unset;
    width: unset;
}

/* -------------------------------------------------------------------------------------- */

html {
    font-family: 'Noto Serif JP', serif;
}

a,
a:active,
a:visited{
    outline:none;
    text-decoration: none;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
button,
input[type=search]
{
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
*:focus {
    outline: none;
}
img{
    width: 100%;
    height: auto;
}
/* -------------------------------------------------------------------------------------- */
main{
    position: relative;
    width: 100%;
    background-color: black;
}
/* -------------------------------------------------------------------------------------- */
@keyframes FADE_IN{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}
.FADE_IN{
    -webkit-animation: FADE_IN 1s ease-out forwards;
    animation: FADE_IN 1s ease-out forwards;
}
@keyframes FADE_OUT{
    0%{
        opacity: 1;
    }
    100%{
        opacity: 0;
    }
}
.FADE_OUT{
    -webkit-animation: FADE_OUT 1s ease-out forwards;
    animation: FADE_OUT 1s ease-out forwards;
}
@keyframes FADE_IN_UP{
    0%{
        opacity: 0;
        transform: translateY(50px);
    }
    100%{
        opacity: 1;
        transform: translateY(0px);
    }
}
@keyframes FADE_IN_UP_S{
    0%{
        opacity: 0;
        transform: translateY(15px);
    }
    100%{
        opacity: 1;
        transform: translateY(0px);
    }
}
@keyframes FADE_IN_ZOOMUP{
    0%{
        opacity: 0;
        transform: scale(0.9) translateY(50px);
    }
    100%{
        opacity: 1;
        transform: scale(1.0) translateY(50px);
    }
}
.FADE_IN_UP{
    -webkit-animation: FADE_IN_UP 1s ease-out forwards;
    animation: FADE_IN_UP 1s ease-out forwards;
}
.FADE_IN_ZOOMUP_2S{
    -webkit-animation: FADE_IN_ZOOMUP 2s ease-out forwards;
    animation: FADE_IN_ZOOMUP 2s ease-out forwards;
}
.FADE_IN_UP_S_2S{
    -webkit-animation: FADE_IN_UP_S 2s ease-out forwards;
    animation: FADE_IN_UP_S 2s ease-out forwards;
}
.FADE_IN_UP_2S{
    -webkit-animation: FADE_IN_UP 2s ease-out forwards;
    animation: FADE_IN_UP 2s ease-out forwards;
}
@keyframes SPLASH_ANIME{
  0% {
    opacity: 0;
    filter: blur(50px) brightness(2);
    transform: scale(1.3);
  }
  60% {
    opacity: 1;
    filter: blur(10px) brightness(1.2);
    transform: scale(1.05);
  }
  100% {
    opacity: 1;
    filter: blur(0) brightness(1);
    transform: scale(1);
  }
}
.SPLASH_ANIME{
  animation: prismMerge 2.5s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}
@keyframes prismMerge {
  0% {
    opacity: 0;
    filter: blur(10px);
    /* 赤と青の影を左右に散らす（色収差） */
    text-shadow: -15px 0 10px rgba(255,0,0,0.5), 15px 0 10px rgba(0,0,255,0.5);
    transform: scale(1.05);
  }
  60% {
    opacity: 1;
    text-shadow: -2px 0 2px rgba(255,0,0,0.3), 2px 0 2px rgba(0,0,255,0.3);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    text-shadow: 0 0 0 transparent;
    transform: scale(1);
  }
}

@keyframes HOVER_ON_ARROW{
    0%{
        transform: scalex(0);
        opacity: 0;
    }
    100%{
        transform: scalex(1);
        opacity: 1;
    }
}
/* -------------------------------------------------------------------------------------- */
.Splash_Page{
    position: absolute;
    width: 100%;
    height: 100vh;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    align-items: center;
    background-color: black;
    overflow: hidden;
    left: 0;
    top: 0;
    right: 0;
    z-index: 9999;
}
@media screen and (orientation: landscape) {
    .Splash_Page_Logo{
        max-width: 320px;
        width: 20%;
        opacity: 0;
    }
}
@media screen and (orientation: portrait) {
    .Splash_Page_Logo{
        width: 30%;
        opacity: 0;
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Header_Section{
        position:fixed;
        width: 100%;
        z-index: 9999;
        padding: 50px 0;
        box-sizing: border-box;
    }
    .Header_Logo{
        position: absolute;
        width: 240px;
        left: 5%;
    }
    .Header_ReserveBtn{
        position: absolute;
        width: 320px;
        border-radius: 50px;
        background-color: #FF5E00;
        overflow: hidden;
        right: 5%;
    }
    .Header_ReserveBtn a{
        display: block;
        text-align: center;
        width: 100%;
        height: 100%;
        padding: 20px 0;
        color: #FFF;
        font-size: 0.8em;
        font-weight: bold;
        font-family: "Cabin", sans-serif;
        font-optical-sizing: auto;
    }
    .Header_Instagram{
        position: fixed;
        width: 25px;
        left: 5%;
        bottom: 10vh;
        z-index: 9999;
    }
    .Header_Tabelog{
        position: fixed;
        width: 35px;
        left: calc(5% + 45px);
        bottom: 10vh;
        z-index: 9999;
    }
}
@media screen and (orientation: portrait) {
    .Header_Section{
        position:fixed;
        width: 100%;
        z-index: 9999;
        padding: 30px 0;
        box-sizing: border-box;
    }
    .Header_Logo{
        position: absolute;
        width: 35%;
        left: 5%;
    }
    .Header_ReserveBtn{
        position: absolute;
        width: 40%; 
        border-radius: 20px;
        background-color: #FF5E00;
        overflow: hidden;
        right: 5%;
        margin-top: 10px;
    }
    .Header_ReserveBtn a{
        display: block;
        text-align: center;
        width: 100%;
        height: 100%;
        padding: 10px 0;
        color: #FFF;
        font-size: 0.6em;
        font-weight: bold;
        font-family: "Cabin", sans-serif;
        font-optical-sizing: auto;
    }
    .Header_Instagram{
        position: fixed;
        width: 20px;
        right: 5%;
        bottom: 5vh;
        z-index: 9999;
    }
    .Header_Tabelog{
        position: fixed;
        width: 30px;
        right: calc(5% + 35px);
        bottom: 5vh;
        z-index: 9999;
    }
}
/* -------------------------------------------------------------------------------------- */
.Main_Section{
    position: relative;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 0;
    overflow: hidden;
}
.Main_Section_Img{
    position: fixed;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    z-index: -1;
}
.Main_Section_Img::after{
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-color: black;
    mix-blend-mode: hard-light;
    left: 0;
    top: 0;
    right:0;
    bottom: 0;
    opacity: 0.3;
}
.Main_Section_Img video{
    width: 100%;           /* 横幅を指定 */
    min-height: 100vh;
    aspect-ratio: 16 / 9;  /* 好きな比率を指定（縦サイズはこれに従い自動決定） */
    object-fit: cover;     /* 比率を守って中央を切り抜き */
    object-position: center; /* 中央を基準にする */
}
@media screen and (orientation: landscape) {
    .Main_Section_Catch{
        position: absolute;
        right: 5%;
        bottom: 10vh;
    }
    .Main_Section_Catch_Inner1,
    .Main_Section_Catch_Inner2,
    .Main_Section_Catch_Inner3{
        display: flex;
        display: -webkit-flex;
        color: #FFF;
    }
    .Main_Section_Catch_Inner1{
        font-size: 1em;
        font-family: "Zen Old Mincho", serif;
        font-weight: 400;
        font-style: normal;
        margin-bottom: 2em;
    }
    .Main_Section_Catch_Inner2,
    .Main_Section_Catch_Inner3{
        font-size: 8em;
        font-family: "Boldonse", system-ui;
        font-weight: 400;
        font-style: normal;
    }
    .Main_Section_Catch_Inner1 p,
    .Main_Section_Catch_Inner2 p,
    .Main_Section_Catch_Inner3 p{
            opacity: 0;
    }
    .Color_Orange{
        color: #FF5E00;
    }
}
@media screen and (orientation: portrait) {
    .Main_Section_Catch{
        position: absolute;
        left: 5%;
        bottom: 20vh;
    }
    .Main_Section_Catch_Inner1,
    .Main_Section_Catch_Inner2,
    .Main_Section_Catch_Inner3{
        display: flex;
        display: -webkit-flex;
        color: #FFF;
    }
    .Main_Section_Catch_Inner1{
        font-size: 3vw;
        font-family: "Zen Old Mincho", serif;
        font-weight: 400;
        font-style: normal;
        margin-bottom: 2em;
    }
    .Main_Section_Catch_Inner2,
    .Main_Section_Catch_Inner3{
        font-size: 16vw;
        font-family: "Boldonse", system-ui;
        font-weight: 400;
        font-style: normal;
    }
    .Main_Section_Catch_Inner1 p,
    .Main_Section_Catch_Inner2 p,
    .Main_Section_Catch_Inner3 p{
            opacity: 0;
    }
    .Main_Section_Catch_Inner3{
        margin-top: 5vw;
    }
    .Color_Orange{
        color: #FF5E00;
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Sub_Section{
        position: relative;
        background-color: rgba(0, 0, 0, 0.8);
    }
    .Wahts_OkuNakazaki{
        position: relative;
        width: 100vw;
        padding: 250px 0 0 0;
        overflow: hidden;
        box-sizing: border-box;
        z-index: 10;
        display: flex;
        display: -webkit-flex;
        align-items: center;
    }
    .Wahts_OkuNakazaki_Img{
        position: relative;
        width: 60vw;
        height: 60vw;

        overflow: hidden;
    }
    .Wahts_OkuNakazaki_Img img{
        position: absolute;
        object-fit: cover;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        width: 60vw;
        height: 60vw;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text{
        width: 40%;
        font-family: "Klee One", cursive;
        font-weight: 400;
        font-style: normal;
        color: #FFF;
        padding: 0 10%;
        box-sizing: border-box;
    }
    .Wahts_OkuNakazaki_Text h2{
        font-size: 3em;
        font-weight: bold;
        padding-bottom: 15px;
        margin-bottom: 50px;
        border-bottom: 0.9px solid #FFF;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text h2::before{
        content: "OKU-NAKAZAKICHO";
        display: block;
        font-size: 0.2em;
        margin-bottom: 5px;
        margin-left: 10px;
    }
    .Wahts_OkuNakazaki_Text p{
        font-size: 0.8em;
        line-height: 150%;
        margin-bottom: 20px;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text small{
        display: block;
        font-size: 0.6em;
        margin-top: 50px;
        text-align: right;
        opacity: 0;
    }
}
@media screen and (orientation: portrait) {
    .Sub_Section{
        position: relative;
        background-color: rgba(0, 0, 0, 0.7);
    }
    .Wahts_OkuNakazaki{
        position: relative;
        width: 100vw;
        padding: 150px 0 0 0;
        overflow: hidden;
        box-sizing: border-box;
        z-index: 10;
    }
    .Wahts_OkuNakazaki_Img{
        position: relative;
        width: 90vw;
        height: 90vw;
        margin: 0 auto 100px auto;
        overflow: hidden;
    }
    .Wahts_OkuNakazaki_Img img{
        position: absolute;
        object-fit: cover;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        width: 90vw;
        height: 90vw;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text{
        width: 90%;
        font-family: "Klee One", cursive;
        font-weight: 400;
        font-style: normal;
        color: #FFF;
        padding: 0 10%;
        box-sizing: border-box;
    }
    .Wahts_OkuNakazaki_Text h2{
        font-size: 2em;
        font-weight: bold;
        padding-bottom: 10px;
        margin-bottom: 25px;
        border-bottom: 0.9px solid #FFF;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text h2::before{
        content: "OKU-NAKAZAKICHO";
        display: block;
        font-size: 0.1em;
        margin-bottom: 5px;
        margin-left: 10px;
    }
    .Wahts_OkuNakazaki_Text p{
        font-size: 0.7em;
        line-height: 150%;
        margin-bottom: 10px;
        opacity: 0;
    }
    .Wahts_OkuNakazaki_Text small{
        display: block;
        font-size: 0.5em;
        margin-top: 50px;
        text-align: right;
        opacity: 0;
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Kakurega{
        position: relative;
        padding: 200px 0;
        overflow: hidden;
        box-sizing: border-box;
    }
    .Kakurega_Text{
        width: 50%;
        margin: 0 auto;
        color: #FFF;
        padding: 0 10%;
        box-sizing: border-box;
        text-align: center;
    }
    .Kakurega_Text h2{
        font-size: 3em;
        font-weight: bold;
        padding-bottom: 15px;
        margin-bottom: 50px;
        opacity: 0;
    }
    .Kakurega_Text h2::after{
        content: "A HIDDEN GEM";
        display: block;
        font-size: 0.2em;
        margin-top: 10px;
    }
    .Kakurega_Text p{
        font-size: 0.9em;
        line-height: 150%;
        margin-bottom: 20px;
        opacity: 0;
    }
    .Kakurega_Img{
        position: absolute;
        display:flex;
        display: -webkit-flex;
        width: 25%;
        height: 100%;
        overflow: hidden;
    }
    .Kakurega_Img img{
        position: absolute;
        object-fit: cover;
        width: 100%;
        height: calc(100% - 200px);
        opacity: 0;
    }
    #KAUREGA_IMG1{
        left: 0;
        top: 100px;
    }
    #KAUREGA_IMG1.Kakurega_Img::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /* 左（透明）から右（黒）へ */
        background: linear-gradient(to right, transparent 90%, #000000CC 100%);
    }
    #KAUREGA_IMG2{
        right: 0;
        top: 100px;
    }
    #KAUREGA_IMG2.Kakurega_Img::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /* 右（透明）から左（黒）へ */
        background: linear-gradient(to left, transparent 90%, #000000CC 100%);
    }
}
@media screen and (orientation: portrait) {
    .Kakurega{
        position: relative;
        padding: 100px 0;
        overflow: hidden;
        box-sizing: border-box;
    }
    .Kakurega_Text{
        width: 90%;
        margin: 0 auto;
        color: #FFF;
        padding: 0 10%;
        box-sizing: border-box;
        text-align: center;
    }
    .Kakurega_Text h2{
        font-size: 7vw;
        font-weight: bold;
        padding-bottom: 15px;
        margin-bottom: 30px;
        opacity: 0;
    }
    .Kakurega_Text h2::after{
        content: "A HIDDEN GEM";
        display: block;
        font-size: 0.2em;
        margin-top: 10px;
    }
    .Kakurega_Text p{
        font-size: 3vw;
        line-height: 150%;
        margin-bottom: 20px;
        opacity: 0;
    }
    .Kakurega_Img_Wrap{
        position: relative;
        display: flex;
        display: -webkit-flex;
        height: 70vw;
        margin-bottom: 50px;
    }
    .Kakurega_Img{
        position: relative;
        display:flex;
        display: -webkit-flex;
        width: 50%;
        height: 70vw;
        overflow: hidden;
    }
    .Kakurega_Img img{
        position: absolute;
        object-fit: cover;
        width: 100%;
        height: 70vw;
        opacity: 0;
    }
    #KAUREGA_IMG1.Kakurega_Img::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /* 左（透明）から右（黒）へ */
        background: linear-gradient(to bottom, transparent 90%, #000000CC 100%);
    }
    #KAUREGA_IMG2.Kakurega_Img::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /* 右（透明）から左（黒）へ */
        background: linear-gradient(to bottom, transparent 90%, #000000CC 100%);
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Gallery{
        position: relative;
        padding: 150px 10%; 
    }
    .Gallery_Header{
        display: flex;
        display: -webkit-flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .Gallery_Header_Img{
        position: relative;
        width: 12%;
        height: 24vw;
        overflow: hidden;
    }
    .Gallery_Header_Img img{
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0;
    }
    .Gallery_Text{
        position: relative;
        padding: 50px 0 0 0;
        text-align: center;
        color: #FFF;
    }
    .Gallery_Text_Icon{
        width: 50px;
        margin: 0 auto 25px auto;
        opacity: 0;
    }
    .Gallery_Text h2{
        font-size: 3em;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 50px;
        opacity: 0;
    }
    .Gallery_Text p{
        font-size: 0.9em;
        margin-bottom: 50px;
        opacity: 0;
    }
    .Gallery_Link{
        position: relative;
        width: 320px;
        height: 50px;
        border: 0.9px solid #fff;
        margin: 0 auto;
        opacity: 0;
    }
    .Gallery_Link a{
        position: absolute;
        display: block;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
    }
    .Link_Arrow{
        position: absolute;
        width: 60%;
        top: 24px;
        left: 20%;
        border-bottom: 0.9px solid #fff;
    }
    .Link_Arrow_Right{
        content: "";
        position: absolute;
        right: -1px;
        width: 10px;
        border-bottom: 0.9px solid #fff;
        transform: rotate(45deg);
        top: -4px;
    }
    .Gallery_Link:hover .Link_Arrow{
        animation: HOVER_ON_ARROW 0.6s forwards ease
    }
}
@media screen and (orientation: portrait) {
    .Gallery{
        position: relative;
        padding: 0 5% 100px 5%; 
    }
    .Gallery_Header{
        display: flex;
        display: -webkit-flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .Gallery_Header_Img{
        position: relative;
        width: 21vw;
        height: 21vw;
        overflow: hidden;
        margin-bottom: 1.5vw;
    }
    .Gallery_Header_Img img{
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0;
    }
    .Gallery_Text{
        position: relative;
        padding: 50px 0 0 0;
        text-align: center;
        color: #FFF;
    }
    .Gallery_Text_Icon{
        width: 50px;
        margin: 0 auto 25px auto;
        opacity: 0;
    }
    .Gallery_Text h2{
        font-size: 2.75em;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 25px;
        opacity: 0;
    }
    .Gallery_Text p{
        font-size: 0.8em;
        margin-bottom: 25px;
        opacity: 0;
    }
    .Gallery_Link{
        position: relative;
        width: 70%;
        height: 40px;
        border: 0.9px solid #fff;
        margin: 0 auto;
        opacity: 0;
    }
    .Gallery_Link a{
        position: absolute;
        display: block;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
    }
    .Link_Arrow{
        position: absolute;
        width: 60%;
        top: 21px;
        left: 20%;
        border-bottom: 0.9px solid #fff;
    }
    .Link_Arrow_Right{
        content: "";
        position: absolute;
        right: -1px;
        width: 10px;
        border-bottom: 0.9px solid #fff;
        transform: rotate(45deg);
        top: -4px;
    }
    .Gallery_Link:hover .Link_Arrow{
        animation: HOVER_ON_ARROW 0.6s forwards ease
    }
}
/* -------------------------------------------------------------------------------------- */
.Page_Gallery{
    position: relative;
    overflow: hidden;
    background:
    radial-gradient(ellipse at 20% 20%, rgba(255,240,200,0.06), transparent 60%),
    radial-gradient(ellipse at 30% 30%, rgba(255,255,255,0.04), transparent 40%),
    #111213;
    color: #FFF;
}
.Page_Gallery::before{
    content: "";
    position: fixed;
    inset: 0;
    background: url("img/noise.png");
    pointer-events: none;
    z-index: 1;
}
.Page_Gallery::after {
    content: "";
    position: fixed;
    inset: 0;
    background: radial-gradient(
        circle at center,
        transparent 60%,
        rgba(0,0,0,0.45) 100%
    );
    pointer-events: none;
}
@media screen and (orientation: landscape) {
    .Page_Gallery_Inner{
        position: relative;
        padding: 200px 20%;
        box-sizing: border-box;
        z-index: 1;
    }
    .Page_Gallert_Icon{
        width: 75px;
        margin: 0 auto 25px auto;
        opacity: 0;
    }
    .Page_Gallery h2{
        position: relative;
        font-size: 3em;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 50px;
        text-align: center;
        opacity: 0;
        z-index: 1;
    }
    .Page_Gallery p{
        position: relative;
        text-align: center;
        font-size: 0.9em;
        margin-bottom: 30px;
        opacity: 0;
    }
    .Page_Gallery small{
        position: relative;
        display: block;
        text-align: center;
        padding: 5px;
        font-size: 0.7em;
        /* border: 0.9px solid #FFF; */
        margin: 0 auto 50px auto;
        opacity: 0;
        z-index: 1;
    }
    .Page_Gallery_Img_Wrap{
        position: relative;
        display: flex;
        display: -webkit-flex;
        justify-content: space-between;
        flex-wrap: wrap;
        z-index: 1;
    }
    .Page_Gallery_Img_Wrap a{
        display: block;
        flex-basis: 14vw;
        height: 20vw;
        margin-bottom: 2.2vw;
        overflow: hidden;
        box-shadow:
        0 3px 6px rgba(0,0,0,0.6),
        1px 14px 35px rgba(15,10,5,0.55),
        0 40px 80px rgba(0,0,0,0.25),
        inset 0 1px 0 rgba(255,255,255,0.06);
        opacity: 0;
    }
    .Page_Gallery_Img_Wrap img{
        position: relative;
        object-fit: cover;
        width: 100%;
        height: 100%;

    }
    .Page_Gallery_Img_Wrap::after{
        content: "";
        display: block;
        flex-basis: 10vw;
        height: 10vw;
    }
}
@media screen and (orientation: portrait) {
    .Page_Gallery_Inner{
        position: relative;
        padding: 200px 5% 100px 5%;
        box-sizing: border-box;
        z-index: 1;
    }
    .Page_Gallert_Icon{
        width: 50px;
        margin: 0 auto 25px auto;
        opacity: 0;
    }
    .Page_Gallery h2{
        position: relative;
        font-size: 2.5em;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 50px;
        text-align: center;
        opacity: 0;
        z-index: 1;
    }
    .Page_Gallery p{
        position: relative;
        text-align: center;
        font-size: 0.7em;
        margin-bottom: 10px;
        opacity: 0;
    }
    .Page_Gallery small{
        position: relative;
        display: block;
        text-align: center;
        padding: 5px;
        font-size: 0.6em;
        /* border: 0.9px solid #FFF; */
        margin: 0 auto 50px auto;
        z-index: 1;
        opacity: 0;
    }
    .Page_Gallery_Img_Wrap{
        position: relative;
        display: flex;
        display: -webkit-flex;
        justify-content: space-between;
        flex-wrap: wrap;
        z-index: 1;
    }
    .Page_Gallery_Img_Wrap a{
        display: block;
        flex-basis: 27vw;
        height: 50vw;
        margin-bottom: 5vw;
        overflow: hidden;
        opacity: 0;
        box-shadow:
        0 3px 6px rgba(0,0,0,0.6),
        1px 14px 35px rgba(15,10,5,0.55),
        0 40px 80px rgba(0,0,0,0.25),
        inset 0 1px 0 rgba(255,255,255,0.06);
    }
    .Page_Gallery_Img_Wrap img{
        object-fit: cover;
        width: 100%;
        height: 100%;
    }
    .Page_Gallery_Img_Wrap::after{
        content: "";
        display: block;
        flex-basis: 27vw;
        height: 27vw;
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Media{
        position: relative;
        padding: 100px 20%;
        color: #fff;
    }
    .Media_Header h2{
        position: relative;
        font-size: 2.5em;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 25px;
        opacity: 0;
        z-index: 1;
    }
    .Media_Header p{
        font-size: 0.8em;
        margin-bottom: 50px;
        opacity: 0;
    }
    .Media_Info{
        display: flex;
        display: -webkit-flex;
        margin-bottom: 50px;
        padding-bottom: 15px;
        border-bottom: 0.9px dotted #7a7a7a;
        opacity: 0;
    }
    .Media_Info_Img{
        width: 100px;
    }
    .Media_Info_Text{
        padding-left: 25px;
    }
    .Media_Info_Text b{
        display: block;
        font-weight: bold;
        font-size: 1.25em;
        margin-bottom: 15px;
        text-decoration: underline;
        text-underline-offset: 8px;
    }
    .Media_Info_Text b small{
        font-size: 0.5em;
    }
    .Media_Info_Text p{
        font-size: 0.8em;
        line-height: 150%;
    }
}
@media screen and (orientation: portrait) {
    .Media{
        position: relative;
        padding: 100px 5%;
        color: #fff;
    }
    .Media_Header h2{
        position: relative;
        font-size: 7vw;
        font-weight: bold;
        font-family: "Boldonse", system-ui;
        margin-bottom: 25px;
        opacity: 0;
        z-index: 1;
    }
    .Media_Header p{
        font-size: 0.6em;
        margin-bottom: 50px;
        opacity: 0;
    }
    .Media_Info{
        display: flex;
        display: -webkit-flex;
        margin-bottom: 50px;
        padding-bottom: 15px;
        border-bottom: 0.9px dotted #7a7a7a;
        opacity: 0;
    }
    .Media_Info_Img{
        flex-basis: 25%;
    }
    .Media_Info_Text{
        flex-basis: 75%;
        box-sizing: border-box;
        padding-left: 10px;
    }
    .Media_Info_Text b{
        display: block;
        font-weight: bold;
        font-size: 4vw;
        margin-bottom: 15px;
    }
    .Media_Info_Text b small{
        display: block;
        margin: 10px 0 0 10px;
        font-size: 0.5em;
    }
    .Media_Info_Text p{
        font-size: 0.6em;
        line-height: 150%;
        border-top: 0.9px dotted #7a7a7a;
        padding-top: 10px;
    }
}
/* -------------------------------------------------------------------------------------- */
@media screen and (orientation: landscape) {
    .Footer_Section{
        position: relative;
        padding: 75px 0% 10px 0%;
        display: flex;
        display: -webkit-flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        background:
        radial-gradient(ellipse at 20% 20%, rgba(255,240,200,0.06), transparent 60%),
        radial-gradient(ellipse at 30% 30%, rgba(255,255,255,0.04), transparent 40%),
        #111213;
        color: #fff;
    }
    .Footer_Section::before{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        inset: 0;
        background: url("img/noise.png");
        pointer-events: none;
        z-index: 1;
        mix-blend-mode: difference;
    }
    .Footer_Section_Innner{
        position: relative;
        font-size: 0.8em;   
        flex-basis: 65%;
        padding-left: 15%;
        box-sizing: border-box;
        padding-bottom: 100px;
        z-index: 10;
    }
    .Footer_Logo{
        width: 320px;
        margin-bottom: 15px;
    }
    .Footer_Address{
        display: flex;
        display: -webkit-flex;
        align-items: center;
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 0.9px dotted#7a7a7a;
    }
    .GoogleMapLink{
        width: 32px;
        margin-left: 10px;
        /* filter: grayscale(100%); */
    }
    .Footer_Tel{
        margin-bottom: 10px;
    }
    .Footer_Tel a{
        color: #fff;
        outline:none;
        text-decoration: none;
        -webkit-tap-highlight-color:#fff
    }
    .Footer_StoreHours{
        margin-bottom: 10px;
    }
    .Footer_Img{
        position: relative;
        flex-basis: 35%;
        z-index: 11;
    }
    .Footer_Img img{
        position: absolute;
        display: block;
        right: 10px;
        bottom: 5px;
        width: 45vw;
        max-width: 720px;

    }
    .Copyright{
        font-size: 0.7em;
        flex-basis: 100%;
        text-align: center;
    }
}
@media screen and (orientation: portrait) {
    .Footer_Section{
        position: relative;
        padding: 75px 0% 10px 0%;
        display: flex;
        display: -webkit-flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        background:
        radial-gradient(ellipse at 20% 20%, rgba(255,240,200,0.06), transparent 60%),
        radial-gradient(ellipse at 30% 30%, rgba(255,255,255,0.04), transparent 40%),
        #111213;
        color: #fff;
    }
    .Footer_Section::before{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        inset: 0;
        background: url("img/noise.png");
        pointer-events: none;
        z-index: 1;
        opacity: 0.7;
        mix-blend-mode: color-burn;
    }
    .Footer_Section_Innner{
        position: relative;
        font-size: 0.7em;   
        flex-basis: 65%;
        padding-left: 5%;
        box-sizing: border-box;
        padding-bottom: 100px;
        z-index: 12;
    }
    .Footer_Logo{
        width: 80%;
        margin-bottom: 15px;
    }
    .Footer_Address{
        display: flex;
        display: -webkit-flex;
        align-items: center;
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 0.9px dotted#7a7a7a;
    }
    .GoogleMapLink{
        width: 24px;
        margin-left: 10px;
        z-index: 12;
        /* filter: grayscale(100%); */
    }
    .Footer_Tel{
        margin-bottom: 10px;
        z-index: 12;
    }
    .Footer_Tel a{
        color: #fff;
        outline:none;
        text-decoration: none;
        -webkit-tap-highlight-color:#fff
    }
    .Footer_StoreHours{
        margin-bottom: 10px;
    }
    .Footer_Img{
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100vw;
        height: 200vw;
        z-index: 11;
        overflow: hidden;
    }
    .Footer_Img img{
        position: absolute;
        display: block;
        right: -15%;
        bottom: 13%;
        width: 75vw;
        transform: rotate(-25deg);
        z-index: 0;

    }
    .Copyright{
        font-size: 0.6em;
        flex-basis: 100%;
        text-align: center;
    }
}