countercounter@charset "UTF-8";
/* CSS Document */

/********** Setting ***********/
/*
window.FontAwesomeConfig = {
  searchPseudoElements: true
}
*/
html {
    width: 100%;
	height: 100%;
	font-size: 100%;
	line-height: 1.5em;
	scroll-behavior: smooth;
    background: #fef8eb;
}
body {
    width: 100%;
	height: auto;
	color: #000000;
	-webkit-text-size-adjust : 100%;
	font-family: "Noto Sans JP", sans-serif;
	background: #f0f0f0;
    background-size: contain;
    font-size: 16px;
    line-height: 1.5em;
    margin: 0 auto;
}

@media screen and (max-width: 770px) {
  body {
    width: 100%;
    color: #000000;
	-webkit-text-size-adjust : 100%;
	font-family: "Noto Sans JP", sans-serif;
	background: #f0f0f0;
    font-size: 16px;
    background-size: contain;
    }
}

a[href^="tel:"] {
    poinp_bannerter-events: none;
}

a {
    text-decoration: none;
}

* html body { /* for IE6 */
  font-size: small;
}

*:first-child+html body { /* for IE7 */
  font-size: small;
}

    ul,li{
        list-style: none;
        margin: 0;
        padding: 0;
    }
    dl dd{
            margin-inline-start: 0px;

    }
   p {
    display: block;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

img {
    max-width: 100%;
}

/**********Setting***********/


/*========= 驛｢譎渉�･郢晢ｽ｣驛｢謨鳴驛｢譎｢�ｽ�ｼ ===============*/
header{
    width: 100%;

}


/*========= top ===============*/
#top {
    width: 100%;
    height: 720px;
	background:#333333;


}

#top .inner{
    width: 1240px;
	margin: 0 auto;
	position: relative;
}

.video-pc {
  display: block;
}

.video-sp {
  display: none;
}

h1 {
	width: 365px;
	position: absolute;
	bottom: 50px;
  left: 50%;
  transform: translate(-50%);
	z-index: 100;
}

@media screen and (max-width: 768px) {
	#top {
    width: 100%;
    height: 80vh;
	background:#333333;
		overflow: hidden;
}

#top .inner{
    width: 100%;
	margin: 0 auto;
	position: relative;
}


  .video-pc {
    display: none;
  }
  .video-sp {
	  width: 100%;
    display: block;
  }


h1 {
	width: 200px;
	position: absolute;
	bottom: 40px;
  left: 50%;
  transform: translate(-50%);
	z-index: 100;
}


}



/*==================================================
驛｢�ｧ�ｽ�ｹ驛｢譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢謨鳴驛｢譎｢�ｽ�ｼ驍ｵ�ｺ�ｽ�ｮ驍ｵ�ｺ雋�∞�ｽ竏ｫ�ｸ�ｺ�ｽ�ｮcss
===================================*/
.slider img {
    width:100%;/*驛｢�ｧ�ｽ�ｹ驛｢譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢謨鳴驛｢譎｢�ｽ�ｼ髯ｷﾂ�ｽ�ｽ�ｽ�ｽ鬨ｾ蛹�ｽｽ�ｻ髯ｷ蜑�ｽｸ螂�ｽｽ螳夲ｽｮ髮｣�ｽ�ｪ髯晢ｽｷ�ｽ�ｽ100%驍ｵ�ｺ�ｽ�ｫ*/
    height:auto;
	margin: 10px auto 5px auto;
}

/*slick驍ｵ�ｺ�ｽ�ｮJS驍ｵ�ｺ�ｽ�ｧ髫ｴ蜴�ｽｽ�ｸ驍ｵ�ｺ闕ｵ譎｢�ｽ讙趣ｽｹ�ｧ闕ｵ譏ｴ笆�驛｢�ｧ�ｽ�ｰ髯ｷﾂ�ｽ�ｽ�つ遶丞｣ｹ笳矩Δ譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢譎臥櫨�ｽ�ｷ�ｽ�ｦ髯ｷ�ｿ�ｽ�ｳ驍ｵ�ｺ�ｽ�ｮ髣厄ｽｴ陷･荳樣��ｫｫ�ｱ�ｽ�ｿ髫ｰ�ｨ�ｽ�ｴ*/

.slider .slick-slide {
    margin:0 10px 0 0;/*驛｢�ｧ�ｽ�ｹ驛｢譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢譎臥櫨�ｽ�ｷ�ｽ�ｦ髯ｷ�ｿ�ｽ�ｳ驍ｵ�ｺ�ｽ�ｮ髣厄ｽｴ陷･荳樣��ｫｫ�ｱ�ｽ�ｿ髫ｰ�ｨ�ｽ�ｴ*/
}

