/* CSS Document */
@charset "UTF-8";
main {width: 100%; margin: 0 auto; max-width: 1920px;}
.fl-l { float: left;}
.fl-r { float: right;}
.rel { position: relative;}
.ac { text-align: center;}

@keyframes loop {
  0% {transform: translateX(100%);}
  to {transform: translateX(-100%);}
}
@keyframes loop2 {
  0% {transform: translateX(0);}
  to {transform: translateX(-200%);}
}


@media screen and (min-width: 768px), print {
body #one-cl{font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-weight: 500;}

#mainimg-inner{
  /* padding: 85px 0 0px 0; */
  width: 100%;
  /* height: 678px; */
  /* background-image:url(../images/campaign/campaign-bg.jpg); */
  background-position:center 0px;
  background-repeat:no-repeat;
  }

#mainimg-inner .main-frame1280{width:1280px;margin:0 auto;padding: 0px 0 0 0;position:relative;}
#mainimg-inner .main-inner{width: 1400px;height: 670px;margin: 0 auto;
  position: absolute;top:0;left: -80px;}

#mainimg-inner .ttl01{
  background-image:url(../images/campaign/campaign-icon.svg);
  background-position:0px 0px;
  background-repeat:no-repeat;
  padding: 25px 0px 10px 50px;
  color: #FCE321;
  font-weight: bold;
  font-size: 30px;
  text-align: center;
  letter-spacing: 3px;
  width: 750px;
  margin: 0 auto;
  } 
#mainimg-inner .mainttl{padding: 0 0 10px 0;text-align: center;}
#mainimg-inner .subt01{text-align: center;font-size: 28px;letter-spacing: 2px;font-weight: bold;color: #fff;}
#mainimg-inner .subt02{text-align: right;width: 815px;letter-spacing: 1px;color: #fff;margin: 0 auto 20px;}
#mainimg-inner .photo{ text-align:center; margin:45px 0 0 0; }


#con01{background-color:#F0F0F0;width:100%;height: 620px;padding: 130px 0 0 0;margin: 0 0 210px 0;}
#con01 .main-ttl{text-align:center;font-size: 35px;line-height: 1.7;font-weight:bold;letter-spacing: 3px;margin: 0px 0 40px 0;}
#con01 .main-ttl .colorred{color: #B9000E;background-image:url(../images/campaign/con01-ttl-iconred.png);background-position: top 0 left 16px;background-repeat:repeat-x;padding: 7px 0 0 0;background-size: 14%;}
#con01 .oyakusoku-frame{width:1280px;margin:0 auto; position: relative;}
#con01 .oyakusoku-frame .human01{position: absolute;top: -158px;left: 140px;}
#con01 .oyakusoku-frame .human02{position: absolute;top: -158px;right: 140px;}
#con01 .oyakusoku-ttl-inner{ margin: 0 0 25px 0;}
#con01 .oyakusoku-frame-inner{background-color: #fff;padding: 0px 0 0 0;width: 1400px;height: 333px;position: absolute;top:0;left: -80px;}
#con01 .oyakusoku-ttl-inner .mainttl{
  width: 245px;
  height: 32px;
  margin: 0px auto 0;
  border:1px solid #707070;
  padding: 0px 8px 4px 8px;
  font-size:20px;
  font-weight:bold;
  text-align:center;
  position: relative;
  top: -17px;
  background-color: #fff;
  }

#con01 .oyakusoku-ttl-inner .subt{
    text-align: center; font-weight: bold; letter-spacing: 2px;
    padding: 5px 0 0 0; color: #686868;}

#con01 .oyakusoku-list-frame{}
#con01 .oyakusoku-list{
  width: 1230px;
  margin: 0 auto;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  justify-content: center;  }


#con01 .oyakusoku-list li{width: 286px;background-color:#fff;margin: 0 8px 0 8px; box-shadow: 6px 6px 10px -4px rgb(0 0 0 / 22%);}
#con01 .oyakusoku-list li .photo{}
#con01 .oyakusoku-list li .txt{ padding: 15px 0 15px 0;text-align: center;}

