@charset "utf-8";
/* CSS Document */

@import "common.css";


/*-------------------------------------------------
LP専用
-------------------------------------------------*/


body {
	background: #ffffff;
}
#LP-main {
	background: #ffffff;
}
#LP-mainbox {
	background: #ffffff;
	margin: 0 auto;
	padding-bottom: 3rem;
	max-width: 640px;
	width: 100%;
	height: auto;
}

#LP-main img {
	max-width: 640px;
	width: 100%;
	height: auto;
	text-align: center;
}
#LP-main p {
	margin: 0.5rem 20px 0 20px;
	font-size: 0.8rem;
	text-align: left;
	color: #333333;
}

.mt-20{
	margin-top: 20px;
}
.mt-30{
	margin-top: 30px;
}
.mt-40{
	margin-top: 40px;
}
.mt-60{
	margin-top: 60px;
}

.txt24{
	font-size: 24px !important;
}
.bg_g20{
	background-color: #cccccc;
	padding-bottom: 4rem;
}
.drop-shadow{
	filter: drop-shadow(1px 1px 2px rgb(0, 0, 0, 0.5));
}
.flex{
	display: flex;
	text-align: center;
	justify-content: center;
	align-items: center;
}
.flex aside{
	width: 50%;
}
.flex aside a img{
	margin: 0.5rem 0 ;
}


#LP-mainbox strong{
	font-size: 1rem;
	line-height: 1.7;
	font-weight: normal;
}
#LP-mainbox strong span{
	color: #e5004f;
	font-weight: bold;
}

footer{
	padding: 2rem 0;
	background: #005d3f;
	color: #ffffff;
	font-size: 0.8rem;
	line-height: 2;
}
footer p{
	padding: 0.5rem 0;
}

/*改行調整・文字調整*/
@media screen and (min-width: 480px) {
	.br_none { display:none; }
	footer{
	font-size: 1rem;
}
}


/*-----追加要素------*/
/*floatbutton*/
header{
	position: relative;
}
.float-button{
	position: absolute;
	z-index: 997;
    bottom: 20px;
}

/*固定ボタン*/
.fixed-btn {
    position: fixed;
	display: flex;
	justify-content: center;
	z-index: 998;
	width: 100%;
	background-color: rgba(255,255,255,0.5);
    top: 0;
	text-align: center;
}
.fixed-btn a {
	margin: auto 10px;
}
.fixed-btn-tel{
	max-width: 90px;
	width: 15%;
}
.fixed-btn-form{
	max-width: 482px;
	width: 80%;
}
.fixed-btn a img{
	width: 100%;
	height: auto;
}



/*固定ボタン*/
.fixed-btn-right, .fixed-btn-bottom {
    position: fixed;
	display: flex;
	justify-content: flex-end;
	z-index: 998;
    bottom: 0;
	max-width: 640px;
	width: 100%;
}
.fixed-btn-right a{
	right: 0;
	max-width: 200px;
	width: 40%;
}

/*テキスト配置*/
.kasane{
  position: relative;
}
.kasane h1{
	position: absolute;
	top: 3vw;
	left: 20vw;
	color: #bbbbbb;
	text-align: left;
	font-size: 2.2vw;
	line-height: 1.5;
}
@media screen and (min-width: 640px) {
.kasane h1{
	font-size: 14px;
	top: 1.5rem;
	left: 9rem;
}
	
/*スライダー*/

.img-frame:before {
  content: "";
  display: block;
  padding-top: 100%;
}


.img-frame{
   position: relative;
   overflow: hidden;
   margin: 0 8%;
  width: 84%;
}
.img-01,
.img-02,
.img-03,
.img-04{
      position: absolute;
	padding: 10px;
   top: 0;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
}

.img-01{
   background-image: url('../img/sample1.jpg');
   animation: slide-animation-01 24s infinite;
}
.img-02{
   background-image: url('../img/sample2.jpg');
   animation: slide-animation-02 24s infinite;
}
.img-03{
   background-image: url('../img/sample3.jpg');
   animation: slide-animation-03 24s infinite;
}
.img-04{
   background-image: url('../img/sample4.jpg');
   animation: slide-animation-04 24s infinite;
}

@keyframes slide-animation-01 {
   0% {opacity: 1; transform: scale(1.0) ;}
   30% {opacity: 1;}
   40% {opacity: 0; transform: scale(1.15)}
   90% {opacity: 0}
   100% {opacity: 1; transform: scale(1.0)}
 }
 @keyframes slide-animation-02 {
   0% {opacity: 0;}
   30% {opacity: 0; transform: scale(1.1) }
   40% {opacity: 1;}
   60% {opacity: 1;}
   70% {opacity: 0; transform: scale(1.0)}
   100% {opacity: 0;}
 }
 @keyframes slide-animation-03 {
   0% {opacity: 0;}
   60% {opacity: 0;  transform: scale(1.0) ;}
   70% {opacity: 1;}
   90% {opacity: 1;}
   100% {opacity: 0; transform: scale(1.1) ;}
 }
 @keyframes slide-animation-04 {
   0% {opacity: 0;}
   60% {opacity: 0;  transform: scale(1.0) ;}
   70% {opacity: 1;}
   90% {opacity: 1;}
   100% {opacity: 0; transform: scale(1.1) ;}
 }