@media screen and (max-width: 770px) {
.slider img {
    width:100%;/*驛｢�ｧ�ｽ�ｹ驛｢譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢謨鳴驛｢譎｢�ｽ�ｼ髯ｷﾂ�ｽ�ｽ�ｽ�ｽ鬨ｾ蛹�ｽｽ�ｻ髯ｷ蜑�ｽｸ螂�ｽｽ螳夲ｽｮ髮｣�ｽ�ｪ髯晢ｽｷ�ｽ�ｽ100%驍ｵ�ｺ�ｽ�ｫ*/
    height:auto;
	margin: 5px auto 5px auto;
}

/*slick驍ｵ�ｺ�ｽ�ｮJS驍ｵ�ｺ�ｽ�ｧ髫ｴ蜴�ｽｽ�ｸ驍ｵ�ｺ闕ｵ譎｢�ｽ讙趣ｽｹ�ｧ闕ｵ譏ｴ笆�驛｢�ｧ�ｽ�ｰ髯ｷﾂ�ｽ�ｽ�つ遶丞｣ｹ笳矩Δ譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢譎臥櫨�ｽ�ｷ�ｽ�ｦ髯ｷ�ｿ�ｽ�ｳ驍ｵ�ｺ�ｽ�ｮ髣厄ｽｴ陷･荳樣��ｫｫ�ｱ�ｽ�ｿ髫ｰ�ｨ�ｽ�ｴ*/

.slider .slick-slide {
    margin:0 5px 0 0;/*驛｢�ｧ�ｽ�ｹ驛｢譎｢�ｽ�ｩ驛｢�ｧ�ｽ�､驛｢譎臥櫨�ｽ�ｷ�ｽ�ｦ髯ｷ�ｿ�ｽ�ｳ驍ｵ�ｺ�ｽ�ｮ髣厄ｽｴ陷･荳樣��ｫｫ�ｱ�ｽ�ｿ髫ｰ�ｨ�ｽ�ｴ*/
}
}

/*========= content01 ===============*/

#content01 {
	width:100%;
	height: 556px;
	background: url("../../image/lp/section01-bg.png");
	margin: 30px auto;
	overflow: hidden;
}
#content01 .inner{
	width: 1020px;
	height: 556px;
	margin: 0 auto;
	position: relative;
}

#content01 .inner .phone{
	width: 481px;
	position: absolute;
	top: 60px;
  left: 50%;
  transform: translate(-50%);
	z-index: 3;
}

#content01 .inner .text01{
	width: 982px;
	position: absolute;
	top: 40px;
  left: 50%;
  transform: translate(-50%);
	z-index: 4;
}

#content01 .inner .text02{
	width: 748px;
	position: absolute;
	top: 230px;
  left: 50%;
  transform: translate(-50%);
	z-index: 5;
}

@media screen and (max-width: 770px) {

#content01 {
	width:100%;
	height: 300px;
	background: url("../../image/lp/section01-bg.png");
	margin: 10px auto;
	overflow: hidden;
	background-size: cover;
}
#content01 .inner{
	width: 100%;
	height: auto;
	margin: 0 auto;
	position: relative;
	padding: 20px;
}

	#content01 .inner .phone{
	width: 70%;
	position: absolute;
	top: 60px;
  left: 50%;
  transform: translate(-50%);
	z-index: 3;
}

#content01 .inner .text01{
	width: 90%;
	position: absolute;
	top: 60px;
  left: 50%;
  transform: translate(-50%);
	z-index: 4;
	margin: 0 auto;
}

#content01 .inner .text01 img{
	width: 100%;
}


#content01 .inner .text02{
	width: 90%;
	position: absolute;
	top: 130px;
  left: 50%;
  transform: translate(-50%);
	z-index: 5;
}
}

/*========= content02 ===============*/

#content02 {
	width: 100%;
}
#content02 .inner {
	width: 1020px;
	height: 769px;
	margin: 10px auto;
	position: relative;
}
#content02 .text01{
	width: 1004px;
	margin: 0 auto;
}
#content02 .inner .text02{
	width: 710px;
	margin: 0 auto;
	 position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	z-index: 5;
}
#content02 .inner .bg{
	width: 1020px;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
}


@media screen and (max-width: 770px) {

#content02 {
	width: 100%;
}
#content02 .inner {
	width: 100%;
	height: 330px;
	margin: 10px auto;
	position: relative;
}
#content02 .text01{
	width: 100%;
	margin: 0 auto;
}
#content02 .inner .text02{
	width: 80%;
	margin: 0 auto;
	 position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	z-index: 5;
}
#content02 .inner .bg{
	width: 100%;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
}
}

/*========= content03 ===============*/

#content03 {
	width: 100%;
}
#content03 .inner {
	width: 1020px;
	height: 601px;
	margin: 10px auto;
	position: relative;
}
#content03 .inner .text01{
	width: 909px;
	margin: 0 auto;
	position: absolute;
  top: 20px;
  left: 50%;
  transform: translate(-50%);
	z-index: 3;
}
#content03 .inner .text02{
	width: 833px;
	margin: 0 auto;
	 position: absolute;
  top: 210px;
  left: 50%;
  transform: translate(-50%);
	z-index: 5;
}
#content03 .inner .bg{
	width: 1020px;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
}
#content03 .text-box {
	width: 1020px;
	background: #fff;
	margin: 10px auto;
	border: solid 5px #222222;
	border-radius: 20px;
	padding: 20px;
	font-size: 21px;
	font-weight: bold;
	line-height: 1.5;
}


@media screen and (max-width: 770px) {

#content03 {
	width: 100%;
}
#content03 .inner {
	width: 100%;
	height: 230px;
	margin: 10px auto;
	position: relative;
}
#content03 .inner .text01{
	width: 80%;
	margin: 0 auto;
	position: absolute;
	top: 10px;
  left: 50%;
  transform: translate(-50%);
	z-index: 3;
}
#content03 .inner .text02{
	width: 80%;
	margin: 0 auto;
	 position: absolute;
  top: 75px;
  left: 50%;
  transform: translate(-50%);
	z-index: 5;
}
#content03 .inner .bg{
	width: 100%;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
}
#content03 .text-box {
	width: 100%;
	background: #fff;
	margin: 0px auto;
	border: solid 3px #222222;
	border-radius: 10px;
	padding: 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
}
}


