html {
    font-size: 62.5%;
    scroll-behavior: smooth;
     overflow-x: hidden; 
}
body{
    font-family: "Noto Sans JP", sans-serif;
    color:#363636;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: -10;
    line-height: 1.4;
}
body::after{
position: fixed;
content:"";
display:block;
 background: url(/img/up/divine/subback1.jpg);
background-size: cover;
width:100vw;
height: 100vh;
top:0;
left:0;
z-index: -9;
}
.back_suna{
    background: url(/img/up/divine/back1.jpg);
    position: relative;
    z-index: -5;
}
.all{position: relative;}
.all.active::after{
    position: absolute;
    display: inline-block;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, .7));
    z-index: 10;
}
a {
    cursor: pointer;
    text-decoration: none;
    transition: all .2s;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
}
img {
    max-width: 100%;
    height: auto;
}
li {
    list-style: none;
}
.sp {
    display: none;
}
.pc {
    display: block;
}
@media screen and (max-width:599px) {
    .sp {
        display: block !important;
    }
    .pc {
        display: none !important;
    }
}
/*フェザーライト部分を普段は見えなくする*/
.popup{
    display: none;
}
/*--見出し--*/
h2{
    position: relative;
    font-family:Serif;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: 2s;
}
h2.show{
    opacity: 1;
  }
