@charset "utf-8";
body,div,figure,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,input,textarea,p,blockquote,th,td{margin:0;padding:0;word-wrap:break-word;word-break:break-all;}
*{　-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
*:focus{outline: none;}
img{border:0;vertical-align:top;width:100%;}
em{font-style:normal;font-weight:bold;font-size:1em;}
ul{list-style:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
p,li,dd{line-height:1.6;word-wrap:break-word;word-break:break-all;}
html,body{height:100%;min-height:100%;}
article{min-height:100%;position:relative;}
body{overflow-x:hidden;}
.ta-l{text-align:left;}
.ta-c{text-align:center;}
.ta-r{text-align:right;}
.lh-1{line-height:1;}
.lh-12{line-height:1.2;}
.lh-14{line-height:1.4;}
.lh-16{line-height:1.6;}
.mh-a{margin-right:auto;margin-left:auto;}
.mh-1{margin-right:1em;margin-left:1em;}
.mv-1{margin-top:1em;margin-bottom:1em;}
.mv-2{margin-top:2em;margin-bottom:2em;}
.mb-025{margin-bottom:0.25em;}
.mb-0{margin-bottom:0;}
.mb-05{margin-bottom:0.5em;}
.mb-1{margin-bottom:1em;}
.mb-2{margin-bottom:2em;}
.mb-0{margin-top:0;}
.mt-05{margin-top:0.5em;}
.mt-1{margin-top:1em;}
.mt-2{margin-top:2em;}
.mr-05{margin-right:0.5em;}
.mr-1{margin-right:1em;}
.pa-05{padding:0.5em;}
.pa-1{padding:1em;}
.pa-2{padding:2em;}
.pt-05{padding-top:0.5em;}
.pt-1{padding-top:1em;}
.pt-2{padding-top:2em;}
.pb-05{padding-bottom:0.5em;}
.pb-1{padding-bottom:1em;}
.pb-2{padding-bottom:2em;}
.ph-05{padding-right:0.5em;padding-left:0.5em;}
.ph-1{padding-right:1em;padding-left:1em;}
.ph-2{padding-right:2em;padding-left:2em;}
.pv-05{padding-top:0.5em;padding-bottom:0.5em;}
.pv-1{padding-top:1em;padding-bottom:1em;}
.pv-2{padding-top:2em;padding-bottom:2em;}
.pr-1{padding-right:1em;}
.pr-05{padding-right:0.5em;}
.pl-1{padding-left:1em;}
.pl-05{padding-left:0.5em;}
.opa-8{opacity:0.8}
.opa-7{opacity:0.7}
.opa-5{opacity:0.5}
.opa-3{opacity:0.3}
.table{display:table;width:100%;}
.table > *{display:table-cell;vertical-align:middle;}
.table-fixed{table-layout:fixed;}
.dsp-inline{display:inline-block;}
.dsp-block{display:block;}
.bold{font-weight:bold;}
.fw-3{font-weight:300;}
.fw-4{font-weight:400;}
.fw-5{font-weight:500;}
.fw-6{font-weight:600;}
.fw-7{font-weight:700;}
.fw-8{font-weight:800;}
.fs-xl{font-size:200%;}
.fs-lll{font-size:160%;}
.fs-ll{font-size:140%;}
.fs-l{font-size:120%;}
.fs-s{font-size:90%;}
.fs-ss{font-size:80%;}
.wdt-20{width:20%;}
.wdt-25{width:25%;}
.wdt-30{width:30%;}
.wdt-32{width:32%;}
.wdt-33{width:33.3333%;}
.wdt-48{width:48%;}
.wdt-49{width:49%;}
.wdt-50{width:50%;}
.wdt-60{width:60%;}
.wdt-70{width:70%;}
.wdt-80{width:80%;}
.wdt-90{width:90%;}
.wdt-100{width:100%;}
.wdt-10em{width:10em;}
.wdt-9em{width:9em;}
.wdt-8em{width:8em;}
.wdt-7em{width:7em;}
.wdt-6em{width:6em;}
.wdt-5em{width:5em;}
.wdt-4em{width:4em;}
.wdt-3em{width:3em;}
.wdt-2em{width:2em;}
.mwdt-150px{max-width:150px}
.mwdt-200px{max-width:200px}
.mwdt-300px{max-width:300px}
.mwdt-400px{max-width:400px}
.mwdt-500px{max-width:500px}
.mwdt-600px{max-width:600px}
.mwdt-700px{max-width:700px}
.mwdt-800px{max-width:800px}
.fl-l{float:left;}
.fl-r{float:right;}
.clearfix::after{content:"";clear:both;display:block;}

/*---------------------------------------------
COMMON
---------------------------------------------*/

/*---基本設宁E----------*/
body {

font-family: 'Noto Sans KR', sans-serif;



    color: #fff;
	font-weight:100 !important;
    position: relative;
    -webkit-text-size-adjust: 100%;
}

p,dt,dd,li {line-height: 1.5;}

html,body   {
    height: 100%;
}

.wrap   {
    min-height: 100%;
    position: relative;
}

.blur   {
/*    filter: blur(1em);	*/
}

.blur #wrap,
.blur #topBtn,
.blur #f_Btn	{
	filter: blur(1em);
}


h1{
    font-size: 1.3em;
}

h3{
    font-size: 1.1em;
}

/*--PARTS-------------*/

button  {
    background: none;
    border: none;
    margin: 0;
    padding: 0;
    font: inherit;
    appearance: none;
    display: block;
    width: 100%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
textarea {
  width: 100%;
  display: block;
    padding: 0.75em;
    border: 1px #ccc solid;
    border-radius: 0.25em;
    font-size: 1em;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="password"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder   {
    opacity: 0.5;
}

.select_wrap {
  overflow: hidden;
    border: 1px #ccc solid;
    /* padding: 0.75em; */
    display: block;
    border-radius: 0.25em;
    background-color: #fff;
    position: relative;
    z-index:0;
}

.select_wrap::after {
font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f150";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    width: 1em;
    top: 50%;
    right: 0.5em;
    color: #ccc;
    margin-top: -0.5em;

}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    width: 100%;
    border-radius: 0.25em;
    padding: 0.75em;
    font-size: 1em;
    position: relative;
    z-index: 3;
    border: none;
    line-height: 1;
}

.form_checkbox li   {
    display: inline-block;
}

.form_checkbox input    {
    display: none;
}

.form_checkbox label    {
    display: inline-block;
    text-align: center;
    background-color: #666;
    padding: 0.5em 1em;
    border-radius: 0.2em;
    transition-duration:0.5s;
    -moz-transition-duration:0.5s;
    -webkit-transition-duration:0.5s;
    -o-transition-duration:0.5s;
    -ms-transition-duration:0.5s;
}

.form_checkbox input:checked + label    {
    background-color: #788fd3;
    color: #fff;
}

.form_inline > *    {
    display: inline-block;
    vertical-align: top;
}
.form_row {
  margin-bottom: 1em;
}

.form_row > label {
    margin-bottom: 0.5em;
}

.form_row > div > label {
    padding: 0 0.25em;
    line-height: 2.8;
}

ul.notice li {
  position: relative;
  line-height:1.6;
  padding-left:1.5em;
  margin: 1em 0;
}

ul.notice li::before {
  content:"※";
  position: absolute;
  top: 0;
  left: 0;
}

ul.check  {
    text-align: left;
}

ul.check li {
  padding-left: 1.5em;
  position: relative;
}

ul.check li::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f14a";
    position: absolute;
    top: -0.1em;
    left: 0;
    color: #e50112;
    font-size: 1.2em;
}

.box {
    background-color: #f0f0f0;
    padding: 1em;
}

table {
  border-collapse: collapse;
  width: 100%;
}

table th,
table td {
  padding: 0.25em 0.5em;
    border: 1px #ccc solid;
    background-color: #fff;
    line-height: 1.6;
}

table th {
    background-color: #eee;
}

table.default   {
    table-layout: fixed;
}

table.default th    {
    font-weight: normal;
    padding: 0.5em;
}

table.default td    {
    padding: 0.5em 1em;
}

table.default thead th  {
  padding: 0.25em 0;
  font-size: 90%;
  background-color: #008bd5;
  color: #fff;
}

table.auto  {
  width: auto;
}

dl.default {
}

dl.default dt {
    position: relative;
    padding-left: 1em;
    margin: 1.5em 0 0.75em;
}

dl.default dt::before {
    content: "";
    width: 0.8em;
    height: 0.8em;
    position: absolute;
    left: 0;
    top: 0.25em;
    background-color: #999;
}

dl.default dd {
}

em {
    font-size: 1.4em;
    margin: 0 0.1em;
}

a { color:#f00; text-decoration: none; }

/* list */
ul.mark > li {
  position: relative;
  padding-left: 1.5em;
}

ul.mark > li::before {
    content: "";
    position: absolute;
    top: 0.5em;
    left: 0.5em;
    width: 0.5em;
    height: 0.5em;
    background-color: rgba(255,255,255,0.5);
    border-radius: 100%;
}

ul.number {
  position: relative;
  padding-left: 1.5em;
}

ul.number > li::before {
    display: none;
}

ul.number span {
    position: absolute;
    top: auto;
    left: 0;
}

ul.mark li, ul.number li{
  margin: 0.4em 0;
}

.btn    {
    font-family: inherit;
    text-align: center;
    text-decoration: none;
    display: block;
    width: 100%;
    position: relative;
    font-size: 1em;
    line-height: 1;
    color: #500404;
    border: 2px #f2dfa5 solid;
    padding: 1em;
    border-radius: 0.2em;
    position: relative;
    box-shadow: 0 2px 4px #333;
    font-weight: bold;
    font-size: 1.2em;
    background: linear-gradient(to right bottom, #8C6905 0%, #FFE664 25%, #876400 75%, #735e00 100%);
}

.btn-inline {
    display: inline-block;
    width: auto;
    padding-left: 1.5em;
    padding-right: 1.5em;
}

.btn-ic-right::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f061";
  position: absolute;
  top: auto;
  right: 1em;
}

article {
    position: relative;
    overflow-x: hidden;
    
    background-size: 6em, cover;
    background-repeat: repeat, no-repeat !important;
    z-index: 0;
   
}

.btnArea    {
    position: relative;
    z-index:1;
}

/*-----------------------------------------------------*/

body    {
    font-size: 4vw;
    font-weight: 400;
    font-style: normal;
    background-color: #000;
}


body *  {
    background-repeat: no-repeat;
}

.index_pc   {
    display: none;
}

/*section > div {
    padding: 0.5em;
}*/

section{
    margin-bottom: 0px;
}

h2{
    margin-bottom: 1em;
}


/*---------------------------------------------*/

.forPC  {display:none;}

/*ファーストビュー*/

.top    {
    text-align: center;
    color: #fff;
    position: relative;
}

.top .logo{
    width: 13em;
    margin: 1em 1em 0;
}

.top p{
    line-height: 2em;
}

.first{
    position: relative;
    z-index: 0;
    margin-bottom: 1em;
    background-color: #000;
}

.first_tile {
    position: absolute;
    z-index: -1;
    background-image: linear-gradient(to top, #000, rgba(0,0,0,0.2) ),url(images/first_tile_sp.png);
    width: 100vw;
    height: 36em;
    background-size: 100% auto;
    top: 0;
    right: 0;
}

.first_photo    {
    position: absolute;
    z-index: -1;
    background-image: url(images/top_photo_1_sp.jpg);
    width: 200vw;
    height: 36em;
    right: 0;
    top: 0;
    mix-blend-mode: overlay;
    background-size: 100% auto;
    background-position: right top;
}

.first_photo.move   {
    transition-duration: 20s;
    right: -100vw;
    transition-timing-function: ease-out;
}

.first_text {
    position: relative;
    z-index: 2;
}

h1 .first_title{
    filter: drop-shadow(0 0 0.3em #fff);
}

.first_horse    {
    width: 14em;
    height: 14em;
    position: absolute;
    bottom: 5em;
    right: 1em;
    z-index: 2;
    background-image: url(images/horse_300px.png);
    background-size: auto 100%;
    filter: drop-shadow(-1em 0 1em rgba(0,0,0,0.5));
    background-position: right top;
}

.first_catch{
    padding: 0 1em 1em;
}

.first_sub_title{
    padding: 0.5em 2em;
}

/*-----------------------------------------------------*/




.active{
    position: relative;
    /*background-image: linear-gradient(135deg, transparent 5%, rgba(0,0,0,0.8), transparent 95%), url(images/bg_leather.png);
    */
    background-repeat: repeat;
    width: calc( 100vw - 2em);
    margin: 0 auto 3em;
    padding: 1em 0;
}

.active:before,
.active:after{
    content: "";
    width: 102%;
    height: 2em;
    position: absolute;
    left: -1%;
    background-size: contain;
}

.active:before{
    top: -2em;
    /* background: url(images/h2_upper_a.svg) no-repeat; */
    background-position: left bottom;
}

.active:after{
    bottom: -2.2em;
   /*  background: url(images/h2_lower_a.svg) no-repeat;*/
     background-position: left top;
}

.active .btnArea    {
    padding: 0 0.5em;
}


.active dl  {
    
    background-size: 90% auto;
    background-position: center 0.6em;
}

.active dt  {
    display: table;
    margin: 0 auto;
    font-size: 90%;
    opacity: 0.9;
}

.active dd{
    font-family: 'Noto Serif', serif;
    font-weight: 100;
    font-size: 1.7em;
    margin-bottom: 0;
    background: linear-gradient(180deg, #c78f23 30%,#feffd3 50%, #c68e23 70%);
    color: transparent;
    background-clip: text;
     -webkit-background-clip: text;
    margin-top: 0.25rem;
}

.active dd span{
    font-size: 70%;
    display: inline-block;
    line-height: 1.5;
    padding: 0 0.25em;
    color: #333;
    background: linear-gradient(135deg, #c78f23 30%,#feffd3 50%, #c68e23 70%);
    vertical-align: baseline;
    position: relative;
    top: -0.1em;
    margin-right: 0.25rem;
}

.active h2{
  
    /* color: #ceb55c; */
    font-size: 1.4em;

    line-height: 1;
    position: relative;
    mix-blend-mode: screen;
    opacity: 0.9;
    display: table;
    margin: 0 auto 1em;
    padding-left: 0.2em;
}

.active h2::before,
.active h2::after   {
    content: "";
    
    width: 1em;
    height: 1em;
    position: absolute;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center top;
}

.active h2::before  {
    left: -1.2em;
}

.active h2::after   {
    right: -1.2em;
}

.active p{
    padding: 0;
}

.active_tokuten {
    margin: 1em 0 2em;
    position: relative;
}

.active_tokuten::after  {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1em 1em 0 1em;
    border-color: #b49a87 transparent transparent transparent;
    bottom: -1.5em;
    left: 50%;
    margin-left: -1em;
}

.active_tokuten p   {
    line-height: 1.2;
}

.active_tokuten span    {
    font-family: 'Noto Serif';
    font-size: 1.2em;
    margin-right: 0.2em;
    /* color: #FF5722; */
    background: linear-gradient(180deg, #c78f23 30%,#feffd3 50%, #c68e23 70%);
    color: transparent;
    background-clip: text;
    -webkit-background-clip: text;
}

.active_tokuten span em {
    
}

.SNS ul{
    display: flex;
    justify-content: center;
    margin: 0 auto;
    transform: scale(0.8);
    transform-origin: center top;
}

.SNS li{
    margin: 0 0.5em;
    box-shadow: 0 0.2em 0.4em #000;
}

.SNS p{
    font-weight: bold;
    padding: 0;
    margin-bottom: 0.8em;
}

/*厳選6頭による&#12316;*/
.gensen{
    text-align: left;
    position: relative;
    background: url(images/lp_back_gensen.jpg) no-repeat;
    background-size: cover;
    margin-bottom: 2em;
    z-index: -2;
    padding: 60px 0px;
}

.gensen:after{
    content: "";
    width: 100%;
    height: 10em;
    position: absolute;
    /* background: url(images/book.png) no-repeat;*/
    background-size: contain;
    bottom: -1em;
    left: 12em;
    z-index: -1;
    opacity: 0.7;
	margin-top: 200px ;
}

.cct {font-size: 20px; text-align: center;}

@media screen and (max-width: 960px) {
	.gensen:after{
 
    background: url(images/book..png) no-repeat;

    }
	
	.cct {font-size: 18px; text-align: center;}
	
}







/* 전지현 26.01.02 추가*/
/* gensen 전용 골드 강조 */
.gensen-gold-box {
    text-align: center;
    margin: 30px 0;
}

/* 금액: 훨씬 밝고 입체적인 프리미엄 골드 */
.gensen-gold-price {
    font-family: 'Noto Serif', serif;
    font-size: 1.5em;
    font-weight: 800;
    /* line-height: 1.2; */

    /* gold-phone과 동일한 밝은 그라데이션 */
    background: linear-gradient(
        180deg,
        #ffffff 0%,   /* 상단 광택 */
        #ffe76a 45%,  /* 중심부 밝은 금색 */
        #ffc107 55%,  /* 하단 대비 */
        #fff9d4 100%  /* 끝단 마무리 */
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    /* 시인성을 높이기 위한 그림자 처리 */
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.9));
    
    margin-bottom: 0.4em;
}

/* 전화번호: 깨끗하고 명확한 샴페인 골드 */
.gensen-gold-phone {
    font-size: 1.6em;
    font-weight: 800;

    background: linear-gradient(
        180deg,
        #ffffff 0%,   /* 상단 광택 */
        #ffe76a 45%,  /* 중심부 밝은 금색 */
        #ffc107 55%,  /* 하단 대비 */
        #fff9d4 100%  /* 끝단 마무리 */
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    /* 전화번호는 숫자가 명확해야 하므로 그림자를 더 진하게 설정 */
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.9));
}

/* 안내 문구 박스 */
.gensen-info-box {
    text-align: center;
    margin-top: 30px;
    line-height: 1.8;
}

.gensen .gensen-info-box p {
    font-size: 1.2em;  /*1.1*/
    font-weight: 500;
    color: #ffeaa7 !important; /* 밝은 샴페인 골드 */
    margin-bottom: 15px;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
    word-break: keep-all; /* 단어 단위 줄바꿈으로 깔끔하게 */
}

/* 계좌 정보: 세련된 실버 화이트 */
.gensen .gensen-account {
    font-size: 1.15em;
    font-weight: 600;
    color: #ffffff !important; /* 순백색 (실버 느낌) */
    background: rgba(255, 255, 255, 0.1); /* 배경에 살짝 투명한 박스 추가 */
    display: inline-block;
    padding: 5px 15px;
    border-radius: 5px;
    border: 1px solid rgba(255, 215, 0, 0.3); /* 얇은 금색 테두리 */
    text-shadow: 0 1px 3px rgba(0,0,0,0.9);
    margin-top: 10px;
}


/* 사이트 맨 밑에 디자인 추가 */
/* 하단 연락처 박스 전체 정렬 */
.footer-contact-box {
    text-align: center;
    margin-top: 60px;
    padding-bottom: 40px;
}

/* 에이스정보(주) - 샴페인 골드 스타일 */
.footer-company-name {
    font-size: 1.1em !important; /* 크기 대폭 확대 */
    font-weight: 800 !important; /* 아주 두껍게 */
    margin-bottom: 10px !important;
    letter-spacing: 2px; /* 자간을 넓혀 고급스럽게 */

    background: linear-gradient(180deg, #ffffff 0%, #ffe76a 45%, #ffc107 55%, #fff9d4 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    
    /* 어두운 배경에서 글자가 튀어나와 보이게 하는 그림자 */
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.8));
}

/* 문의 번호 - 선명한 오렌지 골드 스타일 */
.footer-phone-number {
    font-size: 1.3em !important; /* 회사명보다 더 크게 강조 */
    font-weight: 900 !important;
    color: #ff9800; /* 기본 색상 */
    
    background: linear-gradient(180deg, #ffeb3b 0%, #ff9800 50%, #e65100 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    filter: drop-shadow(0 3px 6px rgba(0,0,0,0.9));
}

/* 전화번호 링크(a태그) 색상 강제 적용 */
.footer-phone-number a {
    color: inherit !important;
    text-decoration: none !important;
    -webkit-text-fill-color: transparent; /* 그라데이션 유지를 위해 필요 */
}

/* 모바일 대응 (화면이 작아질 때 크기 조정) */
@media screen and (max-width: 768px) {
    .footer-company-name { font-size: 1.1em !important; }
    .footer-phone-number { font-size: 1.3em !important; }
}


















.gensen p{
    line-height: 2em;
   /* margin-bottom: 0.3em; */
}

.strong{
    width: 95%;
    margin-left: -0.2em;
    margin-bottom: 0.3em;
}



.performance{
    background: url(images/lp_bg_seika_m.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height:680px;
}

.performance .inner p{
    line-height: 2;
    text-shadow: 0.1em 0.1em 0.3em #000;
}

.performance .inner span{
    color: #ea7918;
    font-weight: bold;
}

/*
.performance .tekithu{
    text-align: right;
    margin-bottom: 1em;
}
.performance .tekithu{
    width: 8em;
}
*/

/*完�E無料情報*/
.muryou{
    position: relative;
    margin-bottom: 1em;
    background-image: url(images/saport.jpg),linear-gradient(to bottom, #000, rgba(0,0,0,0.5) 30%, rgba(0,0,0,0.5) 70%, #000);
    background-size: cover, contain;
    background-position: center;
    background-blend-mode: multiply;
}

.muryou h2 figure{
    width: 70%;
    margin: 0 auto;
}

.muryou p{
    text-align: left;
    line-height: 2em;
    margin-bottom: 0.5em;
}

.muryou p span{
    background: linear-gradient(transparent 50%, #598631 60%);
    padding: 0.2em;
}

.muryou .logo{
    width: 8em;
    filter: drop-shadow(0 0 0.8em #fff);
    float: left;
}

.muryou .saport{
    width: 29em;
    position: absolute;
    left: 0;
    bottom: -1em;
    filter: brightness(40%);
    opacity: 0.8;
    z-index: -1;
}

.muryou_active::before,.muryou_active::after{
    display: none;
}

/*信頼と実績の予想陣*/
.yosoushi {
    position: relative;
    background-image: linear-gradient( to bottom, #000, #006b04 80%), url(images/stadium.jpg);
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
    margin-bottom: 0;
}

.yosoushi h2{
    text-align: right;
}

.yosoushi h2 img{
    width: 18em;
}


.yosoushi:before{
    content: "";
    width: 100%;
    height: 13em;
    position: absolute;
    top: 5em;
    left: 0;
    z-index: 0;
    filter: brightness(80%);
    /* background: url(images/yosoujhin.jpg) no-repeat;*/
    background-size: contain;
}
.yosoushi:after{
    content: "";
    width: 100%;
    height: 13em;
    position: absolute;
    top: 7em;
    left: 12.5em;
    z-index: 0;
    background: url(images/graf.png) no-repeat;
    background-size: contain;
}

.yosoushi h3{
    width: 18em;
    margin-bottom: 2em;
}

.yosoushi div{
    position: relative;
    z-index: 1;
}

.yosoushi_list{
    margin: 0 -1em;
    padding: 1em;
}

.yosoushi dl{
    display: flex;
    margin-bottom: 2em;
    justify-content: center;

}

.yosoushi dt{
    width: 30%;
    background: linear-gradient(45deg, #000000 10%, #3fad33);
    box-shadow: 0 0 0.5em #fff;
    border: solid 0.1em #bda811;
  
}


@media screen and (max-width: 1024px) {
.yosoushi dt{

    height:auto;
    vertical-align: bottom;
    height: 150px;
    overflow: hidden;
}

}



@media screen and (max-width: 993px) {
.yosoushi dt{

    height:auto;
    vertical-align: bottom;
    height: 120px;
    overflow: hidden;
}

}


.yosoushi dd{
    width: 60%;
    text-align: left;
    padding-left: 1em;
}

.yosoushi dd p{
    margin: 0;
}



.plansupport    {
    background-image: linear-gradient(to bottom, transparent, #000 19em), url(images/lp_pen.jpg);
    background-size: cover, contain;
    background-position: right top;
}

.plansupport h2{
    margin: 0 0 1em;
}

.plansupport h3{
    margin-top: 2em;
    margin-bottom: 1em;
}

.plansupport ul{
    margin-bottom: 1em;
}

.plansupport li{
    text-align: center;
    display: flex;
    height: calc( ( 100vw - 3em ) / 3 );
    border: 2px rgba(255,255,255,0.5) solid;
    width: calc( ( 100vw - 3em ) / 3 );
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    /* font-size: 90%; */
    float: left;
    margin-right: 0.5em;
}

.plansupport li:last-of-type    {
    margin-right: 0;
}

.plansupport li p   {
    line-height: 1.4;
}

.plansupport li span    {
    display: block;
    font-family: 'Noto Serif';
    font-size: 1.8em;
    font-style: italic;
    margin-top: 0.1em;
    margin-left: -0.2em;
    line-height: 1;
}


.plansupport > p{
    text-align: right;
    background: url(images/teian.jpg) no-repeat;
    background-size: contain;
    padding-top: 2.8em;
    text-shadow: 0.1em 0.1em 0.3em #000;
}

/*お客様�E声*/
.voice{
    position: relative;
}

.voice h2{
    margin-bottom: 2em;
}

.voice::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 12em;
    top: 0.2em;
    left: 13em;
    background: url(images/surtu.png) no-repeat;
    background-size: contain;
    z-index: -1;
}

.voice h2 figure img{
    width: 13em;
    margin: 1em;
}

.voicelist  {
    margin: 0 auto;
}

.voice li{
    background: url(images/bg_wood.png);
    padding: 1em;
    text-align: left;
    margin-bottom: 1em;
    border: 0.1em #987c1c solid;
}

.voice dt{
    font-size: 90%;
    margin-bottom: 0.5em;
}
.voice dt i{
    margin-right: 0.5em;
}

.hitlist    {
    margin-bottom: 2em;
}

.hitlist ul {
    text-align: left;
}

.hitlist ul p {
    line-height: 1.5;
}

.hitlist li {
    position: relative;
    background-image: url(images/bg_wood.png);
    background-repeat: repeat;
    background-size: contain;
    padding: 0.5em 0.5em;
    border: 0.3em #b38926 double;
    max-width: 25em;
}

.hitlist li dl  {
    padding: 0.5em 0 0;
    background: linear-gradient(to right bottom, #8C6905 0%, #FFE664 25%, #876400 75%, #735e00 100%);
    color: #000;
    text-align: center;
    border: 0.2em rgb(218 204 136) inset;
}

.hitlist li dt::before    {
    content: "";
    width: 5em;
    height: 5em;
    display: block;
    position: absolute;
    top: -0.75em;
    left: -0.75em;
    background-image: url(images/hitmark.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

.hitlist li dt  {
    position: relative;
    padding-left: 4.5em;
}

.hitlist li dd  {
}

.hitlist_plan   {
    font-family: 'Noto Serif';
    font-size: 1.3em;
    font-weight: bold;
    position: relative;
    z-index: 10;
    color: rgba(0,0,0,0.7);
    padding-bottom: 0.2em;
    text-align: left;
}


.hitlist li dd    {
    margin-top: 0.25rem;
}

.hitlist li dd span   {
    background: linear-gradient(to bottom, #DDAC24 0%, #FFF697 20%, #9C601E 29%, #FFF8B0 77%, #DDAC24 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
    filter: drop-shadow(0.075em 0.075em 0.075em rgba(0,0,0,0.8));
    font-size: 2em;
    display: block;
    line-height: 1;
    -webkit-text-stroke: 0.01em #fff;
}

.hitlist li dd em {
    background: none;
    font-size: 1.6em;
    font-family: 'Crimson Text';
    text-shadow: none;
}

.hitlist_racename   {
}

.hitlist_date   {
    font-size: 90%;
    text-align: left;
}

.hitlist_spec   {
    font-size: 90%;
}

.hitlist.swiper-container   {
    padding-top: 1em;
    padding-bottom: 2em;
}

.hitlist .swiper-button-prev,
.hitlist .swiper-button-next    {
    color: rgb(231 201 74 / 0.8);
    font-size: 1.6em;
    margin-top: -1.6em;
}

.hitlist .swiper-button-prev::after,
.hitlist .swiper-button-next::after    {
    content: none;
}

.hitlist .swiper-button-prev    {
    left: 0.5em;
}

.hitlist .swiper-button-next    {
    right: 0.5em;
}

.hitlist .swiper-pagination-bullet {
    background: #faedad;
}

.hitlist .swiper-pagination {
    margin-bottom: 0 !important;
}

.loginBtn   {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    color: #fff;
    display: block;
    padding: 0.5em;
    font-size: 1.6em;
    opacity: 0.8;
}

.bottom {
    padding: 0 1em;
    position: relative;
}

.bottom_emblem  {
    background-image: url(images/emblem_300px.png);
    width: 12em;
    height: 14em;
    background-size: auto 100%;
    margin-left: 2em;
    background-position: center top;
    margin-bottom: -1em;
}

.bottom_horse   {
    background-image: url(images/horse_300px.png);
    position: absolute;
    right: 1em;
    top: 5em;
    width: 14em;
    height: 13em;
    background-size: auto 100%;
    background-position: right top;
    filter: drop-shadow(-0.5em 0 0.5em #000);
}

.bottom_catch   {
    width: 85%;
    margin: 0 auto 1em;
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 0 0.5em #000);
}

.bottom_logo_eng    {
    filter: drop-shadow(0 0 0.5em #fff);
    margin-top: 0.25em;
}

.bottom_logo_jpn    {
    background-image: url(images/LP_title_kana.png);
    height: 1.6em;
    background-size: auto 100%;
    background-position: center;
    margin: 0.5em 0 3em;
}

.modal{
    display: none;
    height: 100vh;
    width: 100vw;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    background-color: rgba(0,0,0,0.5);
}

.modal > section    {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2em;
    width: 100%;
    height: 100%;
}

.modal > section > div  {
    max-width: 740px;
    max-height: 100%;
    overflow: auto;
}

.modal > section > div > h2 {
    text-align: center;
    font-size: 1.2em;
}

.modal-close    {
    position: fixed;
    top: 0.5em;
    right: 0.5em;
    /* border: 1px #ccc solid; */
    width: 2em;
    height: 2em;
}

.modal-close::before    {
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    content: "\f2d3";
    font-size: 2em;
}

#lineDialog {
    z-index: 200;
}

.modal-profile  {
}

.modal-profile dl   {
    margin: 1em 0;
}

.modal-profile dt   {
    color: #4CAF50;
    font-weight: bold;
    border-left: 2px #4CAF50 solid;
    padding-left: 0.5em;
    margin-bottom: 0.5em;
}

.modal-profile dd   {
}

.modal-privacy h3,
.modal-rule section > div section h2    {
    color: #4CAF50;
    font-weight: bold;
    margin: 1em 0;
}

.modal-line > section > div {
    padding: 2em 1em;
    background-color: #035d07;
}

.modal-line .button {
    display: block;
    border: 2px #ccc solid;
    padding: 1em;
    text-align: center;
    color: #fff;
    border-radius: 0.4em;
    margin: 1em 0;
}

.modal-login h3 {
    margin: 0.5em 0;
    text-align: center;
}

.modal-login button {
    color: #fff;
    border: 2px #fff solid;
    padding: 1em 0;
    border-radius: 0.4em;
    margin: 1em 0 2em;
}

.modal-login .SNS p {
    margin-top: 2em;
}

.modal-login .SNS p a   {
    color: #fff;
    padding: 1em 0;
    margin: 1em 0 2em;
    display: block;
    text-align: center;
}

.modal-regist > section {
    padding: 0;
}

.modal-regist .active   {
    width: 94%;
    margin: 4em auto;
    text-align: center;
}










/*-----------------------------------------------------*/

.loginForm  {
}

.logionForm_sns {
}

.logionForm_sns li  {
    float: left;
    width: 19.2%;
    margin-right: 1%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3em;
}

.logionForm_sns li:last-of-type {
    margin-right: 0;
}

.logionForm_sns li a    {
    display: block;
    background-color: #666;
    /* height: auto; */
    width: 100%;
    text-align: center;
    color: #fff;
    border-radius: 0.2em;
    padding: 0.5em;
}

/*-----------------------------------------------------*/

.topBtn {
    opacity: 0;
    position: fixed;
    bottom: 0em;
    right: -1em;
    width: 3em;
    line-height: 3;
    z-index: 4;
    transition: 0.8s;
}

.topBtn.active  {
    right: 0.5em;
}

.topBtn i   {
    font-size: 1.8em;
    color: #fff;
}

.visible{
    opacity: 1;
    bottom: 5.5em;
    display: block;
}

.f_Btn{
    opacity: 0;
    position: fixed;
    z-index: 5;
    bottom: -8em;
    filter: brightness(110%);
    transition: 0.8s;
    width: 100%;
}

.f_Btn_show{
    opacity: 1;
    bottom: 0.5em;
}

/*-----------------------------------------------------*/

.regNav {
    position: fixed;
    bottom: -5em;
    left: 0;
    width: 100%;
    background-color: #000;
    padding: 0.4em;
    transition-duration:0.5s;
    -moz-transition-duration:0.5s;
    -webkit-transition-duration:0.5s;
    -o-transition-duration:0.5s;
    -ms-transition-duration:0.5s;
    z-index: 200;
}

.regNav.active  {
    bottom: 0;
}

.regNav a   {
    display: block;
    background-image: url(/images/l/regbtn.png);
    width: 100%;
    height: 4.5em;
    background-size: 100% auto;
    background-position: center;
}

.regNav a span  {
    font-size: 80%;
}

/*-----------------------------------------------------*/

footer  {
    padding: 1em;
    position: relative;
}

footer figure   {
    width: 9em;
    position: absolute;
    top: 2em;
    left: 1em;
}

footer figcaption   {
    padding-left: 3.5em;
    font-size: 90%;
}

footer ul   {
    margin: 1em 0;
    padding-left: 11em;
}

footer ul li a  {
    font-size: 80%;
    color: #fff;
    display: block;
    padding: 0.25em 0 0.25em 1em;
    position: relative;
}

footer ul li a::before  {
    font-family: "Font Awesome 5 Pro";
    font-weight: 500;
    content: "\f054";
    position: absolute;
    top: 50%;
    margin-top: -0.5em;
    line-height: 1;
    left: 0;
}

footer li{
    text-align: left;
}

.footer_copyright{
    font-size: 0.4em;
    text-align: center;
}




.f-content{
    padding: 4em 1em 1em;
    position: relative;
    z-index: 1;
}

.f-content::after{
    content: "";
    position: absolute;
    background: url(images/money.png) no-repeat;
    background-size: contain;
    width: 100%;
    height: 19em;
    bottom: 0;
    right: 0;
    z-index: -1;
    background-position: right bottom;
}

.f-content h2{
}

.f-content h2 figure{
    width: 100%;
}


.f-content .logo::before{
    content: "";
    width: 100%;
    height: 11em;
    position: absolute;
    top: 0;
    background: url(images/horuse_black.png) no-repeat;
    background-size: contain;
    z-index: -1;
	   background-position: left bottom;
}



.f-content .logo{
    width: 15em;
    margin: 1em 0;
    position: relative;
}

.f-content .logo::after{
    content: "";
    width: 100%;
    height: 11em;
    position: absolute;
    top: 0;
    background: url(images/horse_300px.png) no-repeat;
    background-size: contain;
    z-index: -1;
}

.f-content h3{
    
    margin: 0.2em 0 0.5em;
    background-size: auto 1.5em;
    background-position: left top;
    line-height: 1.5;
    font-weight: bold;
    text-align: left;
    padding-left: 2em;

}

.f-content .button{
    margin: 1.5em 0 1em;
}

/*会員登録*/

.kaiin .content{
    padding: 1em 1em 12em;
}

.kaiin h1{
    margin: 1em 0;
}

.kaiin label{
    font-size: 1.2em;
}

.kaiin input{
    margin: 1em 0;
}

.kaiin label span{
    font-size: 0.9em;
    padding: 0.2em;
    background:#8c0025;
    border-radius: 0.3em;
}

.kaiin section h2{
    font-size: 1.2em;
    margin: 0;
    font-weight: bold;
}

.kaiin section{
    padding: 0.5em;
    background: linear-gradient(45deg, #0c0c0c, #671212);
    border:solid 0.1em #c38e4c
}



.thanks_top {
    max-width: 600px;
    margin: 2em auto;
    padding: 0 1em;
}

.thanks_logo    {
    width: 50%;
    margin: 0 auto 1em;
    display: block;
}

.thanks_jpn {
    display: block;
    width: 70%;
    margin: 0.5em auto;
}

.thanks h1{
    text-align: center;
    margin: 1em 0;
    letter-spacing: 0.2em;
}

.thanks_content {
    padding: 0 1em;
    max-width: 650px;
    margin: 0 auto;
}

.thanks_content p   {
    display: table;
    margin: 1em auto;
}

.thanks .btnArea{
    margin: 1em 0 2em;
}

.thanks .linkArea   {
    text-align: center;
}

.thanks .linkArea a {
    font-size: 1.2em;
    color: #fff;
    border-bottom: 1px #fff solid;
    padding-bottom: 0.25em;
}

.thanks form    {
    background-color: rgba(0,0,0,0.8);
    padding: 1em;
}

.thanks form label  {
    display: block;
    margin-bottom: 1em;
}

.thanks form label span {
    background-color: #F44336;
    font-size: 80%;
    padding: 0.2em 0.5em;
    line-height: 1;
    font-weight: bold;
}

.thanks .c-red  {
    color: #F44336;
}


.back{
    color: #fff;
}

input[type="checkbox"]{
    margin-right: 0.5em;
}


.name_thanks p{
    text-align: left;
    margin-bottom: 2em;
}
/*--------------------------------------------------*/

.regist article {
    padding: 4em 1em 0;
    max-width: 800px;
    margin: 0 auto;
    color: #fff;
    min-height: 100vh;
}

.regist .pageTop figure {
    max-width: 200px;
    margin: 0 auto;
    width: 40%;
}

.regist h1  {
    text-align: center;
    font-size: 1.2em;
    margin-bottom: 1em;
}

.regist label   {
    display: block;
}

.regist label span  {
    display: inline-block;
    font-size: 0.8em;
    background-color: #f00;
    color: #fff;
    padding: 0.25em 0.5em;
}

.pc{
    display: none;
}

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media ( min-width:768px ) {

body    {
    font-size: 20px;
}

main{
}

.sp{
    display: none;
}
.pc{
    display: block;
}

.first {
    padding-left: calc( ( 100% - 720px ) / 2 ) !important;
    padding-right: calc( ( 100% - 720px ) / 2 ) !important;
}

.pc{
    display: block;
}

.sp{
    display: none;
}

.first {
    font-size: 1.6em;
}

.first_tile {
    background-image: linear-gradient(to top, #000, rgba(0,0,0,0.2) ),url(images/first_tile_tab.png);
    width: 740px;
    left: 50%;
    margin-left: -350px;
}

.first_photo {
    height: 27em;
    width: 1000px;
    right: 50%;
    margin-right: -390px;
    background-image: url(images/top_photo_1_tab.jpg);
}

.first_photo.move {
    transition-duration: 20s;
    margin-right: -740px;
    transition-timing-function: ease-out;
    right: 50%;
}

.first_horse {
    right: 50%;
    margin-right: -14em;
}



.top .logo{

}

.first_sub_title {
    width: 600px;
    margin: 0.5em auto 0;
}

.active {
    padding: 2em 1em;
    width: 700px;
    margin-bottom: 5em;
}

.active .btnArea {
    width: 500px;
    margin: 0 auto;
}

.active h2{
}

.active dl{
    background-position: center 0.2em;
}

.active dt{
}

.active dd {
    font-size: 1.8em;
}

.active_tokuten p{
}

.active:before, .active:after {
    height: 2.8em;
}

.active:before  {
    top: -2.8em;
}

 .active:after {
    bottom: -2.8em;
}


.SNS li{
    margin: 0 1em;
}

.SNS figure{
    width: 3.5em;
}
.strong{
    width: 85%;
}

.gensen .inner,
.yosoushi .inner,
.plansupport .inner {
    width: 740px;
    margin-left: auto;
    margin-right: auto;
}

.gensen:after{
    height: 14em;
    left: 19em;
    bottom: -2em;
}

.performance h3{
    text-align: left;
}

.muryou {
    background-image: url(images/saport_pc.jpg),linear-gradient(to bottom, #000, rgba(0,0,0,0.5) 50%, #000);
    padding: 3em 0;
    background-size: cover;
}

.muryou .inner  {
    width: 740px;
    margin-left: auto;
    margin-right: auto;
}

.muryou .logo{
    width: 14em;
    right: 1em;
    top: 17em;
}

.muryou .saport{
    width: 100%;
    bottom: -1.5em;
}

.yosoushi h2{
    padding-right: 1em;
}
.yosoushi h2 img{
    width: 27em;
}

.yosoushi h3{
    width: 24em;
}

.yosoushi:after{
    height: 18em;
    top: 8em;
    left: 22em;
}


.yosoushi div{
    background-size: contain;
}

.performance h2 {
    max-width: 740px;
    margin: 0 auto 1em;
    padding: 0;
}

.hitlist li dd span {
    font-size: 2.8em;
}

.voice::before{
    height: 19em;
    top: -3.5em;
    left: 21em;
}

.voice h2 figure img{
    width: 18em;
}

.voice li{
    width: calc( 100% - 1em);
    margin: 0.5em;
}

.plansupport ul {
    width: 500px;
    margin: 0 auto 1em;
}

.plansupport li {
    width: calc( ( 500px - 3rem ) / 3 );
    height: calc( ( 500px - 3rem ) / 3 );
    /* font-size: 1.2em; */
    margin-right: 0.66em;
}

.bottom {
    font-size: 1.6em;
    width: 740px;
    margin: 0 auto 4em;
    padding: 0;
}

footer {
    display: table;
    margin: 2em auto;
    font-size: 1.2em;
}


.f_Btn {
    width: 500px;
    left: 1em;
}

.f-content {
    padding: 4em 0;
}

.f-content .inner   {
    width: 900px;
    margin: 0 auto;
}

.f-content::before{
    height: 45vw;
    top: 0px;
}

.f-content::after{
    height: 45vw;
}

.f-content .logo::after{
    height: 15em;
    left: 16em;
}

.topBtn{
    font-size: 1.4em;
    right: -0.5em;
}

.topBtn.visible{
    bottom: 1rem;
}


.profile_dialog-content div{
    width: 70%;
    margin: 0 auto;
}

.thanks article {
    min-height: calc( 100vh - 3em);
}

.thanks h1 {
    margin: 2em 0;
    font-size: 1.4em;
    letter-spacing: 0.2em;
    font-family: 'Noto Serif';
}

.thanks p   {
    font-size: 1em;
}

.thanks footer  {
    opacity: 0.8;
    font-size: 90%;
    margin: 0;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
}


}/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


@media ( min-width:1280px ) {

.forPC  {display:block;}
.noPC   {display:none;}

body{
}

p {
}

article {

    background-size: 6em, cover;
    background-repeat: repeat, no-repeat !important;
    padding-bottom: 0;
}

.f_Btn {
    width: 400px;
    margin: 0;
    left: 0;
    bottom: auto;
    top: -100px;
}

.f_Btn_show {
    opacity: 1;
    top: 0;
    bottom: auto;
}

.loginBtn{
}

.loginBtn::after{
    content: "로그인";
    font-size: 70%;
    vertical-align: middle;
    display: inline-block;
}

.topBtn{
    right: 50%;
    margin-right: -640px;
    font-size: 1em;
}

.visible{
    bottom: 1em;
}

.top_flex   {
    width: 1280px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    position: relative;
}

.top_flex .active {
    width: 600px;
    margin: 0 2em 3em 0;
}

#first  {
    min-height: 100vh;
}

.first  {
    position: static;
    font-size: 1.6em;
    width: 800px;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.first h1{
    padding: 0 0.5em;
}

.first_tile {
    background-image: linear-gradient(to top, #000 10%, rgba(0,0,0,0.3) 20% ),url(images/first_tile_tab.png);
    width: 100%;
    margin-left: 0;
    left: 0;
    background-size: cover, auto 100%;
    height: 100%;
    background-position: center, center top;
    background-color: #000;
}

.first_photo {
    right: 255px;
    margin-right: 0;
    width: 100%;
    height: 100%;
}

.first_photo.move {
    right: -200px;
    margin-right: 0;
    transition-duration: 50s;
}

.first_horse {
    font-size: 1.15em;
    background-image: url(images/horse_600px.png);
    margin-right: 0;
    right: 42%;
    top: 7em;
}

.inner{
    padding: 1em;
    margin: 0 auto;
}
.active{
    width: 780px;
}

.active:before, .active:after{
    height: 2.9em;
}

.active input[type="email"] {
    width: calc( 100% - 0.2em);
    margin: 0 auto;
}


.gensen{
    background: url(images/lp_back_gensen_pc.jpg) no-repeat;
    background-position: center top 1em;
    background-size: 100%;
}

.gensen:after{
	top:100px;
    left: 50%;
    margin-left: 8em;
    z-index: 1;
    opacity: 0.9;
    bottom: -5em;
}

.performance{
    background: url(images/lp_bg_seika_pc.jpg),linear-gradient(to bottom, #000 20%, #07750f 50% ,#000 85%);
    background-size: cover;
    background-position: center;
    margin: 0px;
    background-attachment: fixed;
    padding:  0px;
    background-blend-mode: multiply;
       height:600px;
}

.top_flex-muryou    {
    background-image: url(images/saport_pc.jpg),linear-gradient(to right, #000 5%, rgba(0,0,0,0.2) 30%, rgba(0,0,0,0.2) 50%, #000),linear-gradient(to bottom, #000 5%, rgba(0,0,0,0.2) 30%, rgba(0,0,0,0.2) 50%, #000);
    background-size: cover;
    background-blend-mode: multiply;
}

.muryou {
    width: 740px;
    padding: 5em 1em 5em 0;
    background: none;
}

.muryou .inner  {
    width: 100%;
}

.muryou .logo{
    right: auto;
    left: 50%;
}

.muryou .saport{
    width: 1024px;
    left: 50%;
    margin: 0;
    bottom: 50%;
    left: 0;
    margin-bottom: -345px;
}

.muryou ~ .active   {
    filter: drop-shadow(-1em 0 3em #000);
}

.yosoushi   {
    margin: 4em 0 0;
}

.yosoushi:before{
    top: 6em;
    left: 50%;
    margin-left: -22em;
}

.yosoushi:after{
    left: 50%;
    margin-left: 5em;
}

.yosoushi .inner    {
    width: 1280px;
}

.yosoushi_list  {
    display: flex;
}

.yosoushi_list dl{
    width: 40%;
}
.yosoushi_list dt{
    height: 125px;
}

.yosoushi_list br{
    display: none;
}

.plansupport{
    background-position: center top;
}


.voice::before{
    left: 50%;
    margin-left: 4em;
}

.voice li   {
    width: 320px;
    margin: 10px;
}


.f-content::after{
    background-attachment: fixed;
    height: 100%;
    background-size: auto 85%;
}

.f-content::before{
    background-attachment: fixed;
    height: 100%;
    background-size: auto 50%;
    background-position-y:4em;
}

.voice h2 figure{
    margin-left: -20em;
}

#bottom {
    padding: 5em 0 0;
}

.bottom {
    margin-bottom: 0;
}

.bottom_logo_jpn {
    margin-bottom: 0;
}

footer  {
    margin: 1em auto;
    font-size: 1em;
}

.dialog-content{
    width: 70%;
    padding: 2em 1em;
}

.dialog-content .btnArea{
    width: 80%;
    margin: 1em auto;
}

}/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/*■■アニメーション■■■■■■■■■■■■■■■■■■■■■■*/


.blinking{
   -webkit-animation:blink 0.5s ease-in-out infinite alternate;
   -moz-animation:blink 0.5s ease-in-out infinite alternate;
   animation:blink 0.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
   0% {opacity:0;}
   100% {opacity:1;}
}
@-moz-keyframes blink{
   0% {opacity:0;}
   100% {opacity:1;}
}
@keyframes blink{
   0% {opacity:0;}
   100% {opacity:1;}
}

.standby    {
}

#first  {
    background-color: #000;
}


#first.standby .first_tile  {
    filter: brightness(0);
    background-position: center, center -20em;
    background-color: #000;
}

#first.standby  .first_horse,
#first.standby  .logo,
#first.standby  .first_text {
    opacity: 0;
}

#first .first_tile  {
    transition-duration: 2s;
    transform-origin: left;
    background-position: center, center 0;  
}

#first .first_photo {
}

#first .first_horse {
    transition-delay: 1s;
    transition-duration: 2s;
}

#first .logo    {
    transition-delay: 1.2s;
    transition-duration: 2s;
}

#first .first_text  {
    transition-delay: 1.5s;
    transition-duration: 2s;
}

#first.standby .active  {
    top: 0.5em;
    opacity: 0;
}

#first .active  {
    transition-duration: 1s;
    transition-delay: 2s;
    top: 0;
}

#gensen.standby {
    opacity: 0;
}

#gensen.standby .inner  {
    opacity: 0;
    transform: translateY(1em);
}

#gensen {
    transition-duration: 0.5s;
}

#gensen .inner  {
    transition-duration: 2s;
}

#performance.standby    {
    opacity: 0;
}


#performance.standby .inner {
    opacity: 0;
    transform: translateY(1em);
}

#performance    {
    transition-duration: 0.5s;
}

#performance .inner {
    transition-duration: 2s;
}

#performance .hitlist   {
    transition-duration: 2s;
    transition-delay: 0.2s;
}

#muryou.standby > * {
    opacity: 0;
}

#muryou.standby section .inner,
#muryou.standby .active {
    opacity: 0;
    transform: translateY(1em);
}

#muryou section {
    transition-duration: 2s;
}

