@charset "UTF-8";

.clear {
	margin: 0px;
	padding: 0px;
	height: 0px;
	width: auto;
	clear: both;
}
.item1 {
    width: 60%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation-delay: 1s; /* 遅延 */
}

.item2 {
    width: 160px;
    position: absolute;
    top: 10%;
    right: 8%;
    animation: 1s fadeIn2 forwards; /* ←追加 */
    animation-delay: 2s; /* 遅延 */
}
.item3 {
    width:140px;
    position: absolute;
    top: 30px;
    left: 20px;
    animation: 1s fadeIn3 forwards; /* ←追加 */
    animation-delay: 3s; /* 遅延 */
}
.item4 {
    width: 40%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation-delay: 3.5s; /* 遅延 */
}

/*ロード時フェードイン系ここから */
@keyframes fadeIn1 {
  from { opacity: 0;
    transform: translateY(100px);}
  to { opacity: 1.0;
    transform: translateY(0);}
}
@keyframes fadeIn2 {
  from { opacity: 0;
    transform: translateX(100px);}
  to { opacity: 1.0;
    transform: translateX(0);}
}
@keyframes fadeIn3 {
  from { opacity: 0;
    transform: translateX(-100px);}
  to { opacity: 1.0;
    transform: translateX(0);}
}
@keyframes fadeIn4 {
  from { opacity: 0;
    transform: translateY(100px);}
  to { opacity: 1.0;
    transform: translateY(0);}
}
/*ロード時フェードイン系ここまで*/

.delighter.top-image { transform:translate(100%); opacity:0; transition: all .75s ease-out; }
.delighter.top-image.started { transform:none; opacity:1; }


.delighter.right { transform:translate(-100%); opacity:0; transition: all .75s ease-out; }
.delighter.right.started { transform:none; opacity:1; }

.delighter.left { transform:translate(100%); opacity:0; transition: all .75s ease-out; }
.delighter.left.started { transform:none; opacity:1; }

.delighter.bottom { transform:translatey(300%); opacity:0; transition: all .75s ease-out; }
.delighter.bottom.started { transform:none; opacity:1; }

.delighter.fade { transform:translatey(40%); opacity:0; transition: all .75s ease-out; }
.delighter.fade.started { transform:none; opacity:1; }


.contact {
    width: 700px;
    box-sizing: border-box;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 33px;
    font-weight: 600;
    line-height: 1.5em;
    text-align: center;
    padding: 20px 0 80px;
    margin: 50px auto;
    display: table;
    color: #fff;
    background-color: #E97000;
    text-decoration: none;
    transition: 0.2s;
    position: relative;
}
.contact:hover {
    background-color: #000;
    color: #fff;
    transition: 0.2s;
}
.contact strong {
    font-size: 1.7em;
    font-weight: 800;
}
.contact .tel {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.3em;
    text-align: left;
	position: absolute;
	bottom: 20px;
	left: 80px;
	padding: 0 0 0 60px;
	background-image: url("../img/tel1.png");
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: auto 45px;
}
.contact .area {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 27px;
    font-weight: 600;
    line-height: 1.4em;
    text-align: left;
	position: absolute;
	bottom: 20px;
	right: 100px;
	padding: 0;
}
.contact .tel small, .contact .area small {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 15px;
    font-weight: 300;
    display: block;
    line-height: 1.2em;
}
footer {
	width: 100%;
	height: auto;
    box-sizing: border-box;
    padding: 300px 5% 30px;
    margin: 0;
    background-color: #EBECED;
    position: relative;
}
.left {
    width: 40%;
    box-sizing: border-box;
    position: absolute;
    left: 5%;
    top: 50px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6em;
}
.left .logo {
    width: 290px;
    display: table;
    margin: 0 0 20px;
}
.left .insta {
    width: 40px;
    display: inline-block;
    margin: 10px 0;
}
.koujiten {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3em;
    text-align: center;
    color: #095CA8;
    border: 2px solid #095CA8;
    background-color: #fff;
    box-sizing: border-box;
    padding: 10px 30px;
    position: absolute;
    right: 3%;
    top: 50px;
}
.koujiten small {
    font-size: 0.75em;
    display: block;
    line-height: 1.5em;
}
.f-navi {
    margin: 20px auto 80px;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    display: table;
}
.f-navi li {
    display: inline-block;
    margin: 0px 15px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2em;
}
.f-navi li a {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2em;
    text-decoration: none;
    transition: 0.3s;
    display: inline-block;
}
.f-navi li a:hover {
    color: #FFBD00;
    transition: 0.3s;
}
.copyright {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.2em;
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}