#con02{margin: 0 0 100px 0;}
#con02 .inner{width: 1200px;position: relative;margin: 0 auto 30px;}
#con02 .inner .logo{text-align:center;margin: 0 0 35px 0;}
#con02 .inner .txt{font-size: 24px;font-weight: bold;letter-spacing: 2px;text-align:center;}
#con02 .inner .ttl-en{ position: absolute; top: -10px; left: 120px;}
#con02 .inner .photo{text-align: center;}
.loop_wrap {display: flex;width: 100vw;height: 550px;overflow: hidden;}
.loop_wrap img {  width: auto;  height: 100%;}
.loop_wrap img:first-child { animation: loop 50s -25s linear infinite;}
.loop_wrap img:last-child { animation: loop2 50s linear infinite;}


#con03{
    margin: 100px 0 140px 0;
}
#con03 .subt{
  font-weight: bold;
  font-size: 18px;
  padding: 30px 0 25px 0;
  color: #fff;
  letter-spacing: 2px;
  width: 1280px;
  margin: 0 auto 40px;
  text-align: center;
  background-color:#1A1A1A;
  }

#con03 .flow-inner{
  width: 1280px; margin: 0 auto;
  -ms-flex-wrap: wrap;flex-wrap: wrap;
  display:-webkit-box;display:-ms-flexbox;display:flex;
  -webkit-box-orient: horizontal;-webkit-box-direction: normal;}
#con03 .flow-inner li{
  position: relative;
  border-radius:10px 10px 10px 10px;
  width: 220px;
  margin: 0 45px 0 0;
  padding: 30px 0 30px 0;
  border:1px solid #000;
  }

#con03 .flow-inner li:after {
    content: "";
    display: inline-block;
    background: url(../images/campaign/con03-arrow.png);
    background-size: cover;
    width: 16px;
    height: 18px;
    position: absolute;
    left: 235px;
    top: 90px;
}



#con03 .flow-inner li:last-child{ margin: 0 0px 0 0;}
#con03 .flow-inner li:last-child:after{
    content: "";
    display: inline-block;
    background: none;
    background-size: cover;
    width: 16px;
    height: 18px;
    position: absolute;
    left: 235px;
    top: 90px;
}



#con03 .flow-inner li .photo{text-align:center;padding: 0 0 15px 0;}
#con03 .flow-inner li .flow-txt-inner{}
#con03 .flow-inner li .flow-txt-inner .ttl{font-size:19px;font-weight:bold;padding: 0 0 5px 0;text-align:center;}
#con03 .flow-inner li .flow-txt-inner .txt{ font-size:14px; line-height:1.6; text-align:center; }
#con03 .flow-inner li.redframe{border:4px solid #B9000E;}
#con03 .flow-inner li.redframe .ttl{color: #B9000E;}

#con03 .tyuui-inner{width: 1280px; margin: 0 auto; position: relative;}
#con03 .tyuui-inner .ttl{ position: absolute;top:0;left: 40px;font-size: 24px;line-height: 1.6;
  font-weight: bold; }
#con03 .tyuui-inner .list{border-left:1px solid #000; padding: 0 0 0 50px; margin: 45px 0 0 180px;}
#con03 .tyuui-inner .list li{font-size:14px;line-height: 1.9;}
	#con03 .tyuui-inner .list li.red{color: #b9000e;}

#con04{
    margin: 0 0 300px 0;
}
#con04 .modelhouse-ttl-inner{background-color:#B9000E;padding: 30px 0 30px 0;margin: 0 0 70px 0px;}
#con04 .modelhouse-ttl-inner .inner{width: 1000px;margin:0 auto;position:relative;}
#con04 .modelhouse-ttl-inner .icon{position: absolute;top: -100px;left:0;}
#con04 .modelhouse-ttl-inner .mainttl{color: #fff;font-size: 32px;font-weight: bold;text-align: center;}

#con04 .modelhouse-list-inner{width: 1280px; margin: 0 auto;
-webkit-box-orient: horizontal;-webkit-box-direction: normal;
-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;}