/*========= entry ===============*/

#entry {
	width: 100%;
	height: 730px;
	background: url("../../image/lp/entry-bg.png");
	margin: 30px auto;
	overflow: hidden;
}
#entry .inner{
	width: 1020px;
	height: 730px;
	margin: 0 auto;
}
#entry .inner .text{
	width: 726px;
	margin: 40px auto;
}

#entry .inner .btn{
	width: 900px;
	margin: 0px auto;
}
/* 驛｢譎冗函�ｽ�ｽ驛｢�ｧ�ｽ�ｹ�ｽ�ｽ陞｢�ｹ隨�ｿｽ驛｢�ｧ�ｽ�ｽ�ｽ讓｣蜷崎搏貊�味驍ｵ�ｺ�ｽ�､驛｢譎｢�ｽ�ｫ驛｢譎｢�ｽ�ｼ驛｢譎｢�ｿ�ｽ */
.btn-loop {
  position: relative;
  display: inline-block;
  overflow: hidden;
  animation: btnPulse 1.6s ease-in-out infinite;
  transform-origin: center center;
}

.btn-loop img {
  display: block; /* 髣厄ｽｴ陷ｻ�ｵ�ｽ�ｨ陋ｹ�ｻ遶企ｷｹ�ｫ�ｫ陷･諠ｹ�ｿ�｣髮趣ｽｸ陋ｹ�ｻ�ｽ�ｽ */
}

@keyframes btnPulse {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.05); }
  100% { transform: scale(1); }
}

/* shine 鬨ｾ蛹�ｽｽ�ｨ驍ｵ�ｺ�ｽ�ｮ髫ｰ�ｫ�ｽ�ｬ髣費ｽｨ�ｽ�ｼ鬮ｫ陬懈が�ｽ�ｴ�ｽ�ｽ */
.btn-loop::after {
  content: "";
  position: absolute;
  top: 0;
  left: -120%;
  width: 120%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255,255,255,0.45) 50%,
    transparent 100%
  );
  transform: skewX(-25deg);
}

/* hover 髫ｴ蠑ｱ��ｫ頑･｢諤ｦ陝ｲ�ｨ遯ｶ�ｲ髮趣ｽｬ遶丞､ｲ�ｽ讙趣ｽｹ�ｧ陷茨ｽｷ�ｽ�ｼ�ｽ�ｽ�ｽ�ｰ闔会ｽ｣�ｽ�ｽ髫ｲ�｡�ｽ�｡髯樊ｻゑｽｽ�ｧ */
.btn-loop:hover::after {
  animation: shine 0.8s forwards;
}

.btn-loop:hover {
  transform: scale(1.08);
  transition: transform 0.25s ease;
}

@keyframes shine {
  0%   { left: -120%; }
  100% { left: 120%; }
}

@media screen and (max-width: 770px) {

#entry {
	width: 100%;
	height: 330px;
	background: url("../../image/lp/entry-bg.png");
	margin: 10px auto;
	overflow: hidden;
	background-size: cover;
}
#entry .inner{
	width: 100%;
	height: 330px;
	margin: 0 auto;
}
#entry .inner .text{
	width: 80%;
	margin: 20px auto 10px auto;
}

#entry .inner .btn{
	width: 80%;
	margin: 0px auto;
}
/* 驛｢譎冗函�ｽ�ｽ驛｢�ｧ�ｽ�ｹ�ｽ�ｽ陞｢�ｹ隨�ｿｽ驛｢�ｧ�ｽ�ｽ�ｽ讓｣蜷崎搏貊�味驍ｵ�ｺ�ｽ�､驛｢譎｢�ｽ�ｫ驛｢譎｢�ｽ�ｼ驛｢譎｢�ｿ�ｽ */
.btn-loop {
  position: relative;
  display: inline-block;
  overflow: hidden;
  animation: btnPulse 1.6s ease-in-out infinite;
  transform-origin: center center;
}

.btn-loop img {
  display: block; /* 髣厄ｽｴ陷ｻ�ｵ�ｽ�ｨ陋ｹ�ｻ遶企ｷｹ�ｫ�ｫ陷･諠ｹ�ｿ�｣髮趣ｽｸ陋ｹ�ｻ�ｽ�ｽ */
}

@keyframes btnPulse {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.05); }
  100% { transform: scale(1); }
}
}




/*========= result ===============*/

.result{
    width: 100%;
    padding: 10px 0 0px 0;
    margin: 10px auto 0px auto;
}

.result .text01{
	width: 798px;
	margin: 0 auto;
}