#muryou section .inner  {
    transition-duration: 0.5s;
}

#muryou .active {
    transition-duration: 0.5s;
    transition-delay: 1s;
}

#yosoushi.standby   {
    opacity: 0;
}

#yosoushi.standby .inner    {
    opacity: 0;
}

#yosoushi_list.standby dl   {
    opacity: 0;
}

#yosoushi   {
    transition-duration: 0.5s;
}

#yosoushi .inner    {
    transition-duration: 1s;
}

#yosoushi_list dl   {
    transition-duration: 0.5s;
}

#yosoushi_list dl:nth-of-type(1)    {
}

#yosoushi_list dl:nth-of-type(2)    {
    transition-delay: 0.3s;
}

#yosoushi_list dl:nth-of-type(3)    {
    transition-delay: 0.6s;
}

#support.standby,
#support.standby .innner,
#support.standby li,
#support.standby h2,
#support.standby h2 ~ p {
    opacity: 0;
}

#support.standby h2,
#support.standby h2 ~ p {
    transform: translateY(1em);
}

#support,
#support li {
    transition-duration: 1s;
}

#support .innner    {
    transition-duration: 2s;
    transition-delay: 0.3s;
}

#support li:nth-of-type(1)  {
    transition-delay: 0.3s;
}

#support li:nth-of-type(2)  {
    transition-delay: 0.6s;
}