#con04 .modelhouse-list-inner li{margin: 0 60px 70px 0;}
#con04 .modelhouse-list-inner li:nth-child(2n){}

#con04 .modelhouse-list-inner li .photo{ margin: 0 0 20px 0;}
#con04 .modelhouse-list-inner li .name{padding: 15px 0 15px 0;margin: 0 0 20px 0;border:1px solid #000;font-size:18px;text-align:center;font-weight:bold;}
#con04 .modelhouse-list-inner li .address-txt{ font-size: 16px;text-align: center; margin: 0 0 10px 0;}

#con04 .modelhouse-list-inner li .about-info{margin: 0 auto 40px;width: 460px;line-height: 1.6;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient: horizontal;-webkit-box-direction: normal;}
#con04 .modelhouse-list-inner li .about-info .model-tel{position:relative;padding: 0 20px 0 0;}
#con04 .modelhouse-list-inner li .about-info .model-time{position:relative;}
#con04 .modelhouse-list-inner li .about-info .subt{
  position:relative;top: -2px;font-size: 12px;
  margin: 0 9px 0 0;padding: 3px 7px 1px 7px; color: #fff;
  display: inline-block;background-color:#1A1A1A;  }

#con04 .modelhouse-list-inner li .model-btn{
  -ms-flex-wrap: wrap;flex-wrap: wrap;
  justify-content: center;
  -webkit-box-orient: horizontal;-webkit-box-direction: normal;
  display:-webkit-box;display:-ms-flexbox;display:flex;}

#con04 .modelhouse-list-inner li .model-btn .btn-more{
  margin: 0 10px 0 10px;
  border-radius:30px;
  width: 240px;
  font-weight: bold;
  font-size: 18px;
  border:1px solid #1A1A1A;
  background-image:url(../images/campaign/btn-icon.png);
  background-repeat:no-repeat;
  background-position:right 25px top 17px;
  }
#con04 .modelhouse-list-inner li .model-btn .btn-yoyaku{
  /* padding: 20px 20px 15px 30px; */
  margin: 0 10px 0 10px;
  border-radius:30px;
  width: 240px;
  font-weight: bold;
  font-size: 18px;
  color: #fff;
  background-color:#B9000E;
  background-image:url(../images/campaign/btn-icon.png);
  background-repeat:no-repeat;
  background-position: right 27px top 17px;
  }

#con04 .modelhouse-list-inner li .model-btn a{
  padding: 18px 0 0 36px;width: 240px;height: 60px;display: block;}
#con04 .modelhouse-list-inner li .model-btn .btn-yoyaku a{ color: #fff;}

#form-frame{
  padding: 120px 0 0 0;
  background-image:url(../images/campaign/form-bg.jpg);
  background-repeat:repeat;
  background-position:0px 0px;
  }
.campaing-form-ttl{}
.campaing-form-ttl .form-big-ttl{text-align: center;margin: 0 0 11px 0;}
.campaing-form-ttl .tttl{text-align:center;font-size:34px;font-weight:bold;line-height:1.6;letter-spacing: 14px;}
.form-Box{margin: -180px 0 0 0 !important;}

a.jump_point {height: 1px;display: block;padding-top: 170px;margin-top: -170px;}

form th.required:after {
  display: inline-block;
  content: "※";
  color: #b9000e;
  background: none;
  margin-left: 10px;
  line-height: 1;
  font-weight: bold;
  padding: 3px;
  font-size: 16px;  }

	h2.attention-text{font-size: 34px;font-weight: bold;letter-spacing: 3px; text-align: center;margin-bottom: 100px;}
	h2.attention-text span{color: #B9000E;}
	
}




@media screen and (max-width: 767px) {
body #one-cl{font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-weight: 500;}
#one-cl{ }
.seo_bread_list { display: none;}

#mainimg-inner{
  padding: 12vw 0 0px 0;
  margin: 3vw 0 0 0;
  width: 100%;
  /* height: 164vw; */
  /* background-image: url(../images/campaign/sp-campaign-bg.jpg); */
  background-position:center 0px;
  background-repeat:no-repeat;
  background-size: contain;
  }

