@charset "UTF-8";
@import url("https://use.typekit.net/deu3doh.css");
/* common class
---------------------------------------------------------------------------- */
*{box-sizing: border-box;}

body {
  background: #fff;
  color: #252525;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", sans-serif;
  font-weight: 400;
  font-size: 18px;
	margin: 0 auto;
	padding: 0;
  width: 100%;
}
@media screen and (max-width:767px) {
  body {
    font-size: 2.17vw;
  }
}

body .font-hiramaru{
  font-family: 'ヒラギノ丸ゴ ProN','Hiragino Maru Gothic ProN',sans-serif;
}
body.font-win,
body.font-win .font-hiramaru{
  font-family: Meiryo, "メイリオ", sans-serif;
}


li{list-style: none;}
section{position: relative;}
@media screen and (min-width:768px) { .pc-none{ display: none; }img{max-width: 100%;} }
@media screen and (max-width:767px) {	.sp-none{ display: none; }img{width: 100%;max-width:none;} }


/* header
---------------------------------------------------------------------------- */
header{
  background: url("../img/header_bg02.png") center bottom no-repeat,url("../img/header_bg.jpg") center top repeat-x;
  height: 572px;
}
@media screen and (max-width:1520px) {
  header{
    background: url("../img/header_bg02.png") center bottom /100.98% auto no-repeat,url("../img/header_bg.jpg") center top /126.31% auto no-repeat;
    height: 37.63vw;
  }
}
@media screen and (max-width:767px) {
  header{
    background: url("../img/header_bg02_sp.png") center bottom /contain no-repeat,url("../img/header_bg_sp.jpg") center top  /contain no-repeat;
    height: 50.48vw;
  }
}

header .header-inner{
  height: 100%;
  padding-top: 53px;
  position: relative;
  text-align: center;
}
@media screen and (max-width:1520px) {
  header .header-inner{
    padding-top: 3.48vw;
  }
  header .header-inner img{
    width: 52.17vw;
  }
}
@media screen and (max-width:767px) {
  header .header-inner{
    padding-top: 11.26vw;
    text-align: left;
  }
  header .header-inner img{
    margin-left: 3.21vw;
    width: 58.57vw;
  }
}

header .header-inner .bg-wave{
  background: url("../img/header_img_lower_wave.png") center bottom repeat-x;
  bottom: 7px;
  height: 40px;
  position: absolute;
  width: 100%;
}
@media screen and (max-width:1520px) {
  header .header-inner .bg-wave{
    background: url("../img/header_img_lower_wave.png") center bottom /125.65% auto no-repeat;
    bottom: .76vw;
    height: 2.63vw;
  }
}
@media screen and (max-width:767px) {
  header .header-inner .bg-wave{
    background: url("../img/header_img_lower_wave_sp.png") center bottom /contain no-repeat;
    bottom: 0;
    height: 10.86vw;
    width: 100%;
  }
}


/* block01
---------------------------------------------------------------------------- */
.block01{
  position: relative;
  z-index: 10;
}
.block01-upper{
  background: url("../img/block01_bg.jpg") center bottom repeat-x;
}
@media screen and (max-width:1520px) {
  .block01-upper{
    background: url("../img/block01_bg.jpg") center bottom /126.31% auto no-repeat;
  }
}
@media screen and (max-width:767px) {
  .block01-upper{
    background: url("../img/block01_bg_sp.jpg") center bottom /contain no-repeat;
  }
}

.block01 h2{
  align-items: center;
  background: url("../img/block01_titile_bg.png")  center center no-repeat;
  display: flex;
  justify-content: center;
  height: 618px;
}
@media screen and (max-width:1520px) {
  .block01 h2{
    background: url("../img/block01_titile_bg.png")  center center /126.31% auto no-repeat;
    height: 40.65vw;
  }
  .block01 h2 img{
    width: 65.78vw;
  }
}
@media screen and (max-width:767px) {
  .block01 h2{
    background: url("../img/block01_titile_bg_sp.png")  center center /contain no-repeat;
    height: auto;
    padding: 6.03vw 4.83vw;
  }
  .block01 h2 img{
    width: 100%;
  }
}

.block01 .txt-wrap{
  position: relative;
  height: 676px;
}
@media screen and (max-width:1520px) {
  .block01 .txt-wrap{
    height: 44.47vw;
  }
}
@media screen and (max-width:767px) {
  .block01 .txt-wrap{
    position: static;
    height: 134.8vw;
  }
}

.block01 .txt-wrap img{
  position: absolute;
  left: calc(50% - 590px);
  top: 0;
}
@media screen and (max-width:1520px) {
  .block01 .txt-wrap img{
    left: calc(50% - 38.81vw);
    width: 36.84vw;
  }
}
@media screen and (max-width:767px) {
  .block01 .txt-wrap img{
    display: none;
  }
}

.block01 .txt-wrap p{
  background: url("../img/block01_txt_bg.png") center center no-repeat;
  font-weight: bold;
  height: 280px;
  line-height: 1.65;
  padding: 65px 50px 0 262px;
  position: absolute;
  right: calc(50% - 599px);
  top: 70px;
  width: 803px;
}
@media screen and (max-width:1520px) {
  .block01 .txt-wrap p{
    background: url("../img/block01_txt_bg.png") center center /contain no-repeat;
    font-size: 1.18vw;
    height: 18.42vw;
    padding: 4.27vw 3.28vw 0 17.23vw;
    right: calc(50% - 39.4vw);
    top: 4.6vw;
    width: 52.82vw;
  }
}
@media screen and (max-width:767px) {
  .block01 .txt-wrap p{
    background: none;
    font-size: 4.1vw;
    height: auto;
    line-height: 1.5;
    padding: 10.4vw 4vw 0;
    position: static;
    text-align: center;
    width: 100%;
  }
}

