@charset "UTF-8";
/* CSS Document */
/*
 * Copyright (c) 2006-2024 LeARU Inc
 */
/*
必要に応じて調整してください
*/

/*フッター
---------------------------------------------------------------------------*/
/*基本レイアウト*/
div#footer{
	background-color: var(--footer-bg-color,#424242);
	text-align: center;
	font-size: var(--footer-pc-fontsize,14px);
}
@media screen and (max-width: 768px) {
div#footer{
	font-size: var(--footer-sp-fontsize,12px);
}
}
div#footer a:hover{
    text-decoration: none;
	border: none;
}
.footer-wrapper{
	padding: 0px 10px;
}
.message{
	line-height: 140%;
	padding-top: 10px;
	color: var(--footer-message,#ffffff);
}
.copyright{
	line-height: 140%;
	padding-bottom: 10px;
	color: var(--footer-copyright,#ffffff);
}
.footer-textbox{
    padding:0px;
    max-height:120px;
    width:100%;
    overflow-y:scroll;
}
/*フッターアコーディオン*/
.footer-accordion{
    width:100%;
    min-width:270px;
	padding: 10px 0px 0px 0px;
    margin: 0 auto;
}
.footer-accordion a{
	color: var(--footer-acc-text,#ffffff);
	background-image: none;
	text-decoration: none;
}
.footer-accordion ul li{
    overflow: hidden;
}
.footer-accordion ul li:first-child{
    border-top:none;
}
.footer-accordion ul li > a{
    display: block;
	position: relative;
}
.footer-accordion ul li > a:hover{
    color: var(--footer-acc-text-hover,#ffffff);
}

.footer-accordion ul li.footer-open > a{
    color: var(--footer-acc-text-hover,#ffffff);
}
.footer-accordion ul li.footer-open > a:hover{
    color: var(--footer-acc-text-hover,#ffffff);
}
.footer-content{
    padding: 5px 0px 0px 0px;
}
.footer-content p{
    line-height:  28px;
    padding: 0px 4px 15px 4px; 
}
@media screen and (max-width: 320px){
	.footer-accordion ul li > a{
		font-size:36px;
	}
}
/*特定商法のテーブル*/
.tokusyo{
	max-height: 560px;
	overflow-y:scroll;
}
table.tokusyo {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.tokusyo th,
table.tokusyo td {
  padding: 5px 10px;
  border: 1px solid var(--tokusyo-border,#cccccc);
  text-align:left;
  background-color: var(--tokusyo-koumoku-bg,#ffffff);
  line-height: 140%;
  color: var(--tokusyo-koumoku-text,#424242);
}
table.tokusyo th {
  background-color: var(--tokusyo-midashi-bg,#424242);
  text-align: left;
  color: var(--tokusyo-midashi-text,#ffffff);
  width: 25%;font-weight: normal;
}

@media screen and (max-width: 768px) {
.tokusyo{
	max-height: 380px;
}	
.copyright{
	padding-top: 2px;
}	
  table.tokusyo {
    border-top: 1px solid var(--tokusyo-border,#cccccc);
  }
  table.tokusyo td {
    display: block;
    text-align: left;
  }
  table.tokusyo th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }	
}

/*固定フッター
---------------------------------------------------------------------------*/
/*全体背景*/
.footer-cta-bg {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    right: 0;
    bottom: 0;
    width: 100%;
    height: auto;
    background-color: var(--footer-cta-bg-color, #ffffff);
	backdrop-filter: var(--footer-cta-bg-blur);
    cursor: pointer;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 1s,visibility 1s, transform 1s;
	box-shadow: 0 8px 3px -5px #f1f1f1 inset;
}
.footer-cta-bg.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}
@media screen and (max-width: 768px) {
}
.footer-cta{
	padding: 10px;
}
/* キャッチコピー */
.footer-copy{
	padding-bottom: 5px;
	font-weight: 600;
	color: var(--footer-cta-copy, #ffffff);
}
/* ボタン */
.footer-btn a {
    background: var(--footer-cta-btn-bg, #4a9c1e);
    border-radius: 5px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    min-width: 350px;
    padding: 7px 25px;
    color: var(--footer-cta-btn-text, #ffffff);
    transition: 0.3s ease-in-out;
    font-weight: 600;
	font-size: 120%;
}
/* ボタン（ホバー） */
.footer-btn a:hover {
    background: var(--footer-cta-btn-bg-hover, #61b530);
    color: var(--footer-cta-btn-text-hover, #ffffff);
}
/* 矢印 */
.footer-btn a:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 3px solid var(--footer-cta-btn-text, #ffffff);
    border-right: 3px solid var(--footer-cta-btn-text, #ffffff);
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
/* 矢印（ホバー） */
.footer-btn a:hover:after {
    border-color: var(--footer-cta-btn-text-hover, #ffffff);
}
/* 固定フッター終了位置 */
.footerbtn-end{
	height: auto;
}
/* スマホ調整 */
@media screen and (max-width: 768px) {
.footer-cta{
	padding: 8px 15px 10px 15px;
}
.footer-btn a {
    min-width: 100%;
    padding: 5px 50px;
}	
}

/*カウントダウンタイマー
---------------------------------------------------------------------------*/
/*文字部分*/
.timer-text{
	font-size: var(--countdown-text-size);
	color: var(--countdown-text-color);
	font-family:var(--countdown-text-font);
}
ul.cd-timer{
  text-align: center;
  padding: 0px 15px 0px 15px;
  font-weight: bold;
  letter-spacing: normal;
}
ul.cd-timer li{
  display: inline-block;
  max-width: 100%;
  margin-bottom:0px;
  line-height:100%;
  padding: 10px 0px 0px 0px;
}
ul.cd-timer li p{
  padding: 2px 0px 0px 0px;
  line-height:100%;
}
ul.cd-timer li span{
      padding: 0px;
}
@media only screen and (max-width: 768px) {
.timer-text{
	font-size: var(--countdown-text-sp-size);
}	
ul.cd-timer{
  padding: 5px 0px 5px 0px;
}
ul.cd-timer li p{
  padding: 0px 0px 0px 0px;
  font-weight: bold;
}
ul.cd-timer li{
  padding: 0px 0px 0px 0px;
  line-height:100%;
}
}
/*数字部分*/
.yycountdown-box{
	padding:0px 0px 0px 0px;
	margin:0px;
}
.timer .yycountdown-box .yyc-day{
	font-size: var(--countdown-no-size-day);
	color: var(--countdown-no-color-day);
	font-family:var(--countdown-no-font);
	speak: none;
	font-style: normal;
	font-variant: normal;
	text-transform: none;
}
.timer .yycountdown-box .yyc-hou{
	font-size: var(--countdown-no-size-hou);
	color: var(--countdown-no-color-hou);
	font-family:var(--countdown-no-font);
	speak: none;
	font-style: normal;
	font-variant: normal;
	text-transform: none;
}
.timer .yycountdown-box .yyc-min{
	font-size: var(--countdown-no-size-min);
	color: var(--countdown-no-color-min);
	font-family:var(--countdown-no-font);
	speak: none;
	font-style: normal;
	font-variant: normal;
	text-transform: none;
}
.timer .yycountdown-box .yyc-sec{
	font-size: var(--countdown-no-size-sec);
	color: var(--countdown-no-color-sec);
	font-family:var(--countdown-no-font);
	speak: none;
	font-style: normal;
	font-variant: normal;
	text-transform: none;
}
.timer .yycountdown-box .yyc-day-text,
.timer .yycountdown-box .yyc-hou-text,
.timer .yycountdown-box .yyc-min-text,
.timer .yycountdown-box .yyc-sec-text{
	font-size: var(--countdown-text-size);
	color: var(--countdown-text-color);
	font-family:var(--countdown-text-font);
	padding:0px 0px 0px 0px;
}
@media only screen and (max-width: 768px) {
.timer .yycountdown-box .yyc-day{
	font-size: var(--countdown-no-sp-size-day);
}
.timer .yycountdown-box .yyc-hou{
	font-size: var(--countdown-no-sp-size-hou);
}
.timer .yycountdown-box .yyc-min{
	font-size: var(--countdown-no-sp-size-min);
}
.timer .yycountdown-box .yyc-sec{
	font-size: var(--countdown-no-sp-size-sec);
}
.timer .yycountdown-box .yyc-day-text,
.timer .yycountdown-box .yyc-hou-text,
.timer .yycountdown-box .yyc-min-text,
.timer .yycountdown-box .yyc-sec-text{
	font-size: var(--countdown-text-sp-size);
	padding:0px 0px 0px 0px;
}	
}


/*ボタン関連
---------------------------------------------------------------------------*/

/*01:吹き出し付きボタン*/
.btn01-wrap{
	margin-top: 15px;
	margin-bottom: 10px;
}
.btn01,
a.btn01,
button.btn {
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border-radius: 0.5rem;
  letter-spacing: normal;
  min-width: 480px;
  border-radius: 80px;	
}
a.btn01-c {
  font-size: var(--btn01-font-pcsize);
  position: relative;
  padding: 0.1rem 2rem 1.8rem 3.5rem;
  color: var(--btn01-text-color);
  background: #CE2B1E;
  -webkit-box-shadow: 0 5px 0 #791A1A;
  box-shadow: 0 5px 0 #791A1A;
}
a.btn01-c span {
  font-size: 90%;
  position: absolute;
  top: -2rem;
  left: calc(50% - 150px);
  display: block;
  width: 300px;
  padding: 4px 10px;
  color: #000;
  border: 2px solid #CE2B1E;
  border-radius: 100vh;
  background: var(--btn01-mc-bg-color);
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
a.btn01-c span:before,
a.btn01-c span:after {
  position: absolute;
  left: calc(50% - 10px);

  content: "";
}
a.btn01-c span:before {
  bottom: -10px;

  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #CE2B1E;
}
a.btn01-c span:after {
  bottom: -7px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: var(--btn01-mc-bg-color) transparent transparent transparent;
}
a.btn01-c i {
  margin-right: 1rem;
	padding-left: 10px;
}
a.btn01-c:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);

  color: var(--btn01-text-color-hover);
  background: #CE2B1E;
  -webkit-box-shadow: 0 2px 0 #791A1A;
  box-shadow: 0 2px 0 #791A1A;
}
@media only screen and (max-width: 768px) {
.btn01,
a.btn01,
button.btn {
  min-width: 100%;
}	
a.btn01-c {
  font-size: var(--btn01-font-spsize);
  padding: 0.2rem 1rem 2rem 2.2rem;
}
a.btn01-c span {
  font-size: 80%;
  padding: 3px 5px;
  width: 250px;
  left: calc(50% - 125px);	
  top: -1.5rem;
}	
a.btn01-c i {
  margin-right: 1rem;
	padding-left: 5px;
}
}
/*02キラリ光るボタン*/
.btn02 {
  padding: 0.8em 0;
  overflow: hidden;
  position: relative;
   letter-spacing: normal;
}
.btn02 a {
  border: solid 3px var(--btn02-bd-color,#fff);
  border-radius: 12px;
  box-shadow: 1px 1px 8px 0 #b3b3b3;
  color: var(--btn02-text-color-l,#fff);
  display: block;
  font-size: var(--btn02-font-pcsize-l,3.2rem);
  font-weight: bold;
  line-height: 1.3;
  margin: 0em auto;
  padding: 0.8em 2em 0.8em;
  position: relative;
  text-align: center;
  text-decoration: none;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  vertical-align: middle;
  max-width: var(--btn02-width,680px);
}
.btn02-mini{
font-size: var(--btn02-font-pcsize-s,2rem);
color: var(--btn02-text-color-s,#fff);	
line-height: 1.5;
padding-top: 0px;
}
.btn02 a img {
  vertical-align: middle;
}
.btn02 a:after {
  content: ' ' !important;
}
/* ボタン内のアイコン */
.btn02 a:before {
  color: var(--btn02-text-color-i,#fff);		
  content: "\f101";
  font-family: "fontawesome";
  font-weight: normal;
  font-size: var(--btn02-font-pcsize-l,3.2rem);
  margin-top: -.6em;
  position: absolute;
  right: 15px;
  top: 50%;
}
.btn02 a:hover {
  box-shadow: 1px 1px 2px 0 #a1a1a1;
  filter: alpha(opacity=70);
  opacity: .7;
}
/* 2つ連続で並べる場合の余白 */
.btn02 + .btn02 a {
  margin-top: 0;
}
/* ボタンカラー（グラデーション） */
.btn02 a {
  background: var(--btn02-bg-color-top,#00a23f);
  background: -webkit-linear-gradient(var(--btn02-bg-color-top,#00a23f), var(--btn02-bg-color-bottom,#39900a));
  background: linear-gradient(var(--btn02-bg-color-top,#00a23f), var(--btn02-bg-color-bottom,#39900a));
}
/* ボタンの光沢 */
.is-reflection a {
  overflow: hidden;
}
.is-reflection a:after {
  -moz-animation: is-reflection 4s ease-in-out infinite;
  -moz-transform: rotate(45deg);
  -ms-animation: is-reflection 4s ease-in-out infinite;
  -ms-transform: rotate(45deg);
  -o-animation: is-reflection 4s ease-in-out infinite;
  -o-transform: rotate(45deg);
  -webkit-animation: is-reflection 4s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  animation: is-reflection 4s ease-in-out infinite;
  background-color: #fff;
  content: " ";
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: -180px;
  transform: rotate(45deg);
  width: 30px;
}
/* アニメーションを遅延させる */
.is-reflection + .is-reflection a:after {
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}
@keyframes is-reflection {
  0% { -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0; }
  80% { -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0.5; }
  81% { -webkit-transform: scale(4) rotate(45deg); transform: scale(4) rotate(45deg); opacity: 1; }
  100% { -webkit-transform: scale(50) rotate(45deg); transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes is-reflection {
  0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
  80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
  81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
  100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
/* CVボタン矢印揺れ */
.is-trembling a:before {
  -webkit-animation-name:is-trembling;
  -webkit-animation-duration:.8s;
  -webkit-animation-iteration-count:infinite;
  -webkit-animation-timing-function:ease;
  -moz-animation-name:is-trembling;
  -moz-animation-duration:1s;
  -moz-animation-iteration-count:infinite;
  -moz-animation-timing-function:ease;
}
@-webkit-keyframes is-trembling {
  0% {-webkit-transform:translate(-3px, 0);}
  100% {-webkit-transform:translate(0, 0);}
}
@media only screen and (max-width: 767px) {
  /* コンバージョンボタン */
  .btn02 a {
    font-size: var(--btn02-font-spsize-l,2.2rem);
    margin: 0 auto;
	padding-top: 15px;
	border: solid 2px var(--btn02-bd-color,#fff);  
  }
  .btn02-mini{
  font-size: var(--btn02-font-spsize-s,1.4rem);
  padding-top: 0px;
}
/* ボタン内のアイコン */
.btn02 a:before {
  font-size: var(--btn02-font-spsize-l,2.2rem);
}	
}





/*CSSアニメーション関連
---------------------------------------------------------------------------*/

/*スライダー*/
.slide-box{
	padding: 0px 0px 0px 0px;
}
  .section_recommend {
    padding: 0px;
     }
    .section_recommend .title_bubble {
      top: -30px; }
    .section_recommend .container {
      width: 95%;
      width: 1500px; }
    .section_recommend_slide > div {
      width: 1460px; }
.section_recommend {
  position: relative;
  background-color: var(--slider-bg);
  padding-top: 0px; }
  .section_recommend .title_bubble {
    position: absolute;
    top: -8.46354vw;
    right: 0;
    left: 0; }
  .section_recommend_slide {
    overflow-x: hidden;
    white-space: nowrap; }
  .section_recommend_slide > div {
    display: inline-block;
    width: auto; }
  .section_recommend_slide > div:first-child {
    -webkit-animation: loop 46s -22.9s linear infinite;
            animation: loop 46s -22.9s linear infinite; }
  .section_recommend_slide > div:last-child {
    -webkit-animation: loop2 46s linear infinite;
            animation: loop2 46s linear infinite; }

@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }

@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }

@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%); } }

@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  to {
    -webkit-transform: translateX(-200%);}}

/*スライドイン（要素が上から現れる）*/
.slideinTop {
  animation: slideinTop 1s ;
}

@keyframes slideinTop {
  0% {
    transform: translateY(var(--slidein-top));
  }
  100% {
    transform: translateY(0);
  }
}
































