.result .inner{
    width: 1020px;
    margin: 10px auto 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.result .inner ul{
    width: 500px;
    border-radius: 20px;
    overflow: visible;
    background: #f0f0f0;
    margin-bottom: 20px;
}

.result .inner ul .plan-b{
    width: 100%;
	border-radius: 20px 20px 0 0 ;
	overflow: hidden;
}


.result .inner ul li img{
    width: 100%;
}



.result .inner ul li:nth-child(2){
    width: 100%;
    height: auto;
    background: #FFFFFF;
    text-align: center;
    padding: 0 10px 10px 10px;
    color: #222222;
    font-weight: bold;
	border-radius: 0 0 20px 20px;

}

.result .inner ul li:nth-child(2) p:nth-child(1){
    background: #222222;
	color: #ffff00;
	padding: 5px 0;
	border-radius: 100px;

}

.result .inner ul li:nth-child(2) p:nth-child(4){
    font-size: 2em;
    color: #cc0000;
	line-height: 1.25em;

}

@media screen and (max-width: 770px) {

.result{
    width: 100%;
    padding: 0px 0 0px 0;
    margin: 10px auto 0px auto;
}

.result .text01{
	width: 80%;
	margin: 0 auto;
}

.result .inner{
    width: 100%;
    margin: 0px auto 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	padding: 10px;
}

.result .inner ul{
    width: 100%;
    border-radius: 20px;
    overflow: visible;
    background: #f0f0f0;
    margin-bottom: 10px;
}

.result .inner ul .plan-b{
    width: 100%;
	border-radius: 20px 20px 0 0 ;
	overflow: hidden;
}


.result .inner ul li img{
    width: 100%;
}



.result .inner ul li:nth-child(2){
    width: 100%;
    height: auto;
    background: #FFFFFF;
    text-align: center;
    padding: 0 10px 10px 10px;
    color: #222222;
    font-weight: bold;
	border-radius: 0 0 20px 20px;

}

.result .inner ul li:nth-child(2) p:nth-child(1){
    background: #222222;
	color: #ffff00;
	padding: 5px 0;
	border-radius: 100px;

}

.result .inner ul li:nth-child(2) p:nth-child(4){
    font-size: 2em;
    color: #cc0000;
	line-height: 1.25em;

}
}


/*========= content04===============*/

#content04 {
	width:100%;
	height: 530px;

	margin: 0px auto;

}
#content04 .inner{
	width: 1020px;
	background: url("../../image/lp/section04-bg.png");
	height: 530px;
	margin: 0 auto;

}

#content04 .inner .text01{
	width: 856px;
	margin: 10px auto;
	padding-top: 30px;
}

#content04 .inner .text02,.text03,.text04{
	width: 960px;
	margin: 5px auto;
}

@media screen and (max-width: 770px) {
#content04 {
	width:100%;
	height: 280px;

	margin: 0px auto;

}
#content04 .inner{
	width: 100%;
	background: url("../../image/lp/section04-bg.png");
	height: 280px;
	margin: 0 auto;
	background-size: cover;

}

#content04 .inner .text01{
	width: 80%;
	margin: 10px auto;
	padding-top: 30px;
}

#content04 .inner .text02,.text03,.text04{
	width: 95%;
	margin: 5px auto;
}
}


/*========= content05===============*/

#content05 {
	width:100%;
	height: 400px;

	margin: 0px auto;

}
#content05 .inner{
	width: 1020px;
	background: url("../../image/lp/section05-bg.png");
	height: 400px;
	margin: 0 auto;
	position: relative;
}

#content05 .inner .text01{
	width: 313px;
	position: absolute;
	top:115px;
	left: 100px;
}

#content05 .inner .text02{
	width: 311px;
	position: absolute;
	top:115px;
	right: 100px;
}

#content05 .inner .text03{
	width: 625px;
	position: absolute;
	bottom:20px;
	left: 50%;
  transform: translate(-50%);
}

@media screen and (max-width: 770px) {

#content05 {
	width:100%;
	height: 180px;

	margin: 0px auto;

}
#content05 .inner{
	width: 100%;
	background: url("../../image/lp/section05-bg.png") center center;
	height: 180px;
	background-size: cover;
	margin: 0 auto;
	position: relative;
}

#content05 .inner .text01{
	width: 30%;
	position: absolute;
	top:20px;
	left: 20px;
}

#content05 .inner .text02{
	width: 30%;
	position: absolute;
	top:20px;
	right: 20px;
}

#content05 .inner .text03{
	width: 60%;
	position: absolute;
	bottom:10px;
	left: 50%;
  transform: translate(-50%);
}
}


/*========= content06===============*/

#content06  {
	width:100%;
	height: auto;

	margin: 20px auto 0 auto;

}


#content06 .text01{
	width: 980px;
	margin: 0 auto;
}

#content06 .text02{
	width: 980px;
	margin: 10px auto;
}

@media screen and (max-width: 770px) {
#content06  {
	width:100%;
	height: auto;
	margin: 10px auto 0 auto;
}
#content06 .text01{
	width: 95%;
	margin: 0 auto;
}

#content06 .text02{
	width: 95%;
	margin: 10px auto;
}
}

/*========= content06===============*/

#content07  {
	width:100%;
	height: auto;
	margin: 20px auto 0 auto;
}

#content07 .inner {
	width:1020px;
	height: 973px;
	background: url("../../image/lp/section07-bg.png");
	margin: 0px auto;
}


#content07 .inner .text01{
	width: 910px;
	margin: 0px auto 10px auto;
	padding-top: 40px;
}

#content07 .inner .text02{
	width: 973px;
	margin: 10px auto;
}
#content07 .inner .text03{
	width: 973px;
	margin: 10px auto;
}