#mainimg-inner .main-frame1280{width:100%;
  margin:0 auto;padding: 0px 0 0 0;position:relative;}
#mainimg-inner .main-inner{width:100%;height: 60vw;margin: 0 auto;}

#mainimg-inner .ttl01{
  background-image:url(../images/campaign/campaign-icon.svg);
  background-position: left 0px top 2vw;
  background-repeat:no-repeat;
  background-size: 12%;
  padding: 2vw 0px 4vw 0vw;
  color: #FCE321;
  font-weight: bold;
  font-size: 5vw;
  text-align: center;
  letter-spacing: 1px;
  line-height: 1.4;
  width: 94%;
  margin: 0 auto;
  } 
#mainimg-inner .mainttl{padding: 0 0 3vw 0;text-align: center;}
#mainimg-inner .subt01{
  text-align: center;
  font-size: 4.4vw;
  letter-spacing: 1px;
  font-weight: bold;
  margin: 0 0 4vw 0;
  color: #fff;
  }
#mainimg-inner .subt02{
  text-align: center;
  width: 100%;
  font-size: 3.5vw;
  letter-spacing: 1px;
  color: #fff;
  margin: 0 auto 5vw;
  }
#mainimg-inner .photo{ text-align:center; }


#con01{
  background-color:#F0F0F0;
  width:100%;
  /* height: 260vw; */
  padding: 8vw 0 0 0;
  margin: 0 0 0vw 0;
  }
#con01 .main-ttl{
  text-align:center;
  font-size: 5vw;
  line-height: 1.7;
  font-weight:bold;
  letter-spacing: 1px;
  margin: 6vw 0 6vw 0;
  }
#con01 .main-ttl .colorred{
  color: #B9000E;
  background-image:url(../images/campaign/con01-ttl-iconred.png);
  background-position: top 0 left 3vw;
  background-repeat:repeat-x;
  padding: 1vw 0 0 0;
  background-size: 13.7%;
  }
#con01 .oyakusoku-frame{width:100%;margin:0 auto; position: relative;}
#con01 .oyakusoku-frame .human01{position: absolute;top: -20vw;left: 7vw;width: 13vw;}
#con01 .oyakusoku-frame .human02{position: absolute;top: -20.5vw;right: 6vw;width: 11vw;}
#con01 .oyakusoku-ttl-inner{ margin: 0 0 4vw 0;}
#con01 .oyakusoku-frame-inner{
  background-color: #fff;
  padding: 6vw 5vw 8vw 5vw;
  width: 90%;
  margin: 0 auto 30vw;
  height: 245vw;
  /* position: absolute; */
  /* top:0; */
  /* left: 0; */
  }
#con01 .oyakusoku-ttl-inner .mainttl{
  width: 82%;
  /* height: 5vw; */
  margin: 0px auto 0;
  border:1px solid #707070;
  padding: 1vw 4vw 1vw 4vw;
  font-size: 4.6vw;
  line-height: 1.2;
  letter-spacing: 4px;
  font-weight:bold;
  text-align:center;
  /* position: relative; */
  /* top: -5vw; */
  background-color: #fff;
  }

#con01 .oyakusoku-ttl-inner .subt{
    text-align: left;
    font-weight: bold;
    font-size: 3.4vw;
    letter-spacing: 2px;
    padding: 3vw 0 0 0;
    color: #686868;
    }

#con01 .oyakusoku-list-frame{
    padding: 0 3vw 0 3vw;
}
#con01 .oyakusoku-list{width: 100%; margin: 0 auto;}
#con01 .oyakusoku-list li{
 width: 100%;
 background-color:#fff;
 margin: 0 0 5vw 0;
 box-shadow: 6px 6px 10px -4px rgb(0 0 0 / 22%);
 }