@media only screen and (max-width: 899px) {
.top-space {
    width: 100%;
    min-height: 57vh;
    padding: 0;
    margin: 0;
    position: relative;
}
.top {
    opacity: 0; /* ←初期値を変更。透明に。*/
    animation: 1s fadeIn1 forwards; /* ←追加 */
}
.item1 {
    width: 90%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation-delay: 1s; /* 遅延 */
}
    .item2 {
    width: 20%;
        max-width: 150px;
    position: absolute;
    top: 16%;
    right: 2%;
    animation: 1s fadeIn2 forwards; /* ←追加 */
    animation-delay: 2s; /* 遅延 */
}
.item3 {
    width:20%;
    max-width: 150px;
    position: absolute;
    top: 16%;
    left: 2%;
    animation: 1s fadeIn3 forwards; /* ←追加 */
    animation-delay: 3s; /* 遅延 */
}
.item4 {
    width: 50%;
    position: absolute;
    top: 55px;
    left: 0;
    right: 0;
    margin: auto;
    animation-delay: 3.5s; /* 遅延 */
}
    
.contact {
    width: 100%;
    font-size: min(6vw,30px);
    padding: 20px 0 20px;
    margin: 30px auto;
    text-align: center;
}
.contact strong {
    font-size: 1.7em;
}
.contact .tel {
    font-size: min(6vw,30px);
    line-height: 1.2em;
    margin: 10px auto;
	padding: 10px 0 0 55px;
	background-position: left bottom;
	background-size: 40px auto;
    text-align: center;
    position:relative;
	bottom:inherit;
	left: inherit;
    display: table;
}
.contact .area {
    font-size: min(5vw,30px);
    text-align: center;
    position:relative;
	bottom: inherit;
    right: inherit;
}
.contact .tel small, .contact .area small {
    font-size: 13px;
    line-height: 1.2em;
}
footer {
	width: 100%;
	height: auto;
    box-sizing: border-box;
    padding: 350px 5% 80px;
    margin: 50px 0 0;
    background-color: #EBECED;
    position: relative;
}
.left {
    width: 90%;
    box-sizing: border-box;
    position: absolute;
    left: 5%;
    top: 140px;
    font-size: 14px;
    line-height: 1.6em;
}
.left .logo {
    width: 50%;
    display: table;
    margin: 0 0 20px;
}
.left .insta {
    width: 40px;
    display: inline-block;
    margin: 10px 0;
}
.koujiten {
    font-size: 18px;
    line-height: 1.3em;
    padding: 10px 30px;
    position: absolute;
    left: 5%;
    right:inherit;
    top: 20px;
}
.koujiten small {
    font-size: 0.75em;
    display: block;
    line-height: 1.5em;
}
.f-navi {
    margin: 20px auto 80px;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    display: table;
}
.f-navi li {
    display: inline-block;
    margin: 0px 30px 30px 0;
    font-size: 14px;
    line-height: 1.2em;
}
.f-navi li a {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2em;
    text-decoration: none;
    transition: 0.3s;
    display: inline-block;
}
.copyright {
    width: 100%;
    font-size: 12px;
    text-align: center;
    position: absolute;
    bottom: 90px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
}