#content07 .inner .text04{
	width: 973px;
	margin: 10px auto;
}
#content07 .inner .text05{
	width: 973px;
	margin: 10px auto;
}

@media screen and (max-width: 770px) {

#content07  {
	width:100%;
	height: auto;
	margin: 0px auto 0 auto;
}

#content07 .inner {
	width:100%;
	height: 420px;
	background: url("../../image/lp/section07-bg.png");
	margin: 0px auto;
	background-size: cover;
}


#content07 .inner .text01{
	width: 90%;
	margin: 0px auto 10px auto;
	padding-top: 20px;
}

#content07 .inner .text02{
	width: 95%;
	margin: 5px auto;
}
#content07 .inner .text03{
	width: 95%;
	margin: 5px auto;
}

#content07 .inner .text04{
	width: 95%;
	margin: 5px auto;
}
#content07 .inner .text05{
	width: 95%;
	margin: 5px auto;
}

}


.footer-legal {
    margin-top: 20px;
    padding: 10px 0 20px;
    font-size: 12px;
    color: #aaa;
    line-height: 1.6;
    text-align: center;
}

/* 驕ｯ�ｶ隰夲ｽｫ�つ隰夲ｽｫ�つ�ｽ�ｽ 髣包ｽｳ驕擾ｽｩ�主､ゑｽｸ�ｺ�ｽ�ｮ驛｢譎�ｽｼ譁石暮Δ�ｧ�ｽ�ｿ驛｢譎｢�ｽ�ｼ驛｢譎｢�ｽ�ｪ驛｢譎｢�ｽ�ｳ驛｢�ｧ�ｽ�ｯ鬩玲慣�ｽ�､�ｽ�ｽ騾趣ｽｯ�ｽ�ｻ陞ｳ螢ｹﾎ樣垓雜｣�ｽ�ｯ�ｽ�ｽ�ｽ�ｽ 驕ｯ�ｶ隰夲ｽｫ�つ隰夲ｽｫ�つ�ｽ�ｽ */
.site-footer{ background:#2d2f33; color:#fff; padding:28px 16px 120px; /* 120px: 髯懈圜�ｽ�ｺ髯橸ｽｳ陞｢�ｹ郢晢ｽｵ驛｢譎｢�ｿ�ｽ邵ｺ�｡驛｢譎｢�ｽ�ｼ驍ｵ�ｺ�ｽ�ｮ鬯ｯ�ｮ陋滂ｽ･�ｽ�ｽ�ｸ�ｺ�ｽ�ｶ驛｢�ｧ髫ｰ雜｣�ｽ�ｽ陷･荳樣�� */ }
.footer-sections{ display:grid; grid-template-columns: 1fr; gap:20px; max-width:960px; margin:0 auto; }
@media(min-width:480px){ .footer-sections{ grid-template-columns: 1fr 1fr; gap:28px; } }
.footer-group h3{ font-size:14px; margin:0 0 10px; font-weight:700; }
.footer-links{ list-style:none; padding:0; margin:0; }
.footer-links li{ margin:8px 0; }
.footer-links a{ color:#e5e7eb; text-decoration:none; font-size:14px; }
.footer-links a:focus-visible{ outline:2px solid #22c55e; outline-offset:2px; border-radius:4px; }
.brand-lockup{ display:flex; justify-content:center; align-items:center; padding:20px 0 0; }
.brand-lockup img{ max-width:150px; height:auto; display:block; filter:}

/*========= 驛｢譎渉�･郢晢ｽ｣驛｢謨鳴驛｢譎｢�ｽ�ｼ02===============*/

.head-bar{
	width: 100%;
	height: 80px;
	background: #FFFFFF;
	display: flex;
	justify-content: center;
	align-items: center;
}

.logo{
	width: 100px;
}

.contents_title{
	width: 100%;
	max-width: 1024px;
	margin:10px auto 0px auto;
	padding:10px 14px;
	text-align:center;
	font-weight:700;
	color:#333;
}

.wrap{
	width: 100%;
	max-width:1024px;
	margin:0 auto;
}


/* ---- 驛｢�ｧ�ｽ�ｳ驛｢譎｢�ｽ�ｳ驛｢譎｢�ｿ�ｽ郢晢ｽｪ ---- */
.sub-content{
	width: 100%;
  padding:0px;
  background: #ffffff;
	border-radius: 20px;
	margin-bottom: 20px;
}

@media (max-width: 480px){
.sub-content{
	width: 100%;
  padding:0px;
  background: #ffffff;
	border-radius: 0px;
	margin-bottom: 10px;
}
}


/* =============== 髯具ｽｻ�ｽ�ｩ鬨ｾ蛹�ｽｽ�ｨ鬮ｫ蜍滂ｿｽ�ｽ�ｴ�ｽ�ｽ =============== */

.teams{
	padding: 10px 20px 20px 20px;
	position: relative;
}

@media (max-width: 480px){
	.teams{
	padding: 5px 10px 10px 10px;
}
}

.tos__body{ color:#222; font-size:14px; line-height:1.8; }
.tos__body h3{ font-size:15px; margin:1.1em 0 .4em; font-weight:800; }
.tos__body p{ margin:.6em 0; }
.tos__body ol{ padding-left:1.25em; margin:.4em 0 .8em; }
.tos__body ul{ padding-left:1.25em; margin:.4em 0 .8em; }
.defs{ margin:.4em 0 .8em; }
.defs dt{ font-weight:700; }
.defs dd{ margin:0 0 .4em 0; }
.note{ background:#f7faff; border:1px solid #d9e6ff; border-left:4px solid #8fb6ff; border-radius:6px; padding:8px 10px; color:#223; margin:.6em 0; }
.tos__disclaimer{ margin-top:14px; font-size:12px; color:#666; }
@media (min-width: 900px){
  .tos{ width:min(900px, 100%); margin:16px auto; padding:20px; }
}

/* =============== 驛｢譎丞ｹｲ�主ｸｷ�ｹ�ｧ�ｽ�､驛｢譎�ｿｽ邵ｺ蜥擾ｽｹ譎｢�ｽ�ｼ =============== */

.privacy{
	padding: 10px 20px 20px 20px;
	position: relative;
}

@media (max-width: 480px){
	.privacy{
	padding: 5px 10px 10px 10px;
}
}

.pp__body{ color:#222; font-size:14px; line-height:1.8; }
.pp__body h3{ font-size:15px; margin:1.1em 0 .4em; font-weight:800; }
.pp__body p{ margin:.6em 0; }
.pp__body ol{ padding-left:1.25em; margin:.4em 0 .8em; }
.pp__body ul{ padding-left:1.25em; margin:.4em 0 .8em; }
.pp__disclaimer{ margin-top:14px; font-size:12px; color:#666; }

@media (min-width: 900px){
  .pp{ width:min(900px, 100%); margin:16px auto; padding:20px; }
}

/* =============== 髴大､ｲ�ｽ�ｹ髯橸ｽｳ陞｢�ｼ髢ｹ螟頑╂鬮｢ﾂ�ｽ�ｼ陟�屮�ｽ�ｳ髴域喚�ｽ髯憺屮�ｽ�ｺ驍ｵ�ｺ�ｽ�･驍ｵ�ｺ陷托ｽｰ�ｽ�｡�ｽ�ｨ鬮ｫ�ｪ�ｽ�ｽ =============== */

.commerce{
	padding: 10px 20px 20px 20px;
	position: relative;
}

@media (max-width: 480px){
	.commerce{
	padding: 5px 10px 10px 10px;
}
}

.asct__body{ margin-top:8px; }
.asct-list{ margin:0; padding:0; }
.asct-list .row{ display:grid; grid-template-columns: 7.5em 1fr; gap:10px; align-items:start; padding:10px 0; border-bottom:1px dashed #e6ecf3; }
.asct-list dt{ font-weight:800; color:#222; }
.asct-list dd{ margin:0; color:#222; line-height:1.8; }
.asct-list a{ color:#1860d8; text-decoration:none; }
.asct-list .muted{ color:#667085; font-size:12px; }
.asct-list .sep{ height:8px; border-bottom:2px solid #eef2f7; margin:4px 0; }

@media (min-width: 900px){
  .asct{ width:min(900px, 100%); margin:16px auto; padding:20px; }
  .asct-list .row{ grid-template-columns: 10em 1fr; }
}

/* ===========================
   PC KV base
=========================== */
.kv-pc {
  width: 100%;
  background: #99ffcc;
}

.kv-pc__stage {
  position: relative;
  width: 100%;
  max-width: 1344px;
  margin: 0 auto;
  aspect-ratio: 1344/768;
  overflow: hidden;
}

.kv-pc__stage img {
  position: absolute;
  display: block;
  max-width: none;
  pointer-events: none;
}
/* ===========================
   郢昜ｻ｣�ｽ郢晢ｿｽ�ｽ驗ゑｽｮ�ｽ莠･�ｾ�ｮ髫ｱ�ｿ隰ｨ�ｴ霑夊肩�ｼ�ｽ
=========================== */

/* 髢ｭ譴ｧ蜍ｹ */
.kv-bg {
  inset: 0;
  width: 100%;
  height: 100%;
}

/* 鬯ｨ蜿也��ｽ莠･�ｰ莉｣��闕ｳ鄙ｫ竊難ｿｽ�ｽ�ｰ莉｣��陝�ｸ奇ｼ�ｸｺ謫ｾ�ｼ�ｽ */
.kv-horse {
  width: 56%;      /* 60 遶奇ｿｽ 56 邵ｺ�ｧ陝�ｻ｣��陝�ｸ奇ｼ�ｸｺ�ｽ */
  left: 22%;       /* 闕ｳ�ｭ陞滂ｽｮ陝�ｿｽ笳� */
  top: 2%;        /* 46 遶奇ｿｽ 40 邵ｺ�ｧ鬯俶鱒�堤ｹｧ繧�鴬陝�ｻ｣��髫穂ｹ昶雷郢ｧ�ｽ */
}

/* 郢ｧ�ｳ郢ｧ�､郢晢ｽｳ�ｽ莠･�ｰ莉｣��邵ｺ�ｽ邵ｺ蜿ｰ�ｸ鄙ｫ竊難ｿｽ�ｽ */
.kv-coin {
  width: 80%;      /* 42 遶奇ｿｽ 40 邵ｺ�ｧ髣搾ｽ･陝ｷ�ｲ隰ｨ�ｴ騾�ｿｽ */
  left: 10%;
  bottom: -2%;     /* -5 遶奇ｿｽ -2 邵ｺ�ｧ邵ｺ�｡郢ｧ�ｽ�樣囎荵昶雷 */
}

/* 陝ｾ�ｦ郢ｧ�ｹ郢晄ｧｭ�ｽ�ｽ蛹ｻ繝ｰ郢晉ｿｫ�ｽ邵ｺ�ｫ邵ｺ荵晢ｿｽ郢ｧ鄙ｫ竊鍋ｸｺ荳奇ｿ･&陷�ｽ�ｽ邵ｺ�ｸ�ｽ�ｽ */
.kv-phone-l {
  width: 18%;      /* 20 遶奇ｿｽ 18 */
  left: 8%;
  top: 35%;        /* 44 遶奇ｿｽ 46 邵ｺ�ｧ郢ｧ�ｽ��叉荵晢ｿ｡ */
}

/* 陷ｿ�ｳ郢ｧ�ｹ郢晄ｧｭ�ｽ */
.kv-phone-r {
  width: 18%;
  right: 8%;
  top: 35%;
}

/* 驍ｱ莉｣�ｽ陝ｶ�ｯ郢ｧ�ｳ郢晄鱒�ｽ1�ｽ莠･�ｰ莉｣��闕ｳ鄙ｫ竏� & 陝�ｻ｣��驕擾ｽｭ邵ｺ謫ｾ�ｼ�ｽ */
.kv-copy1 {
  width: 48%;      /* 50 遶奇ｿｽ 60 邵ｺ�ｧ陝ｾ�ｦ陷ｿ�ｳ邵ｺ�ｫ闔ｨ�ｸ邵ｺ�ｰ邵ｺ蜻ｻ�ｼ蛹ｻ笙陞ゑｽｽ邵ｺ�ｿ邵ｺ�ｧ�ｽ�ｽ */
  left: 20%;       /* 闕ｳ�ｭ陞滂ｽｮ陝�ｿｽ笳玖ｱ梧懆｢也ｸｺ�ｫ */
  top: 18%;        /* 23 遶奇ｿｽ 20 邵ｺ�ｧ闕ｳ鄙ｫ竊� */
}

/* 驍ｱ莉｣�ｽ陝ｶ�ｯ郢ｧ�ｳ郢晄鱒�ｽ2 */
.kv-copy2 {
  width: 60%;
  left: 20%;
  top: 26%;        /* 32 遶奇ｿｽ 29 */
}

/* 陞滂ｽｧ邵ｺ髦ｪ�樒ｹｧ�ｿ郢ｧ�､郢晏現ﾎ晢ｿｽ蝓滂ｽｰ邇ｲ謌溽ｸｺ�｡闕ｳ荵晢ｿ｡邵ｺ�ｦ陷茨ｽｨ闖ｴ讌｢�ｦ荵昶雷郢ｧ蜈ｷ�ｼ�ｽ */
.kv-title {
  width: 74%;      /* 76 遶奇ｿｽ 74 邵ｺ�ｧ陝�ｻ｣��邵ｺ�ｽ邵ｺ螟ｧ�ｰ荳奇ｼ�ｸｺ�ｽ */
  left: 13%;
  top: 45%;        /* 46 遶奇ｿｽ 48 邵ｺ�ｧ陝�ｻ｣��闕ｳ荵晢ｿ｡ */
}

/* 郢晢ｽｭ郢ｧ�ｴ�ｽ莠･�ｰ莉｣��邵ｺ�ｽ邵ｺ螟ｧ�､�ｧ邵ｺ髦ｪ�･�ｽ�ｽ�ｸ鄙ｫ竊難ｿｽ�ｽ */
.kv-logo {
  width: 15%;      /* 16 遶奇ｿｽ 18 邵ｺ�ｧ髫穂ｹ晢ｽ�ｸｺ蜷ｶ�･ */
  left: 41%;
  top: 80%;        /* 75 遶奇ｿｽ 72 邵ｺ�ｧ闕ｳ鄙ｫ竊� */
}

/* ===========================
   CSS 郢ｧ�｢郢昜ｹ斟鍋ｹ晢ｽｼ郢ｧ�ｷ郢晢ｽｧ郢晢ｽｳ
=========================== */

/* 邵ｺ�ｵ郢ｧ荳奇ｿｽ郢ｧ荳茨ｽｸ雍具ｽｸ�ｽ */
@keyframes float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.float {
  animation: float 2s ease-in-out infinite;
}
.float-delay {
  animation: float 2.4s ease-in-out infinite 0.5s;
}

/* 陝�ｸ奇ｼ�ｹｧ竏夲ｿｽ雎ｬ�ｮ邵ｺ�ｽ */
@keyframes floatSmall {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}
.float-small {
  animation: floatSmall 0.5s ease-in-out infinite;
}

/* 郢ｧ�ｹ郢晢ｿｽ竊定怦�･郢ｧ蜈ｷ�ｼ莠･�ｷ�ｦ�ｽ�ｽ */
@keyframes slideLeft {
  0% { transform: translateX(-200px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}
.slide-in-left {
  animation: slideLeft 0.7s ease-out forwards;
}

/* 郢ｧ�ｹ郢晢ｿｽ竊定怦�･郢ｧ蜈ｷ�ｼ莠･謇ｿ�ｽ�ｽ */
@keyframes slideRight {
  0% { transform: translateX(200px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}
.slide-in-right {
  animation: slideRight 0.7s ease-out forwards;
}

/* 郢晄亢ﾎｦ郢晢ｿｽ竊定怎�ｺ郢ｧ�ｽ */
@keyframes pop {
  0% { transform: scale(0.5); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}
.pop {
  animation: pop 0.3s ease-out forwards;
}

/* 郢ｧ�ｿ郢ｧ�､郢晏現ﾎ晉ｸｺ�ｮ郢晏ｳｨ縺醍ｹ晢ｽｳ郢晏ｳｨ縺醍ｹ晢ｽｳ */
@keyframes pulse {
  0%,100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}
.pulse {
  animation: pulse 0.8s ease-in-out infinite;
}


/* ============================
   郢ｧ�ｹ郢晄ｧｭ�ｽ霑壼現�ｽ郢晢ｽｼ郢ｧ�ｹ
============================ */
.kv-sp {
  width: 100%;
  background: #00deb7;
}

.kv-sp__stage {
  position: relative;
  width: 100%;
  max-width: 750px;
  aspect-ratio: 750/1334;
  margin: 0 auto;
  overflow: hidden;
}

.kv-sp__stage img {
  position: absolute;
  max-width: none;
  display: block;
  pointer-events: none;
}

/* ============================
   郢昜ｻ｣�ｽ郢晢ｿｽ�ｽ驗ゑｽｮ�ｽ蛹ｻ縺帷ｹ晄ｧｭ�ｽ隴崢鬩包ｽｩ陋ｹ蜴�ｽｼ�ｽ
============================ */

/* 髢ｭ譴ｧ蜍ｹ�ｽ莠･�ｽ闖ｴ髮｣�ｼ�ｽ */
.sp-bg {
  inset: 0;
  width: 100%;
  height: 100%;
}

/* 驍ｱ莉｣�ｽ陝ｶ�ｯ郢ｧ�ｳ郢晄鱒�ｽ1�ｽ莠包ｽｸ螂�ｽｼ�ｽ */
.sp-copy1 {
  width: 26%;
  top: 5%;
  left: 23%;
}

/* 驍ｱ莉｣�ｽ陝ｶ�ｯ郢ｧ�ｳ郢晄鱒�ｽ2�ｽ莠包ｽｸ蜈ｷ�ｼ�ｽ */
.sp-copy2 {
  width: 30%;
  top: 5%;
  left: 8%;
}

/* 邵ｲ蠕後○郢晄ｧｭ�ｽ邵ｺ�ｧ郢ｧ�ｵ郢ｧ�ｯ郢晢ｿｽ竊抵ｿｽ竏ｫ�ｧ蟶敖貅ｽ蝎ｪ闕ｳ�ｭ!!邵ｲ�ｽ */
.sp-title {
  width: 65%;
  left: 30%;
  top: 5%;
}

/* 鬯ｨ蜿也� */
.sp-horse {
  width: 95%;
  left:0%;
  top: 70%;
}

/* 郢ｧ�ｳ郢ｧ�､郢晢ｽｳ */
.sp-coin {
  width: 140%;
  left: -5%;
  bottom: -10%;
}

/* 陝ｾ�ｦ郢ｧ�ｹ郢晄ｧｭ�ｽ */
.sp-phone-l {
  width: 35%;
  left: -4%;
  top: 60%;
}

/* 陷ｿ�ｳ郢ｧ�ｹ郢晄ｧｭ�ｽ */
.sp-phone-r {
  width: 35%;
  right: -4%;
  top: 60%;
}

/* 郢晢ｽｭ郢ｧ�ｴ */
.sp-logo {
  width: 38%;
  left: 31%;
  bottom: 6%;
}

/* PC霑壼現�堤ｹ晢ｿｽ繝ｵ郢ｧ�ｩ郢晢ｽｫ郢晞メ�｡�ｨ驕会ｽｺ */
.kv-pc { display: block; }
.kv-sp { display: none; }

/* 郢ｧ�ｹ郢晄ｧｭ�ｽ霑壼現縲堤ｸｺ�ｯSP邵ｺ�ｽ邵ｺ鬘鯉ｽ｡�ｨ驕会ｽｺ */
@media (max-width: 480px) {
  .kv-pc { display: none; }
  .kv-sp { display: block; }
}


/* ===== 半透明固定フッター ===== */
.fixed-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 9999;

  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);

  padding: 10px 0;
  display: flex;
  justify-content: center;
}

/* ボタンリンク */
.fixed-footer a {
  display: flex;
  justify-content: center;
	align-items: center;
}

/* ボタン画像 */
.fixed-footer img {
  width: 90%;
  max-width: 420px;
  height: auto;

  filter: drop-shadow(0 6px 14px rgba(0,0,0,.4));
  transition: transform .15s ease, filter .15s ease;
}

/* 脈打ちアニメーション */
@keyframes pulseSoft {
  0% {
    transform: scale(1);
    filter: drop-shadow(0 6px 14px rgba(0,0,0,.4));
  }
  50% {
    transform: scale(1.03);
    filter: drop-shadow(0 8px 18px rgba(0,0,0,.55));
  }
  100% {
    transform: scale(1);
    filter: drop-shadow(0 6px 14px rgba(0,0,0,.4));
  }
}

/* 画像に適用 */
.fixed-footer img {
  animation: pulseSoft 2.4s ease-in-out infinite;
}

.fixed-footer a:active img {
  animation: none;
  transform: scale(0.97);
}