@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@300;400;500;600;700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');


/*===============================================
●PCレイアウト設定 
===============================================*/
@media print, screen and  (min-width: 651px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/

.index #video-area{
    position: fixed;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}
.index #video-area .pattern{

}

.index #video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: -5vw;
    left: 50%;
    transform: translateX(-50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}

.index .main {
position: relative;
padding-top: 100vh;
}

.main .catch{
position: absolute;
top:25%;
left: 10%;
width: 50%;
max-width: 565px
}
.main img{
width: 100%
}

.index .box1{
background-image: url("../images/index/bg_box1.png");
padding: 100px 0 0 0
}
.index .box1 .flex_box1{
width: 1000px;
max-width: 95%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.index .box1 .flex_box1 .com{
width: 60%;
margin-right: 5%;
padding-top: 40px
}
.index .box1 .flex_box1 .com li{
display: block;
color:#936C0A;
font-weight: 600;
font-size: clamp(1.2rem,2.0vw, 2.8rem);
margin-bottom: 1.5vw;
}
.index .box1 .flex_box1 .photo{
width: 30%;
}
.index .box1 .flex_box1 .photo img{
width: 100%;
}
/* スクロールで出現 */
.faderight{
animation-name:faderightAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes faderightAnime{
  from {
    opacity: 0;
  transform: translateX(30px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

.fadeleft{
animation-name:fadeleftAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeleftAnime{
  from {
    opacity: 0;
  transform: translateX(-30px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

.fadeBottom{
animation-name:fadeBottomAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeBottomAnime{
  from {
    opacity: 0;
  transform: translateY(30px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}

.index .box2{
background-color: #FFF;
min-height: 600px;
padding-bottom: 50px
}
.index .box2 .text1{
font-family: 'Noto Sans JP';
font-size: 3.5rem;
letter-spacing: 0.7rem;
text-align: center;
padding: 50px 0;
color: #C00;
font-weight: bold;
font-style: italic;
}

.index .box2 .flex_box2{
position: relative;
margin-bottom: 50px
}
.index .box2 .flex_box2 .photo{
width: 80%;
}
.index .box2 .flex_box2 .photo img{
width: 100%;
}
.index .box2 .flex_box2 .com{
width: 55%;
position: absolute;
top: 10%;
left: 35%;
line-height: 200%;
}
.index .box2 .flex_box2 .com li{
display: block;
background-color: rgba(255,255,255,0.9);
border: #CCC 1px solid;
border-radius: 10px;
padding: 1% 2%;
font-weight: 600;
font-size: clamp(1.2rem,1.2vw,2.0rem);
margin-bottom: 1.6vw;
color: #069
}
.index .box2 .flex_box2 .com li .text_red{
color: #C00;
font-size: 1.4vw
}
.index .box2 .bt1{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.index .box2 .bt1 a{
display: block;
width: 48%;
}
.index .btn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
  overflow: hidden;
    /*ボタンの形状*/
  text-decoration: none;
  display: block;
    border: 1px solid #0e3376;
	color: #FFF;
	background-color: #0e3376;
    padding: 20px 30px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/   
    transition: ease .2s;
}

/*ボタン内spanの形状*/
.index .btn span {
  position: relative;
  z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
 color: #FFF;
 font-size: 2.0rem
}
.index .btn:hover span{
  color:#fff;
}
/*== 背景が流れる（左から右） */
.index .bgleft:before {
  content: '';
    /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
    /*色や形状*/
  background-color: #365895;
  width: 100%;
  height: 100%;
    /*アニメーション*/
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
/*hoverした際の形状*/
.index .bgleft:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}
.index .box3{
background-image: url("../images/index/bg_lineup.jpg");
background-repeat:repeat-y;
background-color: #FFF;
padding-bottom: 50px
}
.index .box3 .box_subtitle{
padding-top: 150px;
padding-bottom: 15px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
color: #0e3376;
}
.index .box3 .box_subtitle .box_left{
width: 25%;
padding-left: 3%;
font-size: 2.0rem;
padding-top: 60px;
line-height: 130%
}
.index .box3 .box_subtitle .box_left .text_subtitle{
font-size: 5.3rem;
letter-spacing: 0.3rem;
font-family: "Times New Roman", Times, "serif";
padding-bottom: 10px
}
.index .box3 .box_subtitle .box_right{
width: 70%;
border-left: #0e3376 1px solid;
font-size: 2.0rem;
line-height: 150%
}
.index .box3 .box_subtitle .box_right .com{
border-left: #0e3376 1px solid;
padding: 50px
}

.index .box3 .flex_lineup{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 90%;
padding: 50px 0 30px 0;
margin: 0 auto
}
.index .box3 .flex_lineup::before{
  content:"";
  display: block;
  width:24.5%;
  order:1;
}
.index .box3 .flex_lineup::after{
  content:"";
  display: block;
  width:24.5%;
}
.index .box3 .flex_lineup .inner{
width: 24.5%;
padding-bottom: 3px;
border-bottom: #0669 1px solid;
margin-bottom: 30px;
padding-bottom: 5%
}
.index .box3 .flex_lineup .inner .photo{
width: 100%;
padding-top: 80%;
position: relative;
overflow: hidden
}
.index .box3 .flex_lineup .inner .photo img{
width: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
transition: 0.8s
}
.index .box3 .flex_lineup .photo img:hover{
width: 110%;
height: auto;
}
.index .box3 .flex_lineup .inner .makerlogo{
width: 40%;
}
.index .box3 .flex_lineup .inner .makerlogo img{
width: 100%
}

.index .box3 .flex_lineup .carname{
background-color: #DDD;
color: #0e3376;
font-size:  clamp(1.1rem,1.3vw,2.2rem);
font-weight: 600;
padding: 8px 2px;
margin-bottom: 10px;
text-align: center
}
.index .box3 .flex_lineup .makerlogo{
width: 40%;
top:0;
left:2%
}
.index .box3 .flex_lineup .box_price{
border-bottom: #C00 3px solid;
padding: 6px 2%;
color: #C00;
font-size:  clamp(11px,1.25vw,16px);
font-weight: 600;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 10px
}
.index .box3 .flex_lineup .box_price .komikomi{
width: 40%;
font-size:  clamp(12px,1.2vw,16px);
padding-top: 5px;
line-height: 140%
}

.index .box3 .flex_lineup .box_price .price1{
width: 60%;
text-align: center;
}
.index .box3 .flex_lineup .box_price .price1 .price2{
font-size:  clamp(13px,2.5vw,35px);
font-weight: bold;
font-style: italic;
}
.index .box3 .flex_lineup .biko{
color: #000;
font-size:  clamp(12px,1.2vw,14px);
line-height: 150%;
display: flex;
flex-wrap: wrap;
justify-content: space-between
}
.index .box3 .flex_lineup .biko td{
padding: 1%;
border: #666 1px solid
}
.index .box3 .flex_lineup .bt_car{
margin-top: 10px;
position: relative
}
.index .box3 .flex_lineup .bt_car a{
display: block;
position: absolute;
font-size:  clamp(1.1rem,1.2vw,1.8rem);
top: 20%;
left: 50%;
transform: translateX(-50%);
background-color: #036;
width: 100%;
padding: 10px 0;
text-align: center;
color: #FFF;
transition: 0.5s
}
.index .box3 .flex_lineup .bt_car a:hover{
 opacity:0.8;
}
.index .box3 .flex_lineup .bt_car a:hover::before {
    content: '';
    /*絶対配置で波形の位置を決める*/
    position: absolute;
    left:15%;
    top:0%;
    /*波形の形状*/
    border: 2px solid #036;
    width: 80%;
    height: 100%;
    /*はじめは不透明*/
  opacity:1;
    /*アニメーションの設定*/
    animation:1s circleanime2 forwards;
}

/*波形が広がるアニメーション*/
@keyframes circleanime2{
  0%{
    transform: scale(0);
  }
  100%{
    transform:scale(2);
    opacity: 0;
  }
}
.index .box3 .flex_cat{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 80%;
padding: 50px 0 0 0;
margin: 0 auto;
}
.index .box3 .flex_cat a{
display: block;
width: 19%;
border: #CCC 1px solid;
}
.index .box3 .flex_cat a img{
width: 100%
}
.index .box3 .bt2{
width: 800px;
max-width: 90%;
margin: 0 auto;
}
.index .box3 .bt2 a{
display: block;
}
.index .box_image img{
width: 100%
}
.index .box4{
padding: 100px 0;
background-color: #FFF;
}
.index .box4 .subtitle{
text-align: center;
font-size: 3.5rem;
font-weight: 600;
color: #999;
padding-bottom: 50px;
}
.index .box4 .box_news{
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.index .box4 .box_news li{
display: block;
padding-bottom: 2px;
border-bottom: #666 1px dotted;
margin-bottom: 20px;
}
.index .box4 .box_news li .date{
font-size: 1.2rem;
margin-bottom: 5px
}
.index .box5{
padding: 100px 0;
background-color: #FFF;
}
.index .box5 .flex_box5{
border-top: #069 2px solid;
padding-top: 50px;
width: 1200px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box5 .flex_box5 .com{
width: 50%;
}
.index .box5 .flex_box5 .com .compname{
color: #059;
font-size: 3.0rem;
font-weight: 600;
padding-bottom: 20px
}
.index .box5 .flex_box5 .com .tel{
text-align: center;
font-size: 4.0rem;
font-weight: 600;
padding-bottom: 20px;
color: #059;
}
.index .box5 .flex_box5 .com a{
display: block;
width: 80%;
margin: 10px auto
}
.index .box5 .flex_box5 .photo{
width: 48%;
}
.index .box5 .flex_box5 .photo img{
width: 100%;
}
/*カーリースについて-----------------------------------------*/
.about .box_img{
padding: 100px 0 50px 0 ;
width: 1200px;
max-width: 100%;
margin: 0 auto
}
.about .box_img img{
width: 100%;
}
.about .box1{
background-color: #ECE2D4;
padding: 100px 0;
min-height: 700px
}
.about .box2{
width: 1700px;
max-width: 100%;
margin: 0 0 0 auto;
position: relative;
}
.about .box2 .com{
position: absolute;
width: 60%;
background-color: rgba(255,255,255,0.8);
padding: 2%;
left:0;
top :10%;
line-height: 180%;
border: #CCC 1px solid;
border-radius: 10px;
font-size: clamp(1.3rem,1.0vw,1.8rem)
}
.about .box2 .com .img_subtitle{
width: 80%;
margin: 0 auto 30px auto
}
.about .box2 .com .img_subtitle img{
width: 100%;
}

.about .box2 .com .subtitle {
  border-bottom: solid 3px skyblue;
  position: relative;
  font-size: clamp(1.5rem, 1.3vw, 2.5rem);
  font-weight: 600;
  color: #F39E4B
}

.about .box2 .com .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffc778;
  bottom: -3px;
  width: 30%;
}
.about .box2 .photo{
padding-left: 25%;
}
.about .box2 .photo img{
width: 100%
}
.about .box3{
width: 1200px;
max-width: 90%;
padding: 100px 0;
margin: 0 auto

}
.about .box3 .img_subtitle{
width: 500px;
max-width: 90%;
margin: 0 auto 30px auto
}
.about .box3 .img_subtitle img{
width: 100%;
}
.about .flex_box3{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .flex_box3 .left{
width: 45%;
font-size: 1.6rem;
font-weight: 500
}
.about .flex_box3 .left table{
width: 100%;
border-collapse: collapse
}
.about .flex_box3 .left td{
padding: 1%;
border: #CCC 1px solid
}
.about .flex_box3 .right{
width: 52%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .flex_box3 .right .inner{
width: 48%;
margin-bottom: 20px;
}
.about .flex_box3 .right .inner img{
width: 100%
}
.about .box4{
width: 1200px;
max-width: 90%;
padding: 100px 0;
margin: 0 auto
}
.about .box4 .img_subtitle{
width: 500px;
max-width: 90%;
margin: 0 auto 30px auto
}
.about .box4 .img_subtitle img{
width: 100%;
}
.about .box4 .text_box4{
color: #000;
font-size: 2.5rem;
font-weight: 600;
line-height: 180%;
padding: 50px 0;
text-align: center
}
.about .box4 .text3_box4{
font-size: 2.0rem;
font-weight: 600;
padding-top: 20px
}
.about .flex_box4{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .flex_box4 .left{
width: 48.5%;
font-size: 1.6rem;
font-weight: 500
}
.about .flex_box4 .right{
width: 48.5%;
font-size: 1.6rem;
font-weight: 500
}
.about .flex_box4 .left dt{
background-color: #6CB2B8;
}
.about .flex_box4 .right dt{
background-color:#9A77A7;
}
.about .flex_box4 .left dd{
border: #6CB2B8 3px solid;
}
.about .flex_box4 .right dd{
border: #9A77A7 3px solid;
}
.about .flex_box4  dt{
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
padding: 5px 0;
text-align: center
}
.about .flex_box4 dd{
margin-left: 0;
padding: 2%;
box-sizing: border-box
}
.about .flex_box4 dd table{
width: 100%;
border-collapse: collapse;
margin:0 0 25px 0
}
.about .flex_box4 dd td{
padding: 1%;
border: #DDD 1px solid;
font-size: clamp(1.1rem,1.0vw, 1.6rem)
}
.about .subtitle3 {
  position: relative;
  padding-left: 25px;
  color: #069;
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 20px
}

.about .subtitle3:before {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border: none;
  border-left: solid 15px transparent;
  border-bottom: solid 15px rgb(119, 195, 223);
}
.about .subtitle3:after {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 10px;
  width: 100%;
  border-bottom: solid 3px rgb(119, 195, 223);
}
.about .flex_box4 .flex_icon{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background-color: #fafaff
}
.about .flex_box4 .flex_icon .icon{
width: calc(6 / 100%);
margin-bottom: 10px;
}
.about .flex_box4 .flex_icon .icon img{
width: 80%;
display: block;
margin: 0 auto
}
.about .box_hosho{
width: 1000px;
max-width: 90%;
background-color: #EFF9FD;
padding: 2%;
margin: 50px auto;
border-bottom: 3px #CCC solid;
border-right: 3px #CCC solid;
}
.about .box_hosho .flex_hosho{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .box_hosho .flex_hosho .com{
width: 48%;
line-height: 180%;
font-weight: 500;
padding-top: 30px
}
.about .box_hosho .flex_hosho .com p{
font-size: 1.4rem;
}
.about .box_hosho .flex_hosho .photo{
width: 50%
}
.about .box_hosho .flex_hosho .photo img{
width:100%
}
.about .box5{
background-color: #EFFAFD;
padding: 100px 10%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .box5 .flex1_box5{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 100px
}
.about .box5 .flex2_box5{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .box5 .com{
width: 50%;
}
.about .box5 .com .subtitle2 {
  border-bottom: solid 3px skyblue;
  position: relative;
    font-size: 2.5rem;
  font-weight: 600;
  color: #069;
  padding-bottom: 5px
}

.about .box5 .com .subtitle2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffc778;
  bottom: -3px;
  width: 30%;
}
.about .box5 .com p{
font-size: 1.8rem;
font-weight: 600;
padding: 30px 0;
line-height: 200%
}
.about .box5 .com li{
display: block;
background-color: #FFF;
border: #41A2BB 1px solid;
font-size: 1.8rem;
font-weight: 600;
padding: 5px 15px;
margin-bottom: 20px;
border-radius: 20px
}
.about .box5 .com .flex_after{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .box5 .com .flex_after .inner{
width: 48%
}
.about .box5 .com .flex_after .inner img{
width: 100%
}
.about .box5 .photo{
width: 45%;
}
.about .box5 .photo img{
width: 100%;
border-radius: 10px;
overflow: hidden;
display: block
}
.about .box6{
padding: 100px 0;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.about .box6 a{
display: block;
width: 48% 
}
.about .box6 a .btn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
  overflow: hidden;
    /*ボタンの形状*/
  text-decoration: none;
  display: block;
    border: 1px solid #0e3376;
	color: #FFF;
	background-color: #0e3376;
    padding: 50px 30px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/   
    transition: ease .2s;
}

/*ボタン内spanの形状*/
.about .box6 a .btn span {
  position: relative;
  z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
 color: #FFF;
 font-size: 2.0rem
}
.about .box6 a .btn:hover span{
  color:#fff;
}
/*== 背景が流れる（左から右） */
.about .box6 a .bgleft:before {
  content: '';
    /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
    /*色や形状*/
  background-color: #365895;
  width: 100%;
  height: 100%;
    /*アニメーション*/
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
/*hoverした際の形状*/
.about .box6 a .bgleft:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}
/*リースの流れ-----------------------------------------*/
.flow .box_img{
padding: 100px 0 50px 0 ;
width: 1200px;
max-width: 100%;
margin: 0 auto
}
.flow .box_img img{
width: 100%
}
.flow .box1{
padding: 7vw 0;
width: 1000px;
max-width: 100%;
margin: 0 auto;
font-size: clamp(2.0rem,2.0vw,3.0rem);
font-weight: bold;
line-height: 220%;
text-align: center;
}
.flow .box1 .text1{
color: #C00;
font-size: clamp(2.2rem,2.5vw,3.5rem)
}
.flow .box_flow{
width: 1200px;
max-width: 90%;
margin: 0 auto
}
.flow .box_flow .subtitle {
  border-bottom: solid 3px skyblue;
  position: relative;
    font-size: 2.5rem;
  font-weight: 600;
  color: #069;
  padding-bottom: 5px;
  margin-bottom: 50px
}

.flow .box_flow .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffc778;
  bottom: -3px;
  width: 30%;
}
.flow .box_flow .flex_flow{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 100px;
}
.flow .box_flow .flex_flow .left{
width: 10%;
position: relative
}
.flow .box_flow .flex_flow .left .text2{
font-size: clamp(1.6rem,1.5vw,2.0rem); 
color:#6491A4;
font-weight: 600;
position: absolute;
top:50%;
transform: translateY(-50%)
}
.flow .box_flow .flex_flow .right{
width: 85%;
padding-left: 2%;
border-left: #9BBBC3 5px solid;
font-size: 1.6rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.flow .box_flow .flex_flow .com{
width: 75%;
}
.flow .box_flow .flex_flow .photo{
width: 23%;
border-radius: 10px;
overflow: hidden
}
.flow .box_flow .flex_flow .photo img{
width: 100%;
}
.flow .box_flow .flex_flow .com .tel{
font-size: 3.5rem;
font-weight: 600;
color: #069;
padding: 20px 0;
}
.flow .box_flow .flex_flow .com .tel a{
color: #069;
}
.flow .box_flow .flex_flow .com .bt a{
display: block;
width: 350px;
padding: 7px 0;
text-align: center;
background-color: #069;
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
transition: 0.5s
}
.flow .box_flow .flex_flow .com .bt a:hover{
background-color: #036
}
.flow .box_flow .flex_flow .com dl{
padding-bottom: 50px;
}
.flow .box_flow .flex_flow .com dt{
background-color:#ffc778;
color: #036;
font-weight: 500;
padding: 5px 5px 5px 15px;
width: 400px;;
margin-bottom: 20px;
box-shadow: 10px 5px 0px #999;
}
/*お問い合わせ-----------------------------------------*/
.contact{
font-family: 'Noto Sans JP';
}
.contact .box1{
width: 1000px;
max-width: 90%;
margin: 0 auto;
font-size: 1.7rem;
line-height: 220%;
padding: 50px 0 100px 0
}
.contact .box1 .text_red{
color: #C00
}
.contact .box_form{
width: 1000px;
max-width: 90%;
padding-top: 20px;
border-top:#97215e 1px solid;
margin: 0 auto
}
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
}
.contact table td{
	border-bottom:#97215e 1px solid;
	padding:1%;
	padding-bottom: 20px;
	padding-top: 20px;
}
.contact table td:nth-child(1){
width: 25%;
}
.contact table td .flex_komoku{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.contact table td .flex_komoku .left{
width: 60%
}
.contact table td .flex_komoku .right{
width: 40%;
box-sizing: border-box;
border: #C00 1px solid;
text-align: center;
color: #C00;
border-radius: 3px
}
.contact table textarea {
width: 80%;
height: 10em;
	border:none;
	background-color: #f4f4f4;
}
.contact table label{
	display:block;
}
.contact table input[type="text"]{
	width:90%;
	background-color: #f4f4f4;
	height: 35px;
	border: none
}
.contact table .num input[type="text"]{
	width:10%;
}
.contact table input[type="email"]{
	width:50%;
	border:#CCC 1px solid;
}
.contact .check{
padding-top: 20px;
text-align: center
}
.contact .check a{
color: #97215e;
text-decoration: underline
}
.contact input[type="submit"]{
	width:400px;
	text-align:center;
	font-size:1.6rem;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
display: block;
background-color: #9C1846;
color: #FFF;
text-align: center;
font-weight: 600;
border-radius: 25px;
padding: 10px 0;
transition: 0.8s;

}
.contact input[type="submit"]:hover{
background-color: #c8084c
}
.contact .box2{
padding: 30px 0;
text-align: center;
}
/*個人情報-----------------------------------------*/
.privacy .box_privacy{
width: 800px;
max-width: 95%;
margin: 0 ;
}
.privacy dl{
 padding: 20px 0;
 border-top: #CCC 1px solid;
 margin-top: 40px;
}
.privacy dt{
 font-weight: 500;
 padding-bottom: 10px;
}
.privacy dd{
margin-left: 0;
margin-bottom: 30px;
}

}
/*===============================================
●スマホれいあうと設定 画面の横幅が650px以下
===============================================*/
@media screen and  (max-width: 650px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/


.video-area {
display: none;
}

.video-area #video {
display: none;
    width: 350px;
  height: auto;
  display: block;
}

.index .main {
margin-top: -50px
}


.index .box1{
background-image: url("../images/index/bg_box1.png");
padding: 50px 0 0 0
}
.index .box1 .flex_box1{
width: 90%;
margin: 0 auto
}
.index .box1 .flex_box1 .com{
margin-bottom: 1.6rem;
padding: 0 2%
}
.index .box1 .flex_box1 .com li{
display: block;
color:#936C0A;
font-weight: 600;
font-size: 2.0rem;
margin-bottom: 30px;
}
.index .box1 .flex_box1 .photo{
width: 80%;
margin: 0 auto
}
.index .box1 .flex_box1 .photo img{
width: 100%;
}

.index .box2{
background-color: #FFF;
min-height: 600px;
padding-bottom: 50px
}
.index .box2 .text1{
font-family: 'Noto Sans JP';
font-size: 2.3rem;
letter-spacing: 0.7rem;
padding: 50px 4%;
color: #C00;
font-weight: bold;
line-height: 200%
}

.index .box2 .flex_box2{
position: relative;
margin-bottom: 50px
}
.index .box2 .flex_box2 .photo{
}
.index .box2 .flex_box2 .photo img{
width: 100%;
}
.index .box2 .flex_box2 .com{
width: 90%;
padding-top: 20px;
line-height: 200%;
margin: 0 auto
}
.index .box2 .flex_box2 .com li{
display: block;
background-color: rgba(255,255,255,0.9);
border: #CCC 1px solid;
border-radius: 10px;
padding: 1% 2%;
font-weight: 600;
font-size: 1.6rem;
margin-bottom: 20px;
color: #069;
background-color: #EEE
}
.index .box2 .flex_box2 .com li .text_red{
color: #C00;
font-size: 1.8rem
}
.index .box2 .bt1{
display: flex;
flex-wrap: wrap;
justify-content: center;
width: 90%;
margin: 0 auto
}
.index .box2 .bt1 a{
display: block;
width: 100%;
margin-bottom: 10px;
border: 1px solid #0e3376;
	color: #FFF;
	background-color: #0e3376;
    padding: 20px 30px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 600
}

.index .box3{
background-image: url("../images/index/bg_lineup.jpg");
background-repeat:repeat-y;
background-color: #FFF;
padding-bottom: 50px
}
.index .box3 .box_subtitle{
padding-top: 50px;
padding-bottom: 15px;
color: #0e3376;
}
.index .box3 .box_subtitle .box_left{
padding-left: 3%;
font-size: 2.5rem;
line-height: 130%
}
.index .box3 .box_subtitle .box_left .text_subtitle{
font-size:4.0rem;
letter-spacing: 0.3rem;
font-family: "Times New Roman", Times, "serif";
padding-bottom: 10px
}
.index .box3 .box_subtitle .box_right{
border-bottom: #0e3376 1px solid;
font-size: 1.6rem;
line-height: 150%
}
.index .box3 .box_subtitle .box_right .com{
padding: 20px 4% 10px 4%
}

.index .box3 .flex_lineup{
width: 90%;
padding: 30px 0 30px 0;
margin: 0 auto
}

.index .box3 .flex_lineup .inner{
padding-bottom: 3px;
border-bottom: #0669 1px solid;
margin-bottom: 30px;
}
.index .box3 .flex_lineup .inner .photo{
width: 100%;
padding-top: 80%;
position: relative;
overflow: hidden
}
.index .box3 .flex_lineup .inner .photo img{
width: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
transition: 0.8s
}
.index .box3 .flex_lineup .photo img:hover{
width: 110%;
height: auto;
}
.index .box3 .flex_lineup .inner .makerlogo{
width: 40%;
}
.index .box3 .flex_lineup .inner .makerlogo img{
width: 100%
}

.index .box3 .flex_lineup .carname{
background-color: #DDD;
color: #0e3376;
font-size: 2.2rem;
font-weight: 600;
padding: 8px 2px;
margin-bottom: 10px;
text-align: center
}
.index .box3 .flex_lineup .makerlogo{
width: 40%;
top:0;
left:2%
}
.index .box3 .flex_lineup .box_price{
border-bottom: #C00 3px solid;
padding: 6px 2%;
color: #C00;
font-size:  2.5rem;
font-weight: 600;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 10px
}
.index .box3 .flex_lineup .box_price .komikomi{
width: 40%;
font-size:  1.6rem;
padding-top: 5px;
line-height: 140%
}

.index .box3 .flex_lineup .box_price .price1{
text-align: center;
}
.index .box3 .flex_lineup .box_price .price1 .price2{
font-size:  3.0rem;
font-weight: bold;
font-style: italic;
}
.index .box3 .flex_lineup .biko{
color: #000;
font-size: 1.4rem;
line-height: 150%;
}
.index .box3 .flex_lineup .biko table{
width: 100%;
border-collapse: collapse
}
.index .box3 .flex_lineup .biko td{
padding: 2%;
border: #666 1px solid
}
.index .box3 .flex_lineup .bt_car{
margin-top: 10px;
position: relative
}
.index .box3 .flex_lineup .bt_car a{
font-size:  2.0rem;
background-color: #036;
width:90%;
padding: 10px 0;
text-align: center;
color: #FFF;
transition: 0.5s;
display: block;
margin: 20px auto
}

.index .box3 .flex_cat{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 80%;
padding: 50px 0 0 0;
margin: 0 auto
}
.index .box3 .flex_cat a{
display: block;
width: 48%;
border: #CCC 1px solid;
margin-bottom: 20px
}
.index .box3 .bt2 a{
display: block;
width: 90%;
border:  #0e3376 1px solid;
box-sizing: border-box;
margin: 10px auto;
border: 1px solid #0e3376;
	color: #0e3376;
    padding: 50px 0;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 600
}
.index .box_image img{
width: 100%
}
.index .box4{
padding: 100px 0;
background-color: #FFF;
}
.index .box4 .subtitle{
text-align: center;
font-size: 3.5rem;
font-weight: 600;
color: #999;
padding-bottom: 50px;
}
.index .box4 .box_news{
width: 90%;
margin: 0 auto
}
.index .box4 .box_news li{
display: block;
padding-bottom: 2px;
border-bottom: #666 1px dotted;
margin-bottom: 20px;
}
.index .box4 .box_news li .date{
font-size: 1.2rem;
margin-bottom: 5px
}
.index .box5{
padding: 0 0 50px 0;
background-color: #FFF;
}
.index .box5 .flex_box5{
border-top: #069 2px solid;
padding-top: 50px;
width: 90%;
margin: 0 auto;
}
.index .box5 .flex_box5 .com{
margin-bottom: 30px
}
.index .box5 .flex_box5 .com .compname{
color: #059;
font-size: 2.0rem;
font-weight: 600;
padding-bottom: 20px
}
.index .box5 .flex_box5 .com .tel a{
display: block;
text-align: center;
font-size: 4.0rem;
font-weight: 600;
padding-bottom: 20px;
color: #059;
padding: 30px 0
}
.index .box5 .flex_box5 .com .bt a{
display: block;
margin-bottom: 10px;
border: 1px solid #0e3376;
	color: #FFF;
	background-color: #0e3376;
    padding: 20px 30px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 600
}
.index .box5 .flex_box5 .photo{

}
.index .box5 .flex_box5 .photo img{
width: 100%;
}
/*お問い合わせ-----------------------------------------*/
.contact{
font-family: 'Noto Sans JP';
}
.contact .box1{
width: 1000px;
max-width: 90%;
margin: 0 auto;
font-size: 1.7rem;
line-height: 220%;
padding: 50px 0 100px 0
}
.contact .box1 .text_red{
color: #C00
}
.contact .box_form{
width: 1000px;
max-width: 90%;
padding-top: 20px;
border-top:#97215e 1px solid;
margin: 0 auto
}
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
}
.contact table td{
	border-bottom:#97215e 1px solid;
	padding:1%;
	padding-bottom: 20px;
	padding-top: 20px;
}
.contact table td:nth-child(1){
width: 25%;
}
.contact table td .flex_komoku{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.contact table td .flex_komoku .left{
width: 60%
}
.contact table td .flex_komoku .right{
width: 40%;
box-sizing: border-box;
border: #C00 1px solid;
text-align: center;
color: #C00;
border-radius: 3px
}
.contact table textarea {
width: 80%;
height: 10em;
	border:none;
	background-color: #f4f4f4;
}
.contact table label{
	display:block;
}
.contact table input[type="text"]{
	width:90%;
	background-color: #f4f4f4;
	height: 35px;
	border: none
}
.contact table .num input[type="text"]{
	width:10%;
}
.contact table input[type="email"]{
	width:50%;
	border:#CCC 1px solid;
}
.contact .check{
padding-top: 20px;
text-align: center
}
.contact .check a{
color: #97215e;
text-decoration: underline
}
.contact input[type="submit"]{
	width:400px;
	text-align:center;
	font-size:1.6rem;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
display: block;
background-color: #9C1846;
color: #FFF;
text-align: center;
font-weight: 600;
border-radius: 25px;
padding: 10px 0;
transition: 0.8s;

}
.contact input[type="submit"]:hover{
background-color: #c8084c
}
.contact .box2{
padding: 30px 0;
text-align: center;
}
}

/* スクロールで出現 */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}
.fadeRight{
animation-name:fadeRightAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px); /* 下から */
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeLeftTrigger,
.fadeRightTrigger,
.fadeUpTrigger{
    opacity: 0;
}