.block01-lower{
  background: url("../img/block01_lower_bg.png") center top no-repeat;
  height: 1922px;
  padding-top: 155px;
}
@media screen and (max-width:1520px) {
  .block01-lower{
    background: url("../img/block01_lower_bg.png") center top /126.31% auto no-repeat;
    height: 126.44vw;
    padding-top: 10.19vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower{
    background: url("../img/block01_lower_bg_sp.png") center top /contain no-repeat ;
    height: 570.4vw;
    padding-top: 12.07vw;
  }
}

.block01-lower .cont-wrap{
  display: flex;
  justify-content: center;
  margin: 0 auto -30px;
  width: 1400px;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap{
    margin: 0 auto -1.97vw;
    width: 92.1vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap{
    display: block;
    margin: 0 auto 4.43vw;
    padding: 0 1.2vw;
    width: 100%;
  }
}

.block01-lower .cont-wrap.rev{
  flex-direction: row-reverse;
}
.block01-lower .cont-wrap .txt-box{
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .txt-box{
    display: block;
    width: auto;
  }
}

.block01-lower .cont-wrap .txt-box h3{
  color: #fff;
  display: inline-block;
  font-size: 48px;
  font-weight: normal;
  line-height: 1;
  vertical-align: middle;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap .txt-box h3{
    font-size: 3.15vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .txt-box h3{
    display: block;
    font-size: 4.83vw;
    margin-bottom: 2.12vw;
    text-align: center;
    width: auto;
  }
}

.block01-lower .cont-wrap .txt-box h3::before{
  background: url("../img/block01_lower_icn_wmark.png") center center /contain no-repeat;
  content: "";
  display: inline-block;
  height: 73px;
  margin-right: 15px;
  vertical-align: middle;
  position: relative;
  top: -4px;
  width: 41px;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap .txt-box h3::before{
    height: 4.8vw;
    margin-right: .98vw;
    top: -.26vw;
    width: 2.69vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .txt-box h3::before,
  .block01-lower .cont-wrap .txt-box h3::after{
    background: url("../img/block01_lower_icn_wmark.png") center center /contain no-repeat;
    content: "";
    display: inline-block;
    height: 8.57vw;
    margin-right: 1.57vw;
    vertical-align: middle;
    position: relative;
    top: -1vw;
    width: 4.83vw;
  }
  .block01-lower .cont-wrap .txt-box h3::after{
    margin-left: 1.57vw;
    margin-right: 0;
  }
}

.block01-lower .cont-wrap .txt-box p{
  color: #fff;
  font-weight: bold;
  line-height: 1.65;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap .txt-box p{
    font-size: 1.18vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .txt-box p{
    font-size: 3.86vw;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 4.55vw;
  }
}

.block01-lower .cont-wrap .txt-box p span{
  color: #faf780;
}
.block01-lower .cont-wrap .img-box{
  padding-left: 16px;
  width: 50%;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap .img-box{
    padding-left: 1.05vw;
  }
  .block01-lower .cont-wrap .img-box img{
    width: 36.11vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .img-box img{
    width: 100%;
  }
}

.block01-lower .cont-wrap.rev .img-box{
  padding-left: auto;
  padding-right: 16px;
  text-align: right;
  width: 50%;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-wrap.rev .img-box{
    padding-right: 1.05vw;
    width: 50%;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-wrap .img-box,
  .block01-lower .cont-wrap.rev .img-box{
    padding: 0 14.73vw;
    width: auto;
  }
}

@media screen and (min-width:1521px) {
  .block01-lower .cont-wrap:nth-child(1) .txt-box h3{
    margin: 0 0 20px auto;
    text-align: center;
    width: 584px;
  }
  .block01-lower .cont-wrap:nth-child(1) .txt-box p{
    text-align: center;
    margin: 0 0 0 auto;
    width: 560px;
  }
  .block01-lower .cont-wrap:nth-child(2) .txt-box h3{
    margin: 0 0 20px 0;
  }
  .block01-lower .cont-wrap:nth-child(2) .txt-box p{
    margin: 0 0 0 59px;
  }
  .block01-lower .cont-wrap:nth-child(3) .txt-box h3{
    text-align: right;
    margin: 0 0 20px 0;
  }
  .block01-lower .cont-wrap:nth-child(3) .txt-box p{
    display: inline-block;
    margin: 0 0 0 auto;
    width: 542px;
  }
}

@media screen and (min-width:768px) and (max-width:1520px){
  .block01-lower .cont-wrap:nth-child(1) .txt-box h3{
    margin: 0 0 1.31vw auto;
    text-align: center;
    width: 38.42vw;
  }
  .block01-lower .cont-wrap:nth-child(1) .txt-box p{
    text-align: center;
    margin: 0 0 0 auto;
    width: 36.84vw;
  }
  .block01-lower .cont-wrap:nth-child(2) .txt-box h3{
    margin: 0 0 1.31vw 0;
  }
  .block01-lower .cont-wrap:nth-child(2) .txt-box p{
    margin: 0 0 0 3.88vw;
  }
  .block01-lower .cont-wrap:nth-child(3) .txt-box h3{
    text-align: right;
    margin: 0 0 1.31vw 0;
  }
  .block01-lower .cont-wrap:nth-child(3) .txt-box p{
    display: inline-block;
    margin: 0 0 0 auto;
    width: 35.65vw;
  }
}
  
.block01-lower .cont-flow{
  height: 470px;
  margin: 90px auto 0;
  position: relative;
  text-align: center;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-flow{
    height: 30.92vw;
    margin: 5.92vw auto 0;
    padding: 0 .65vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-flow{
    height: auto;
    margin: 5.43vw auto 0;
    min-width: 0;
    max-width: 100%;
    padding: 0 13.56vw;
    overflow: visible;
    position: static;
  }
}

.block01-lower .cont-flow h3{
  color: #fff;
  display: inline-block;
  font-size: 60px;
  font-weight: normal;
  line-height: 1;
  margin-top: 10px;
  vertical-align: middle;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-flow h3{
    font-size: 3.94vw;
    margin-top: .65vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-flow h3{
    color: #fff;
    display: block;
    font-size: 4.83vw;
    margin-top: 10px;
    vertical-align: middle;
    text-align: center;
  }
}

.block01-lower .cont-flow h3::before,
.block01-lower .cont-flow h3::after{
  background: url("../img/block01_lower_icn_wmark.png") center center /contain no-repeat;
  content: "";
  display: inline-block;
  height: 73px;
  margin-right: 15px;
  vertical-align: middle;
  position: relative;
  top: -10px;
  width: 41px;
}
.block01-lower .cont-flow h3::after{
  margin-right: 0;
  margin-left: 15px;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-flow h3::before,
  .block01-lower .cont-flow h3::after{
    height: 4.8vw;
    margin-right: .98vw;
    top: -.65vw;
    width: 2.69vw;
  }
  .block01-lower .cont-flow h3::after{
    margin-right: 0;
    margin-left: .98vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-flow h3::before,
  .block01-lower .cont-flow h3::after{
    height: 8.57vw;
    margin-right: 1.57vw;
    top: -1vw;
    width: 4.83vw;
  }
  .block01-lower .cont-flow h3::after{
    margin-right: 0;
    margin-left: 1.57vw;
  }
}

.block01-lower .cont-flow img{
  position: absolute;
  max-width: 1500px;
  top: 30px;
  left: calc(50% - 750px);
  width: 1500px;
}
@media screen and (max-width:1520px) {
  .block01-lower .cont-flow img{
    max-width: 100%;
    top: 1.97vw;
    left: calc(50% - 49.34vw);
    width: 98.68vw;
  }
}
@media screen and (max-width:767px) {
  .block01-lower .cont-flow img{
    position: static;
    max-width: 100%;
    width: auto;
  }
}

/* block02
---------------------------------------------------------------------------- */
.block02{
  background: url("../img/block02_bg.png") center top no-repeat,url("../img/block02_lower_bg.png") center bottom no-repeat;
  height: 3620px;
  margin-top: -52px;
  position: relative;
  z-index: 9;
}
@media screen and (max-width:1520px) {
  .block02{
    background: url("../img/block02_bg.png") center top /126.31% auto no-repeat,url("../img/block02_lower_bg.png") center bottom /126.31% auto no-repeat;
    height: 238.15vw;
    margin-top: -4.42vw;
  }
}
@media screen and (max-width:767px) {
  .block02{
    background: url("../img/block02_bg_sp.png") center top /contain no-repeat,url("../img/block02_lower_bg_sp.png") center bottom /contain no-repeat;
    height: 627vw;
    margin-top: -2vw;
  }
}

.block02 h2{
  color: #36392b;
  font-size: 60px;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 472px;
  padding-top: 160px;
  text-align: center;
}
@media screen and (max-width:1520px) {
  .block02 h2{
    font-size: 3.94vw;
    margin-bottom: 31.05vw;
    padding-top: 10.52vw;
  }
}
@media screen and (max-width:767px) {
  .block02 h2{
    font-size: 4.83vw;
    font-weight: bold;
    margin-bottom: 34.78vw;
    padding-top: 9.83vw;
  }
}

.block02 h2 .title{
  margin-bottom: 45px;
}
@media screen and (max-width:1520px) {
  .block02 h2 .title{
    margin-bottom: 2.96vw;
    width: 45.65vw;
  }
}
@media screen and (max-width:767px) {
  .block02 h2 .title{
    margin-bottom: 4.83vw;
    width: 54.34vw;
  }
}

.block02 h2 .line{
  margin: 10px 0 30px;
}
@media screen and (max-width:1520px) {
  .block02 h2 .line{
    margin: .65vw 0 1.97vw;
    width: 61.84vw;
  }
}
@media screen and (max-width:767px) {
  .block02 h2 .line{
    margin: 1.41vw 0 2.41vw;
    padding: 0 10vw;
  }
}

.block02 h2 span{
  background: url("../img/block02_lower_title_uline.png") center bottom repeat-x;
  color: #158e3e;
  display:inline-block;
  font-size: 78px;
  padding-top: 40px;
}
@media screen and (max-width:1520px) {
  .block02 h2 span{
    background: url("../img/block02_lower_title_uline.png") center bottom /contain no-repeat;
    font-size: 5.13vw;
    padding-top: 2.63vw;
  }
}
@media screen and (max-width:767px) {
  .block02 h2 span{
    background: url("../img/block02_lower_title_uline.png") center bottom /auto 25% repeat-x;
    font-size: 5.61vw;
    padding-top: 4.83vw;
  }
}

.block02 .block02-lower .cont-wrap{
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin:0 auto 38px;
  width: 1170px;
}
@media screen and (max-width:1520px) {
  .block02 .block02-lower .cont-wrap{
    margin:0 auto 2.5vw;
    width: 76.97vw;
  }
}
@media screen and (max-width:767px) {
  .block02 .block02-lower .cont-wrap{
    display: block;
    margin:0 auto 6.03vw;
    width: auto;
  }
}

.block02 .block02-lower .cont-wrap.rev{
  flex-direction: row-reverse;
}
.block02 .block02-lower .cont-wrap .img-box{
  padding: 0 16px;
  width: 50%;
}
@media screen and (max-width:1520px) {
  .block02 .block02-lower .cont-wrap .img-box{
    padding: 0 1.05vw;
    width: 50%;
  }
}

.block02 .block02-lower .cont-wrap .txt-box{
  width: 50%;
}
@media screen and (max-width:767px) {
  .block02 .block02-lower .cont-wrap .img-box{
    padding: 0 17.14vw;
    width: auto;
  }
  .block02 .block02-lower .cont-wrap .txt-box{
    width: auto;
  }
}

.block02 .block02-lower .cont-wrap .txt-box h3{
  align-items: flex-start;
  color: #158e3e;
  display: flex;
  font-size: 48px;
  font-weight: normal;
  line-height: 1.35;
  letter-spacing: -.04em;
  margin-bottom: 30px;
  text-align: left;
}
@media screen and (max-width:1520px) {
  .block02 .block02-lower .cont-wrap .txt-box h3{
    font-size: 3.15vw;
    margin-bottom: 1.97vw;
  }
}
@media screen and (max-width:767px) {
  .block02 .block02-lower .cont-wrap .txt-box h3{
    display: block;
    font-size: 4.83vw;
    margin-bottom: 2.41vw;
    text-align: center;
  }
}

.block02 .block02-lower .cont-wrap .txt-box h3 img{
  margin-right: 18px;
}
@media screen and (max-width:1520px) {
  .block02 .block02-lower .cont-wrap .txt-box h3 img{
    height: 7.56vw;
    margin-right: 1.18vw;
    width: auto;
  }
}
@media screen and (max-width:767px) {
  .block02 .block02-lower .cont-wrap .txt-box h3 img{
    display: block;
    margin: 0 auto 2.34vw;
    height: 6.28vw;
    
  }
}

.block02 .block02-lower .cont-wrap .txt-box p{
  font-weight: bold;
  line-height: 1.65;
}
@media screen and (max-width:1520px) {
  .block02 .block02-lower .cont-wrap .txt-box p{
    font-size: 1.18vw;
  }
}
@media screen and (max-width:767px) {
  .block02 .block02-lower .cont-wrap .txt-box p{
    font-size: 3.86vw;
    letter-spacing: -.02em;
    text-align: center;
    margin-bottom: 3.41vw;
  }
}

.block02 .block02-lower .cont-wrap .txt-box p span{
  color: #fc962d;
}
@media screen and (min-width:1521px) {
  .block02 .block02-lower .cont-wrap:nth-child(1) .txt-box h3{ padding-left: 62px; }
  .block02 .block02-lower .cont-wrap:nth-child(2) .txt-box h3{ padding-left: 26px; }
  .block02 .block02-lower .cont-wrap:nth-child(3) .txt-box h3{ padding-left: 50px; }
  .block02 .block02-lower .cont-wrap:nth-child(4) .txt-box h3{ padding-left: 50px; }
  .block02 .block02-lower .cont-wrap:nth-child(5) .txt-box h3{ padding-left: 58px; }
  .block02 .block02-lower .cont-wrap:nth-child(6) .txt-box h3{ padding-left: 35px; }
  
  .block02 .block02-lower .cont-wrap:nth-child(1) .txt-box p{ padding: 0 40px 0 56px; }
  .block02 .block02-lower .cont-wrap:nth-child(2) .txt-box p{ padding-left: 58px; }
  .block02 .block02-lower .cont-wrap:nth-child(3) .txt-box p{ padding: 0 40px 0 55px; }
  .block02 .block02-lower .cont-wrap:nth-child(4) .txt-box p{ padding: 0 35px 0 46px; }
  .block02 .block02-lower .cont-wrap:nth-child(5) .txt-box p{ padding-left: 35px; }
  .block02 .block02-lower .cont-wrap:nth-child(6) .txt-box p{ padding: 0 15px 0 50px; }
}
@media screen and (min-width:768px) and (max-width:1520px){
  .block02 .block02-lower .cont-wrap:nth-child(1) .txt-box h3{ padding-left: 4.07vw; }
  .block02 .block02-lower .cont-wrap:nth-child(2) .txt-box h3{ padding-left: 1.71vw; }
  .block02 .block02-lower .cont-wrap:nth-child(3) .txt-box h3{ padding-left: 3.28vw; }
  .block02 .block02-lower .cont-wrap:nth-child(4) .txt-box h3{ padding-left: 3.28vw; }
  .block02 .block02-lower .cont-wrap:nth-child(5) .txt-box h3{ padding-left: 3.81vw; }
  .block02 .block02-lower .cont-wrap:nth-child(6) .txt-box h3{ padding-left: 2.3vw; }
  
  .block02 .block02-lower .cont-wrap:nth-child(1) .txt-box p{ padding: 0 2.63vw 0 3.68vw; }
  .block02 .block02-lower .cont-wrap:nth-child(2) .txt-box p{ padding-left: 3.81vw; }
  .block02 .block02-lower .cont-wrap:nth-child(3) .txt-box p{ padding: 0 2.63vw 0 3.61vw; }
  .block02 .block02-lower .cont-wrap:nth-child(4) .txt-box p{ padding: 0 2.3vw 0 3.02vw; }
  .block02 .block02-lower .cont-wrap:nth-child(5) .txt-box p{ padding-left: 2.3vw; }
  .block02 .block02-lower .cont-wrap:nth-child(6) .txt-box p{ padding: 0 .98vw 0 3.28vw; }
}

/* block03
---------------------------------------------------------------------------- */
.block03{
  background: url("../img/block03_bg.png") center top no-repeat,url("../img/block03_lower_bg.png") center bottom no-repeat;
  height: 4813px;
  margin-top: -42px;
  position: relative;
  z-index: 8;
}
@media screen and (max-width:1520px) {
  .block03{
    background: url("../img/block03_bg.png") center top /126.31% auto no-repeat ,url("../img/block03_lower_bg.png") center bottom /126.31% auto no-repeat;
    height: 312.64vw;
    margin-top: -2.76vw;
  }
}
@media screen and (max-width:767px) {
  .block03{
    background: url("../img/block03_bg_sp.png") center top /contain no-repeat,url("../img/block03_lower_bg_sp.png") center bottom /contain no-repeat;
    height: 614vw;
    margin-top: -3.78vw;
  }
}

.block03 h2{
  color: #3bb2c8;
  font-size: 64px;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 613px;
  padding-top: 65px;
  text-align: center;
  vertical-align: baseline;
}
@media screen and (max-width:1520px) {
  .block03 h2{
    font-size: 4.21vw;
    margin-bottom: 37.32vw;
    padding-top: 4.27vw;
  }
}
@media screen and (max-width:767px) {
  .block03 h2{
    font-size: 4.34vw;
    margin-bottom: 27.77vw;
    padding-top: 5.67vw;
  }
}

.block03 h2 img{
  margin-bottom: 60px;
}
@media screen and (max-width:1520px) {
  .block03 h2 img{
    margin-bottom: 3.94vw;
    width: 64.34vw;
  }
}
@media screen and (max-width:767px) {
  .block03 h2 img{
    margin-bottom: 2.86vw;
    width: 100vw;
  }
}

.block03 h2 .fnt-l{
  font-size: 78px;
  vertical-align: baseline;
}
@media screen and (max-width:1520px) {
  .block03 h2 .fnt-l{
    font-size:5.13vw;
  }
}
@media screen and (max-width:767px) {
  .block03 h2 .fnt-l{
    font-size: 5.31vw;
  }
}

.block03 h2 .fnt-wrap{
  background: url("../img/block03_title_uline.png") left bottom no-repeat;
  display: inline-block;
  font-size: 120px;
  vertical-align: baseline;
  position: relative;
  top: 22px;
  width: 370px;
  height: 180px;
}
@media screen and (max-width:1520px) {
  .block03 h2 .fnt-wrap{
    background: url("../img/block03_title_uline.png") left bottom /contain no-repeat;
    font-size: 7.89vw;
    top: 1.44vw;
    width: 24.34vw;
    height: 11.84vw;
  }
}
@media screen and (max-width:767px) {
  .block03 h2 .fnt-wrap{
    background: url("../img/block03_title_uline.png") left bottom /contain no-repeat;
    display: inline-block;
    font-size: 9.66vw;
    vertical-align: baseline;
    position: relative;
    top: 1.6vw;
    width: 29vw;
    height: 10vw;
  }
}

.font-win .block03 h2 .fnt-wrap{
  top: 16px;
}
@media screen and (max-width:1520px) {
  .font-win .block03 h2 .fnt-wrap{
    top: 1.05vw;
  }
}
@media screen and (max-width:767px) {
  .font-win .block03 h2 .fnt-wrap{
    top: 0;
  }
}

.block03 h2 .fnt-sdw{
  color: #D3D3D3;
  position: absolute;
  top: 52px;
  left:5px;
  text-shadow:3px 5px 7px #D3D3D3;
}
@media screen and (max-width:1520px) {
  .block03 h2 .fnt-sdw{
    top: 3.42vw;
    left:.32vw;
    text-shadow:.19vw .32vw .46vw #D3D3D3;
  }
}
@media screen and (max-width:767px) {
  .block03 h2 .fnt-sdw{
    top: 0;
    left:0;
    text-shadow:3px 5px 7px #D3D3D3;
  }
}

.font-win .block03 h2 .fnt-sdw{
  top: 64px;
}
@media screen and (max-width:1520px) {
  .font-win .block03 h2 .fnt-sdw{
    top: 4.21vw;
  }
}

.block03 h2 .fnt-xl{
  background: linear-gradient( to top,  rgba(7,158,189,1) , rgba(7,158,189,.3)  );
  -webkit-background-clip: text;
  color: transparent;
  position: absolute;
  top: 51px;
  left: 0;
  width: 370px;
}
@media screen and (max-width:1520px) {
  .block03 h2 .fnt-xl{
    top: 3.35vw;
    left: 0;
    width: 24.34vw;
  }
}
@media screen and (max-width:767px) {
  .block03 h2 .fnt-xl{
    top: 0.35vw;/* SP時の位置 */
    width: auto;
  }
}

.font-win .block03 h2 .fnt-xl{
  top: 63px;
}
@media screen and (max-width:1520px) {
  .font-win .block03 h2 .fnt-xl{
    top: 4.14vw;
  }
}

.block03 .lead01-wrap{
  align-items: center;
  background: url("../img/block03_lower_lead01_bg.png") no-repeat;
  display: flex;
  height: 437px;
  justify-content: space-between;
  margin: 0 auto 65px;
  padding: 0 26px;
  width: 1226px;
}
@media screen and (max-width:1520px) {
  .block03 .lead01-wrap{
    background: url("../img/block03_lower_lead01_bg.png") center top /contain no-repeat;
    height: 28.75vw;
    margin: 0 auto 4.27vw;
    padding: 0 1.71vw;
    width: 80.65vw;
  }
}
@media screen and (max-width:1520px) {
  .block03 .lead01-wrap img{
    width: 20.59vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead01-wrap{
    background: url("../img/block03_lower_lead01_bg_sp.png") center top /contain no-repeat;
    flex-direction: column;
    height: 159.17vw;
    justify-content: center;
    margin: 0 1.69vw 6.03vw;
    padding: 0 3.12vw;
    width: auto;
  }
  .block03 .lead01-wrap img{
    height: auto;
    width: 72.46vw;
  }
}

.block03 .lead01-wrap p{
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: -.03em;
  width: 524px;
}
@media screen and (max-width:1520px) {
  .block03 .lead01-wrap p{
    font-size: 1.18vw;
    width: 34.47vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead01-wrap p{
    /* font-size: 3.86vw; */
    font-size: 3.5vw;/* SP時のFS */
    line-height: 1.5;
    letter-spacing: -.03em;
    padding: 2vw 0;
    text-align: center;
    width: auto;
  }
}
.block03 .lead01-wrap p span{
  color: #0ca0be;
}

.block03 .lead02-wrap .cont-box{
  align-items: center;
  display: flex;
  justify-content: flex-end;
  margin: 0 auto -15px;
  padding-right: 180px;
  width: 1400px;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box{
    margin: 0 auto -.98vw;
    padding-right: 11.84vw;
    width: 92.1vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box{
    justify-content: flex-start;
    margin: 0 auto -.72vw;
    padding-right: 0;
    padding-left: 1.44vw;
    width: auto;
  }
}

.block03 .lead02-wrap .cont-box.rev{
  flex-direction: row-reverse;
  margin-bottom: 40px;
  padding-left: 180px;
  padding-right: 0;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box.rev{
    margin-bottom: 2.63vw;
    padding-left: 11.84vw;
    padding-right: 0;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box.rev{
    flex-direction: row-reverse;
    margin-bottom: 1.93vw;
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box .img-box{
    padding-top: 1.2vw;
    width: 31.64vw;
  }
}

.block03 .lead02-wrap .cont-box .title-box{
  background: url("../img/block03_lower_lead02_txt01_bg.png") center center /contain no-repeat;
  display: flex;
  align-items: center;
  height: 368px;
  width: 684px;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box .title-box{
    height: 24.21vw;
    width: 45vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box .title-box{
    background: url("../img/block03_lower_lead02_txt01_bg_sp.png") center center /contain no-repeat;
    height: 29.71vw;
    width: 55.67vw;
  }
}

.block03 .lead02-wrap .cont-box .title-box h3{
  color: #fab432;
  font-size: 60px;
  padding-top: 23px;
  padding-left: 140px;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box .title-box h3{
    color: #fab432;
    font-size: 3.94vw;
    padding-top: 1.51vw;
    padding-left: 9.21vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box .title-box h3{
    color: #fab432;
    font-size: 4.83vw;
    padding-top: 3.16vw;
    padding-left: 10.82vw;
  }
}

.block03 .lead02-wrap .cont-box.rev .title-box{
  background: url("../img/block03_lower_lead02_txt02_bg.png") center center /contain no-repeat;
  height: 352px;
  width: 768px;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box.rev .title-box{
    height: 23.15vw;
    width: 50.52vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box.rev .title-box{
    background: url("../img/block03_lower_lead02_txt02_bg_sp.png") center center /contain no-repeat;
    height: 28.74vw;
    width: 62.31vw;
  }
}

.block03 .lead02-wrap .cont-box.rev .title-box h3{
  color: #fab432;
  font-size: 60px;
  padding-top: 30px;
  padding-left: 75px;
}
@media screen and (max-width:1520px) {
  .block03 .lead02-wrap .cont-box.rev .title-box h3{
    font-size: 3.94vw;
    padding-top: 1.97vw;
    padding-left: 4.93vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead02-wrap .cont-box.rev .title-box h3{
    font-size: 4.83vw;
    padding-top: 3.16vw;
    padding-left: 6vw;
  }
}
@media screen and (min-width:768px)and (max-width:1520px)  {
  .block03 .lead02-wrap .cont-box .img-box img{
    width: 26.25vw;
  }
  .block03 .lead02-wrap .cont-box.rev .img-box img{
    width: 25.32vw;
  }
}

.block03 .lead03-wrap{
  margin: 0 auto 70px;
  position: relative;
  width: 1170px;
}
@media screen and (max-width:1520px) {
  .block03 .lead03-wrap{
    margin: 0 auto 4.6vw;
    width: 76.97vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead03-wrap{
    margin: 0 auto 6.03vw;
    position: relative;
    width: auto;
  }
}

.block03 .lead03-wrap .txt-box{
  background: url("../img/block03_lower_lead03_bg.png") center center no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 682px;
  margin: 0 auto;
  padding: 140px 52px 0;
  width: 667px;
}
@media screen and (max-width:1520px) {
  .block03 .lead03-wrap .txt-box{
    background: url("../img/block03_lower_lead03_bg.png") center top /contain no-repeat;
    height: 44.86vw;
    padding: 9.21vw 3.42vw 0;
    width: 43.88vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead03-wrap .txt-box{
    background: url("../img/block03_lower_lead03_bg_sp.png") center top /contain no-repeat;
    justify-content: center;
    height: 109.17vw;
    margin: 0 auto 2.65vw;
    padding: 3.46vw 1.84vw 0;
    width: auto;
  }
}

.block03 .lead03-wrap .txt-box p{
  color: #36392b;
  line-height: 1.65;
  font-weight: bold;
  padding: 15px 0;
}
@media screen and (max-width:1520px) {
  .block03 .lead03-wrap .txt-box p{
    font-size: 1.18vw;
    padding: .98vw 0;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead03-wrap .txt-box p{
    line-height: 1.5;
    font-size: 3.86vw;
    padding: 0;
    text-align: center;
  }
}

.block03 .lead03-wrap .txt-box p span{
  color: #0ca0be;
}
.block03 .lead03-wrap .img-box{
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media screen and (max-width:767px) {
  .block03 .lead03-wrap .img-box{
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    position: static;
    padding: 0 6.03vw;
    width: auto;
  }
  .block03 .lead03-wrap .img-box img{
    width: 18.11vw;
  }
}

@media screen and (min-width:1521px) {
  .block03 .lead03-wrap .img-box img{
    position: absolute;
  }
  .block03 .lead03-wrap .img-box img:nth-child(1){
    left: 10px;
    top: 35px;
  }
  .block03 .lead03-wrap .img-box img:nth-child(2){
    right: 10px;
    top: 35px;
  }
  .block03 .lead03-wrap .img-box img:nth-child(3){
    left: 10px;
    bottom: 35px;
  }
  .block03 .lead03-wrap .img-box img:nth-child(4){
    right: 10px;
    bottom: 35px;
  }
}
@media screen and (min-width:768px)and (max-width:1520px)  {
  .block03 .lead03-wrap .img-box img{
    position: absolute;
    width: 15.19vw;
  }
  .block03 .lead03-wrap .img-box img:nth-child(1){
    left: .65vw;
    top: 2.3vw;
  }
  .block03 .lead03-wrap .img-box img:nth-child(2){
    right: .65vw;
    top: 2.3vw;
  }
  .block03 .lead03-wrap .img-box img:nth-child(3){
    left: .65vw;
    bottom: 2.3vw;
  }
  .block03 .lead03-wrap .img-box img:nth-child(4){
    right: .65vw;
    bottom: 2.3vw;
  }
}

.block03 .lead04-wrap{
  text-align: center;
}
@media screen and (max-width:767px) {
  .block03 .lead04-wrap{
    padding: 0 1.24vw;
  }
}

.block03 .lead04-wrap h3{
  margin-bottom: 70px;
}
@media screen and (max-width:1520px) {
  .block03 .lead04-wrap h3{
    margin-bottom: 4.6vw;
  }
  .block03 .lead04-wrap h3 img{
    width: 67.82vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead04-wrap h3{
    margin-bottom: 3.62vw;
  }
  .block03 .lead04-wrap h3 img{
    width: 74.39vw;
  }
}

@media screen and (max-width:1520px) {
  .block03 .lead04-wrap .img-box img{
    width: 92.1vw;
  }
}
@media screen and (max-width:767px) {
  .block03 .lead04-wrap .img-box img{
    width: 100%;
  }
}

/* block04
---------------------------------------------------------------------------- */
.block04{
  background: url("../img/block04_bg.png") center top no-repeat;
  height: 6110px;
  margin-top: -80px;
  padding-top: 130px;
  position: relative;
  z-index: 7;
}
@media screen and (max-width:1520px) {
  .block04{
    background: url("../img/block04_bg.png") center top /126.31% auto no-repeat,url("../img/block04_bg.png") center bottom /126.31% auto no-repeat;
    height: 401.44vw;
    margin-top: -5.26vw;
    padding-top: 8.55vw;
    z-index: 7;
  }
}
@media screen and (max-width:767px) {
  .block04{
    background: url("../img/block04_bg_sp.png") center bottom /contain no-repeat,url("../img/block04_bg_sp.png") center top /contain no-repeat;
    height: auto;
    margin-top: -3vw;
    padding: 7vw 0;
  }
}

.block04 h2{
  background: url("../img/block04_icn_title_l.png") left center /contain no-repeat,url("../img/block04_icn_title_r.png") right center /contain no-repeat;
  color: #fb5e08;
  font-size: 60px;
  font-weight: normal;
  height: 126px;
  line-height: 126px;
  margin: 0 auto 60px;
  text-align: center;
  width: 540px;
}
@media screen and (max-width:1520px) {
  .block04 h2{
    background: url("../img/block04_icn_title_l.png") left center /4.67vw 8.28vw no-repeat,url("../img/block04_icn_title_r.png") right center /4.67vw 8.28vw no-repeat;
    font-size: 3.94vw;
    height: 8.28vw;
    line-height: 8.28vw;
    margin: 0 auto 3.94vw;
    width: 35.52vw;
  }
}
@media screen and (max-width:767px) {
  .block04 h2{
    font-size: 5.31vw;
    height: 10.62vw;
    line-height: 10.62vw;
    margin: 0 auto 3.62vw;
    width: 47.1vw;
  }
}

.block04 ol{
  margin: 0 auto;
  width: 1177px;
}
@media screen and (max-width:1520px) {
  .block04 ol{
    width: 77.43vw;
  }
}
@media screen and (max-width:767px) {
  .block04 ol{
    margin: 0;
    padding: 0 1.2vw;
    width: auto;
  }
}

.block04 ol li{
  background: #fff;
  border-radius: 20px;
  margin-bottom: 62px;
  overflow: hidden;
}
@media screen and (max-width:1520px) {
  .block04 ol li{
    border-radius: 1.31vw;
    margin-bottom: 4.07vw;
  }
}
@media screen and (max-width:767px) {
  .block04 ol li{
    border-radius: 1.93vw;
    margin-bottom: 3.62vw;
  }
}

.block04 ol li h3{
  color: #fb5e08;
  background: #fff98e;
  font-size: 48px;
  font-weight: normal;
  line-height: 1.25;
  letter-spacing: -.07em;
  padding: 24px 0 18px calc(18px + 1em);
  text-indent: -1em;
}
@media screen and (max-width:1520px) {
  .block04 ol li h3{
    font-size: 3.15vw;
    padding: 1.57vw 0 1.18vw calc(1.18vw + 1em);
    text-indent: -1em;
  }
}
@media screen and (max-width:767px) {
  .block04 ol li h3{
    font-size: 3.86vw;
    letter-spacing: -.05em;
    padding: 1.8vw 0;
    text-indent: 0;
    text-align: center;
  }
}

.block04 ol li:nth-child(n + 10) h3{
  text-indent: -1.4em;
  padding: 24px 0 18px calc(18px + 1.4em);
}
@media screen and (max-width:1520px) {
  .block04 ol li:nth-child(n + 10) h3{
    text-indent: -1.4em;
    padding: 1.57vw 0 1.18vw calc(1.18vw + 1.4em);
  }
}
@media screen and (max-width:767px) {
  .block04 ol li:nth-child(n + 10) h3{
    text-indent: 0;
    padding: 1.8vw 0;
  }
}

.block04 ol li p{
  color: #402c28;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: -.02em;
  padding: 22px 20px 20px 20px;
}
@media screen and (max-width:1520px) {
  .block04 ol li p{
    font-size: 1.18vw;
    padding: 1.44vw 1.31vw 1.31vw 1.31vw;
  }
}
@media screen and (max-width:767px) {
  .block04 ol li p{
    font-size: 3.38vw;
    letter-spacing: -.09em;
    padding: 2.41vw .9vw;
    text-align: center;
  }
}

/* block05
---------------------------------------------------------------------------- */
.block05{
  background: url("../img/block05_bg.png") center top no-repeat;
  margin-top: -50px;
  padding: 130px 0 140px;
  position: relative;
  z-index: 6;
}
@media screen and (max-width:1520px) {
  .block05{
    background: url("../img/block05_bg.png") center top /126.31% auto no-repeat;
    margin-top: -3.28vw;
    padding: 8.55vw 0 9.21vw;
    z-index: 6;
  }
}
@media screen and (max-width:767px) {
  .block05{
    background: url("../img/block05_bg_sp.png") center top /cover no-repeat;
    margin-top: -6.03vw;
    padding: 10vw 0 7vw;
    z-index: 6;
  }
}

.block05 h2{
  color: #36392b;
  font-size: 58px;
  font-weight: normal;
  margin: 0 auto 20px;
  position: relative;
  text-align: center;
  line-height: 2;
  letter-spacing: -.05em;
  width: 1150px;
}
@media screen and (max-width:1520px) {
  .block05 h2{
    font-size: 3.81vw;
    margin: 0 auto 1.31vw;
    width: 75.65vw;
  }
}
@media screen and (max-width:767px) {
  .block05 h2{
    font-size: 4.38vw;
    margin: 0 0 3.62vw;
    padding: 0 3.62vw;
    width: auto;
  }
}

.block05 h2::before,
.block05 h2::after{
  background: url("../img/block05_icn_title_wmark.png") center center /contain no-repeat;
  content: "";
  display: block;
  height: 130px;
  left: 0;
  position: absolute;
  top:70px;
  width: 130px;
}
.block05 h2::after{
  background: url("../img/block05_icn_title_wmark02.png") center center /contain no-repeat;
  left: auto;
  right: 0;
}

@media screen and (max-width:1520px) {
  .block05 h2::before,
  .block05 h2::after{
    background: url("../img/block05_icn_title_wmark.png") center center /8.55vw 7.23vw no-repeat;
    height: 8.55vw;
    top: 4.6vw;
    width: 8.55vw;
  }
  .block05 h2::after{
    background: url("../img/block05_icn_title_wmark02.png") center center /8.55vw 7.23vw no-repeat;
    left: auto;
    right: 0;
  }
}
@media screen and (max-width:767px) {
  .block05 h2::before,
  .block05 h2::after{
    height: 10.74vw;
    left: 3.62vw;
    top:4.1vw;
    width: 10.74vw;
  }
  .block05 h2::after{
    left: auto;
    right: 3.62vw;
  }
}

.block05 h2 .box-bg{
  background: url("../img/block05_icn_title_ill01.png") center bottom /contain no-repeat;
  display: inline-block;
  position: relative;
  top: 23px;
  left: 15px;
  height: 191px;
  width: 403px;
}
@media screen and (max-width:1520px) {
  .block05 h2 .box-bg{
    top: 1.51vw;
    left: .98vw;
    height: 12.56vw;
    width: 26.51vw;
  }
}
@media screen and (max-width:767px) {
  .block05 h2 .box-bg{
    top: 0;
    left: 2vw;
    height: 13.66vw;
    width: 28.74vw;
  }
}

.block05 h2 .box-bg .txt{
  display: inline-block;
  padding: 56px 30px 0 0;
  transform: rotate(7deg);
}
@media screen and (max-width:1520px) {
  .block05 h2 .box-bg .txt{
    display: inline-block;
    padding: 3.68vw 1.97vw 0 0;
    transform: rotate(7deg);
  }
}
@media screen and (max-width:767px) {
  .block05 h2 .box-bg .txt{
    display: inline-block;
    padding: 3.5vw 2vw 0 0;
    transform: rotate(7deg);
  }
}

 .block05 h2 .u-line{
  background: url("../img/block05_icn_title_uline.png") center bottom /contain no-repeat;
}
.font-win .block05 h2 .u-line{
  background: url("../img/block05_icn_title_uline.png") center bottom 20px /contain no-repeat;
}
@media screen and (max-width:1520px) {
  .font-win .block05 h2 .u-line{
    background: url("../img/block05_icn_title_uline.png") center bottom 1.31vw /contain no-repeat;
  }
}

.block05 .img-box{
  margin-bottom: 60px;
  text-align: center;
}
@media screen and (max-width:1520px) {
  .block05 .img-box{
    margin-bottom: 3.94vw;
  }
}
@media screen and (max-width:767px) {
  .block05 .img-box{
    margin-bottom: 3.62vw;
    padding: 0 1.2vw;
  }
}

.block05 .lead01-wrap{
  background: url("../img/block05_lead_bg.png") center top /contain no-repeat;
  display: block;
  height: 1209px;
  margin: 0 auto 70px;
  padding: 70px 55px 50px;
  text-align: center;
  width: 1186px;
}
@media screen and (max-width:1520px) {
  .block05 .lead01-wrap{
    background: url("../img/block05_lead_bg.png") center top /contain no-repeat;
    display: block;
    height: 79.53vw;
    margin: 0 auto 4.6vw;
    padding: 4.6vw 3.61vw 3.28vw;
    text-align: center;
    width: 78.02vw;
  }
}
@media screen and (max-width:767px) {
  .block05 .lead01-wrap{
    background: url("../img/block05_lead_bg_sp.png") center top /contain no-repeat;
    height: 135.86vw;
    margin: 0 1.2vw 3.01vw;
    padding: 4.83vw 2.4vw 0;
    width: auto;
  }
}

.block05 .lead01-wrap p{
  color: #36392b;
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (max-width:1520px) {
  .block05 .lead01-wrap p{
    font-size: 1.18vw;
  }
}
@media screen and (max-width:767px) {
  .block05 .lead01-wrap p{
    font-size: 3.86vw;
    line-height: 1.2;
  }
}

.block05 .lead01-wrap h3{
  padding: 25px 0 15px;
}
@media screen and (max-width:1520px) {
  .block05 .lead01-wrap h3{
    padding: 1.64vw 0 .98vw;
  }
  .block05 .lead01-wrap h3 img{
    width: 30.26vw;
  }
}

@media screen and (max-width:767px) {
  .block05 .lead01-wrap h3{
    padding: 2.4vw 0 1.2vw;
  }
  .block05 .lead01-wrap h3 img{
    width: 38.64vw;
  }
}

.block05 .lead01-wrap .lead01-img-box{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width:1520px) {
  .block05 .lead01-wrap .lead01-img-box img{
    width: 33.55vw;
  }
}
@media screen and (max-width:767px) {
  .block05 .lead01-wrap .lead01-img-box{
    padding: 0 1.2vw;
    width: auto;
  }
  .block05 .lead01-wrap .lead01-img-box img{
    width: 42.75vw;
  }
}

.block05 .lead02-img-box{
  display: flex;
  justify-content: space-between;
  margin: 0 auto 75px;
  width: 1186px;
}
@media screen and (max-width:1520px) {
  .block05 .lead02-img-box{
    margin: 0 auto 4.93vw;
    width: 78.02vw;
  }
  .block05 .lead02-img-box img{
    width: 39.47vw;
  }
}
@media screen and (max-width:767px) {
  .block05 .lead02-img-box{
    display: block;
    margin: 0 auto 35vw;
    width: auto;
  }
  .block05 .lead02-img-box img{
    width: 100%;
  }
}


/* block06
---------------------------------------------------------------------------- */
.block06{
  align-items: center;
  background: url("../img/block06_bg.png") center top no-repeat;
  display: flex;
  height: 875px;
  margin-top: -140px;
  position: relative;
  z-index: 7;
}
@media screen and (max-width:1520px) {
  .block06{
    align-items: center;
    background: url("../img/block06_bg.png") center top /126.31% auto no-repeat;
    height: 57.56vw;
    margin-top: -9.21vw;
    z-index: 7;
  }
}
@media screen and (max-width:767px) {
  .block06{
    background: url("../img/block06_bg_sp.png") center top /contain no-repeat;
    display: block;
    height: 105.07vw;
    margin-top: -34.66vw;
    padding-top: 10px;
    z-index: 7;
  }
}

.block06 .title-box{
  margin: 0 auto;
  position: relative;
  width: 1130px;
}
@media screen and (max-width:1520px) {
  .block06 .title-box{
    width: 74.34vw;
  }
  .block06 .title-box h2 img{
    width: 34.86vw;
  }
}
@media screen and (max-width:767px) {
  .block06 .title-box{
    margin: 5.46vw auto 0;
    position: relative;
    width: auto;
  }
  .block06 .title-box h2 img{
    width: 100%;
  }
}

.block06 .title-box p{
  color: #36392b;
  font-weight: bold;
  line-height: 1.5;
  position: absolute;
  top: 300px;
  left: 0;
  text-align: center;
  width: 530px;
}
@media screen and (max-width:1520px) {
  .block06 .title-box p{
    font-size: 1.18vw;
    top: 19.73vw;
    width: 34.86vw;
  }
}
@media screen and (max-width:767px) {
  .block06 .title-box p{
    color: #000;
    font-size: 3.86vw;
    line-height: 1.2;
    top: 14vw;
    width: 100%;
  }
}

/* footer
---------------------------------------------------------------------------- */
footer{
  background: url("../img/footer_bg.png") center top no-repeat;
  margin-top: -80px;
  height: 470px;
  padding-top: 150px;
  z-index: 4;
}
@media screen and (max-width:1520px) {
  footer{
    background: url("../img/footer_bg.png") center top /126.31% auto no-repeat;
    margin-top: -5.26vw;
    height: 29.92vw;
    padding-top: 9.86vw;
    z-index: 4;
  }
}
@media screen and (max-width:767px) {
  footer{
    background: url("../img/footer_bg_sp.png") center top /contain no-repeat;
    margin-top: -8.66vw;
    height: 74.75vw;
    padding-top: 13vw;
    z-index: 4;
  }
}

footer .link-box{
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 1400px;
}
@media screen and (max-width:1520px) {
  footer .link-box{
    width: 92.1vw;
  }
}
@media screen and (max-width:767px) {
  footer .link-box{
    display: block;
    margin: 0 auto;
    text-align: center;
    width: auto;
  }
}

footer .link-box img{
  width: 666px;
}
@media screen and (max-width:1520px) {
  footer .link-box img{
    width: 43.81vw;
  }
}
@media screen and (max-width:767px) {
  footer .link-box img{
    margin: 3.2vw 0;
    width: 88.04vw;
  }
}

footer .link-box a{
  opacity: 1;
  transition: .3s;
}
footer .link-box a:hover{
  opacity: .7;
  transition: .3s;
}