#con01 .oyakusoku-list li .photo{}
#con01 .oyakusoku-list li .txt{padding: 4vw 0 4vw 0;font-size: 3.4vw;text-align: center;}

#con02{margin: 0 0 10vw 0;}
#con02 .inner{width: 100%; position: relative;margin: 0 auto 5vw;}
#con02 .inner .logo{text-align:center;margin: 0 auto 8vw auto;width: 40vw;}
#con02 .inner .txt{font-size: 4vw;font-weight: bold;letter-spacing: 1px;line-height: 1.8;text-align:center;}
#con02 .inner .ttl-en{position: absolute;top: 1vw;left: 3vw;width: 20vw;}
#con02 .inner .photo{text-align: center;}
.loop_wrap {display: flex;width: 230vw;height: auto;overflow: hidden;}
.loop_wrap img {  width: auto;  height: 100%;}
.loop_wrap img:first-child { animation: loop 50s -25s linear infinite;}
.loop_wrap img:last-child { animation: loop2 50s linear infinite;}


#con03{margin: 15vw 0 29vw 0;}
#con03 .subt{
  font-weight: bold;
  font-size:4.348vw;
  padding: 5vw 0 5vw 0;
  color: #fff;
  letter-spacing: 2px;
  width: 100%;
  margin: 0 auto 6vw;
  text-align: center;
  background-color:#1A1A1A;
  }

#con03 .flow-inner{width: 100%; margin: 0 auto;}
#con03 .flow-inner li{
  position: relative;
  border-radius:10px 10px 10px 10px;
  width: 80%;
  margin: 0 auto 10vw auto;
  padding: 4vw 0 0vw 5vw;
  border:1px solid #000;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  }

#con03 .flow-inner li:after {
    content: "";
    display: inline-block;
    background: url(../images/campaign/sp-con03-arrow.png);
    background-size: cover;
    width: 6vw;
    height: 3vw;
    position: absolute;
    left: 35vw;
    bottom: -6.5vw;
    }

#con03 .flow-inner li:last-child{/* margin: 0 0px 0 0; */}
#con03 .flow-inner li:last-child:after{
    content: "";
    display: inline-block;
    background: none;
    background-size: cover;
    width: 5vw;
    height: 3vw;
    position: absolute;
    left: 0;
    top: 0;}

#con03 .flow-inner li .photo{text-align:center;width: 30vw;padding: 0 5vw 5vw 0;}
#con03 .flow-inner li .flow-txt-inner{
    margin: 1vw 0 5vw 0;
}
#con03 .flow-inner li .flow-txt-inner .ttl{
  font-size:4.831vw;
  font-weight:bold;
  padding: 0 0 2vw 0;
  text-align: left;
  }
#con03 .flow-inner li .flow-txt-inner .txt{font-size: 3.6vw;line-height:1.6;text-align: left;}
#con03 .flow-inner li.redframe{border:4px solid #B9000E;}
#con03 .flow-inner li.redframe .ttl{color: #B9000E;}

#con03 .tyuui-inner{width: 84%;margin: 0 auto;position: relative;}
#con03 .tyuui-inner .ttl{
  font-size:5.797vw;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 0 0 6vw 0;
  background-image:url(../images/campaign/sp-tyuui-ttl-line.svg);
  background-repeat:no-repeat;
  background-position:center bottom 0px;
}
#con03 .tyuui-inner .list{/* border-top:1px solid #000; */padding: 0 0 0 0;margin: 5vw 0 0 0;}
#con03 .tyuui-inner .list li{font-size: 3.4vw;line-height: 1.8;}
	#con03 .tyuui-inner .list li.red{color: #b9000e;}

#con04{margin: 0 0 50vw 0;}
#con04 .modelhouse-ttl-inner{background-color:#B9000E;padding: 12vw 0 5vw 0;margin: 0 0 6vw 0px;}
#con04 .modelhouse-ttl-inner .inner{width: 100%;margin:0 auto;position:relative;}
#con04 .modelhouse-ttl-inner .icon{position: absolute;top: -38vw;left: 34vw;/* margin: 0 auto; */width: 32vw;}
#con04 .modelhouse-ttl-inner .mainttl{color: #fff;line-height: 1.6;font-size: 6.4vw;font-weight: bold;text-align: center;}