.h2back{
    width: 310px;
}
.h2title{
    white-space:nowrap;
    position: absolute;
    font-size: 5rem;
    font-weight: bold;
}
.h2title.white{
    color: #fff;
}
.h2title span{
    font-size: 110%;
}
.h2btn{
    position: absolute;
    width: 27px;
    height: 42px;
    bottom: -15px;
}
.h2top{
    position: absolute;
    top: 6%;
    left: 50%;
    transform: translateX(-50%);
}
.h2bottom{
    position: absolute;
    bottom: 3em;
    left: 50%;
    transform: translateX(-50%);
}
h3.red,
h3.orange,
h3.black{
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
    padding-left: 1em;
}
h3.red{
    --r: .8em;
    padding-right: calc(var(--r) + .25em);
    line-height: 1.8;
    clip-path: polygon(-100vw 0,100% 0,calc(100% - var(--r)) 50%,100% 100%,-100vw 100%);
    border-image: conic-gradient(#B73635 0 0) fill 0//100;
}
h3.orange{
    --r: .8em;
    padding-right: calc(var(--r) + .25em);
    line-height: 1.8;
    clip-path: polygon(-100vw 0,100% 0,calc(100% - var(--r)) 50%,100% 100%,-100vw 100%);
    border-image: conic-gradient(#D1AB39 0 0) fill 0//100;
}
h3.black{
    --r: .8em;
    padding-right: calc(var(--r) + .25em);
    line-height: 1.8;
    clip-path: polygon(-100vw 0,100% 0,calc(100% - var(--r)) 50%,100% 100%,-100vw 100%);
    border-image: conic-gradient(#363636 0 0) fill 0//100;
}
h4.sub_title{
    font-size: 3rem;
    font-weight: bold;
    color: #D1AB39;
    border-bottom: 2px solid;
    margin-bottom: .5em;
}
@media screen and (max-width:1200px) {
    .h2back{width: 35.92vw;}
    .h2title{font-size: 4.77vw;}
    .h2btn{width: 2.25vw; height:3.5vw; bottom: -10px;}
    h3.red,h3.orange,h3.black{font-size: 2.5rem;}
    h4.sub_title{font-size: 2.5rem;}
}

.nextbtn{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 80px auto;
    width: 350px;
    height: 70px;
    background: #363636;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
    font-size: clamp(2rem, 1.545rem + 1.21vw, 3rem);
}
@media (hover: hover) and (pointer: fine){
.nextbtn:hover{
    color: #D1AB39;
    background: #515151;
}
}
.totopbtn{
    width: 5.31vw;
    position: fixed;
    z-index: 998;
    bottom: 5vw;
    right: 5vw;
    transform: translateX(200%);
}
.totopbtn.show{
    animation: rightFadeIn 1s forwards;
}
/*----------------------------------
テキスト
-----------------------------------*/
.mintyou1{
font-family: "Noto Serif JP", serif;
font-optical-sizing: auto;
font-weight: <weight>;
font-style: normal;
}
/*------20pxテンプレ---------*/
.text20{
    font-size: 2rem;
    line-height: 1.6;
}
.text20 .orangebold{
    font-size: 130%;
    font-weight: bold;
    color: #D1AB39;
}
.text20 .greenbold{
    font-size: 130%;
    font-weight: bold;
    color: #4BAD32;
}
.text20 .blue,
.text20 a{
    color: #61CAD8;
}
.text20 .under{
    border-bottom: 2px solid #D1AB39;
}
.text20list{
    background: #E8E5D8;
    padding: 1em 3em;
    margin-bottom: 2em;
}
.text20list li{
    position: relative;
}
.text20list li::before{
    border-radius: 50%;
    width: 5px;
    height: 5px;
    display: block;
    position: absolute;
    left: -.5em;
    top: 0.7em;
    content: "";
    background: #D1AB39;
}
@media screen and (max-width:1280px){
    .text20{font-size: 1.56vw;}
}
@media screen and (max-width:599px){
    .text20{font-size: 3.38vw;}
    .text20list{padding: 1em 2em;}
}
/*-----------------------------------
全体的なコンテンツ幅
-------------------------------------*/
.content_width{
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}
@media screen and (max-width:1280px) {
    .content_width{padding: 0 40px;}
}

@media screen and (max-width:599px) {
    .content_width{padding: 0 10px;}
}
/*-----------------------------------
ヘッダー
-------------------------------------*/
.indexheader{
    position: fixed;
    top: 20px;
    left: 90%;
    /*transform: translateX(-50%);*/
    z-index: 9999;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.logoAlea{
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
.logo{
    width: 150px;
    height: 75px;
}
.hamburger{
    background: #D1AB39;
    width: 50px;
    height: 50px;
    border-radius: 10px;
    padding: 10px;
}
.hamburger span{
  display: block;
  position: relative;
  left: 50%;
  height: 2px;
  transform: translateX(-50%);
  background: #fff;
  transition: all 0.4s;
}
.hamburger span:nth-of-type(1) {top: -4px;} 
.hamburger span:nth-of-type(2) {top: 1px;} 
.hamburger span:nth-of-type(3) {top: 6px; width: 70%; transform: translateX(-65%);}
.hamburger.active span:nth-of-type(1) {
    top: 0;
    transform: translateX(-50%) rotate(225deg);
}
.hamburger.active span:nth-of-type(2) {
    opacity: 0;
}
.hamburger.active span:nth-of-type(3) {
    top: -4px;
    transform: translateX(-50%) rotate(-225deg);
    width: 100%;
}
@media screen and (max-width:1200px) {
    .hamburger{width: 40px; height: 40px;}
    .logo{width: 120px;height: 60px;}
}

/*---------------------------------------
ハンバーガーメニュー中身
----------------------------------------*/
.topmenu {
    position: fixed;
    width: 45%;
    height: 100%;
    min-height: 100vh;
    top: 0;
    right: -100%;
    background: url(/img/up/divine/back1.jpg);
    background-size: cover;
    transition: all 0.3s;
    z-index: 9998;
    overflow-y: scroll;
}
.topmenu_list{
    margin:80px 50px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.topmenu_logo{
    width: 250px;
}
.topmenu_item{
    display: flex;
    align-items: center;
    gap: 10px;
}
.topmenu_item img{
    width: 30px;
    height: auto;
}
.topmenu_item a {
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
}
.topmenu_item a:hover {
    color: #0f5474;
}
.topmenu.active {
    right: 0;
}

/*----------------------------------
TOP画面
-----------------------------------*/
.IndexTop{
    width: 100%;
    height: 50vw;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /*background: url(/img/up/divine/topback1.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    object-fit: cover;*/
    position: relative;
    overflow: hidden;
}
.IndexTop::after{
    display: inline-block;
    position: absolute;
    content: "";
    width: 100%;
    height: 30%;
    bottom: 0;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, 1)); 
}
.topimgbox{
    position: relative;
    top: 5vw;
    left: -29%;
    width: 83vw;
    animation: tate 5s infinite;
    filter: drop-shadow(4px 2px 4px #191919);
}
.topimg{
    width: 77vw;
    height: 83.91vw;
}

.active.topimg{
    animation: LeftFadeIn 1s forwards;
}
.kemuri{
    display: inline-block;
    position: absolute;
    z-index: 2;
    opacity: 0;
    min-width: 0;
}
.kemuri:nth-child(2){
    width: 120px;
    height: auto;
    top: 10%;
    right: 50%;
}
.kemuri:nth-child(3){
    width: 80px;
    height: auto;
    top: 0;
    right: 0;
}
.kemuri:nth-child(4){
    width: 100px;
    height: auto;
    top: 35%;
    right: -5%;
}
.kemuri:nth-child(5){
    width: 100px;
    height: auto;
    top: 30%;
    right: 45%;
}
.active.kemuri:nth-child(2),
.active.kemuri:nth-child(5){
    animation: in .5s forwards , yurayura1 5s linear infinite;
    animation-delay: 1.5s;
}
.active.kemuri:nth-child(3),
.active.kemuri:nth-child(4){
    animation: in .5s forwards , yurayura2 5s linear infinite;
    animation-delay: 1.5s;
}
@media screen and (max-width:1200px) {
    .kemuri:nth-child(2){
        width: 8vw;
    }
    .kemuri:nth-child(3){
        width: 6vw;
    }
    .kemuri:nth-child(4){
        width: 9vw;
    }
    .kemuri:nth-child(5){
        width: 6vw;
    }
    .IndexTop{
        height: 60vw;
    }
}
.smoke{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/*----------------------------------
TOP重賞
-----------------------------------*/
.topinner{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: end;
    gap: .5em;
    color: #FFFDF5;
    font-weight: bold;
    font-size:clamp(1.6rem, -0.267rem + 3.89vw, 4.4rem);
    text-shadow: 2px 2px 1px #000;
}
.text1 span{
    color: #D1AB39;
    font-size: 140%;
}
.textmove{
    position: relative;
    transform: translateY(100px);
    opacity: 0;
}
.textmove.active{
    transition: 2s;
    transform: translateY(0px);
    opacity: 1;
}

.toptextbox{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.jusyo{
    text-align: center;
    border-top: .1em solid;
    border-bottom: .1em solid;
    border-radius: 5%;
    padding: .2em 0;
}
.j_d{
    font-size: min(max(16px, calc(1rem + ((1vw - 5.99px) * 2.0558))), 30px);
}
/*-------------------------------
登録ボタン
---------------------------------*/
.tourokubtn{
    margin-top: 1em;
    display: inline-block;
    padding: .5em 2em;
    background: #515151;
    border-radius: 3em;
    font-size: min(max(20px, calc(1.25rem + ((1vw - 5.99px) * 2.2026))), 35px);
    font-weight: bold;
    color: #e9b50b;
    border: .1em solid #e9b50b;
    position: relative;
}
.tourokubtn.btnanime{animation: kakudai 1s infinite !important;}

.active.tourokubtn{
    animation: FadeIn 1s forwards;
}
.active.tourokubtn span::after{
    display: inline-block;
    position: absolute;
    content: "";
    width: 2em;
    height: 2em;
    background: url(/img/up/divine/star.png) no-repeat;
    background-size: contain;
    bottom:-1em;
    left: 5%;
    animation: floating 4s forwards , kaiten 2s linear infinite;
}
.active.tourokubtn::before{
    position: absolute;
    content: "";
    display: inline-block;
    width: 3em;
    height: 3em;
    background: url(/img/up/divine/star.png) no-repeat;
    background-size: contain;
    top: -1.5em;
    left: 0;
    animation: star1 3s forwards , kaiten 5s linear infinite;
}
.active.tourokubtn::after{
    position: absolute;
    content: "";
    display: inline-block;
    width: 2em;
    height: 2em;
    background: url(/img/up/divine/star.png) no-repeat;
    background-size: contain;
    top: -1em;
    left: -10%;
    animation: star2 4s forwards , kaiten 2s linear infinite;
}
@media (hover: hover) and (pointer: fine){
.tourokubtn:hover{
    transition: .5s;
    background: #D1AB39;
    color: #fff;
}
}
/*---------------------------------------------
特典
-----------------------------------------------*/
.tokuten{
    position: relative;
    top: -15vw;
    margin-bottom: -15vw;
}
.tokuten_box{
    display: flex;
    flex-wrap:nowrap;
    width: 100%;
    justify-content: space-between;
    align-items: flex-end;
}
.tokuten_img1{
    width: 411px;
    height: 340px;
}
.tokuten_img2{
    width: 246px;
    height: 178px;
}
.tokuten_img2{
    min-width: 0;
    opacity: 0;
}
.active.tokuten_img2{
    animation: in .5s forwards;
    animation-delay: 2.5s;
}
.active.tokuten_img2:nth-child(3){
    animation-delay: 2.75s;
}
.active.tokuten_img2:nth-child(4){
    animation-delay: 3s;
}
.tokuten_label,
.f_tokuten_label{
    position: relative;
}
.tokuten_text1{
    position: absolute;
    font-size: 130px;
    font-weight: bold;
    color: #D1AB39;
    top: 25%;
    left: 21%;
}
.tokuten_text1 span{
    font-size: 25%;
}
.tokuten_text2{
    position: absolute;
    font-size: 50px;
    font-weight: bold;
    color: #fff;
    left: 25%;
    bottom: 8%;
}

@media screen and (max-width:1200px) {
    .tokuten_img1{width: 29.41vw;height: 24.33vw;}
    .tokuten_img2{width: 17.81vw;height: 13.83vw;}
    .tokuten_text1{font-size:10.83vw;top: 18%;left: 18%;}
    .tokuten_text2{font-size:4.17vw;}
}

/*-----------------------------------------
TOP的中実績
-------------------------------------------*/
.topjisseki{
    background: url(/img/up/divine/jisseki_haikei.png) no-repeat;
    background-size: cover;
    background-position:bottom;
    width: 100%;
    height: 63vw;
    margin-bottom: 80px;
    position: relative;
}

.jisseki_slider{
    position: relative;
    top: 30%; 
}
.s_jissekibox{
    position: relative;
    width: 895px;
    height: 550px;
    background: url(/img/up/divine/tekityujisseki_pc.png) no-repeat;
    background-size: contain;
}
.s_jisseki_left{
    text-align: center;
    color: #363636;
    font-weight: bold;
    position: absolute;
    top: 23.5%;
    left: 9%;
    width: 52%;
}
.s_jissekiplan{
    font-size: 3rem;
}
.s_jissekirace{
    font-size: 4rem;
    margin-top: .3em;
}
.s_jissekimoney{
    font-size: 6.8rem;
    font-weight: 900;
    display: inline-block;
    background:linear-gradient(90deg, #fffb00 0%, #fff9a1 45%, #ffe700 70%, #fffef3 85%, #facc0c 90% 100%);
    background-size: 300% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  animation-name: gradationTextAnimation;
  animation-duration: 3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
    filter: drop-shadow(2px 2px 0px #000);
    margin-top:.2em;
}
@keyframes gradationTextAnimation{
    0%{
        background-position: 0 0;
    }
    50%{
        background-position: 100% 0;
    }
    100%{
        background-position: 0 0;
    }
}
.s_jissekisub{
    font-size: 2rem;
}
.s_jissekitextbox{
    font-size: 1.4rem;
    position: absolute;
    right: 13%;
    top: 30%;
}
@media screen and (max-width:1600px){
    .s_jissekibox{
        width: 700px;
        height: 430px;
    }
    .s_jisseki_left{top: 22%; left: 9%;}
    .s_jissekiplan{font-size: 2.4rem;}
    .s_jissekirace {font-size: 3.2rem;
    margin-top: .5em;}
    .s_jissekimoney {font-size: 5.6rem;margin-top:0;}
    .s_jissekisub {font-size: 1.6rem;}
    .s_jissekitextbox {
        font-size: 1.2rem;
        right: 12.5%;
        top: 28%;
    }
    .topjisseki{
        height: 900px;
    }
}
@media screen and (max-width:1025px){
    .h2top{
        top: 6%;
    }
    .topjisseki{
        height: 825px;
    }
}
/*-------------スライダードット------------------------*/
.slick-dots{
    bottom: 0 !important;
}
.slick-dots li button:before{
    font-size: 1.6rem !important;
}
.slick-dots li.slick-active button:before{
    opacity: 1 !important;
    color: #D1AB39 !important;
}
.slick-dots li button:before{
    opacity: 1 !important;
    color: white !important;
}
/*------------------------------------------
Divineとは？
--------------------------------------------*/
.aboutbox{
    display: flex;
    justify-content: space-between;
    width: 100%;
    gap: 20px;
    margin-bottom: 80px;
    transform: translateY(100px);
    opacity: 0;
}
.aboutbox.show{
transition: .5s;
transform: translateY(0);
opacity: 1;
}
.aboutbox.revers{
    flex-direction: row-reverse;
}
.aboutimg{
    width: 300px;
    height: 300px;
    background: #D1AB39;
    border-radius: 100%;
}
.abouttitle{
    display: flex;
    align-items: center;
    gap: 10px;
}
.aboutno{
    font-size: 12rem;
    font-weight: bold;
    /*color: #D1AB39;*/
    color: #c59912;
    line-height: 1;
}
.aboutsub{
    font-size: 2rem;
    color: #D1AB39;
    font-weight: 800;
}
.aboutmain{
    font-size: 6rem;
    color: #363636;
    font-weight: bold;
    line-height: 1.2;
}
.aboutmain.two{
    font-size: 5rem;
}
.abouttextbox{
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}
.abouttext{
    font-size: 2rem;
}

@media screen and (max-width:1200px){
    .aboutimg{
        width: 29.17vw;
        height: 29.17vw;
    }
    .aboutno{font-size: 10.67vw;}
    .aboutmain{font-size: 4.82vw;}
    .aboutmain.two{font-size: 4.17vw;}
    .aboutsub,.abouttext{font-size: 1.67vw;}
}

/*-------------------------------------------------
サポート
---------------------------------------------------*/
.support{
    background: url(/img/up/divine/support_haikei.png) no-repeat;
    background-size: cover;
    background-position: bottom;
    width: 100%;
    padding: 5% 0 200px;
    position: relative;
}
.supportbox{
    position: relative;
    height: auto;
    background: url(/img/up/divine/support.png) no-repeat;
    background-size: cover;
    background-position: top;
    text-align: center;
    padding: 200px 3em 3em;
    border-radius: 20px;
    width: 90%;
}
.supportbox p{
    margin-bottom: 1em;
}
.supporttext1{
    font-size: clamp(1.2rem, 0.836rem + 0.97vw, 2rem);
}
.supportflex{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1em;
    flex-wrap: nowrap;
    margin-bottom: 2em;
}
.supportflex img{
    width: 110px;
}
.supporttext2{
    font-size: clamp(2rem, 1.545rem + 1.21vw, 3rem);
    font-weight: bold;
}
.tel{
    color: #D1AB39;
    font-size: clamp(2rem, 1.545rem + 1.21vw, 3rem);
    font-weight: bold;
}
.supporttitle{
    background: url(/img/up/divine/ribon.png) no-repeat;
    background-size: cover;
    background-position: center;
    width: 769px;
    height: 86px;
    position: absolute;
    top: 8%;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
}
.supportbox::after{
    position: absolute;
    display: inline-block;
    content: "";
    width: 155px;
    height: 80px;
    background: url(/img/up/divine/rogo_3.png) no-repeat;
    background-size: contain;
    bottom: 2%;
    right: 3em;
}
.supportbox span,
.koebox span{
    display: inline-block;
    width: 100%;
    height: 2px;
    background: #D1AB39;
    border-radius: 50%;
    margin-top: -1em;
}
@media screen and (max-width:767px){
    .supporttitle{
        width: 100%;
        background-size: contain;
    }
}
/*----------------------------------------------
口コミ
------------------------------------------------*/
.kutikomi{
    display: flex;
    justify-content: space-between;
    align-items: start;
    flex-wrap: wrap;
}
.koebox {
    margin-left: 50px;
    margin-top: 80px;
    padding: 50px 2em 2em;
    width: 500px;
    height: auto;
	position: relative;
	background: #ffffff;
    border-radius: 10px;
    z-index: 1;
    filter: drop-shadow(1px 1px 1px #707070);
    transform: translateY(100px);
    opacity: 0;
}
.koebox.show{
    transition: .5s;
    transform: translateY(0);
    opacity: 1;
}

.koebox::after {
    position: absolute;
    display: inline-block;
    content: "";
    z-index: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 30px 50px 0;
    border-color: transparent #ffffff transparent transparent;
    top: 95%;
    left: 90%;
    border-radius: 5px;
}
.koebox:nth-child(2){
    background: #FFFDF5;
}
.koebox:nth-child(3n){
    background: #FFFDF5;
}
.koebox:nth-child(2)::after{
    border-color: transparent #FFFDF5 transparent transparent !important;
}
.koebox:nth-child(3n)::after{
    border-color: transparent #FFFDF5 transparent transparent !important;
}
.ribon{
    width: 307px;
    position: absolute;
    top: 1em;
    left: -5em;
}
.koetextbox{
    margin-top: 0;
}
.ribontext{
    position: absolute;
    top: 1em;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
}
.kutikomitext{
    margin-top: 1em;
    font-size: 1.4rem;
}

@media screen and (max-width:1199px){
    .koebox{width: 37.67vw;}
}

/*-----------------------------------------------
フッター
-------------------------------------------------*/
.footerarea{
    background: url(/img/up/divine/topback1.png) no-repeat;
    background-position: center;
    background-size: cover;
    height: 50.46vw;
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.footerimg{
    display: block;
    position: absolute;
    height: 62.46vw;
    right: 100%;
    top: 20px;
    animation: tate 4s infinite;
}
.footerarea.show img{
    transition: 1s;
    right: 0%;
}
.footerarea::after{
    display: inline-block;
    position: absolute;
    content: "";
    width: 100%;
    height: 50%;
    bottom: 0;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, 1));
}
.footerinner{
    max-width: 900px;
    width: 100%;
    color: #fff;
    position: relative;
    z-index: 5;
    text-align: center;
    margin-bottom: 10vw;
}
.f_menuarea a .logo{
    width: 150px;
    height: auto;
    margin: 0 auto;
    display: block;
}
.footerinner .text1{
    font-size:clamp(1.6rem, -0.267rem + 3.89vw, 4.4rem);
}
.footertext{
    font-size: 1.4rem;
}
.footertext a{
    color: #61CAD8;
}
.footertext b{
    text-decoration: underline;
    text-decoration-color: #D4483A;
}
.touroku{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 30px 0;
    width:100%;
}
.touroku_form{
    width: 100%;
    font-size: 1.6rem;
    padding: .5em 1em;
}
.footertotop{
    background: #B73635;
    color: #fff;
    padding: 1em 0 .5em;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 20px;
}
.footertotop span{
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(-45deg);
}
.footermenu{
    background: #363636;
}
.f_menuarea{
    padding: 50px 0;
    width: 100%;
    color: #fff;
    /* display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px; */
}
.sub_li{
    position: relative;
}
.sub_li .sub-menu{
    position: absolute;
    z-index: 1;
    width: 100%;
    top: 100%;
    left: 0;
}
@media (hover: hover) and (pointer: fine){
.f_menuitem:hover{
    color: #D1AB39;
}
}
.pc .f_menu{
    width: 100%;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 50px 0;
}

.copy{
    font-size: 1.4rem;
    text-align: center;
}
@media screen and (max-width:1199px){
    .footerarea{height: 60vw;}
    .footerinner{width: 70%;}
    .footertext{font-size: 1.2rem;}
    .footerinner .logo{width: 100px;}
    .f_menu{width: 70%; justify-content: start; gap: 1em;}
}


/*--------------------------------------------
featherlight新規登録
----------------------------------------------*/
.pop{
    max-width: 800px;
    max-height: 700px; 
    background: url(/img/up/divine/back1.jpg);
    background-size: cover;
}

.entry{
    background: url(/img/up/divine/shinkimuryou_entry.png) no-repeat;
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    padding: 30px 20px;
    max-width: 750px;
}
.entry_text1{
    margin-top: 1em;
    font-size: 4rem;
    font-weight: bold;
    color: #fff;
    text-shadow: 2px 2px 0 #000;
}
.tourokupop{
    margin-top: 1em;
    width: 335px;
    height: 60px;
    background: #363636;
    color: #fff;
    border-radius: 100px;
    font-size: 1.9rem;
    font-weight: bold;
    display: inline-block;
    text-align: center;
    line-height: 60px;
}
.f_f{
    text-align: center;
    padding: 40px 0;
}
.link_blue{
    margin-top: 1em;
    display: inline-block;
    width: 250px;
    height: 40px;
    background: #61CAD8;
    color: #fff;
    font-size: 1.4rem;
    line-height: 40px;
    font-weight: bold;
    border-radius: 20px;
}
/*--------------------------------------------
featherlightログイン
----------------------------------------------*/
.loginpop{
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    gap: 2em;
    padding: 30px;
    max-width: 600px;
}
.login_text1{
    font-size: 3rem;
    font-weight: bold;
}
.login_form p{
    font-size: 2rem;
    font-weight: bold;
}
.pop_mail,.pop_pass{
    border: 2px solid;
    width: 100%;
    padding: .5em 1em;
}
.lineLoginBtn a img{
    width: 250px !important;
}

/*--------------------------------------------
サブページ
----------------------------------------------*/
.subHeader{
    background: url(/img/up/divine/subheader.png);
    background-size: cover;
    background-position: bottom;
    width: 100%;
    height: 300px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: end;
    padding-bottom: 3em;
}
.subTitle{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 6rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.2;
}
.subTitle span{
    font-size: 2rem;
}
.sub_back{
    padding: 100px 0;
}

@media screen and (max-width:1199px){
    .subHeader{height: 200px;}
    .subTitle{font-size: 4.5rem;}
    .subTitle span{font-size: 1.8rem;}
}
/*--------------------------------------------
サポートフォーム
----------------------------------------------*/
.support_content{
    width: 100%;
}
.support_content p{
    font-size: 2rem;
}
.support_form{
    display: flex;
    flex-direction: column;
    margin-top: 2em;
}
.support_mail{
    border: 2px solid;
    padding: .5em 1em;
    font-size: 1.6rem;
    margin-bottom: 2em;
}
.support_textarea{
    border: 2px solid;
    background: #fff;
    min-height: 200px;
    padding: 1em;
    font-size: 1.6rem;
    margin-bottom: 2em;
    transition: unset;
    overflow: hidden;
}
.support_form label{
    font-size: 3rem;
    font-weight: bold;
}
.support_form label span{
    font-size: 70%;
    margin-left: 1em;
    color: #B73635;
}
.support_btn{
    width: 335px;
    height: 60px;
    background: #363636;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    border-radius: 30px;
    display: inline-block;
    margin: 0 auto;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.support_footer{
    background: #fff;
    width: 100%;
    padding: 20px 0;
}
.support_footerbox{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.support_footerbox p:nth-child(1){
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1em;
}
.support_footerbox p:nth-child(2){
    font-size: 1.4rem;
    line-height: 1.6em;
}

/*-------------------------------------------
的中実績ページ
----------------------------------------------*/
.result_container{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.result_box{
    position: relative;
    background: url(/img/up/divine/jisseki_card2.png) no-repeat;
    background-size: contain;
    width: 580px;
    height: 370px;
    margin-bottom: 50px;
}
.result_left{
    text-align: center;
    color: #fff;
    font-weight: bold;
    position: absolute;
    top: 23%;
    left: 4%;
    width: 53%;
}
.result_left.br{
    color: #363636 !important;
}
.result_money{
    font-size: 4.8rem;
    font-weight: 900;
    display: inline-block;
        background:linear-gradient(90deg, #fffb00 0%, #fff9a1 45%, #ffe700 70%, #fffef3 85%, #facc0c 90% 100%);
    background-size: 300% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  animation-name: gradationTextAnimation;
  animation-duration: 3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
    filter: drop-shadow(2px 2px 0px #000);
}
.result_plan{
    font-size: 2rem;
}
.result_race{
    margin-top: .5em;
    font-size: 2.5rem;
}
.result_sub{
    font-size: 1.4rem;
}
.result_banner{
    position: absolute;
    width: 222px;
    top: 22.5%;
    right: 2%;
}
@media screen and (max-width:1300px){
    .result_box{
        width: 43.62vw;
        height: 28.46vw;
        margin-bottom: 5vw;
    }
    .result_banner{
        width: 16.8vw;
        top: 22%;
    }
    .result_left{
        top: 23%;
        left: 4%;
    }
    .result_money{font-size: 3.54vw;}
    .result_plan{font-size: 1.54vw;}
    .result_race{
        margin-top: .4em;
        font-size: 1.92vw;
    }
    .result_sub{font-size: 1.08vw;}
}
/*-------------------------------------------
クチコミページ
----------------------------------------------*/
.pagination{
    display: flex;
    justify-content: end;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}
.page{
    font-size: 2rem;
    width: 50px;
    height: 50px;
    color: #fff;
    background: #363636;
    text-align: center;
    line-height: 50px;
    display: inline-block;
}
.page.active{
    background: #D1AB39;
}
.page.next{
    width: 150px;
}

/*--------------------------------------------
共通ページ
----------------------------------------------*/
.sub_text{
    font-size: 2rem;
    margin-bottom: 2em;
    line-height: 1.6em;
}
.sub_text.first{
    margin-bottom: 0;
}
.sub_text.first::first-letter,
.sub_text span{
    font-size: 110%;
    font-weight: bold;
    padding-right: .5em;
} 
.sub_text a{
    color: #61CAD8;
}
.sub_text_span{
    font-size: 2.4rem;
    font-weight: bold;
}

@media screen and (max-width:1200px){
    .sub_text{font-size: 1.4rem;}
    .sub_text_span{font-size: 1.8rem;}
}
.tokutei{
    width: 100%;
    font-size: 2rem;
}
.tokutei tr th,
.tokutei tr td{
    border: .1em solid #D1AB39;
    padding: 1em;
    vertical-align: middle;
}
.tokutei tr th{
    background: #E8E5D8;
    white-space: balance;
}
.tokutei tr td{
    background: #FFFDF5;
}
@media screen and (max-width:1000px){
    .tokutei{font-size: 1.4rem;}
}
/*-----------------------------------------------
特商法表記(アコーディオン)
-----------------------------------------------*/
.accordion__summary {
  font-weight: bold;
  position: relative;
  display: block;
  cursor: pointer;
  /*font-size: 1.4rem;*/
  background: #E8E5D8;
    white-space: balance;
    padding: 1.4rem;
    width: 100%;
  border: .1em solid #D1AB39;
}
.accordion__summary::after {
  content: "▼";
  /*font-size: 1.4rem;*/
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.accordion input:checked ~ .accordion__summary::after {
  content: "▲";
}
.accordion input {
  display: none;
}
.accordion__detail {
  display: none;
  /*font-size: 1.4rem;*/
   background: #FFFDF5;
  padding: 1.2rem;
  width: 100%;
  border: .1em solid #D1AB39;
  border-top: none;
  border-bottom: none;
}
.accordion input:checked ~ .accordion__detail {
  display: block;
}
/*-----------------------------------------
サンクスページ
------------------------------------------*/
.thanks{
    background: url(/img/up/divine/back1.jpg);
    background-size: cover;
    padding: 30px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2em;
    box-shadow: 2px 2px 2px #363636;
}
.thanks img{
    width: 376px;
}
/*-------------------------------------------
ページネーション
----------------------------------------------*/
.pagination{
    display: flex;
    justify-content: end;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}
.pager_link,
.pager_current{
    font-size: 2rem;
    width: 50px;
    height: 50px;
    color: #fff;
    background: #363636;
    text-align: center;
    line-height: 50px;
    display: inline-block;
    border-radius: 5px;
}
.pager_current{
    background: #D1AB39 !important;
}
.pager_link.next{
    width: 150px !important;
}

/*--------------------------------------------------
ローディング
---------------------------------------------------------*/
.loading {
  position: fixed;
  z-index: 99999;
  width: 100%;
  height: 100vh;
  margin: 0;
  padding: 0;
  background: #e7e7e7;
}
.loading.hide {
  opacity: 0;
  pointer-events: none;
  transition: opacity 1000ms;
}
.loading .circle {
  display: block;
  position: relative;
  top: calc(50% - 35px);
  width: 70px;
  height: 70px;
  margin: 0 auto;
  border: 8px solid #444444;
  border-top: 7px solid #D1AB39;
  border-radius: 100%;
  animation: loading 1000ms linear 0ms infinite normal both;
}
@keyframes loading {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
/*-------------------------------------------
LINE登録
---------------------------------------------*/
.main_line{
  display: flex;
  justify-content: center;
}
.main_line_container{
  max-width: 450px;
  margin: 1em 0;
}
.main_line_btn a img{filter: drop-shadow(2px 2px 0px #fff);}
@media screen and (max-width:1280px){
.main_line_container{width:35.16vw;}
}
@media screen and (max-width:599px){
.main_line_container{width: 90%;margin: 1em auto .5em;}
}
@media (hover: hover) and (pointer: fine){
.main_line_btn a img:hover{filter: brightness(0.8);}
}