#support li:nth-of-type(3)  {
    transition-delay: 0.9s;
}


#support h2 {
    transition-duration: 1.8s;
    transition-delay: 0.3s;

}

#support h2 ~ p {
    transition-duration: 1.8s;
    transition-delay: 0.6s;
}

#voice.standby,
#voice.standby .voicelist li    {
    opacity: 0;
}

#voice  {
    transition-duration: 1s;
}

#voice .voicelist li    {
    transition-duration: 1s;
    transition-delay: 0.2s;
}

#voice .voicelist li:nth-of-type(2) {
    transition-delay: 0.4s;
}

#voice .voicelist li:nth-of-type(3) {
    transition-delay: 0.6s;
}

#voice .voicelist li:nth-of-type(4) {
    transition-delay: 0.8s;
}

#voice .voicelist li:nth-of-type(5) {
    transition-delay: 1s;
}

#voice .voicelist li:nth-of-type(6) {
    transition-delay: 1.2s;
}

#last.standby,
#last.standby .inner    {
    opacity: 0;
}

#last   {
    transition-duration: 1s;
}

#last .inner    {
    transition-duration: 3s;
}

#bottom.standby .bottom_emblem,
#bottom.standby .bottom_horse,
#bottom.standby .bottom_logo_eng,
#bottom.standby .bottom_logo_jpn,
#bottom.standby .bottom_catch,
#bottom.standby .active {
    opacity: 0;
}

#bottom.standby .bottom_catch   {
}

#bottom.standby .active {
    transform: translateY(1em);
}

#bottom .bottom_catch   {
    transition-duration: 1s;
}

#bottom .bottom_emblem,
#bottom .bottom_horse,
#bottom .bottom_logo_eng,
#bottom .bottom_logo_jpn    {
    transition-delay: 0.3s;
    transition-duration: 2s;
}

#bottom .active {
    transition-delay: 0.6s;
    transition-duration: 2s;
}

.active .button{
    border-radius: 0.5em;
    animation: flash 1.8s infinite linear;
    -webkit-animation: flash 1.8s infinite linear;
    -moz-animation: flash 1.8s infinite linear;
}

@keyframes flash {
    0% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff; }
    50% { box-shadow:0 0 0; border: solid 0.1em transparent; }
    100% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff; }
}
@-webkit-keyframes flash {
    0% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff;}
    50% { box-shadow:0 0 0; border: solid 0.1em transparent;}
    100% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff;}
}
@-moz-keyframes flash {
    0% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff;}
    50% { box-shadow:0 0 0; border: solid 0.1em transparent;}
    100% { box-shadow:0 0 1em #fff; border: solid 0.1em #fff;}
}