﻿@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{
    padding-bottom:200px;
    background:url(./Dup/img/cloud.png),linear-gradient(180deg, rgba(234,253,252,1) 1%, rgba(255,255,255,1) 100%);
    background-repeat:no-repeat;
    background-size:100% auto;
    background-position:bottom;
}
#con1::before{
    position: absolute;
	content: "";
	left: 0;
	bottom: 0;
	width: 100%;
	height: 136px;
	background-image: url("../dup/img/machi.png");
	background-size: auto 100%;
	background-position-y: 0;
	background-position-x: 0;
	background-repeat: repeat-x;
	animation: loop 30s linear infinite;
}
@keyframes loop {
	0% {background-position-x: -1000px;}
	100% {background-position-x:0;}
}

.bird {
  position: absolute;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  animation: moving 16s linear infinite;
}

.bird.-type_2 {
  animation-delay: 1s;
}
.bird.-type_2:before,
.bird.-type_2:after {
  animation-delay: -2s;
}

.bird.-type_3 {
  animation-delay: 3s;
}

@keyframes moving {
  0% {
    top: -2vh;
    left: -2vw;
  }
  25% {
    top: 15vh;
    left: 23vw
  }
  100% {
    top: 25vh;
    left: 101vw;
  }
}

.bird:before, .bird:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: black;
  transform: rotate(-30deg);
  transform-origin: right bottom;
}

.bird:before {
  width: 100%;
  height: 1px;
  animation: leftWing 8s linear infinite;
}
.bird:after {
  width: 1px;
  height: 100%;
  animation: rightWing 8s linear infinite;
}

@keyframes leftWing {
  0%   { transform: rotate(-30deg); }
  2%   { transform: rotate(-110deg); }
  4%   { transform: rotate(-30deg); }
  6%   { transform: rotate(-110deg); }
  8%   { transform: rotate(-30deg); }
  10%  { transform: rotate(-110deg); }
  12%  { transform: rotate(-30deg); }
  30%  { transform: rotate(-30deg); }
  42%  { transform: rotate(-35deg); }
  72%  { transform: rotate(-35deg); }
  74%  { transform: rotate(10deg); }
  76%  { transform: rotate(-30deg); }
  78%  { transform: rotate(-110deg); }
  80%  { transform: rotate(-30deg); }
  82%  { transform: rotate(-110deg); }
  84%  { transform: rotate(-30deg); }
  86%  { transform: rotate(-110deg); }
  88%  { transform: rotate(-30deg); }
  90%  { transform: rotate(-110deg); }
  92%  { transform: rotate(-30deg); }
  94%  { transform: rotate(-110deg); }
  96%  { transform: rotate(-30deg); }
  98%  { transform: rotate(-110deg); }
  100% { transform: rotate(-30deg); }
}

@keyframes rightWing {
  0%   { transform: rotate(30deg); }
  2%   { transform: rotate(110deg); }
  4%   { transform: rotate(30deg); }
  6%   { transform: rotate(110deg); }
  8%   { transform: rotate(30deg); }
  10%  { transform: rotate(110deg); }
  12%  { transform: rotate(30deg); }
  30%  { transform: rotate(30deg); }
  42%  { transform: rotate(35deg); }
  72%  { transform: rotate(35deg); }
  74%  { transform: rotate(0deg); }
  76%  { transform: rotate(30deg); }
  78%  { transform: rotate(110deg); }
  80%  { transform: rotate(30deg); }
  82%  { transform: rotate(110deg); }
  84%  { transform: rotate(30deg); }
  86%  { transform: rotate(110deg); }
  88%  { transform: rotate(30deg); }
  90%  { transform: rotate(110deg); }
  92%  { transform: rotate(30deg); }
  94%  { transform: rotate(110deg); }
  96%  { transform: rotate(30deg); }
  98%  { transform: rotate(110deg); }
  100% { transform: rotate(30deg); }
}



#con1 .track{
    width:100px;
    bottom:5px;
    left:50%;
    transform:translateX(-50%);
}
.anim_type2{
	position: relative;
	animation-name: anim_type2;
	animation-iteration-count: infinite;
	animation-duration: 0.1s;
	animation-direction: alternate;
	animation-timing-function: steps(2);
	transition-duration: .3s;
	transition-property: transform;
}
@keyframes anim_type2 {
	0% {bottom: 0;}
	100% {bottom: -3px;}
}

#con3{
    background-color: #ffdf71;
    background-image: radial-gradient(circle, #fff 4%, transparent 10%), radial-gradient(circle, #fff 4%, transparent 10%);
    background-size: 20px 20px;
    background-position: 0 0, 10px 10px;
}

#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: #D94352!important;
}

.bnr_box a{
    padding: 18px 40px;
    border-radius: 50px;
    transition: .3s;
}

#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){

.logo1 img{
    filter: drop-shadow(3px 3px 0 #fff);
}

#con1 {
    padding-bottom: 180px;
    background: url(./Dup/img/cloud.png),linear-gradient(180deg, rgba(234,253,252,1) 20%, rgba(255,255,255,1) 100%);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: bottom;
}
#con1::before{
    height:120px;
}

#con1 .track {
    width: 80px;
}

.BA_type1 .box_img1 {
    margin-right: 30px;
}
.BA_type1 .box_img2 {
    margin-left: 30px;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#fakeloader .fl{
    max-width:300px;
}
#main_img .catch {
    width: 75vw
}
#con1 {
    padding-bottom: 150px;
}
#con1::before {
    height: 100px;
}
#con1 .track {
    width: 70px;
}
.topTxt1{
    letter-spacing: 0px;
}

#con3 .title{
    letter-spacing: 1px;
    padding: 0 5px;
}

.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;
}
}