#con04 .modelhouse-list-inner{width: 90%;margin: 0 auto;}
#con04 .modelhouse-list-inner li{margin: 0 0 15vw 0;}
#con04 .modelhouse-list-inner li:nth-child(2n){}

#con04 .modelhouse-list-inner li .photo{margin: 0 0 4vw 0;}
#con04 .modelhouse-list-inner li .name{
  padding: 4vw 0 3vw 0;
  margin: 0 0 4vw 0;
  border:1px solid #000;
  font-size:4.348vw;
  text-align:center;
  font-weight:bold;
  }
#con04 .modelhouse-list-inner li .address-txt{
  font-size: 4.6vw;
  text-align: left;
  margin: 0 0 3vw 0;
  }

#con04 .modelhouse-list-inner li .about-info{
  font-size: 4.6vw;
  margin: 0 auto 6vw;
  width: 100%;
  line-height: 1.6;
  }
#con04 .modelhouse-list-inner li .about-info .model-tel{position:relative;padding: 0 3vw 0 0;margin: 0 0 1vw 0;}
#con04 .modelhouse-list-inner li .about-info .model-time{position:relative;}
#con04 .modelhouse-list-inner li .about-info .subt{
  position:relative;
  top: 0px;
  font-size: 3.6vw;
  margin: 0 3vw 0 0;
  letter-spacing: 1px;
  padding: 0.5vw 3vw 0.5vw 3vw;
  color: #fff;
  display: inline-block;
  background-color:#1A1A1A;
  }

#con04 .modelhouse-list-inner li .model-btn{}
#con04 .modelhouse-list-inner li .model-btn .btn-more{
  margin: 0 auto 3vw auto;
  border-radius: 40px;
  width: 72%;
  font-weight: bold;
  font-size: 4.8vw;
  border:1px solid #1A1A1A;
  background-image:url(../images/campaign/btn-icon.png);
  background-repeat:no-repeat;
  background-position: right 5vw top 5.6vw;
  }
#con04 .modelhouse-list-inner li .model-btn .btn-yoyaku{
  margin: 0 auto 0 auto;
  border-radius: 40px;
  width: 72%;
  font-weight: bold;
  font-size: 4.8vw;
  color: #fff;
  background-color:#B9000E;
  background-image:url(../images/campaign/btn-icon.png);
  background-repeat:no-repeat;
  background-position: right 5vw top 5.6vw;
  }

#con04 .modelhouse-list-inner li .model-btn a{
  padding: 6vw 0 0 9vw;
  width: 80%;
  height: 18vw;
  display: block;
  /* color: #000; */
  }
#con04 .modelhouse-list-inner li .model-btn .btn-yoyaku a{ color: #fff;}

#form-frame{
  background-image:url(../images/campaign/form-bg.jpg);
  background-repeat:repeat;background-position:0px 0px;}

.campaing-form-ttl{
    margin: -14vw 0 6vw 0;
}
.campaing-form-ttl .form-big-ttl{text-align: center;margin: 0 auto 5vw auto;width: 58vw;}
.campaing-form-ttl .tttl{
  text-align:center;
  font-size: 6.2vw;
  font-weight:bold;
  line-height:1.6;
  letter-spacing: 10px;
  }
.form-Box{background: none;margin: -10vw 0 0 0 !important;}

a.jump_point {height: 1px;display: block;padding-top: 35vw;margin-top: -35vw;}

form th.required:after {
  display: inline-block;
  content: "※";
  color: #b9000e;;
  margin-left: 10px;
  font-weight:bold;
  line-height: 1;
  padding: 3px;
  background: none;
  font-size: 3.6vw;  }

	h2.attention-text{font-size: 6.4vw;font-weight: bold; line-height: 8.4vw; text-align: center;margin-bottom: 30vw;}
	h2.attention-text span{color: #B9000E;}
	
}

