﻿@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&display=swap');
.font1 {
    font-family: 'Archivo Black', sans-serif;
    line-height: 1.3;
}


/*
#fakeloader{
    display: none!important;
}
*/


.linkStyle{
    color:#bf9d74;
}
.linkStyle:hover{
    transition:all 0.3s;
    opacity:0.7;
    text-decoration:underline;
}

body{
    overflow:hidden;
}

#fakeloader .fl{
    max-width:350px;
}
.footer_contact h4{
    line-height: 1.5;
}
.fix_bnr{
    left:10px;
    z-index:2;
}
.fix_bnr img{
    border-radius: 10px;
}



/*--top page---------------------------
-------------------------------------*/

#main_img {
    height: calc(100vh - 50px);
    max-height: 800px;
    padding-top: 100px;
}

#main_img .catch{
    width:37vw;
    max-width:700px;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:2;
}
#main_img .catch img{
    filter: drop-shadow(3px 3px 5px rgba(0,0,0,0.5));
}

#con1 {
    background: url(./Dup/img/tree1.png),url(./Dup/img/tree2.png),url(./Dup/img/machi.png),linear-gradient(180deg, rgba(234,253,252,1) 1%, rgba(255,255,255,1) 100%);
    background-repeat: no-repeat,no-repeat,repeat-x;
    background-size: 17%,17%,1127px 228px,100%;
    background-position: top left,top right,bottom;
    padding-bottom: 300px;
}
#con1::before,
#con1::after{
    position: absolute;
	content: "";
	left: 0;
	bottom: 0;
	width: 100%;
	height: 228px;
	background-size: auto 100%;
	background-position-y: 0;
	background-position-x: 0;
	background-repeat: repeat-x;
	pointer-evnents:none;
}
#con1::before{
    background-image: url("../dup/img/car1.png");
    animation: loop 30s linear infinite;
}
#con1::after{
    background-image: url("../dup/img/car2.png");
    animation: loop2 30s linear infinite;
}
@keyframes loop {
	0% {background-position-x: -1000px;}
	100% {background-position-x: 0;}
}
@keyframes loop2 {
	0% {background-position-x: 0;}
	100% {background-position-x:-1000px;}
}


.stars{
    height:fit-content;
    animation: star-anim 8s 0s infinite;
}
#con1 .star1 {
    width: 30px;
    margin: 50px auto 10px;
}
@keyframes star-anim {
  0% {opacity:0;}
  5% {opacity:1;}
  10% {opacity:0;}
  55% {opacity:0;}
  60% {opacity:1;}
  95% {opacity:0;}
  100% {opacity:1;}
}

#con2 .star2{
    width:30px;
    top:-30px;
    left:-30px;
}

#con3{
    background-size: auto auto;
    background-color: rgba(255, 255, 255, 1);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, rgba(255, 251, 242, 1) 3px, rgba(255, 251, 242, 1) 15px );
}
#con3 h3 .sl:first-of-type img{
    transform: scale(-1,1);
}
#con3 .icon {
    font-size: 5rem;
    line-height: 1;
}

#topCms figure{
    border-radius:20px;
}

.v_type1 .triangle {
    display: block;
    border: #333 solid 2px;
    box-shadow: 5px 5px 0 0 #e2e2e2;
    border-radius: 20px;
}
.v_type1 .triangle:before {
    content: '';
    position: absolute;
    display: block;
    z-index: 1;
    border-style: solid;
    border-color: #FFF transparent;
    border-width: 13px 13px 0 0;
    bottom: -13px;
    left: 50%;
    margin-left: -9px;
}
.v_type1 .triangle:after {
    content: '';
    position: absolute;
    display: block;
    z-index: 0;
    border-style: solid;
    border-color: #000 transparent;
    border-width: 15px 15px 0 0;
    bottom: -17px;
    left: 50%;
    margin-left: -11px;
}


.BA_type1 .box_item, .BA_type1 .box_img1, .BA_type1 .box_img2 {position: relative;}
.BA_type1 .box_item::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50.3%;
    transform: translate(-50%,-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 17px 0 17px 40px;
    border-color: transparent transparent transparent #ff9e03;
}
.BA_type1 .box_img1 {margin-right: 40px;}
.BA_type1 .box_img2 {margin-left: 40px;}
.BA_type1 .box_img1::after, .BA_type1 .box_img2::after {
    position: absolute;
    height: 33px;
    width: 87px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}
.BA_type1 .box_img1::after {
    content: "before";
    background-color: #4e9695;
    color: #fff;
}
.BA_type1 .box_img2::after {
    content: "after";
    background-color: #ffba42;
    color: #fff;
}




/*--under page---------------------------
-------------------------------------*/
.pagetitle .jp span{
    color: #F7CC38!important;
}

#cms_1-a figure,
.BA_type1 figure{
    border-radius:20px;
}

.bnr_box a{
    padding: 18px 40px;
    border-radius: 50px;
    transition: .3s;
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#fakeloader .fl{
    max-width:300px;
}
.logo1 img{
    filter: drop-shadow(3px 3px 0 #fff);
}

#main_img{
    max-height:850px;
}
#main_img .catch {
    width: 70vw;
}
#con1 {
    background-size: 20%,20%,80%,100%;
    padding-bottom: 20%;
}
#con1::before, #con1::after{
    height: 160px;
}
#con1 .star1 {
    margin: 30px auto 10px;
}
#con2 .star2{
    left:-20px;
}
#con3 h3 .sl img{
    width:40px;
}
.BA_type1 .box_img1 {
    margin-right: 30px;
}
.BA_type1 .box_img2 {
    margin-left: 30px;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#fakeloader .fl{
    max-width:250px;
}
#main_img .catch {
    width: 80vw;
}
#main_img{
    max-height:520px;
}
#con1 {
    background-size: 30%,30%,120%,100%;
    padding-bottom: 30%;
}
#con1::before, #con1::after {
    height: 120px;
}

#con3 .title .sl img {
    width: 25px;
}

.BA_type1 .box_img1 {margin-right: 5%;margin-bottom: 50px;}
.BA_type1 .box_img2 {margin-left: 5%;}
.BA_type1 .box_img1::after, .BA_type1 .box_img2::after {height: 30px;font-size: 15px;}
.BA_type1 .box_item::after {transform: translate(-50%,-60%) rotate( 90deg);border-width: 20px 0 20px 23px;}

.footer_contact h4{
    font-size:30px;
}
.bnr_box a {
    padding: 18px 20px;
}
}




