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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;500;700&family=Roboto:wght@300;500;700&display=swap');

html {
 overflow-y: scroll;
}

body {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    overflow-x: hidden;
    color: #333333;
    font-weight: 300;
}
.h2-box {
    border-left: 8px solid rgba(0,129,204,1.00);
    padding-left: 15x;
}

.h2-box h2 {
    font-weight: 700;
    color: #0068B7;
    font-size: 2.8rem;
    padding-left: 10px;
}
.h2-box h2 .h2-small {
    font-size: 2rem;
}
.h2-box h3 {
    font-weight: 700;
    color: #0068B7;
    font-size: 1.6rem;
    padding-left: 12px;
}


a:hover {
    transition: 0.3s;
}

.footer-box {
    background-color: #DFF2FC;
    padding-bottom: 40px;
}
.footer-logo {
    float: left;
    background-image: url(../img/rt-logo2.png);
    background-repeat: no-repeat;
    background-size: 80px auto;
    background-position: 15px 0px;
    padding-left: 110px;
}

.footer-txt1 {
    font-weight: 900;
    letter-spacing: -0.1em;
    display: flex;
    align-items: center;
}
.footer-txt2 {
    font-size: 1.6rem;
    color: #0068B7;
    margin-right: 6px;
}
.footer-txt3 {
    font-size: 2.2rem;
    color: #0068B7;
}
.footer-txt4 {
    line-height: 30px;

}
.footer-txt4 img {
    height: 28px;
    width: auto;
}
.footer-txt5 {
    font-weight: 400;
    line-height: 1.5rem;
}
.footer-txt6 {
    font-size: 0.9rem;
    line-height: 30px;
}
.footer-txt7 {
    display: flex;
    align-items: center;

}
.footer-txt8 {
    background-color: #0068B7;
    color: rgba(255,255,255,1.00);
    font-size: 0.7rem;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 4px;
    border-radius: 3px;
    padding-bottom: 4px;
    margin-right: 10px;
    font-weight: 400;
}
.footer-txt9 {
    font-weight: 900;
    font-size: 2.2rem;
}






.copyright {
    font-size: 0.8rem;
    margin-top: 30px;
    border-top: 1px solid rgba(0,0,0,0.20);
    padding-top: 40px;
}




.h1-box {
}

.h1-box h1 {
}
.img100 img {
    width: 100%;
    height: auto;
}

.mainv {
    background-image: url(../img/mainv01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100vw;
    height: 100vh;
    position: relative;
    min-height: 700px;
}
.catch1 {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 50px;
}
.catch2 {
    padding-left: 40px;
    padding-right: 40px;
}

.catch3 {
    padding-left: 50px;
    padding-right: 60px;

}
.catch3-under {
    position: absolute;
    bottom: 100px;
    right: 0px;
}






/*========= スクロールダウンのためのCSS ===============*/

/*====== 9-1-1 縦線が動いてスクロールを促す =======*/

/*スクロールダウン全体の場所*/
.scrolldown1{
    /*描画位置※位置は適宜調整してください*/
  position:absolute;
  left:50%;
  bottom:10px;
    /*全体の高さ*/
  height:50px;
}

/*Scrollテキストの描写*/
.scrolldown1 span{
    /*描画位置*/
    position: absolute;
    left: -20px;
    top: -15px;
    /*テキストの形状*/
    color: #eee;
    font-size: 0.9rem;
    letter-spacing: 0.05em;
}

/* 線の描写 */
.scrolldown1::after{
  content: "";
    /*描画位置*/
  position: absolute;
  top: 0;
    /*線の形状*/
  width: 1px;
  height: 30px;
  background: #eee;
    /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}
#sec1 {
    border-top: 5px solid #0080CB;
    padding-top: 50px;
}
.list1 ul {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}

.list1 ul li {
    list-style-type: none;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 15px;
    margin-left: 0px;
    padding-top: 9px;
    padding-bottom: 9px;
    text-align: center;
    font-weight: 700;
    background-color: #0081CC;
    border-radius: 4px;
    color: #FFFFFF;
    font-size: 1.5rem;

}
.equip {
    border: 1px solid #00A0E9;
    color: #00A0E9;
    font-weight: 500;
    border-radius: 5px;
    text-align: center;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 12px;
    margin-left: 6px;
    margin-right: 6px;
    padding-top: 4px;
    padding-bottom: 4px;
}
.price-box {
    font-weight: 700;
    color: #0068B7;
}
.price-box .price1 {
    font-size: 3rem;
    margin-right: 15px;
}






/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}
.price-box .price2 {
    font-size: 1.8rem;
    margin-right: 10px;
}
.price-box .price3 {
    font-size: 2.5rem;
}
.price-box .price4 {
    font-size: 3.6rem;
}

/*トップの動作*/
.catch1 {
    animation: fadeIn1 2s ease 0s 1 forwards;
}
@keyframes fadeIn1 { /*animation-nameで設定した値を書く*/
	0% {opacity: 0; transform: translateX(50px);}
	20% {opacity: 0; transform: translateX(50px);}
	30% {opacity: 1; transform: translateX(0px);}
	100% {opacity: 1; transform: translateX(0px);}
}
.catch2 {
    animation: fadeIn2 2s ease 0s 1 forwards;
}
@keyframes fadeIn2 { /*animation-nameで設定した値を書く*/
	0% {opacity: 0; transform: translateX(50px);}
	40% {opacity: 0; transform: translateX(50px);}
	50% {opacity: 1; transform: translateX(0px);}
	100% {opacity: 1; transform: translateX(0px);}
}
.catch3 {
    animation: fadeIn3 2s ease 0s 1 forwards;
}
@keyframes fadeIn3 { /*animation-nameで設定した値を書く*/
	0% {opacity: 0; transform: translateX(-50px);}
	70% {opacity: 0; transform: translateX(-50px);}
	80% {opacity: 1; transform: translateX(0px);}
	85% {opacity: 1; transform: translateX(-6px);}
	90% {opacity: 1; transform: translateX(0px);}
	100% {opacity: 1; transform: translateX(0px);}
}
